أنظمة التخزين القابلة للتوسع
تقوم أنظمة التخزين القابلة للتوسع بنشر البيانات عبر العديد من الأجهزة لتوفير سعة وإنتاجية وتوافر يتجاوز أي خادم منفرد، مع إخفاء حالات فشل العقد الفردية.
Definition
يقوم نظام التخزين القابل للتوسع بتخزين البيانات عبر مجموعة من الأجهزة، ويقسمها من أجل السعة والإنتاجية، وينسخها من أجل المتانة والتوافر، بحيث يتوسع النظام الكلي مع عدد العقد مع تحمل حالات فشل العقد الفردية.
Scope
يغطي هذا الموضوع أنظمة الملفات الموزعة المصممة لمجموعات السلع الأساسية، ومخازن المفتاح-القيمة الموزعة والمخازن ذات الأعمدة العريضة، وتقنيات التراكب الهيكلي—التجزئة المتسقة وجداول التجزئة الموزعة—المستخدمة لتقسيم وتحديد موقع البيانات على نطاق واسع. ويشمل تقسيم البيانات (التجزئة)، والنسخ المتماثل للمتانة، والمفاضلات بين الاتساق والتوافر التي تميز المخازن المتسقة بقوة عن المخازن عالية التوافر.
Core questions
- كيف يتم تقسيم البيانات وتحديد موقعها عبر مجموعة كبيرة ومتغيرة من العقد؟
- كيف يتم تحقيق المتانة والتوافر على الرغم من حالات فشل العقد المتكررة؟
- ما هي ضمانات الاتساق التي يمكن أن يوفرها المتجر القابل للتوسع، وبأي تكلفة؟
Key theories
- أنظمة ملفات المجموعات
- تقوم أنظمة مثل نظام ملفات جوجل بتخزين ملفات ضخمة كأجزاء مكررة عبر خوادم سلعية، مع التحسين للوصول المتسلسل الكبير والتعامل مع حالات الفشل كقاعدة وليس استثناءً.
- المخازن الهيكلية الموزعة
- تقوم مخازن الأعمدة العريضة والمفتاح-القيمة مثل Bigtable و Dynamo بتقسيم البيانات حسب المفتاح عبر العقد ونسخها، مما يوازن بين قابلية التعبير عن الاستعلام والاتساق من جهة، وقابلية التوسع الأفقي والتوافر من جهة أخرى.
- التجزئة المتسقة وجداول التجزئة الموزعة
- تقوم التجزئة المتسقة برسم خرائط المفاتيح والعقد على حلقة بحيث يؤدي إضافة أو إزالة عقدة إلى تحريك جزء صغير فقط من المفاتيح، وتوفر جداول التجزئة الموزعة مثل Chord بحثًا قابلاً للتوسع ولامركزيًا للمفاتيح مع توجيه لوغاريتمي.
Clinical relevance
يُعد التخزين القابل للتوسع الأساس المتين للمنصات السحابية وخدمات الويب الكبيرة: فمخازن الكائنات وقواعد البيانات وخطوط أنابيب التحليلات جميعها تعتمد على أنظمة الملفات الموزعة ومخازن المفتاح-القيمة التي تحدد خيارات التقسيم والنسخ المتماثل فيها ضمانات متانة النظام واتساقه.
History
أظهرت جداول التجزئة الموزعة من نظير إلى نظير مثل Chord (2001) البحث اللامركزي القابل للتوسع؛ وأظهر نظام ملفات جوجل (2003) و Bigtable (2006-2008) تخزينًا على نطاق المجموعات للبيانات المهيكلة؛ ونشرت Dynamo من أمازون (2007) تخزين المفتاح-القيمة عالي التوافر، مما أرسى معًا المشهد الحديث للتخزين القابل للتوسع و NoSQL.
Debates
- الاتساق القوي مقابل التوافر العالي في التخزين
- تبسط المخازن المتسقة بقوة منطق التطبيق ولكن يجب أن تضحي بالتوافر في ظل التقسيمات، بينما تقبل المخازن عالية التوافر مثل Dynamo التباعد المؤقت وتدفع حل النزاعات إلى التطبيق؛ ويعتمد الاختيار الصحيح على مدى تحمل البيانات للقدم.
Key figures
- Sanjay Ghemawat
- Werner Vogels
- Ion Stoica
- Hari Balakrishnan
Related topics
Seminal works
- ghemawat2003
- decandia2007
- stoica2001
Frequently asked questions
- ما المشكلة التي تحلها التجزئة المتسقة؟
- عندما يتم تقسيم البيانات عبر العقد عن طريق تجزئة المفاتيح، فإن التجزئة الساذجة تعيد ترتيب كل شيء تقريبًا عند إضافة عقدة أو إزالتها. تقوم التجزئة المتسقة بترتيب المفاتيح والعقد على حلقة بحيث يؤدي هذا التغيير إلى نقل جزء صغير ومحدود فقط من المفاتيح، وهو أمر ضروري للمجموعات المرنة والمتغيرة.