تحويل فئات الموارد إلى مجموعات أحمال العمل
توفّر مجموعات حمل العمل آلية لعزل موارد النظام واحتوائها. بالإضافة إلى ذلك، تسمح لك مجموعات حمل العمل بتعيين قواعد التنفيذ للطلبات التي تعمل فيها. تسمح قاعدة تنفيذ مهلة الاستعلام بإلغاء استعلامات الفقد دون تدخل المستخدم. توضّح هذه المقالة كيفية أخذ فئة مورد حالية وإنشاء مجموعة حمل عمل بتكوين مشابه. بالإضافة إلى ذلك، تتم إضافة قاعدة مهلة استعلام اختيارية.
إشعار
اطلع على قسم خلط مهام فئة الموارد مع المصنفات في مستند مفهوم تصنيف حمل العمل للحصول على إرشادات حول استخدام مجموعات حمل العمل وفئات الموارد في نفس الوقت.
فهم تكوين فئة الموارد الموجودة
تتطلب مجموعات حمل العمل معلّمة تسمى REQUEST_MIN_RESOURCE_GRANT_PERCENT
تحدد النسبة المئوية لموارد النظام الإجمالية المخصصة لكل طلب. يتم تخصيص الموارد لفئات الموارد من خلال تخصيص فتحات التزامن. لتحديد القيمة المراد تخصيصها لـ REQUEST_MIN_RESOURCE_GRANT_PERCENT
، استخدم طريقة عرض الإدارة الديناميكية sys.dm_workload_management_workload_groups_stats. على سبيل المثال، يقوم الاستعلام أدناه بإرجاع قيمة يمكن استخدامها للمعلمة REQUEST_MIN_RESOURCE_GRANT_PERCENT
لإنشاء مجموعة حمل عمل مشابهة ل staticrc40.
SELECT Request_min_resource_grant_percent = Effective_request_min_resource_grant_percent
FROM sys.dm_workload_management_workload_groups_stats
WHERE name = 'staticrc40'
إشعار
تعمل مجموعات حمل العمل استنادًا إلى النسبة المئوية لموارد النظام الإجمالية.
نظرًا لأن مجموعات حمل العمل تعمل استنادًا إلى النسبة المئوية لموارد النظام الإجمالية، أثناء توسيع النطاق وتقليصه، فيحدث تغير في النسبة المئوية للموارد المخصصة لفئات الموارد الثابتة بالنسبة إلى موارد النظام الإجمالية. على سبيل المثال، staticrc40 at DW1000c يُخصص 19.2٪ من موارد النظام الإجمالية. في DW2000c، يتم تخصيص 9.6%. هذا النموذج متشابه إذا كنت ترغب في توسيع نطاق التزامن مقابل تخصيص المزيد من الموارد لكل طلب.
إنشاء مجموعة حمل العمل
باستخدام المعروف REQUEST_MIN_RESOURCE_GRANT_PERCENT
، يمكنك استخدام بناء الجملة CREATE WORKLOAD GROUP لإنشاء مجموعة حمل العمل. يمكنك اختياريًا تحديد MIN_PERCENTAGE_RESOURCE
أكبر من الصفر لعزل الموارد لمجموعة حمل العمل. يمكنك أيضًا تحديد CAP_PERCENTAGE_RESOURCE
أقل من 100 اختياريًا للحد من كمية الموارد التي يمكن أن تستهلكها مجموعة حمل العمل.
باستخدام القوس المتوسط كأساس لمثال، تعين التعليمات البرمجية أدناه MIN_PERCENTAGE_RESOURCE
لتكريس 10٪ من موارد النظام إلى wgDataLoads
وتضمن إمكانية تشغيل استعلام واحد في جميع الأوقات. بالإضافة إلى ذلك، يتم تعيين CAP_PERCENTAGE_RESOURCE
إلى 40٪ ويحد من مجموعة حمل العمل هذه إلى أربعة طلبات متزامنة. من خلال إعداد المعلمة QUERY_EXECUTION_TIMEOUT_SEC
على 3600، سيتم إلغاء أي استعلام يتم تشغيله لأكثر من ساعة واحدة تلقائيًا.
CREATE WORKLOAD GROUP wgDataLoads WITH
( REQUEST_MIN_RESOURCE_GRANT_PERCENT = 10
,MIN_PERCENTAGE_RESOURCE = 10
,CAP_PERCENTAGE_RESOURCE = 40
,QUERY_EXECUTION_TIMEOUT_SEC = 3600)
تقييم المصنف
في السابق، تم تعيين المخططات إلى فئات الموارد باستخدام sp_addrolemember. لتحقيق نفس الوظائف وتعيين الطلبات إلى مجموعات حمل العمل، استخدم بناء جملة CREATE WORKLOAD CLASSIFIER. يسمح لك استخدام sp_addrolemember فقط بتعيين الموارد إلى طلب استنادًا إلى تسجيل الدخول. يوفر المصنف خيارات إضافية إلى جانب تسجيل الدخول، مثل: - التسمية - الجلسة - الوقت. يعين المثال أدناه استعلامات من AdfLogin
تسجيل الدخول التي تم تعيين OPTION LABEL عليها إلى factloads
مجموعة wgDataLoads
حمل العمل التي تم إنشاؤها أعلاه.
CREATE WORKLOAD CLASSIFIER wcDataLoads WITH
( WORKLOAD_GROUP = 'wgDataLoads'
,MEMBERNAME = 'AdfLogin'
,WLM_LABEL = 'factloads')
اختبار مع نموذج الاستعلام
فيما يلي نموذج استعلام واستعلام طريقة عرض الإدارة الديناميكية لضمان تكوين مجموعة حمل العمل والمصنف بشكل صحيح.
SELECT SUSER_SNAME() --should be 'AdfLogin'
--change to a valid table AdfLogin has access to
SELECT TOP 10 *
FROM nation
OPTION (label='factloads')
SELECT request_id, [label], classifier_name, group_name, command
FROM sys.dm_pdw_exec_requests
WHERE [label] = 'factloads'
ORDER BY submit_time DESC