ما هو نظام الملفات الموزعة Hadoop (HDFS)؟ العمارة والميزات والعمليات
نشرت: 2020-02-03نظام الملفات الموزعة Hadoop أو HDFS هو نظام التخزين الأساسي لـ Hadoop. يقوم بتخزين ملفات البيانات الكبيرة التي تعمل على الأجهزة السلعية. نظام التخزين هذا قابل للتطوير ، وقابل للتوسيع بسهولة ، ومتحمل للأعطال.
عندما يكون هناك الكثير من البيانات المخزنة على جهاز مادي واحد ، يصبح التخزين مقسمًا عبر عدة أجهزة لتجنب فقدان البيانات. HDFS هو أحد أنظمة تخزين الملفات الموزعة التي تدير عمليات التخزين عبر العديد من الأجهزة المادية. إليك برنامج تعليمي HDFS لتتمكن من فهم كيفية عمل هذا النظام بشكل أفضل. لنبدأ بهندسته المعمارية.
جدول المحتويات
هندسة HDFS
يحتوي نظام الملفات الموزعة Hadoop على بنية رئيسية وعبد مع المكونات التالية:
- Namenode : هو الجهاز السلعي الذي يحتوي على كل من برنامج namenode ونظام التشغيل Linux / GNU. يمكن تشغيل برنامج Namenode بسلاسة على الأجهزة السلعية دون مواجهة أي مشكلة على الإطلاق. يعمل النظام الذي يحمل الاسم كمكون كخادم رئيسي. يقوم بتنفيذ المهام التي تشمل تنظيم كيفية وصول العملاء إلى الملفات ، وإدارة مساحة اسم نظام الملفات ، وتنفيذ العمليات ، بما في ذلك فتح ، وإغلاق ، وإعادة تسمية الدلائل والملفات.
- Datanode : هو جهاز سلعي يحتوي على برنامج عقدة البيانات ونظام التشغيل Linux / GNU. العقد في الكتلة ستحتوي دائمًا على عقد بيانات مرتبطة بها. هذه العقد مسؤولة عن إدارة تخزين الأجهزة / النظام السلعي. تتضمن بعض المهام التي تؤديها عُقد البيانات عمليات القراءة / الكتابة وفقًا لطلب العميل وإنشاء الكتل وتكرارها وحذفها بناءً على التعليمات التي قدمها رمز الاسم.
- الحظر : يتم تخزين بيانات المستخدم بالكامل في ملفات HDFS. كل ملف ينتمي إلى نظام ملفات معين مقسم إلى جزء واحد أو أكثر ، والتي يتم تخزينها بعد ذلك على شكل datanodes. مقاطع الملفات التي يتم تقسيم الملفات إليها عبارة عن كتل. لذا ، فإن أصغر البيانات التي يستطيع HDFS قراءتها أو كتابتها هي كتلة. في البداية ، يبلغ حجم كل كتلة 64 ميغا بايت. ولكن ، يمكن زيادة هذا الحجم وفقًا لتغييرات تكوين HDFS.
تعطي بنية HDFS صورة واضحة لا لبس فيها لأعمال HDFS. يتكون من عدة datanodes ولكن مجرد اسم واحد. يتم تخزين البيانات الوصفية في namenode بينما العامل الفعلي لنوعي العقد هو datanode. يتم تنظيم العقد في رفوف مختلفة يتم تخزين كتل البيانات عليها لتحسين التسامح مع الخطأ وموثوقية البيانات. يجب على العملاء التفاعل مع اسم الاسم لقراءة / كتابة ملف. يحتوي الكتلة على العديد من رموز البيانات التي تستخدم القرص المحلي لتخزين البيانات المتاحة. Datanode و namenode على اتصال دائم ببعضهما البعض. Datanode مسؤول أيضًا عن نسخ البيانات باستخدام ميزة النسخ المتماثل إلى رموز بيانات مختلفة.
تتم عمليات القراءة والكتابة في HDFS على أصغر مستوى ، أي مستوى الكتلة. يعد مفهوم تكرار البيانات أمرًا أساسيًا لكيفية عمل HDFS - يتم ضمان التوافر العالي للبيانات أثناء فشل العقدة عن طريق إنشاء نسخ متماثلة من الكتل وتوزيعها في المجموعة بأكملها.
عمليات HDFS
نظام ملفات HDFS و Linux متشابهان تمامًا مع بعضهما البعض. لذلك ، يسمح لنا HDFS بأداء جميع العمليات التي اعتدنا القيام بها باستخدام أنظمة الملفات المحلية - يمكننا إنشاء مدير وتغيير الأذونات ونسخ الملفات والقيام بالكثير. لدينا أيضًا العديد من حقوق الوصول إلى الملفات ، بما في ذلك القراءة والكتابة والتنفيذ.

قراءة العملية في HDFS: إذا كنت تريد قراءة ملف مخزن في HDFS ، فسيتعين عليك التفاعل مع namenode. كما ذكرنا سابقًا ، يتم تخزين جميع البيانات الوصفية في اسم الاسم. بمجرد التفاعل مع namenode ، سيمنحك عنوان datanode حيث يتم تخزين الملف الذي تبحث عنه. يمكنك بعد ذلك التفاعل مع datanode الذي تم تقديم عنوانه لك بواسطة namenode ، ثم قراءة المعلومات من هناك.
أنت تتفاعل مع واجهة برمجة تطبيقات نظام الملفات ، والتي تطلب اسم اسم لمشاركة عنوان الكتلة. قبل إعطاء هذه المعلومات ، يقوم namenode بإجراء فحص لمعرفة ما إذا كان لديك الحق في الوصول إلى هذه البيانات أم لا. بمجرد الانتهاء من هذا الفحص ، يقوم namenode إما بمشاركة موقع الحظر أو رفض الوصول بسبب القيود.
يتم إعطاؤك نموذجًا من رمز مميز بواسطة رمز الاسم ، والذي يتعين عليك إظهاره إلى رمز البيانات المعني للوصول إلى ملف. هذا شكل من أشكال آلية الأمان التي تستخدمها HDFS لضمان وصول الشخص المناسب إلى البيانات. لن يسمح لك datanode بقراءة الملف إلا بعد عرض الرمز المميز.


عملية الكتابة: تتبع عملية الكتابة نفس النمط الأولي. تحتاج إلى طلب رمز الاسم للسماح لك بكتابة البيانات. في المقابل ، سيوفر لك موقع datanode الذي يجب تنفيذ عملية الكتابة عليه. بمجرد الانتهاء من إجراء هذه العملية ، سيبدأ datanode في تكرار هذه الكتل من البيانات المكتوبة على رموز البيانات الأخرى. بمجرد الانتهاء من النسخ ، ستتلقى إقرارًا. آلية المصادقة في عملية الكتابة هي نفس عملية القراءة.
ميزات HDFS
- التوفر : لا يوجد الكثير من أنظمة الملفات التي تأتي مع توافر HDFS العالي. يتبع نظام الملفات آلية لتكرار البيانات في شكل نسخ متماثلة للكتل على رموز البيانات (العبيد) في جميع أنحاء الكتلة. للوصول إلى هذه البيانات ، تحتاج إلى التفاعل مع رموز البيانات التي تحتوي على كتل المعلومات التي يبحثون عنها.
- الموثوقية : نظام الملفات الموزعة Hadoop هو نظام تخزين بيانات موثوق للغاية. كمية البيانات التي يمكن تخزينها على نطاق HDFS بالبيتابايت. يستخدم الكتلة لتخزين جميع بياناته ، والتي يتم فصلها لتشكيل كتل. ثم يستخدم عقد الكتلة لتخزين هذه الكتل.
- تحمل الخطأ : هذه الميزة هي قوة عمل HDFS في ظروف ليست مواتية كما هي عادة. يتسامح HDFS مع الأخطاء مثل أي نظام ملفات آخر. إنه يحمي بياناتك من تأثيرات أي تأثيرات غير متوقعة ، حتى في المستقبل. كما تم التلميح إليه بالفعل ، يتم تكرار البيانات على أجهزة مختلفة. ماذا يحدث عندما يتوقف أي من هذه الآلات عن العمل؟ قد تكون مشكلة كبيرة مع أي نظام آخر ، ولكن ليس HDFS. يسمح لك HDFS بالوصول إلى بياناتك من أي جهاز آخر يحتوي أيضًا على نسخة من كتل البيانات التي تبحث عنها. وهذا ما يسمى بالتسامح الحقيقي مع الخطأ.
- قابلية التوسع : تستخدم HDFS عقدًا مختلفة في مجموعة لتخزين البيانات. عندما تزداد متطلبات التخزين ، يمكنك دائمًا المضي قدمًا وتوسيع نطاق المجموعة. هذه ميزة أخرى تنفرد بها HDFS. يوفر لك نظام توزيع الملفات آليتين لتوسيع نطاق المجموعة - قابلية التوسع الأفقي والرأسي.
- النسخ المتماثل : النسخ المتماثل هي ميزة تميز HDFS عن أنظمة التخزين الأخرى. يقلل النسخ المتماثل حالات فقدان البيانات بسبب حدث غير موات ، مثل تعطل العقدة وفشل الأجهزة وغير ذلك. تتم عملية النسخ بشكل منتظم وعلى أجهزة مختلفة. لذلك ، لا يوجد فقدان للبيانات في حالة تعطل الجهاز. يمكنك استخدام أي جهاز آخر للحصول على بياناتك.
أهداف HDFS
- إدارة مجموعات البيانات الضخمة: على عكس أنظمة توزيع الملفات الأخرى ، فإن HDFS لديها البنية المطلوبة لإدارة التطبيقات التي تتميز بمجموعات بيانات ضخمة. اعتمادًا على ضخامة مجموعات البيانات المعنية ، يمكن أن تحتوي على مئات العقد لكل مجموعة.
- كشف الأعطال واستعادتها: لا يمكن للكثيرين التغلب على HDFS في قدراته المرتبطة باكتشاف الأخطاء ومن ثم التعامل معها بشكل مناسب. إن عددًا كبيرًا من أجهزة السلع المعنية يجعل HDFS عرضة لفشل متكرر في المكونات. ومع ذلك ، هذا ليس عيب. كل نظام يتعامل مع أجهزة سلعة كهذه معرض للفشل. ومع ذلك ، يبقى السؤال ما إذا كان النظام بارعًا أم لا في اكتشاف هذه الأعطال بسرعة وتلقائيًا وتوفير الاسترداد في نفس الوقت. HDFS قادر بالتأكيد.
- زيادة الإنتاجية: يعالج HDFS كل مهمة بكفاءة حيث يتم إجراء الحساب الفعلي بالقرب من البيانات نفسها. هذا مهم جدًا بشكل خاص عندما نتعامل مع مجموعات بيانات ضخمة. تعمل هذه الآلية على زيادة الإنتاجية وإلغاء مشكلة حركة مرور الشبكة بشكل كبير.
في الختام ، نود أن نقول إن HDFS يمكنه تخزين كميات هائلة من البيانات بطريقة موثوقة ودون الشعور بآثار فشل الأجهزة. كما أنه يتحمل الأخطاء بدرجة عالية ومتوفر بدرجة عالية وقابل للتطوير بدرجة كبيرة.
للسفر في أعماق Hadoop ولكي تصبح خبيرًا ، تحقق من شهادة upGrad & BITS Pilani's PG في البيانات الضخمة والتحليلات. احصل على خبرة عملية ، وجهًا لوجه مع خبراء الصناعة ، وموجه مخصص ، وحالة خريجي BITS Pilani ، والمزيد.
إذا كنت مهتمًا بمعرفة المزيد عن البيانات الضخمة ، فراجع دبلومة PG في تخصص تطوير البرمجيات في برنامج البيانات الضخمة المصمم للمهنيين العاملين ويوفر أكثر من 7 دراسات حالة ومشاريع ، ويغطي 14 لغة وأدوات برمجة ، وتدريب عملي عملي ورش العمل ، أكثر من 400 ساعة من التعلم الصارم والمساعدة في التوظيف مع الشركات الكبرى.
تعلم دورات تطوير البرمجيات عبر الإنترنت من أفضل الجامعات في العالم. اربح برامج PG التنفيذية أو برامج الشهادات المتقدمة أو برامج الماجستير لتتبع حياتك المهنية بشكل سريع.