Azure HDInsight Accelerated Writes لـ Apache HBase

توفر هذه المقالة معلومات أساسية عن الميزة Accelerate Writes الخاصة ب Apache HBase في Azure HDInsight، وكيفية استخدامها بفعالية لتحسين أداء الكتابة. Accelerated Writes يستخدم الأقراص المدارة من Azure Premium المزودة بذاكرة مصنوعة من مكونات صلبة لتحسين أداء Apache HBase Write Ahead Log (WAL). لمعرفة المزيد حول Apache HBase، راجع ما هو Apache HBase في HDInsight.

نظرة عامة على بنية HBase

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

يتم استخدام Regions في HBase لموازنة حمل معالجة البيانات. يقوم HBase بتخزين صفوف جدول في منطقة واحدة. تنتشر الصفوف عبر مناطق متعددة كلما زاد مقدار البيانات في الجدول. يمكن لـ Region Servers معالجة الطلبات لمناطق متعددة.

سجل متقدم للكتابة على HBase من Apache

يقوم HBase أولاً بكتابة تحديثات البيانات إلى نوع من سجل الالتزام يسمى سجل الكتابة للأمام (WAL). بعد تخزين التحديث في WAL، تتم كتابته إلى الذاكرة الموجودة في MemStore. عندما تصل البيانات الموجودة في الذاكرة إلى الحد الأقصى للسعة، تتم كتابتها على القرص ك HFile.

في حالة تعطل RegionServer أو عدم توفره قبل مسح MemStore، يمكن استخدام سجل "الكتابة إلى الأمام" لإعادة تشغيل التحديثات. بدون WAL، إذا تعطل RegionServer قبل مسح التحديثات إلى HFile، يتم فقدان جميع هذه التحديثات.

ميزة Accelerated Writes في Azure HDInsight for Apache HBase

تحل ميزة "Accelerated Writes" مشكلة حالات الوصول الأعلى للكتابة الناتجة عن استخدام "سجلات متقدمة للكتابة" الموجودة في وحدات التخزين على السحابة. ميزة "Accelerated Writes" لمجموعات HBase الخاصة ب HDInsight من Apache، والتي تقوم بإرفاق أقراص فائقة مدارة بذاكرة مصنوعة من مكونات صلبة بكل RegionServer (عقدة عامل). ثم تتم كتابة "سجلات متقدمة" إلى "نظام ملفات Hadoop" (HDFS) المثبت على هذه الأقراص المدارة الفائقة بدلاً من وحدات التخزين عبر الشبكة. تستخدم الأقراص المدارة Premium محركات أقراص مزودة بذاكرة مصنوعة من مكونات صلبة (SSD) وتوفر أداء فائقاً للإدخال/الإخراج مع القدرة على مواجهة الأعطال. وعلى العكس من الأقراص غير المدارة، ففي حالة تعطل وحدة تخزين واحدة، فلن يؤثر ذلك على وحدات التخزين الأخرى في نفس مجموعة التوفر. ونتيجة لذلك، توفر الأقراص المدارة زمن وصول منخفض للكتابة ومرونة أفضل لتطبيقاتك. لمعرفة المزيد حول الأقراص المدارة من Azure، راجع مقدمة إلى الأقراص المدارة من Azure.

كيفية تمكين Accelerated Writes لـ HBase في HDInsight

لإنشاء مجموعة HBase جديدة باستخدام ميزة "Accelerated Writes"، اتبع الخطوات في إعداد مجموعات في HDInsight. في علامة تبويب Basics حدد نوع نظام مجموعة على هيئة HBase، وحدد إصدار مكون، ثم انقر فوق خانة الاختيار المجاورة لـ تمكين الكتابة المعجلة لـ HBase. ثم، استمر في الخطوات المتبقية لإنشاء نظام المجموعة.

Enable accelerated writes option for HDInsight Apache HBase.

التحقق من تمكين ميزة الكتابات المتسارعة

يمكنك استخدام مدخل Microsoft Azure للتحقق مما إذا كانت ميزة الكتابات المتسارعة ممكنة على نظام مجموعة HBASE.

  1. ابحث عن نظام مجموعة HBASE في مدخل Microsoft Azure.
  2. حدد جزء حجم نظام المجموعة.
  3. سيتم عرض الأقراص المتميزة لكل عقدة عاملة.

تحجيم مجموعات HBASE

للحفاظ على متانة البيانات، قم بإنشاء نظام مجموعة بثلاث عقد عاملة كحد أدنى. بمجرد الإنشاء، لا يمكنك تقليل نظام المجموعة إلى أقل من ثلاث عقد للعاملين.

قم بمسح جداول HBase أو تعطيلها قبل حذف نظام المجموعة، حتى لا تفقد بيانات "سجل الكتابة للأمام".

flush 'mytable'
disable 'mytable'

اتبع خطوات مماثلة عند تقليل حجم المجموعة: مسح الجداول وتعطيل الجداول لإيقاف البيانات الواردة. لا يمكنك تقليل نظام المجموعة إلى أقل من ثلاث عقد.

سيؤدي اتباع هذه الخطوات إلى ضمان الخفض الناجح للبيانات وتفادي إمكانية دخول الأسماء في الوضع الآمن بسبب عدم نسخ الملفات بشكل كامل أو بشكل مؤقت.

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

الخطوات التالية