تصميم استراتيجية تنظيم التخزين

مكتمل

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

حسابات التخزين⁧

حساب تخزين واحد مرن بما يكفي لتنظيم الكائنات الثنائية كبيرة الحجم. ومع ذلك، يجب استخدام المزيد من حسابات التخزين حسب الضرورة لفصل التكاليف منطقيا والتحكم في الوصول إلى البيانات.

الحاويات والكائنات الثنائية كبيرة الحجم

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

غالبا ما لا تحتاج التطبيقات التي تستخدم الكائنات الثنائية كبيرة الحجم كجزء من نظام تخزين يتضمن قاعدة بيانات إلى الاعتماد بشكل كبير على المؤسسة أو التسمية أو بيانات التعريف للإشارة إلى أي شيء حول بياناتها. تستخدم مثل هذه التطبيقات عادة معرفات مثل معرفات GUID كأسماء الكائن الثنائي كبير الحجم وتشير إلى هذه المعرفات في سجلات قاعدة البيانات. يستخدم التطبيق قاعدة البيانات لتحديد مكان تخزين الكائنات الثنائية كبيرة الحجم ونوع البيانات التي تحتوي عليها.

تستخدم التطبيقات الأخرى Azure Blob Storage مثل نظام الملفات الشخصية. تشير أسماء الحاوية والكائنات الثنائية كبيرة الحجم إلى المعنى والبنية. غالبا ما تبدو أسماء الكائنات الثنائية كبيرة الحجم في هذه الأنواع من التطبيقات مثل أسماء الملفات التقليدية. يمكن أن تتضمن ملحقات أسماء الملفات مثل .jpg للإشارة إلى نوع البيانات التي تحتوي عليها. تستخدم هذه التطبيقات الدلائل الظاهرية لتنظيم الكائنات الثنائية كبيرة الحجم. يستخدمون علامات بيانات التعريف بشكل متكرر لتخزين معلومات حول الكائنات الثنائية كبيرة الحجم والحاويات.

هناك بعض الأشياء الرئيسية التي يجب مراعاتها عند اتخاذ قرار حول كيفية تنظيم وتخزين الكائنات الثنائية كبيرة الحجم والحاويات.

قيود التسمية

يجب أن تتوافق أسماء الحاوية والكائن الثنائي كبير الحجم مع مجموعة من القواعد، بما في ذلك قيود الطول والقيود على الأحرف. للحصول على معلومات أكثر تحديداً عن قواعد التسمية، راجع قسم المزيد من القراءةفي نهاية هذه الوحدة.

الوصول العام والحاويات كحدود أمنية

بشكل افتراضي، تتطلب كافة الكائنات الثنائية كبيرة الحجم مصادقة للوصول. ومع ذلك، يمكن تكوين حاويات فردية للسماح بالتنزيل العام من الكائنات الثنائية كبيرة الحجم خاصتهم دون مصادقة. يدعم التنزيل العام العديد من حالات الاستخدام، مثل استضافة أصول موقع ويب ثابت ومشاركة الملفات. يعمل هذا الأسلوب لأن تنزيل محتويات الكائن الثنائي كبير الحجم يعمل بنفس طريقة قراءة أي بيانات أخرى عبر الويب. ما عليك سوى توجيه مستعرض أو أي شيء يمكنه تقديم طلب GET في عنوان URL للكائن الثنائي كبير الحجم.

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

تنبيه

يمكن لأي شخص يعرف عناوين URL للتخزين تنزيل الكائنات الثنائية كبيرة الحجم في حاوية تم تكوينها للوصول العام دون أي نوع من المصادقة أو التدقيق. لا تضع أبدًا بيانات كائن ثنائي كبير الحجم في حاوية عامة لا تنوي مشاركتها بشكل عام.

بالإضافة إلى الوصول العام، لدى Azure ميزة توقيع الوصول المشترك التي تسمح التحكم بأذونات الحبيبات الجيدة على الحاويات. يتيح التحكم في الوصول الدقيق السيناريوهات التي تحسن قابلية التوسع بشكل أكبر، لذلك من المفيد التفكير في الحاويات على أنها حدود أمان.

بادئات اسم كائن ثنائي كبير الحجم (الدلائل الظاهرية)

الحاويات مسطحة. فهي لا تدعم أي نوع من التداخل أو التسلسل الهرمي. إذا أعطيت الكائنات الثنائية كبيرة الحجم أسماء هرمية تبدو مثل مسارات الملفات، مثل finance/budgets/2017/q1.xls، يمكن لعملية سرد واجهة برمجة التطبيقات تصفية النتائج إلى بادئات معينة. يمكنك هذا الأسلوب من التنقل في القائمة كما لو كان نظام هرمي من الملفات والمجلدات.

تستخدم بعض الأدوات ومكتبات العملاء هذا الأسلوب لتصور Blob Storage والتنقل فيه كما لو كان نظام ملفات. كل مجلد تنقل يقوم باستدعاء منفصل إلى قائمة الكائنات الثنائية كبيرة الحجم في هذا المجلد. غالبا ما تسمى هذه الميزة الدلائل الظاهرية.

إشعار

إذا قمت بتمكين ميزة مساحة الاسم الهرمية للحساب، فلن تكون الدلائل ظاهرية. بدلا من ذلك، تصبح كائنات ملموسة ومستقلة يمكنك العمل عليها مباشرة. يمكن أن يوجد دليل دون أن يحتوي على أي ملفات. توضح هذه الوحدة النمطية فقط الحسابات التي لم يتم تمكين ميزة مساحة الاسم الهرمية.

أنواع الكائنات الثنائية كبيرة الحجم

هناك ثلاثة أنواع مختلفة من الكائنات الثنائية كبيرة الحجم يمكنك تخزين البيانات فيها:

  • تتكون الكائنات الثنائية كبيرة الحجم للكتلة من كتل من أحجام مختلفة يمكن تحميلها بشكل مستقل وبالتوازي. تتضمن الكتابة إلى مجموعة كائن ثنائي كبير الحجم تحميل البيانات إلى مجموعات والالتزام بها في كائن ثنائي كبير الحجم.
  • الكائنات الثنائية كبيرة الحجم للإلحاق هي الكائنات الثنائية كبيرة الحجم للكتلة المتخصصة التي تدعم إلحاق البيانات الجديدة فقط، وليس تحديث البيانات الموجودة أو حذفها. إنها فعالة لهذا الغرض. ⁩الكائنات الثنائية كبيرة الحجم الملحقة كبيرة لسيناريوهات مثل تخزين سجلات أو كتابة البيانات المتدفقة.
  • تدعم الكائنات الثنائية كبيرة الحجم للصفحة سيناريوهات تتضمن عمليات قراءة وكتابة الوصول العشوائي. تستخدم الكائنات الثنائية كبيرة الحجم للصفحة لتخزين ملفات القرص الثابت الظاهري (VHD) المستخدمة من قبل أجهزة Azure الظاهرية. إنها رائعة لأي سيناريو يتضمن الوصول العشوائي.

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

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

1.

افترض أنك بحاجة إلى تخزين ملف التعريف ثم طلب معلومات حول عملائك. تحتاج إلى الاستعلام عن البيانات للإجابة على أسئلة مثل "من هم أفضل 100 عميل؟" و"كم عدد العملاء الذين يعيشون في منطقة جغرافية معينة؟". هل صواب أو خطأ: تخزين الكائن الثنائي كبير الحجم هو خيار جيد لهذه البيانات؟

2.

توفر الكائنات الثنائية كبيرة الحجم تخزين بيانات غير منظم . ماذا يعني غير منظم؟