ما آلية عمل Hive؟
تم إنشاء Hive للسماح لغير المبرمجين المطلعين على SQL بالعمل مع وحدات بيتابايت من البيانات، باستخدام واجهة تشبه SQL تسمى HiveQL. تم تصميم قواعد البيانات العلائقية التقليدية للاستعلامات التفاعلية على مجموعات البيانات الصغيرة والمتوسطة ولكنها لا تجيد معالجة مجموعات البيانات الضخمة. تستخدم Hive بدلاً من ذلك المعالجة المجمعة، حيث تعمل بسرعة عبر قاعدة بيانات موزعة كبيرة جدًا. يُحوّل Hive استعلامات HiveQL إلى وظائف MapReduce أو Tez التي تعمل على إطار جدولة وظائف Apache Hadoop الموزعة، وهو الإطار Yet Another Resource Negotiator (YARN). يستعلم عن البيانات المخزنة في حل التخزين الموزع، مثل نظام الملفات الموزّعة لـ Hadoop (HDFS) أو Amazon S3. يُخزن Hive قاعدة البيانات والبيانات الوصفية الخاصة بالجداول في مخزن metastore، وهو قاعدة بيانات أو مخزن مدعوم بالملفات يتيح سهولة استخراج البيانات واكتشافها.
يتضمن Hive دليل HCatalog، وهو عبارة عن طبقة لإدارة الجداول والتخزين تقرأ البيانات من Hive metastore لتسهيل التكامل السلس بين Hive وApache Pig وMapReduce. باستخدام متجر metastore، يتيح HCatalog لكل من Pig وMapReduce استخدام نفس هياكل البيانات مثل Hive، وبالتالي لا يلزم إعادة تعريف البيانات الوصفية لكل محرك. يُمكن للتطبيقات المخصصة أو تكاملات الجهات الخارجية استخدام WebHCat، وهي واجهة RESTful API للدليل HCatalog للوصول إلى بيانات Hive الوصفية وإعادة استخدامها.