بنية HBase: نموذج بيانات HBase وآلية قراءة / كتابة HBase

تشرح هذه المدونة على HBase Architecture نموذج بيانات HBase وتعطي نظرة ثاقبة عن هندسة HBase. كما يشرح آليات مختلفة في HBase.

هندسة HBase

في مدونتي السابقة على دروس HBase شرحت ما هو HBase وخصائصه. ذكرت أيضًا دراسة حالة Facebook messenger لمساعدتك على الاتصال بشكل أفضل. الآن المضي قدما في أعمالنا سأشرح لك نموذج بيانات HBase و HBase Architecture.قبل المضي قدمًا ، يجب أن تعرف أيضًا أن HBase مفهوم مهم يشكل جزءًا لا يتجزأ من للحصول على شهادة Hadoop للبيانات الضخمة.

الموضوعات المهمة التي سأناقشها في مدونة HBase للهندسة المعمارية هي:





دعونا نفهم أولاً نموذج بيانات HBase. يساعد HBase في القراءة / الكتابة والبحث بشكل أسرع.



هندسة HBase: نموذج بيانات HBase

كما نعلم ، HBase هي قاعدة بيانات NoSQL موجهة نحو الأعمدة. على الرغم من أنها تشبه قاعدة البيانات العلائقية التي تحتوي على صفوف وأعمدة ، إلا أنها ليست قاعدة بيانات علائقية. قواعد البيانات العلائقية موجهة للصف بينما HBase موجهة نحو العمود. لذلك ، دعونا أولاً نفهم الفرق بين قواعد البيانات الموجهة نحو الأعمدة والموجهة نحو الصف:

قواعد البيانات الموجهة نحو الصفوف مقابل قواعد البيانات الموجهة نحو الأعمدة:

  • تخزن قواعد البيانات الموجهة بالصف سجلات الجدول في تسلسل من الصفوف. في حين أن قواعد البيانات العموديةتخزين سجلات الجدول في تسلسل من الأعمدة ، أي يتم تخزين الإدخالات الموجودة في عمود في مواقع متجاورة على الأقراص.

لفهمها بشكل أفضل ، دعونا نأخذ مثالاً وننظر في الجدول أدناه.



الجدول - HBase Architecture - Edureka

إذا تم تخزين هذا الجدول في قاعدة بيانات موجهة للصف. سيتم تخزين السجلات كما هو موضح أدناه:

واحدوبول ووكرونحنو231وغالانتو

2 ، فين ديزلوالبرازيلو520وموستانج

في قواعد البيانات الموجهة للصفوف يتم تخزين البيانات على أساس الصفوف أو المجموعات كما ترى أعلاه.

كيفية استخدام فئة الماسح الضوئي في جافا

بينما تقوم قواعد البيانات الموجهة بالأعمدة بتخزين هذه البيانات على النحو التالي:

واحدو2و بول ووكروفين ديزلو نحنوالبرازيلو 231و520و غالانتوموستانج

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

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

تحتوي جداول HBase على المكونات التالية الموضحة في الصورة أدناه:

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

بطريقة أكثر بساطة وفهمًا ، يمكننا القول أن HBase يتكون من:

  • مجموعة من الجداول
  • كل جدول مع مجموعات الأعمدة والصفوف
  • يعمل مفتاح الصف كمفتاح أساسي في HBase.
  • يستخدم أي وصول إلى جداول HBase هذا المفتاح الأساسي
  • يشير كل مؤهل عمود موجود في HBase إلى السمة المقابلة للكائن الموجود في الخلية.

الآن بعد أن تعرفت على نموذج بيانات HBase ، دعنا نرى كيف يتماشى نموذج البيانات هذا مع HBase Architecture ويجعله مناسبًا للتخزين الكبير والمعالجة الأسرع.

هندسة HBase: مكونات بنية HBase

يحتوي HBase على ثلاثة مكونات رئيسية ، خادم HMaster و خادم منطقة HBase ، المناطق و حارس حديقة الحيوان .

يوضح الشكل أدناه التسلسل الهرمي لبنية HBase. سنتحدث عن كل واحد منهم على حدة.


الآن قبل الانتقال إلى HMaster ، سوف نفهم المناطق حيث تم وضع جميع هذه الخوادم (HMaster ، خادم المنطقة ، Zookeeper) لتنسيق المناطق وإدارتها وتنفيذ عمليات مختلفة داخل المناطق. لذلك سيكون لديك فضول لمعرفة ما هي المناطق ولماذا هي مهمة للغاية؟

هندسة HBase: منطقة

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

يتم تعيين العديد من المناطق إلى خادم المنطقة ، وهو المسؤول عن معالجة وإدارة وتنفيذ عمليات القراءة والكتابة في تلك المجموعة من المناطق.

إذن ، الخاتمة بطريقة أبسط:

  • يمكن تقسيم الجدول إلى عدد من المناطق. المنطقة هي نطاق من الصفوف التي تم فرزها تخزن البيانات بين مفتاح البداية ومفتاح النهاية.
  • تبلغ مساحة المنطقة الافتراضية 256 ميجا بايت والتي يمكن تهيئتها وفقًا للحاجة.
  • يتم تقديم مجموعة من المناطق للعملاء من خلال خادم المنطقة.
  • يمكن أن يخدم خادم المنطقة ما يقرب من 1000 منطقة للعميل.

الآن بدءًا من أعلى التسلسل الهرمي ، أود أولاً أن أشرح لك عن HMaster Server الذي يعمل بشكل مشابه كـ NameNode في HDFS . بعد ذلك ، بالانتقال إلى الأسفل في التسلسل الهرمي ، سوف آخذك عبر ZooKeeper و Region Server.

هندسة HBase: HMaster

كما في الصورة أدناه ، يمكنك رؤية HMaster يتعامل مع مجموعة من خادم المنطقة الموجود على DataNode. دعونا نفهم كيف يقوم HMaster بذلك.

  • يقوم HBase HMaster بتنفيذ عمليات DDL (إنشاء الجداول وحذفها) وتخصيص المناطق لخوادم المنطقة كما ترى في الصورة أعلاه.
  • ينسق ويدير خادم المنطقة (على غرار NameNode الذي يدير DataNode في HDFS).
  • يقوم بتعيين المناطق إلى خوادم المنطقة عند بدء التشغيل وإعادة تعيين المناطق إلى خوادم المنطقة أثناء الاسترداد وموازنة الحمل.
  • إنه يراقب جميع مثيلات خادم المنطقة في المجموعة (بمساعدة Zookeeper) وينفذ أنشطة الاسترداد كلما تعطل أي خادم منطقة.
  • يوفر واجهة لإنشاء الجداول وحذفها وتحديثها.

يتمتع HBase ببيئة موزعة وضخمة حيث لا يكفي HMaster وحده لإدارة كل شيء. لذا ، قد تتساءل ما الذي يساعد HMaster على إدارة هذه البيئة الضخمة؟ هذا هو المكان الذي يظهر فيه ZooKeeper في الصورة. بعد أن فهمنا كيف يدير HMaster بيئة HBase ، سوف نفهم كيف يساعد Zookeeper HMaster في إدارة البيئة.

هندسة HBase: ZooKeeper - المنسق

توضح هذه الصورة أدناه آلية التنسيق الخاصة بـ ZooKeeper.

كيفية طباعة مجموعة ملفات php
  • يعمل Zookeeper كمنسق داخل بيئة HBase الموزعة. يساعد في الحفاظ على حالة الخادم داخل الكتلة من خلال التواصل من خلال الجلسات.
  • يرسل كل خادم منطقة جنبًا إلى جنب مع HMaster Server نبضات قلب مستمرة على فترات منتظمة إلى Zookeeper ويتحقق من الخادم الحي والمتاح كما هو مذكور في الصورة أعلاه. كما يوفر إعلامات فشل الخادم بحيث يمكن تنفيذ إجراءات الاسترداد.
  • بالإشارة إلى الصورة أعلاه ، يمكنك أن ترى ، هناك خادم غير نشط ، يعمل كنسخة احتياطية للخادم النشط. إذا فشل الخادم النشط ، فإنه يأتي من أجل الإنقاذ.
  • يرسل HMaster النشط نبضات القلب إلى Zookeeper بينما يستمع HMaster غير النشط للإخطار الذي يتم إرساله بواسطة HMaster النشط. إذا فشل HMaster النشط في إرسال نبضة قلب ، يتم حذف الجلسة ويصبح HMaster غير النشط نشطًا.
  • بينما إذا فشل خادم المنطقة في إرسال نبضة قلب ، تنتهي صلاحية الجلسة ويتم إخطار جميع المستمعين بذلك. ثم يقوم HMaster بتنفيذ إجراءات الاسترداد المناسبة والتي سنناقشها لاحقًا في هذه المدونة.
  • يحافظ Zookeeper أيضًا على مسار .META Server ، والذي يساعد أي عميل في البحث عن أي منطقة. يجب على العميل أولاً التحقق من خادم META. حيث تنتمي منطقة خادم المنطقة ، ويحصل على مسار خادم المنطقة هذا.

عندما تحدثت عن .META Server ، اسمحوا لي أولاً أن أشرح لكم ما هو خادم .META؟ لذلك ، يمكنك بسهولة ربط عمل ZooKeeper و .META Server معًا. لاحقًا ، عندما أشرح لك آلية البحث HBase في هذه المدونة ، سأشرح كيف يعمل هذان العنصران بالتعاون.

هندسة HBase: جدول ميتا

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

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

هندسة HBase: مكونات خادم المنطقة

توضح هذه الصورة أدناه مكونات خادم المنطقة. الآن ، سأناقشهم بشكل منفصل.

يحتفظ خادم المنطقة بمناطق مختلفة تعمل في الجزء العلوي من . مكونات خادم المنطقة هي:

  • WAL: كما يمكنك أن تستنتج من الصورة أعلاه ، فإن سجل الكتابة إلى الأمام (WAL) هو ملف مرفق بكل خادم منطقة داخل البيئة الموزعة. يخزن WAL البيانات الجديدة التي لم يتم الاحتفاظ بها أو الالتزام بالتخزين الدائم. يتم استخدامه في حالة الفشل في استعادة مجموعات البيانات.
  • كتلة ذاكرة التخزين المؤقت: من الصورة أعلاه ، من الواضح أن Block Cache موجود في الجزء العلوي من خادم المنطقة. يقوم بتخزين البيانات التي تتم قراءتها بشكل متكرر في الذاكرة. إذا كانت البيانات الموجودة في BlockCache هي الأقل استخدامًا مؤخرًا ، فسيتم حذف تلك البيانات من BlockCache.
  • MemStore: إنها مخبأ الكتابة. يقوم بتخزين جميع البيانات الواردة قبل نقلها إلى القرص أو الذاكرة الدائمة. يوجد MemStore واحد لكل عائلة عمود في المنطقة. كما ترى في الصورة ، هناك العديد من MemStores لمنطقة ما لأن كل منطقة تحتوي على مجموعات أعمدة متعددة. يتم فرز البيانات بترتيب معجمي قبل إرسالها إلى القرص.
  • ملف H: من الشكل أعلاه يمكنك رؤية HFile مخزنة على HDFS. وبالتالي فإنه يخزن الخلايا الفعلية على القرص. تلتزم MemStore بالبيانات إلى HFile عندما يتجاوز حجم MemStore.

الآن بعد أن عرفنا المكونات الرئيسية والثانوية لـ HBase Architecture ، سأشرح الآلية وجهودهم التعاونية في هذا. سواء كان الأمر يتعلق بالقراءة أو الكتابة ، نحتاج أولاً إلى البحث من مكان القراءة أو مكان كتابة الملف. لذا ، دعونا نفهم عملية البحث هذه ، حيث إنها إحدى الآليات التي تجعل HBase مشهورًا للغاية.

هندسة HBase: كيف يبدأ البحث في HBase؟

كما تعلم ، يقوم Zookeeper بتخزين موقع الجدول META. عندما يقترب العميل من طلبات القراءة أو الكتابة إلى HBase ، تحدث العملية التالية:

  1. يسترد العميل موقع جدول التعريف من ZooKeeper.
  2. ثم يطلب العميل موقع خادم المنطقة لمفتاح الصف المقابل من جدول التعريف للوصول إليه. يقوم العميل بتخزين هذه المعلومات مؤقتًا مع موقع الجدول META.
  3. ثم سيحصل على موقع الصف عن طريق الطلب من خادم المنطقة المقابل.

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

كما هو الحال في كل مرة ، لا يضيع العملاء الوقت في استرداد موقع خادم المنطقة من خادم META ، وبالتالي ، فإن هذا يوفر الوقت ويجعل عملية البحث أسرع. الآن ، دعني أخبرك كيف تتم الكتابة في HBase. ما هي المكونات المتضمنة فيه وكيف تشارك؟

هندسة HBase: كتابة HBase آلية

توضح هذه الصورة أدناه آلية الكتابة في HBase.

تمر آلية الكتابة بالعملية التالية بالتسلسل (راجع الصورة أعلاه):

الخطوة 1: عندما يكون لدى العميل طلب كتابة ، يكتب العميل البيانات إلى WAL (سجل الكتابة المسبقة).

  • ثم يتم إلحاق التعديلات في نهاية ملف WAL.
  • يتم الاحتفاظ بملف WAL هذا في كل خادم منطقة ويستخدمه خادم المنطقة لاستعادة البيانات غير الملتزمة بالقرص.

الخطوة 2: بمجرد كتابة البيانات في WAL ، يتم نسخها إلى MemStore.

كيفية منع الجمود في جافا

الخطوه 3: بمجرد وضع البيانات في MemStore ، يتلقى العميل الإقرار.

الخطوة الرابعة: عندما يصل MemStore إلى الحد الأدنى ، يقوم بتفريغ البيانات أو تحويلها إلى ملف HFile.

الآن دعونا نلقي نظرة عميقة ونفهم كيف يساهم MemStore في عملية الكتابة وما هي وظائفها؟

كتابة HBase آلية- MemStore

  • تقوم MemStore دائمًا بتحديث البيانات المخزنة فيه ، بترتيب معجمي (بالتسلسل بطريقة القاموس) مثل KeyValues ​​مرتبة. يوجد MemStore واحد لكل عائلة أعمدة ، وبالتالي يتم تخزين التحديثات بطريقة مرتبة لكل عائلة أعمدة.
  • عندما يصل MemStore إلى العتبة ، فإنه يقوم بتفريغ جميع البيانات في ملف HFile جديد بطريقة مرتبة. يتم تخزين ملف HFile هذا في HDFS. يحتوي HBase على HFiles متعددة لكل عائلة عمود.
  • بمرور الوقت ، يزداد عدد ملفات HFile بينما تقوم MemStore بتفريغ البيانات.
  • يقوم MemStore أيضًا بحفظ آخر رقم تسلسل مكتوب ، لذلك يعرف كل من Master Server و MemStore أن ما تم الالتزام به حتى الآن ومن أين نبدأ. عندما تبدأ المنطقة ، تتم قراءة آخر رقم تسلسلي ، ومن هذا الرقم ، تبدأ عمليات التحرير الجديدة.

كما ناقشت عدة مرات ، فإن HFile هو التخزين الدائم الرئيسي في بنية HBase. أخيرًا ، تلتزم جميع البيانات بـ HFile وهو التخزين الدائم لـ HBase. ومن ثم ، دعونا نلقي نظرة على خصائص HFile التي تجعله أسرع للبحث أثناء القراءة والكتابة.

هندسة HBase: كتابة HBase آلية- H ملف

  • يتم وضع عمليات الكتابة بالتسلسل على القرص. لذلك ، فإن حركة رأس القرص للقراءة والكتابة أقل بكثير. هذا يجعل آلية الكتابة والبحث سريعة جدًا.
  • يتم تحميل فهارس HFile في الذاكرة كلما تم فتح HFile. هذا يساعد في العثور على سجل في بحث واحد.
  • المقطع الدعائي هو مؤشر يشير إلى الكتلة الوصفية لملف HFile. هو مكتوب في نهاية الملف الملتزم. يحتوي على معلومات حول مرشحات الطابع الزمني والازدهار.
  • يساعد Bloom Filter في البحث عن أزواج القيمة الرئيسية ، فهو يتخطى الملف الذي لا يحتوي على مفتاح الصف المطلوب. يساعد الطابع الزمني أيضًا في البحث عن إصدار من الملف ، كما أنه يساعد في تخطي البيانات.

بعد معرفة آلية الكتابة ودور المكونات المختلفة في تسريع الكتابة والبحث. سأشرح لك كيف تعمل آلية القراءة داخل بنية HBase؟ ثم ننتقل إلى الآليات التي تزيد من أداء HBase مثل الضغط وتقسيم المنطقة والاسترداد.

هندسة HBase: قراءة الآلية

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

  • لقراءة البيانات ، يبحث الماسح الضوئي أولاً عن خلية الصف في ذاكرة التخزين المؤقت Block. هنا يتم تخزين جميع أزواج قيمة المفاتيح التي تمت قراءتها مؤخرًا.
  • إذا فشل الماسح في العثور على النتيجة المطلوبة ، فإنه ينتقل إلى MemStore ، لأننا نعلم أن هذه هي ذاكرة التخزين المؤقت للكتابة. هناك ، يبحث عن أحدث الملفات المكتوبة ، والتي لم يتم إغراقها بعد في HFile.
  • أخيرًا ، سيستخدم عوامل تصفية bloom وحظر ذاكرة التخزين المؤقت لتحميل البيانات من HFile.

لقد ناقشت حتى الآن آلية البحث والقراءة والكتابة في HBase. الآن سنلقي نظرة على آلية HBase التي تجعل البحث والقراءة والكتابة سريعًا في HBase. أولا ، سوف نفهم الضغط ، وهي إحدى تلك الآليات.

هندسة HBase: الضغط

HBase يجمع بين HFiles لتقليل التخزين وتقليل عدد طلبات القرص اللازمة للقراءة. هذه العملية تسمى الضغط . يختار الضغط بعض ملفات HFiles من منطقة ويجمعها. هناك نوعان من الضغط كما ترى في الصورة أعلاه.

  1. ضغط طفيف : يختار HBase تلقائيًا ملفات HFiles أصغر حجمًا ويعيد إلزامها بملفات HFiles أكبر كما هو موضح في الصورة أعلاه. وهذا ما يسمى ضغط طفيف. يقوم بفرز دمج لارتكاب HFiles أصغر إلى HFiles أكبر. هذا يساعد في تحسين مساحة التخزين.
  2. الضغط الرئيسي: كما هو موضح في الصورة أعلاه ، في الضغط الرئيسي ، يقوم HBase بدمج ملفات HFiles الأصغر لمنطقة ما وإعادة إلحاقها بملف HFile جديد. في هذه العملية ، يتم وضع مجموعات الأعمدة نفسها معًا في ملف HFile الجديد. يقوم بإسقاط الخلية المحذوفة والمنتهية الصلاحية في هذه العملية. يزيد من أداء القراءة.

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

الآن عملية أخرى لتحسين الأداء والتي سأناقشها هي تقسيم المنطقة . هذا مهم جدا لموازنة الحمل.

هندسة HBase: تقسيم المنطقة

يوضح الشكل أدناه آلية تقسيم المنطقة.

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

بالانتقال إلى أسفل الخط ، أخيرًا وليس آخرًا ، سأشرح لك كيف يستعيد HBase البيانات بعد الفشل. كما نعلم ذلك استرداد الفشل هي ميزة مهمة جدًا لـ HBase ، لذا دعنا نعرف كيف يستعيد HBase البيانات بعد الفشل.

هندسة HBase: HBase Crash واستعادة البيانات

  • عندما يفشل خادم المنطقة ، يقوم ZooKeeper بإعلام HMaster بالفشل.
  • ثم يوزع HMaster ويخصص مناطق خادم المنطقة المعطلة للعديد من خوادم المنطقة النشطة. لاستعادة بيانات MemStore الخاصة بخادم المنطقة الفاشل ، يقوم HMaster بتوزيع WAL على جميع خوادم المنطقة.
  • يعيد كل خادم منطقة تنفيذ WAL لإنشاء MemStore لعائلة أعمدة المنطقة الفاشلة.
  • تتم كتابة البيانات بترتيب زمني (بترتيب زمني) في WAL. لذلك ، فإن إعادة تنفيذ WAL يعني إجراء كل التغييرات التي تم إجراؤها وتخزينها في ملف MemStore.
  • لذلك ، بعد أن تنفذ جميع خوادم المنطقة WAL ، يتم استرداد بيانات MemStore لجميع عائلة الأعمدة.

آمل أن تساعدك هذه المدونة في فهم نموذج بيانات HBase وهندسة HBase. أتمنى انك استمتعت به. الآن يمكنك أن تتصل بميزات HBase (التي شرحتها في السابق دروس HBase blog) باستخدام HBase Architecture وفهم كيفية عملها داخليًا. الآن بعد أن عرفت الجزء النظري من HBase ، يجب عليك الانتقال إلى الجزء العملي. مع وضع ذلك في الاعتبار ، فإن مدونتنا التالية لـ سيتم شرح عينة HBase POC .

الآن بعد أن فهمت بنية HBase ، تحقق من ملف من Edureka ، وهي شركة تعليمية موثوقة عبر الإنترنت مع شبكة تضم أكثر من 250000 متعلم راضٍ منتشرين في جميع أنحاء العالم. تساعد الدورة التدريبية لشهادة Edureka Big Data Hadoop المتعلمين على أن يصبحوا خبراء في مجال HDFS ، و Yarn ، و MapReduce ، و Pig ، و Hive ، و HBase ، و Oozie ، و Flume ، و Sqoop باستخدام حالات الاستخدام في الوقت الفعلي في مجال البيع بالتجزئة ، والوسائط الاجتماعية ، والطيران ، والسياحة ، والمالية

لديك سؤال لنا؟ يرجى ذكر ذلك في قسم التعليقات وسنعاود الاتصال بك.