التعرُّف على تخزين البيانات غير المُنظَّم

مكتمل

مستودع تخزين كتل البيانات (Blob storage) هو مصطلح ممتع، ولكنه ليس خاليًا من التنظيم كما يبدو. ويشار إليه بالتخزين غير المنظَّم، ولكن هذا يعني أن كل إدخال في التخزين لا يتوافق مع أي نموذج معين. على سبيل المثال، قد يكون إدخال واحد مقطع فيديو، وآخر تسجيلاً صوتيًا، وثالث مجموعة من الملفات النصية، وهكذا. تشبه خاصية مستودع تخزين كتل البيانات (Blob storage) بِنية الملفات والمجلدات التي تستخدمها على الكمبيوتر المحمول أو الكمبيوتر المكتبي.

نورِد هنا مثالاً على التخزين المركَّب، لنفترض أن قاعدة بيانات كبيرة كل إدخال فيها يحتوي على معلومات مشابهة، وكل إدخال يمكن الوصول إليه بمجموعة من استدعاءات API مشابهة. تخزين كتل البيانات (Blob storage) غير مناسب لتخزين وحدات التخزين من البيانات التي تم ترتيبها ترتيبًا جيدًا. وننصح في هذا النوع من البيانات، بالتفكير في مورد قاعدة البيانات Cosmos الوارد وصفه في الوحدة التالية.

عند إنشاء حساب تخزين عبر البوابة Azure، فإن مستودع تخزين كتل البيانات (Blob storage) هو الخيار الافتراضي. في الصورة التالية، لاحِظ استخدام ألفاظ مستعارة (أي الساخنة والباردة) لتحديد الغرض من التخزين.

لقطة شاشة تُظهِر صفحة إنشاء حساب تخزين من بوابة Azure.

تحديد نوع التخزين Blob

مستودع تخزين كتل البيانات (Blob storage) في الوضع الافتراضي، مُطبَّق فيه إعداد الغرض العام. يتم تخزين البيانات التي توجِهها إلى الحساب مع إعدادات وصول معقولة.

يمكنك تحسين كفاءة Blob عن طريق تحديد دور لهم، عند تحميل البيانات. هناك ثلاثة أدوار: التحميل بخاصية Block blobs، ونقاط صفحات (Page blobs) و تدفق كتل البيانات (Append blobs).

لقطة شاشة تعرض صفحة تحميل Upload Blob page من بوابة Azure.

دعونا نبدأ مع تدفق كتل البيانات (Append blobs) نظرًا لسهولة وصفه. لا يمكن لتدفق كتل البيانات (Append blobs)، كما يوحي اسمه ضمنًا، إلا الإلحاق، وهو حل مثالي لملفات السجل. لا يجوز أبدًا تعديل ملف سجل، فهو لا يزيد إلا على حاله. تتوفر مساحة كبيرة في السحابة.

توجد نقاط صفحات (Page blobs) للبيانات التي تحتاج إلى وصول متكرر للقراءة/الكتابة. يُرجى مراعاة أن نقطة page blob أشبه بقرص ثابت بعيد. بالنسبة إلى أي بيانات قيد التقدم، فإن النقطة page blob هي وحدة التخزين السحابية المثالية. الأداء العالي، وانخفاض زمن الانتقال هما الميزتان الأساسيتان التي تحظى بهما نقاط page blobs.

نقاط Block blobs هي أكثر تعقيدًا نوعًا ما. عندما تكون لديك كمية كبيرة من البيانات، يمكن أن تزيد كفاءة الوصول إلى هذه البيانات إذا تم تقسيمها إلى كتل. كل كتلة لها مُعرِّف مميز. يحق لك الوصول إلى هذا المُعرِف، ويمكن استخدامه للقراءة من كتلة بيانات معينة والكتابة فيها. يمكن الكتابة في Block blobs بالتوازي، ويمكن تحميلها بأي ترتيب. في الأساس، تتعامل كتل block blobs مع كميات كبيرة من البيانات عبر شبكة. ليس هناك في الواقع نوع تخزين يعادل التخزين على جهاز الكمبيوتر الشخصي.

هناك حدود عليا للتخزين بنظام Blob storage page وحجم كتل البيانات، ولكن هذه الحدود عالية (مئات من جيجابايت، أو حتى تيرابايت). وقد شهدت تلك الحدود زيادة مع مرور الوقت. راجع روابط الوثائق، الواردة في ملخص هذه الوحدة، لتكون على دراية ووعي بالحدود الحالية. عند الوصول إلى الحدود، ستحتاج إلى زيادة حِصَّة التخزين. ومع ذلك فإن الحدود المسموح بها في (بيانات تتبع الاستخدام التي تستند إلى نصوص)، قد لا يتوصَّل إليها إلا في سنوات طوال، إن حدث أصلاً!

استخدام واجهات برمجة التطبيقات (API) للوصول إلى تخزين Blob

يمكن الوصول إلى التخزين Blob عبر مكالمات واجهات برمجة التطبيقات(API). يمكن للمطورين كتابة التطبيقات، أيًا كان تعقيدها، لقراءة وكتابة البيانات المستودعة في نظام تخزين Blob. تتوفر واجهات برمجة التطبيقات عبر المكالمات REST أو Azure PowerShell أو CLI Azure. تتوفر مكتبات العملاء للغات البرمجة.NET وJava وPython Node.js ولغات أخرى.

مراعاة أمن البيانات

يتم تلقائيًا تشفير تخزين Azure Blob دون أي تكلفة إضافية وبدون إعداد إضافي. النظام المستخدم يسمى "تشفير خدمة التخزين" أو SSE. بالإضافة إلى ذلك، يمكن تأمين البيانات في أثناء النقل، بين التطبيق وAzure، باستخدام التشفير من جانب العميل أو HTTPS أو SMB 3.0.

الترقية إلى التخزين Data Lake Storage Gen2

يأتي الوقت المناسب للارتقاء من Azure Blob إلى تخزين Azure Data Lake عندما تكون لديك كمية (هائلة) من البيانات، والبيانات الضخمة كما يُقال بمصطلحات السحابة. يتميز التخزين Blob بسهولة الوصول والأمان وانخفاض التكلفة. إلا أنه، مع البيانات الضخمة، يصبح تنظيم البيانات مشكلة. يوفر التخزين بخاصية Data Lake «مستودع البيانات» ميزات إضافية للمساعدة في تنظيم وتأمين كميات هائلة من البيانات.

للمساعدة في تنظيم البيانات، يتوفر مفهوم يسمى مساحات الاسم الهرمية في مستودع البيانات. يمكن استخدام مساحة اسم هرمية لتضمين مجموعة من كائنات البيانات وملفاتها، سواء أكانت كبيرة أو صغيرة. وبالأساس تضيف مساحة الاسم مستوى آخر من المرجعية، يُستخدم لتعزيز كفاءة الوصول إلى البيانات.

يتوفر عنصر الأمان في Azure Data Lake على الملف، أو المجلد، أو المستوى، أو التفاصيل الأكبر إذا لزم الأمر. ينطبق عنصر الأمان، والوصول إلى واجهة برمجة التطبيقات، وميزات تخزين Blob على تخزين Data Lake.

وأخيرًا، يتم تحسين تحليلات Data Lake، المتوفرة من خلال واجهات برمجة تطبيقات REST، للبيانات الضخمة. يجب أن تظل الاستعلامات قيد التشغيل في وقت مناسب، حتى لو كانت تسير وسط شبكة هائلة من البيانات.

أفضل الممارسات

التخزين بطريقة Blob هو الحل الأنسب لكَ للتخزين في سحابة IoT التخزين Blob يكاد يكون دائمًا نقطة البداية الصحيحة لأي مشروع في Azure IoT. قد لا تحتاج إلى النظر في خيارات التخزين الأخرى. ومع ذلك، بالنسبة إلى البيانات الكبيرة هناك خيار الترقية إلى بحيرة البيانات. الترقية إذا كانت هناك مشكلة تعتري المؤسسة أو الأمان أو أداء التحليلات تعترض وحدة التخزين الخاصة بـ Blob.

في الوحدة التالية، سننظر في حل التخزين المنظم عندما تكون بياناتك أقرب إلى قاعدة بيانات، من مجموعة من الملفات والمجلدات.

وصلتَ إلى منتصف هذه الوحدة، وحان الوقت لقياس سريع لمستوى المعرفة!

اختبر معلوماتك

1.

ما هي الإجابة التي تصف بنية lambda على أفضل نحو؟

2.

مخزن البيانات الثنائية الكبيرة بشكل افتراضي هو غرض عام، ولكن هل يمكن تعيينه إلى دور من ثلاثة أدوار محددة؟