ترقية تخزين Azure Blob باستخدام قدرات Azure Data Lake Storage Gen2
مقالة
قراءة خلال 7 دقائق
شكرًا لك.
تساعدك هذه المقالة على تمكين مساحة أسماء هرمية وإلغاء قفل السعات مثل أمان مستوى الملف والدليل والعمليات الأسرع. تُستخدم هذه السعات على نطاق واسع من قبل أحمال عمل تحليلات البيانات الضخمة و يُشار إليها مجتمعة باسم Azure Data Lake Storage Gen2.
الترقية في اتجاه واحد. لا توجد طريقة لإعادة حسابك بعد إجراء الترقية. نوصيك بالتحقق من ترقيتك في بيئة غير إنتاجية.
دعم ميزة المراجعة
قد يتكون حسابك لاستخدام ميزات غير مدعومة بعد في الحسابات المُمَكنة Data Lake Storage Gen2. إذا كان حسابك يستخدم ميزة غير مدعومة بعد، فلن تجتاز الترقية خطوة التحقق من الصحة.
حدد موقع حساب التخزين خاصتك واعرض نظرة عامة على الحساب.
حدد ترحيل Data Lake Gen2.
تظهر صفحة تكوين الترقية إلى حساب تخزين بقدرات Azure Data Lake Gen2.
وسِع الخطوة 1: راجع تغييرات الحساب قبل ترقية القسم وانقر على مراجعة والموافقة على التغييرات.
في صفحة مراجعة تغييرات الحساب، حدد مربع الاختيار ثم انقر فوق الموافقة على التغييرات.
وسِع الخطوة 2: التحقق من صحة الحساب قبل ترقية قسم ثم انقر فوق بدء التحقق من الصحة.
في حالة فشل التحقق من الصحة، يظهر خطأ في الصفحة. في بعض الحالات، يظهر رابط عرض الأخطاء. إذا ظهر هذا الرابط، فحدده.
ثم، من قائمة السياق لملف error.jsonحدد تنزيل.
افتح الملف الذي تم تنزيله لتحديد سبب عدم اجتياز الحساب خطوة التحقق. إذا كانت لديك ميزة تخزين كائن ثنائي كبير الحجم مدعومة بالكامل، ولكن في Data Lake Storage Gen2 مدعومة فقط على مستوى المعاينة أو غير مدعومة بعد، فقد يفشل التحقق. لمعرفة كيفية دعم جميع مميزات تخزين كائن ثنائي كبير الحجم مع الجيل الثاني من تخزينبيانات Azure، راجع دعم ميزة تخزين كائن ثنائي كبير الحجم في حسابات Azure تخزين.
يشير JSON التالي إلى تمكين ميزة غير متوافقة على الحساب. في هذه الحالة، يمكنك تعطيل الميزة ثم بدء عملية التحقق مرة أخرى.
استبدل قيمة العنصر النائب <resource-group-name> باسم مجموعة الموارد خاصتك.
استبدل <storage-account-name> قيمة العنصر النائب باسم حساب التخزين خاصتك.
اعتمادًا على حجم حسابك، قد تستغرق هذه العملية بعض الوقت. يمكنك استخدام مفتاح asJob لتشغيل الأمر في مهمة خلفية بحيث لا يتم حظر عميلك. يعمل الأمر عن بعد، ولكن المهمة موجودة على جهازك المحلي أو الجهاز الظاهري الذي تدير الأمر منه. يتم نقل النتائج إلى جهازك المحلي أو الجهاز الظاهري.
للتحقق من حالة المهمة، وعرض جميع خصائص المهمة في قائمة، وصِل متغير الإرجاع إلى Format-List cmdlet.
$result | Format-List -Property *
إذا نجحت عملية التحقق من الصحة، ستُصبح ممتلكات الخاصيةمكتملة.
في حالة فشل التحقق من الصحة، سيتم تعيين خاصية الحالة إلى فشل، وستعرض خاصية الخطأ أخطاء التحقق من الصحة.
يشير الإخراج التالي إلى تمكين ميزة غير متوافقة على الحساب. في هذه الحالة، يمكنك تعطيل الميزة ثم بدء عملية التحقق مرة أخرى.
في بعض الحالات، توفر لك الخاصية خطأ مساراً إلى ملف باسم error.json. يمكنك فتح هذا الملف لتحديد سبب عدم اجتياز الحساب خطوة التحقق من الصحة.
يشير JSON التالي إلى تمكين ميزة غير متوافقة على الحساب. في هذه الحالة، يمكنك تعطيل الميزة ثم بدء عملية التحقق مرة أخرى.
مثل مثال التحقق أعلاه، يستخدم هذا المثال مفتاح asJob لتشغيل الأمر في مهمة خلفية. يتجاوز المفتاح Force المطالبات لتأكيد الترقية. إذا كنت لا تستخدم المفتاح AsJob، فلن تضطر إلى استخدام Force المفتاح لأنه يمكنك فقط الرد على المطالبات.
هام
تُعطل عمليات الكتابة أثناء ترقية حسابك. لا تُعطل عمليات القراءة، ولكننا نوصي بشدة بتعليق عمليات القراءة لأنها قد تؤدي إلى إعاقة عملية الترقية.
للتحقق من حالة المهمة، استخدم نفس التقنيات الموضحة في الخطوات السابقة. أثناء تشغيل العملية، ستُعَين خاصية الحالة إلى قيد التشغيل.
عند اكتمال الترحيل بنجاح، سيتم تعيين خاصية الحالة إلى مكتمل ولن تعرض الخاصية خطأ أي أخطاء.
هام
سيكون التقدير التقريبي لوقت الترقية حوالي 5-10 دقائق لكل 2 مليون كائن ثنائي كبير الحجم. على سبيل المثال، إذا كان الحساب يحتوي على 10 ملايين كائن ثنائي كبير الحجم، فستستغرق الترقية حوالي 25 إلى 50 دقيقة. عادةً ما تتم ترقية الحسابات التي تحتوي على أقل من 2 مليون كائن ثنائي كبير الحجم في أقل من 10 دقائق.
أولا، افتح Azure Cloud Shell، أو إذا قمت بتثبيت Azure CLI محليًا، افتح تطبيق وحدة تحكم أوامر مثل Windows PowerShell.
تحقق من أن إصدار Azure CLI الذي ثُبت هو 2.29.0 أو أعلى باستخدام الأمر التالي.
az --version
إذا كان إصدار Azure CLI خاصتك أقل من 2.29.0، فثبت أحدث إصدار. لمزيد من المعلومات، راجع تثبيت Azure CLI.
إذا كانت هويتك مرتبطة بأكثر من اشتراك واحد، فعيِن اشتراكك النشط.
az account set --subscription <subscription-id>
استبدل قيمة <subscription-id>العنصر النائب بمعرف اشتراكك.
تحقق من صحة حساب التخزين خاصتك باستخدام الأمر التالي.
استبدل قيمة العنصر النائب <resource-group-name> باسم مجموعة الموارد خاصتك.
استبدل <storage-account-name> قيمة العنصر النائب باسم حساب التخزين خاصتك.
إذا نجح التحقق من الصحة، تكتمل العملية ولا تظهر أخطاء.
في حالة فشل التحقق من الصحة، سيظهر خطأ في التحقق من الصحة في وحدة التحكم. على سبيل المثال، يشير الخطأ (IncompatibleValuesForAccountProperties) Values for account properties are incompatible: Versioning Enabled إلى تمكين ميزة غير متوافقة (تعيين الإصدار) على الحساب. في هذه الحالة، يمكنك تعطيل الميزة ثم بدء عملية التحقق مرة أخرى.
في بعض الحالات، يظهر المسار إلى ملف باسم error.json في وحدة التحكم. يمكنك فتح هذا الملف لتحديد سبب عدم اجتياز الحساب خطوة التحقق من الصحة.
يشير JSON التالي إلى تمكين ميزة غير متوافقة على الحساب. في هذه الحالة، يمكنك تعطيل الميزة ثم بدء عملية التحقق مرة أخرى.
لإيقاف الترقية قبل اكتمالها، استخدم الأمر az storage account hns-migration stop.
az storage account hns-migration stop -n <storage-account-name> -g <resource-group-name>
ترحيل البيانات وأحمال العمل والتطبيقات
كوِن الخدمات في أحمال العمل خاصتك للإشارة إما إلى نقطة نهاية خدمة كائن ثنائي كبير الحجم أو نقطة نهاية تخزين Data Lake.
بالنسبة لأحمال عمل Hadoop التي تستخدم Windows Azure Storage Blob أو برنامج تشغيل WASB، تأكد من تعديلها لاستخدام برنامج تشغيل نظام ملفات Azure Blob (ABFS). على عكس برنامج تشغيل WASB الذي يقدم طلبات إلى نقطة نهاية خدمة ;كائن ثنائي كبير الحجم، سيقوم برنامج تشغيل ABFS بتقديم طلبات إلى نقطة النهاية Data Lake Storage لحسابك.
اختبر التطبيقات المخصصة للتأكد من أنها تعمل كما هو متوقع مع حسابك الذي تمت ترقيته.
يتيح الوصول متعدد البروتوكولات على Data Lake Storage لمعظم التطبيقات الاستمرار في استخدام واجهات برمجة تطبيقات كائن ثنائي كبير الحجم دون تعديل. إذا واجهت مشكلات أو كنت ترغب في استخدام واجهات برمجة التطبيقات للعمل مع عمليات الدليل وقوائم التحكم في الوصول، ففكر في نقل بعض التعليمات البرمجية لاستخدام واجهات برمجة التطبيقات Data Lake Storage Gen2. راجع أدلة NET. و Java و Python و Node.jsو REST.
اختبر أي برامج نصية مخصصة للتأكد من أنها تعمل كما هو متوقع مع حسابك الذي تمت ترقيته.
كما هو الحال مع واجهات برمجة تطبيقات كائن ثنائي كبير الحجم، من المحتمل أن تعمل العديد من البرامج النصية خاصتك دون الحاجة إلى تعديلها. ومع ذلك, إذا لزم الأمر, يمكنك ترقية ملفات البرامج النصية لاستخدام Data Lake Storage Gen2PowerShell cmdletsو Azure CLI أوامر.