دينامو (نظام تخزين)
دينامو عبارة عن مجموعة من التقنيات التي تُشكّل معًا نظام تخزين عالي التوافر يعتمد على بنية المفتاح والقيمة [ 1 ] أو مخزن بيانات موزّع . [ 1 ] يجمع دينامو بين خصائص قواعد البيانات وجداول التجزئة الموزّعة (DHTs). وقد صُمّم لمعالجة بعض مشكلات قابلية التوسع التي واجهتها أمازون خلال موسم الأعياد عام 2004. [ 2 ] وبحلول عام 2007، استُخدم دينامو في خدمات أمازون السحابية ، مثل خدمة التخزين البسيطة (S3). [ 1 ]
العلاقة مع DynamoDB
تعتمد خدمة Amazon DynamoDB على مبادئ Dynamo [ 3 ] ، وهي خدمة مستضافة ضمن بنية AWS التحتية. مع ذلك، فبينما تعتمد Dynamo على النسخ المتماثل بدون قائد، تستخدم DynamoDB النسخ المتماثل بقائد واحد. [ 4 ]
مبادئ
- قابلية التوسع التدريجي: يجب أن يكون Dynamo قادرًا على التوسع إلى مضيف تخزين واحد (أو "عقدة") في كل مرة، مع الحد الأدنى من التأثير على كل من مشغلي النظام والنظام نفسه.
- التناظر: يجب أن يكون لكل عقدة في Dynamo نفس مجموعة المسؤوليات التي يتمتع بها نظراؤها؛ لا ينبغي أن تكون هناك عقدة أو عقد مميزة تأخذ أدوارًا خاصة أو مجموعة إضافية من المسؤوليات.
- اللامركزية: امتداد للتناظر، يجب أن يفضل التصميم تقنيات الند للند اللامركزية على التحكم المركزي.
- التباين: يجب أن يكون النظام قادراً على استغلال التباين في البنية التحتية التي يعمل عليها. على سبيل المثال، يجب أن يكون توزيع العمل متناسباً مع قدرات الخوادم الفردية. وهذا أمر أساسي لإضافة عُقد جديدة ذات سعة أعلى دون الحاجة إلى ترقية جميع المضيفين دفعة واحدة.
التقنيات
| مشكلة | تقنية | ميزة |
|---|---|---|
| تقسيم مجموعة البيانات | التجزئة المتسقة | قابلية التوسع التدريجي، وربما الخطي، بما يتناسب مع عدد العقد المتعاونة. |
| كاتب متاح للغاية | ساعة المتجهات أو مجموعات المتجهات ذات الإصدار المنقط ، والتوفيق أثناء عمليات القراءة | حجم الإصدار منفصل عن معدلات التحديث. |
| التعامل مع الأعطال المؤقتة | نصاب قانوني غير مكتمل وتسليم غير مباشر | يوفر ضمانًا عاليًا للتوافر والمتانة عندما لا تتوفر بعض النسخ المقلدة. |
| التعافي من الإخفاقات الدائمة | مقاومة الإنتروبيا باستخدام شجرة ميركل | يمكن استخدامه لتحديد الاختلافات بين مالكي النسخ المتماثلة ومزامنة النسخ المتماثلة المتباينة بشكل استباقي. |
| العضوية واكتشاف الأعطال | بروتوكول العضوية القائم على النميمة واكتشاف الأعطال | يتجنب وجود سجل مركزي لتخزين معلومات العضوية وحالة العقدة، مما يحافظ على التناظر. |
التطبيقات
نشرت أمازون ورقة بحثية حول دينامو، لكنها لم تُصدر تطبيقها الخاص. تُطبّق طبقة الفهرسة في خدمة أمازون إس 3 وتُوسّع العديد من الميزات الأساسية لدينامو. ومنذ ذلك الحين، تم إنشاء العديد من التطبيقات استنادًا إلى تلك الورقة البحثية. كما ألهمت الورقة البحثية العديد من تطبيقات قواعد بيانات NoSQL الأخرى ، مثل أباتشي كاساندرا ، ومشروع فولدمورت ، ورياك . [ 2 ]
انظر أيضاً
مراجع
- 1 2 3 ديكانديا، ج.؛ هاستورون، د.؛ جامباني، م.؛ كاكولاباتي، ج.؛ لاكشمان، أ.؛ بيلشين، أ.؛ سيفاسوبرامانيان، س.؛ فوشال، ب.؛ فوغلز، و. (2007). "دينامو: مخزن القيم الرئيسية عالي التوفر من أمازون". وقائع ندوة ACM SIGOPS الحادية والعشرين حول مبادئ أنظمة التشغيل - SOSP '07 . ص 205. doi : 10.1145/1294261.1294281 . ISBN 9781595935915. S2CID 221033483 .
- 1 2 أمازون تُعيد تجربة قواعد بيانات NoSQL مع DynamoDB
- ↑ أمازون دينامو دي بي – خدمة قواعد بيانات NoSQL سريعة وقابلة للتوسع مصممة لتطبيقات الإنترنت واسعة النطاق
- ↑ كليمان، مارتن (2 أبريل 2017). تصميم التطبيقات كثيفة البيانات ( الطبعة الأولى). دار نشر أورايلي ميديا. ص 177. ISBN 978-1449373320
لا يتوفر Dynamo للمستخدمين خارج Amazon. ومن المثير للارتباك أن AWS تقدم منتج قاعدة بيانات مُستضافة يُسمى DynamoDB، والذي يستخدم بنية مختلفة تمامًا: فهو يعتمد على النسخ المتماثل أحادي القائد
.
روابط خارجية
- مخازن البيانات الموزعة
- NoSQL
