تحسين الأداء لمشاركات ملفات SMB Azure
تشرح هذه المقالة كيف يمكنك تحسين الأداء لمشاركات ملفات SMB Azure المتميزة، بما في ذلك استخدام SMB Multichannel والتخزين المؤقت لبيانات التعريف (معاينة).
ينطبق على
نوع مشاركة الملف | SMB | NFS |
---|---|---|
مشاركات الملفات القياسية (GPv2)، حسابات التخزين المكررة محليًا (LRS) وحسابات التخزين المكررة في المنطقة (ZRS) | ||
مشاركات الملفات القياسية (GPv2)، حساب تخزين مكرر جغرافي (GRS) أو حساب تخزين مكرر للمنطقة الجغرافية (GZRS) | ||
مشاركات الملفات المدفوعة (FileStorage)، حسابات التخزين المكررة محليًا (LRS) وحسابات التخزين المكررة في المنطقة (ZRS) |
تحسين الأداء
قد تساعدك التلميحات التالية على تحسين الأداء:
- تأكد من أن حساب التخزين الخاص بك والعميل الخاص بك موجودان في نفس منطقة Azure لتقليل زمن انتقال الشبكة.
- استخدم تطبيقات متعددة مؤشرات الترابط وانشر الحمل عبر ملفات متعددة.
- تزداد مزايا أداء SMB متعدد القنوات مع عدد الملفات التي توزع الحمل.
- يرتبط أداء المشاركة الممتازة بحجم المشاركة المخصص (IOPS/الخروج/الدخول) وحدود الملف الفردي. للحصول على تفاصيل، راجع فهم التوفير لمشاركات الملفات المتميزة.
- لا يزال الحد الأقصى لأداء عميل جهاز ظاهري واحد مرتبطاً بحدود الأجهزة الظاهرية. على سبيل المثال، يمكن أن يدعم Standard_D32s_v3 حداً أقصى للنطاق الترددي الذي يبلغ 16000 ميجابايت في الثانية (أو 2 جيجابايت في الثانية)، ويتم قياس الخروج من الجهاز الظاهري (الكتابة إلى التخزين)، أما الدخول (القراءة من التخزين) فلا يتم قياسه. يخضع أداء مشاركة الملفات لحدود شبكة الجهاز، ووحدات المعالجة المركزية، وعرض النطاق الترددي للشبكة للتخزين الداخلي المتاح، وأحجام الإدخال/الإخراج، والتوازي، بالإضافة إلى عوامل أخرى.
- الاختبار الأولي عادة ما يكون تسخينا. تجاهل النتائج وكرر الاختبار.
- إذا كان الأداء محدودا من قبل عميل واحد ولا يزال حمل العمل أقل من حدود المشاركة المتوفرة، يمكنك تحقيق أداء أعلى عن طريق نشر الحمل على عملاء متعددين.
العلاقة بين IOPS ومعدل النقل وأحجام الإدخال/الإخراج
معدل النقل = حجم الإدخال/الإخراج * IOPS
تؤدي أحجام الإدخال/الإخراج الأعلى إلى زيادة معدل النقل وستؤدي إلى زمن انتقال أعلى، ما يؤدي إلى انخفاض عدد عمليات الإدخال/الإخراج في الشباك. ستؤدي أحجام الإدخال/الإخراج الأصغر إلى زيادة IOPS، ولكنها ستؤدي إلى انخفاض معدل النقل الصافي وزمن الانتقال. لمعرفة المزيد، راجع فهم أداء ملفات Azure.
SMB Multichannel
تمكن SMB Multichannel عميل SMB من إنشاء اتصالات شبكة متعددة بمشاركة ملف SMB. تدعم Azure Files SMB Multichannel على مشاركات الملفات المتميزة لعملاء Windows. على جانب الخدمة، يتم الآن تمكين SMB Multichannel بشكل افتراضي لجميع حسابات التخزين التي تم إنشاؤها حديثا في جميع مناطق Azure. لا توجد تكلفة إضافية لتمكين SMB Multichannel.
المزايا
تمكن SMB متعدد القنوات العملاء من استخدام اتصالات شبكة متعددة توفر أداءً متزايداً مع خفض تكلفة الملكية. يتم تحقيق زيادة الأداء من خلال تجميع النطاق الترددي عبر واجهات الشبكة المتعددة واستخدام دعم تلقي التحجيم الجانبي (RSS) لNIC لتوزيع تحميل الإدخال/الإخراج عبر وحدات معالجة مركزية متعددة.
- زيادة معدل النقل: تسمح الاتصالات المتعددة بنقل البيانات عبر مسارات متعددة بالتوازي، وبالتالي تستفيد بشكل كبير من أحمال العمل التي تستخدم أحجام ملفات أكبر بأحجام إدخال/إخراج أكبر، وتتطلب إنتاجية عالية من جهاز ظاهري واحد أو مجموعة أصغر من الأجهزة الظاهرية. وتتضمن بعض أحمال العمل هذه الوسائط والترفيه لإنشاء المحتوى أو تحويل الترميز، وعلم الجينوم، وتحليل مخاطر الخدمات المالية.
- عمليات IOPS أعلى: تتيح إمكانية NIC RSS توزيعاً فعالاً للحمل عبر وحدات المعالجة المركزية المتعددة ذات الاتصالات المتعددة. وهذا يساعد على تحقيق نطاق IOPS أعلى والاستخدام الفعال لوحدات المعالجة المركزية بالجهاز الظاهري. وهذا مفيد لأحمال العمل التي تحتوي على أحجام إدخال/إخراج صغيرة، مثل تطبيقات قاعدة البيانات.
- التسامح مع أخطاء الشبكة: تخفف الاتصالات المتعددة من خطر الانقطاع نظراً لأن العملاء لم يعودوا يعتمدون على اتصال فردي.
- التكوين التلقائي: عند تمكين SMB متعدد القنوات على حسابات العملاء والتخزين، فإنه يسمح بالاكتشاف الديناميكي للاتصالات الموجودة، ويمكنه إنشاء مسارات اتصال إضافية حسب الضرورة.
- تحسين التكلفة: يمكن أن تحقق أحمال العمل نطاقاً أعلى من جهاز ظاهري واحد، أو مجموعة صغيرة من الأجهزة الظاهرية، أثناء الاتصال بالمشاركة المتميزة. وقد يؤدي ذلك إلى خفض التكلفة الإجمالية للملكية عن طريق تقليل عدد الأجهزة الظاهرية اللازمة لتشغيل حمل العمل وإدارته.
لمعرفة المزيد حول SMB متعدد القنوات، راجع وثائق Windows.
توفر هذه الميزة فوائد أداء أكبر للتطبيقات متعددة مؤشرات الترابط ولكنها عادة لا تساعد التطبيقات ذات الترابط الواحد. راجع قسم مقارنة الأداء للحصول على مزيدٍ من التفاصيل.
القيود
تضم حالياً SMB متعدد القنوات لمشاركات ملفات Azure القيود التالية:
- متوفر فقط لمشاركات ملفات Azure المتميزة. غير متوفر لمشاركات ملفات Azure القياسية.
- معتمد فقط على عملاء Windows الذين يستخدمون SMB 3.1.1. تأكد من تصحيح أنظمة تشغيل عميل SMB إلى المستويات الموصى بها.
- غير مدعوم حاليا أو موصى به لعملاء Linux.
- الحد الأقصى لعدد القنوات هو أربعة، لمزيدٍ من التفاصيل، انظر هنا.
التكوين
لا يعمل SMB متعدد القنوات سوى عند تمكين الميزة على جانب العميل (العميل) وجانب الخدمة (حساب تخزين Azure الخاص بك).
في عملاء Windows، يتم تمكين SMB متعدد القنوات بشكلٍ افتراضي. يمكنك التحقق من التكوين الخاص بك عن طريق تشغيل أمر PowerShell التالي:
Get-SmbClientConfiguration | Select-Object -Property EnableMultichannel
إذا لم يتم تمكين SMB Multichannel على حساب تخزين Azure، فشاهد حالة SMB Multichannel.
تعطيل SMB متعدد القنوات
في معظم السيناريوهات، وخاصة أحمال العمل متعددة مؤشر الترابط، يجب أن يرى العملاء أداءً محسناً باستخدام SMB متعدد القنوات. ومع ذلك، بالنسبة لبعض السيناريوهات المحددة مثل أحمال العمل ذات مؤشرات الترابط المفردة أو لأغراض الاختبار، قد تحتاج إلى تعطيل SMB Multichannel. راجع مقارنة الأداء وحالة SMB Multichannel لمزيد من التفاصيل.
التحقق من تكوين SMB متعدد القنوات بشكلٍ صحيح
- إنشاء مشاركة ملف متميزة جديدة أو استخدام مشاركة متميزة موجودة.
- تأكد من أن عميلك يدعم SMB متعدد القنوات (تم تمكين مقياس جانب الاستقبال في واحد أو أكثر من محولات الشبكة). ارجع إلى وثائق Windows للحصول على مزيدٍ من التفاصيل.
- قم بتحميل مشاركة ملف إلى عميلك.
- إنشاء الحمل مع التطبيق الخاص بك. يمكن لأداة نسخ مثل robocopy/MT، أو أي أداة أداء مثل Diskspd لقراءة/كتابة الملفات إنشاء حملاً.
- افتح PowerShell كمسؤول واستخدم الأمر التالي:
Get-SmbMultichannelConnection |fl
- ابحث عن خصائص MaxChannels و CurrentChannels .
مقارنة الأداء
هناك فئتان من أنماط حمل العمل للقراءة/الكتابة: مترابطة واحدة ومتعددة مؤشرات الترابط. تستخدم معظم أحمال العمل ملفات متعددة، ولكن قد تكون هناك حالات استخدام محددة يعمل فيها حمل العمل مع ملف واحد في المشاركة. يغطي هذا القسم حالات الاستخدام المختلفة وتأثير الأداء لكل منها. بشكلٍ عام، تكون معظم أحمال العمل متعددة الخيوط وتوزع أحمال العمل على ملفات متعددة، لذا يجب أن تلاحظ تحسينات كبيرة في الأداء باستخدام SMB متعدد القنوات.
- ملفات متعددة مؤشرات الترابط/متعددة: استنادا إلى نمط حمل العمل، يجب أن تشاهد تحسنا كبيرا في الأداء في قراءة وكتابة I/Os عبر قنوات متعددة. تختلف مكاسب الأداء من أي مكان بين 2x إلى 4x من حيث IOPS والإنتاجية وزمن الانتقال. بالنسبة لهذه الفئة، يجب تمكين SMB متعدد القنوات للحصول على أداء أفضل.
- ملف متعدد مؤشرات الترابط/واحد: بالنسبة لمعظم حالات الاستخدام في هذه الفئة، ستستفيد أحمال العمل من تمكين SMB Multichannel، خاصة إذا كان حمل العمل يحتوي على متوسط حجم > الإدخال/الإخراج ~16k. بعض الأمثلة على السيناريوهات التي تستفيد من SMB متعدد القنوات هي النسخ الاحتياطي أو استرداد ملف كبير واحد. استثناء حيث قد ترغب في تعطيل SMB Multichannel هو إذا كان حمل العمل الخاص بك ثقيلا على I/Os صغير. في هذه الحالة، قد تلاحظ خسارة طفيفة في الأداء بنسبة ~10٪. اعتماداً على حالة الاستخدام، ضع في اعتبارك توزيع الحمل عبر ملفات متعددة أو تعطيل الميزة. راجع قسم التكوين للحصول على التفاصيل.
- ملفات أحادية الترابط/متعددة أو ملف واحد: بالنسبة لمعظم أحمال العمل ذات مؤشرات الترابط المفردة، هناك الحد الأدنى من فوائد الأداء بسبب عدم التوازي. عادة ما يكون هناك انخفاض طفيف في الأداء بنسبة ~10٪ إذا تم تمكين SMB Multichannel. في هذه الحالة، من المثالي تعطيل SMB متعدد القنوات، باستثناء واحد. إذا كان حمل العمل أحادي الترابط يمكنه توزيع الحمل عبر ملفات متعددة ويستخدم على متوسط حجم الإدخال/الإخراج أكبر (> ~16k)، فيجب أن تكون هناك فوائد أداء طفيفة من SMB Multichannel.
تكوين اختبار الأداء
بالنسبة للمخططات الواردة في هذه المقالة، تم استخدام التكوين التالي: جهاز ظاهري D32s v3 قياسي واحد مع بطاقة واجهة مستخدم (NIC) واحدة ممكنة لـ RSS مع أربع قنوات. تم إنشاء التحميل باستخدام diskspd.exe، ومترابطة متعددة مع عمق IO يبلغ 10، و I/Os عشوائي مع أحجام الإدخال/الإخراج المختلفة.
الحجم | vCPU | الذاكرة: جيبي | تخزين درجة الحرارة (SSD) جيبي | الحد الأقصى لأقراص البيانات | الحد الأقصى لمعدل النقل المخزن مؤقتاً: عمليات الإدخال والإخراج في الثانية/ميغابت في الثانية (حجم ذاكرة التخزين المؤقت بالغيبيبايت) | أقصى معدل نقل للقرص غير المخزن مؤقتاً: IOPS/MBps | الحد الأقصى لبطاقات NIC | النطاق الترددي المتوقع للشبكة (ميغابت في الثانية) |
---|---|---|---|---|---|---|---|---|
Standard_D32s_v3 | 32 | 128 | 256 | 32 | 64000/512 (800) | 51200/768 | 8 | 16000 |
ملفات متعددة مؤشرات الترابط/متعددة مع SMB Multichannel
تم إنشاء تحميل مقابل 10 ملفات بأحجام إدخال/إخراج مختلفة. أظهرت نتائج اختبار توسيع النطاق تحسينات كبيرة في كل من IOPS ونتائج اختبار الإنتاجية مع تمكين SMB متعدد القنوات. توضح المخططات التالية النتائج:
- على NIC واحد، بالنسبة لعمليات القراءة، لوحظ زيادة في الأداء بمقدار 2x-3x وبالنسبة للكتابة، كانت المكاسب 3x-4x من حيث كل من IOPS ومعدل النقل.
- سمحت SMB متعدد القنوات لعمليات IOPS والإنتاجية بالوصول إلى حدود الجهاز الظاهري حتى مع وجود NIC واحد والحد الأقصى للقنوات الأربع.
- نظراً لأن الخروج (أو القراءة للتخزين) لا يتم قياسه، فقد كان معدل نقل القراءة قادراً على تجاوز حد الجهاز الظاهري المنشور البالغ 16000 ميجابت في الثانية (2 جيجا بايت/ثانية). حقق الاختبار > 2.7 جيجا بايت/ثانية. لا يزال الدخول (أو الكتابة إلى التخزين) خاضعاً لحدود الجهاز الظاهري.
- سمح توزيع الحمل على ملفات متعددة بإجراء تحسينات كبيرة.
مثال على الأمر المستخدم في هذا الاختبار هو:
diskspd.exe -W300 -C5 -r -w100 -b4k -t8 -o8 -Sh -d60 -L -c2G -Z1G z:\write0.dat z:\write1.dat z:\write2.dat z:\write3.dat z:\write4.dat z:\write5.dat z:\write6.dat z:\write7.dat z:\write8.dat z:\write9.dat
.
أحمال عمل متعددة مؤشرات الترابط/الملفات المفردة باستخدام SMB متعدد القنوات
تم إنشاء التحميل على ملف واحد بحجم 128 جيجا بايت. مع تمكين SMB متعدد القنوات، أظهر اختبار توسيع النطاق مع الملفات متعددة مؤشرات الترابط/الملفات الفردية تحسينات في معظم الحالات. توضح المخططات التالية النتائج:
- على بطاقة NIC واحدة ذات متوسط أكبر لحجم الإدخال/الإخراج (> ~16k)، كانت هناك تحسينات كبيرة في كل من عمليات القراءة والكتابة.
- بالنسبة لأحجام الإدخال/الإخراج الأصغر، كان هناك تأثير طفيف بنسبة ~10٪ على الأداء مع تمكين SMB Multichannel. يمكن التخفيف من ذلك عن طريق توزيع التحميل على ملفات متعددة، أو تعطيل الميزة.
- لا يزال الأداء مقيداً بحدود الملفات الفردية.
التخزين المؤقت لبيانات التعريف لمشاركات ملفات SMB المتميزة
التخزين المؤقت لبيانات التعريف هو تحسين لمشاركات ملفات SMB Azure المتميزة التي تهدف إلى تحسين ما يلي:
- تقليل زمن انتقال بيانات التعريف
- حدود مقياس بيانات التعريف المرتفعة
- زيادة تناسق زمن الانتقال، و IOPS المتوفرة، وتعزيز معدل نقل الشبكة
تعمل ميزة المعاينة هذه على تحسين واجهات برمجة التطبيقات لبيانات التعريف التالية ويمكن استخدامها من كل من عملاء Windows وLinux:
- إنشاء
- مفتوحة
- إغلاق
- حذف
تتوفر ميزة المعاينة هذه حاليا فقط لمشاركات ملفات SMB المتميزة (مشاركات الملفات في نوع حساب تخزين FileStorage). لا توجد تكاليف إضافية مقترنة باستخدام هذه الميزة.
التسجيل للحصول على الميزة
للبدء، قم بالتسجيل للحصول على الميزة باستخدام مدخل Microsoft Azure أو Azure PowerShell.
- قم بتسجيل الدخول إلى بوابة Azure.
- ابحث عن Preview features وحددها.
- حدد عامل تصفية النوع وحدد Microsoft.Storage.
- حدد Azure Premium Files Metadata Cache Preview ثم حدد Register.
هام
السماح بيوم إلى يومين للحسابات ليتم إلحاقها بمجرد اكتمال التسجيل.
التوفر الإقليمي
تتوفر حاليا معاينة التخزين المؤقت لبيانات التعريف فقط في مناطق Azure التالية. لطلب دعم إضافي للمنطقة، قم بالتسجيل في المعاينة العامة.
- شرق آسيا
- وسط أستراليا
- شرق أستراليا
- جنوب شرق أستراليا
- جنوب البرازيل
- وسط كندا
- شرق كندا
- شمال أوروبا
- غرب أوروبا
- وسط فرنسا
- وسط غرب ألمانيا
- شرق اليابان
- غرب اليابان
- جيو الهند الغربية
- وسط الهند
- جنوب الهند
- غرب الهند
- إسرائيل الوسطى
- منطقة شمال إيطاليا
- وسط كوريا
- منطقة جنوب كوريا الجنوبية
- وسط المكسيك
- شرق النرويج
- بولندا الوسطى
- قطر الوسطى
- وسط إسبانيا
- جنوب أفريقيا
- منطقة السويد الوسطى
- شمال سويسرا
- شمال الإمارات العربية المتحدة
- غرب المملكة المتحدة
- جنوب المملكة المتحدة
- US North Central
- وسط جنوب الولايات المتحدة
- US West Central
- US West 2
- غرب الولايات المتحدة 3
تلميح
أثناء توسيع دعم المنطقة لميزة Metadata Cache، سيتم إلحاق حسابات تخزين الملفات المتميزة في تلك المناطق تلقائيا لجميع الاشتراكات المسجلة مع ميزة التخزين المؤقت لبيانات التعريف.
تحسينات الأداء مع التخزين المؤقت لبيانات التعريف
يمكن أن تستفيد معظم أحمال العمل أو أنماط الاستخدام التي تحتوي على بيانات التعريف من التخزين المؤقت لبيانات التعريف. لتحديد ما إذا كان حمل العمل يحتوي على بيانات تعريف، يمكنك استخدام Azure Monitor لتقسيم المعاملات حسب بعد واجهة برمجة التطبيقات.
تتضمن أحمال العمل وأنماط الاستخدام النموذجية كثيفة بيانات التعريف ما يلي:
- خدمات الويب/التطبيقات
- مهام DevOps
- وظائف الفهرسة/الدفعات
- أسطح المكتب الظاهرية مع الدلائل الرئيسية أو أحمال العمل الأخرى التي تتفاعل بشكل أساسي مع العديد من الملفات الصغيرة أو الدلائل أو المقابض
تصور الرسومات التخطيطية التالية النتائج المحتملة.
تقليل زمن انتقال بيانات التعريف
من خلال التخزين المؤقت لمسارات الملفات والدليل للبحثات المستقبلية، يمكن أن يقلل التخزين المؤقت لبيانات التعريف من زمن الانتقال على الملفات والدلائل التي يتم الوصول إليها بشكل متكرر بنسبة 30٪ أو أكثر لأحمال العمل الثقيلة لبيانات التعريف على نطاق واسع.
زيادة IOPS المتوفرة
يمكن أن يزيد التخزين المؤقت لبيانات التعريف من عمليات الإدخال والإخراج في الثانية (IOPS) المتاحة بأكثر من 60٪ لأحمال العمل الثقيلة لبيانات التعريف على نطاق واسع.
زيادة معدل نقل الشبكة
يمكن أن يزيد التخزين المؤقت لبيانات التعريف من معدل نقل الشبكة بأكثر من 60٪ لأحمال العمل الثقيلة لبيانات التعريف على نطاق واسع.
الخطوات التالية
- التحقق من حالة SMB Multichannel
- راجع وثائق Windows ل SMB Multichannel