استخدم Apache Ambari Hive View مع Apache Hadoop في Azure HDInsight

تعلم كيفية تشغيل استعلامات الخلية باستخدام Apache Ambari Hive View. يتيح لك عرض الخلية تأليف وتحسين وتشغيل استعلامات الخلية مباشرة من مستعرض الويب لديك.

المتطلبات الأساسية

نظام مجموعة Linux-based Hadoop المُتاحة على HDInsight. راجع بدء استخدام HDInsight على Linux.

تشغيل استعلام الخلية

  1. من مدخل Azure، حدد نظام المجموعة. راجع قائمة وعرض المجموعات للحصول على الإرشادات. يتم فتح المجموعة في عرض مدخل جديد.

  2. من Cluster dashboards، حدد Ambari home. عند مطالبتك بالمصادقة، استخدم اسم الحساب وكلمة المرور (الافتراضيadmin) لتسجيل الدخول إلى نظام المجموعة التي قمت بتوفيرها عند إنشاء نظام المجموعة. من متصفح ويب، انتقل إلى https://CLUSTERNAME.azurehdinsight.net/#/main/views، حيث CLUSTERNAME اسم نظام مجموعتك.

  3. من قائمة أزرار العروض حدد عرض الخلية.

    حدد Apache Ambari طريقة عرض Apache Hive.

    يتم عرض صفحة مشابهة للصورة التالية:

    صورة لورقة عمل الاستعلام ل طريقة عرض Hive.

  4. في علامة التبويب Query لصق عبارات HiveQL التالية في ورقة العمل:

    DROP TABLE log4jLogs;
    CREATE EXTERNAL TABLE log4jLogs(
        t1 string,
        t2 string,
        t3 string,
        t4 string,
        t5 string,
        t6 string,
        t7 string)
    ROW FORMAT DELIMITED FIELDS TERMINATED BY ' '
    STORED AS TEXTFILE LOCATION '/example/data/';
    SELECT t4 AS loglevel, COUNT(*) AS count FROM log4jLogs
        WHERE t4 = '[ERROR]'
        GROUP BY t4;
    

    تقوم العبارات بالإجراءات الآتية:

    البيان‬ ‏‏الوصف
    DROP TABLE حذف الجدول وملف البيانات، في حالة وجود الجدول مسبقا.
    إنشاء جدول خارجي إنشاء جدول "خارجي" جديد في الخلية. تخزن الجداول الخارجية تعريف الجدول فقط في الخلية. يتم ترك البيانات في الموقع الأصلي.
    تنسيق الصف يظهر كيفية تنسيق البيانات. في هذه الحالة، يتم فصل الحقول في كل سجل بمسافة.
    STORED AS TEXTFILE LOCATION يخبر أين يتم تخزين البيانات وأنه تم تخزينها كنص.
    حدد … حدد عدد لكل الصفوف حيث يحتوي العمود t4 على قيمة [خطأ].

    هام

    اترك تحديد قاعدة البياناتعندبشكل افتراضي. تستخدم الأمثلة في هذا المستند قاعدة البيانات الافتراضية المضمنة مع HDInsight.

  5. لبدء الاستعلام، حدد تنفيذ أسفل ورقة العمل. يتحول الزر إلى اللون البرتقالي ويتغير النص إلى إيقاف.

  6. بمجرد انتهاء الاستعلام، تعرض علامة التبويب النتائج نتائج العملية. النص التالي هو نتيجة الاستعلام:

    loglevel       count
    [ERROR]        3
    

    يمكنك استخدام علامة التبويب LOG لعرض معلومات التسجيل التي تم إنشاؤها في المهمة.

    تلميح

    تحميل النتائج أو حفظها من مربع الحوار الإجراءات المنسدلة ضمن علامة التبويب النتائج.

شرح مرئي

لعرض تصور لخطة الاستعلام، حدد علامة التبويب Visual Explains أسفل ورقة العمل.

يمكن أن تكون طريقة عرض Visual Explains للاستعلام مفيدة في فهم تدفق الاستعلامات المعقدة.

Tez واجهة المستخدم

لعرض واجهة مستخدم Tez للاستعلام، حدد علامة التبويب Tez UI أسفل ورقة العمل.

هام

لا يستخدم Tez لحل كافة الاستعلامات. يمكنك حل العديد من الاستعلامات دون استخدام Tez.

عرض سجل المهمة

تعرض علامة التبويب وظائف محفوظات استعلامات الخلية.

محفوظات علامات تبويب مهام عرض Apache Hive.

جداول قاعدة البيانات

يمكنك استخدام علامة التبويب جداول للعمل مع الجداول داخل قاعدة بيانات الخلية.

صورة لعلامة تبويب جداول Apache Hive.

الاستعلامات المحفوظة

من علامة التبويب استعلام، يمكنك حفظ الاستعلامات اختياريا. بعد حفظ استعلام، يمكنك إعادة استخدامه من علامة التبويب الاستعلامات المحفوظة.

علامة تبويب الاستعلامات المحفوظة لطرق عرض Apache Hive.

تلميح

يتم تخزين الاستعلامات المحفوظة في تخزين نظام المجموعة الافتراضي. يمكنك العثور على الاستعلامات المحفوظة ضمن المسار /user/<username>/hive/scripts. يتم تخزين هذه الملفات .hql كملفات نص عادي.

إذا قمت بحذف نظام المجموعة، ولكن الاحتفاظ بالتخزين، يمكنك استخدام أداة مساعدة مثل مستكشف تخزين Azure أو مستكشف تخزين بحيرة البيانات (من مدخل Azure) لاسترداد الاستعلامات.

الوظائف المعرفة بواسطة المستخدم

يمكنك توسيع الخلية من خلال الوظائف المعرفة من قبل المستخدم (UDF). يتيح لك UDF تنفيذ وظائف أو منطق لا تمكن نمذجته بسهولة في HiveQL.

قم بتعريف مجموعة من UDFs وحفظها باستخدام علامة التبويب UDF في أعلى طريقة عرض الخلية. يمكن استخدام UDFs هذه مع محرر الاستعلام.

عرض علامة تبويب UDFs لعرض Apache Hive.

يظهر زر إدراج udfs في أسفل محرر الاستعلام. يعرض هذا الإدخال قائمة منسدلة من UDFs المعرفة في عرض الخلية. يؤدي تحديد UDF إلى إضافة عبارات HiveQL إلى الاستعلام لتمكين UDF.

على سبيل المثال، إذا قمت بتعريف UDF مع الخصائص التالية:

  • اسم المورد: myudfs

  • مسار المورد: /myudfs.jar

  • اسم UDF: myawesomeudf

  • اسم فئة UDF: com.myudfs.Awesome

باستخدام الزر إدراج udfs يعرض إدخال يسمى myudfs، مع قائمة منسدلة أخرى لكل UDF المعرفة لهذا المورد. في هذه الحالة، إنها myawesomeudf. يؤدي تحديد هذا الإدخال إلى إضافة ما يلي إلى بداية الاستعلام:

add jar /myudfs.jar;
create temporary function myawesomeudf as 'com.myudfs.Awesome';

يمكنك بعد ذلك استخدام UDF في الاستعلام الخاص بك. على سبيل المثال، SELECT myawesomeudf(name) FROM people;

لمزيد من المعلومات حول استخدام UDFs مع الخلية على HDInsight، راجع المقالات التالية:

إعدادات Hive

يمكنك تغيير إعدادات خلية مختلفة، مثل تغيير مشغل تنفيذ الخلية من Tez (الافتراضي) إلى MapReduce.

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

للحصول على معلومات عامة حول Hive في HDInsight: