ملخص

مكتمل
  • نظام Hadoop للملفات الموزعة (HDFS) هو نسخة مفتوحة المصدر من نظام ملفات جوجل (GFS).
  • صُمم نظام HDFS للاشتغال على مجموعة من العقد ويدعم نموذج برمجة MapReduce من خلال توفير نظام ملفات موزعة (DFS) للإدخال والإخراج (I/O) الخاصين ببيانات النموذج.
  • لدى HDFS مساحة اسم مشتركة ممتدة على نطاق المجموعة؛ قادرة على تخزين الملفات الكبيرة، وهي الأمثل لإمكانية الوصول ذات الكتابة الواحدة، وذات القراءات العديدة؛ وصُمم لتوفير توفر عالي الدرجة عند وجود حالات فشل العقد.
  • يتّبع نظام HDFS مُخطط النقاط الرئيسية والثانوية؛ ويعالج الـ NameNode بيانات التعريف، وتُخزن البيانات على الـ DataNodes.
  • تُقسّم الملفات في HDFS إلى كتل (تسمى أيضاً مجموعات)، بحجم افتراضي يبلغ 128 ميجابايت.
  • يتم نسخ الكُتل نسخاً متماثلاً بشكل افتراضي ثلاث مرات (ما يُسمىعامل النسخ المتماثل) عبر المجموعة بالكامل.
  • يفترض HDFS وجود طوبولوجيا مجموعة بنمط الشجرة، تُحسن إمكانية الوصول إلى الملفات لتحسين الأداء، والمحاولة لوضع نُسخ الكتل عبر الرفوف.
  • يتبع تصميم HDFS الأصلي دلالات ثابتة ولا يسمح للملفات الموجودة بأن تُفتح للكتابات. إصدارات أحدث لملحقات ملف دعم HDFS.
  • HDFS شديد الاتساق لأن عملية كتابة ملف توسم بعلامة كاملة فقط بعد أن تُكتب كافة النسخ المتماثلة.
  • يتتبع الـ NameNode حالات فشل الـ DataNode باستخدام آلية رسالة كشف أخطاء الاتصال؛ فإذا فشلت DataNodes في الاستجابة، توسم بأن مدة حياتها قد انتهت، وتُنشأ نسخ إضافية من الكتل التي كانت على DataNode للحفاظ على عامل النسخ المتماثل المطلوب.
  • NameNode هي نقطة فشل مفردة (SPOF) في تصميم HDFS الأصلي. يمكن تعيين NameNode ثانوي لنسخ بيانات التعريف بشكل دوري من NameNode الأولي، إلا أنه لا يوفر تكرار التجاوز الكامل للفشل.
  • يوفر نظام HDFS نطاقًا تردديًا عاليًا لـ MapReduce، وموثوقية عالية الدرجة، وتكاليف منخفضة لكل بايت، وقابلية جيدة للتطور.
  • HDFS غير فعال مع الملفات الصغيرة (نظرًا إلى حجم الكتل الافتراضية الكبير)، وهو غير متوافق مع POSIX، ولا يسمح بإعادة كتابة الملفات باستثناء الإلحاقات الواردة في أحدث إصدارات HDFS.
  • Ceph هو نظام تخزين مصمم للتطبيقات السحابية. ويستند Ceph إلى مخزن عناصر موزعة مع خدمات موضوعة في شكل طبقات أعلاه.
  • في قلب Ceph نجد RADOS، وهو مجموعة ذاتية الإدارة من العناصر الخفية للتخزين (OSDs) وعُقد الرصد. تستخدم العقد تقنيات متقدمة لتكون ذاتية الإدارة، ومتسامحة مع الأخطاء وقابلة للتطوير.
  • يُشفر عنصر ما في RADOS إلى فريق إيداع ثم يقترن بعنصر OSD باستخدام خوارزمية CRUSH.
  • يمكن الوصول إلى RADOS من خلال librados، وهو عميل أصلي RADOS يعمل مع لغات البرمجة المختلفة.
  • يمكن للتطبيقات أيضًا الوصول إلى البيانات في RADOS كعناصر عبر بوابة RADOS، التي تدعم بروتوكولات S3 وSwift عن طريق واجهة REST.
  • يُمكن كذلك لـ RADOS تصدير أجهزة تخزين الكتل من خلال استخدام RBD. ويمكن استخدام هذه الصور كصور قرصية للأجهزة الظاهرية.
  • Ceph FS هو نظام ملفات موضوع على شكل طبقات عبر RADOS. ويتم تحقيق ذلك من خلال استخدام عُقد بيانات التعريف الخاصة التي تتعقّب بيانات تعريف نظام الملفات. قسم عقد بيانات التعريف في شجرة نظام الملفات بشكل ديناميكي من خلال اعتماد خوارزمية خاصة. إدخالات بيانات التعريف مدونة في اليوميات أيضًا إلى RADOS لغرض التسامح مع الخطأ.