ما هو Apache HBase في Azure HDInsight؟

Apache HBase عبارة عن قاعدة بيانات NoSQL مفتوحة المصدر مبنية على Apache Hadoop وصُممت على غرار Google BigTable. توفر HBase وصولًا عشوائيًّا وتناسقًا قويًّا لكميات البيانات الكبيرة في قاعدة البيانات بلا تخطيط. تقوم مجموعات الأعمدة بتنظيم قاعدة البيانات.

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

كيف يتم تنفيذ Apache HBase في Azure HDInsight؟

يتم تقديم HDInsight HBase كمجموعة مُدارة مدمجة في بيئة Azure. يتم تكوين المجموعات لتخزين البيانات مباشرة في تخزين Azure، مما يوفر زمن وصول منخفض ومرونة متزايدة في خيارات الأداء والتكلفة. تتيح هذه الخاصية للعملاء إنشاء مواقع ويب تفاعلية تعمل باستخدام مجموعات بيانات كبيرة. لبناء الخدمات التي تخزن بيانات المستشعر وبيانات القياس عن بعد من ملايين نقاط النهاية. وتحليل هذه البيانات مع وظائف Hadoop. HBase وHadoop عبارة عن نقاط بداية جيدة لمشروع البيانات الكبيرة في Azure. يمكن للخدمات تمكين تطبيقات الوقت الفعلي للعمل مع مجموعات البيانات الكبيرة.

يستخدم تطبيق HDInsight بنية توسعة القراءة لـ HBase لتوفير التقسيم التلقائي للجداول. والاتساق القوي لعمليات القراءة والكتابة وتجاوز الفشل التلقائي. يُحسَّن الأداء من خلال التخزين المؤقت في الذاكرة لعمليات القراءة والتدفق بمعدل نقل عالٍ لعمليات الكتابة. يمكن إنشاء نظام مجموعة HBase داخل الشبكة الظاهرية. لمزيد من التفاصيل، راجع إنشاء أنظمة مجموعات HDInsight على Azure Virtual Network.

كيف تتم إدارة البيانات في HDInsight HBase؟

يمكن إدارة البيانات في HBase باستخدام الأوامر create وget وput وscan من HBase shell. تتم كتابة البيانات إلى قاعدة البيانات باستخدام put والقراءة باستخدام get. يتم استخدام الأمر scan للحصول على البيانات من صفوف متعددة في جدول. كما يمكن إدارة البيانات باستخدام واجهة برمجة تطبيقات HBase C# الذي يوفر مكتبة عميل أعلى API REST HBase. كما يمكن الاستعلام عن قاعدة بيانات HBase باستخدام Apache Hive. للحصول على مقدمة لنماذج البرمجة هذه، راجع البدء باستخدام Apache HBase مع Apache Hadoop في HDInsight. كما تتوفر المعالجات المشتركة، والتي تسمح بمعالجة البيانات في العقد التي تستضيف قاعدة البيانات.

ملاحظة

لا يدعم HBase التوفير في HDInsight.

حالات استخدام Apache HBase

حالة الاستخدام المتعارف عليها التي تم إنشاء BigTable لها (وبالتالي HBase) من بحث الويب. محركات البحث تبني فهارس تعين الشروط إلى صفحات الويب التي تحتوي عليها. ولكن هناك الكثير من حالات الاستخدام الأخرى التي تناسبها HBase—الكثير منها تم تفصيلها في هذا القسم.

السيناريو الوصف
مخزن قيمة المفتاح يمكن استخدام HBase كمخزن للقيمة الأساسية وهو مناسب لإدارة نظم الرسائل. فيسبوك يستخدم HBase لنظام المراسلة الخاص بهم، وهو مثالي لتخزين اتصالات الإنترنت وإدارتها. WebTable يستخدم HBase للبحث عن الجداول المستخرجة من صفحات ويب وإدارتها.
بيانات أداة الاستشعار HBase مفيد لالتقاط البيانات التي يتم تجميعها بشكل متزايد من مصادر مختلفة. تتضمن هذه البيانات التحليلات الاجتماعية والسلاسل الزمنية. والحفاظ على لوحات المعلومات التفاعلية حتى الآن مع الاتجاهات والعدادات، وإدارة أنظمة سجل التدقيق. ومن الأمثلة على ذلك محطة Bloomberg للتداول وقاعدة بيانات السلسلة الزمنية المفتوحة (OpenTSDB). يخزن OpenTSDB ويوفر الوصول إلى المقاييس التي تم جمعها حول صحة أنظمة الخادم.
الاستعلام في الوقت الفعلي Apache Phoenix عبارة عن محرك استعلام SQL لـ Apache HBase. يمكن الوصول إليه كبرنامج تشعيل JDBC، وهو يمكن من الاستعلام عن وإدارة جداول HBase باستخدام SQL.
HBase كنظام أساسي يمكن تشغيل التطبيقات على HBase باستخدامه كمخزن بيانات. ومن الأمثلة على ذلك Phoenix وOpenTSDB وKiji وTitan. كما يمكن أن تتكامل التطبيقات مع HBase. ومن الأمثلة على ذلك: Apache Hive وApache Pig وSlr وApache Flume وApache Impala وApache Spark GangliaوApache Drill.

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