استخدم Data Lake Tools لـ Visual Studio للاتصال بـ Azure HDInsight وتشغيل استعلامات Apache Hive

تعرف على كيفية استخدام Microsoft Azure Data Lake وأدوات Stream Analytics Tools لبرنامج Visual Studio (أدوات Data Lake). استخدم الأداة للاتصال بمجموعات Apache Hadoop في Azure HDInsight وإرسال استعلامات Apache Hive.

لمزيد من المعلومات حول استخدام HDInsight، راجع بدء استخدام HDInsight.

يمكنك استخدام Data Lake Tools لـ Visual Studio للوصول إلى Azure Data Lake Analytics وHDInsight. للحصول على معلومات حول أدوات Data Lake، راجع تطوير البرامج النصية لـ U-SQL باستخدام Data Lake Tools for Visual Studio .

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

لإكمال هذه المقالة واستخدام أدوات Data Lake لبرنامج Visual Studio، تحتاج إلى العناصر التالية:

تثبيت أدوات Data Lake لبرنامج Visual Studio

اتبع الإرشادات المناسبة لتثبيت أدوات Data Lake لإصدار Visual Studio الخاص بك:

  • بالنسبة لبرنامج Visual Studio 2017 أو Visual Studio 2019:

    أثناء تثبيت Visual Studio، تأكد من تضمين حمل عمل توزيع Azure أو حمل عمل تخزين البيانات ومعالجتها.

    بالنسبة لعمليات تثبيت Visual Studio الحالية، انتقل إلى شريط قوائم IDE، وحدد Tools> الحصول على أدوات وميزات لفتح مثبت Visual Studio. في علامة التبويب Workloads حدد على الأقل حمل عمل Azure development (ضمن مجموعة النظراء & ويب). أو حدد حمل العمل تخزين البيانات ومعالجتها (ضمن مجموعات أدوات أخرى).

    Workload selection, Visual Studio Installer.

  • بالنسبة لبرنامج Visual Studio 2015:

    تنزيل أدوات Data Lake. اختر إصدار Data Lake Tools الذي يتطابق مع إصدار Visual Studio الخاص بك.

تحديث أدوات Data Lake لبرنامج Visual Studio

بعد ذلك، تأكد من تحديث أدوات Data Lake إلى أحدث إصدار.

  1. افتح Visual Studio.

  2. في نافذة Start، حدد Continue without code.

  3. في شريط قائمة Visual Studio IDE، اختر Extensions>Manage Extensions.

  4. في مربع الحوار Manage Extensions، قم بتوسيع عقدة Updates.

  5. إذا كانت قائمة التحديثات المتوفرة تتضمن Azure Data Lake وStream Analytic Tools ، فحددها. ثم حدد الزر Update الخاص به. بعد ظهور مربع حوار Download and Install واختفائه، يضيف Visual Studio الملحق Azure Data Lake وStream Analytic Tools إلى جدول التحديث.

  6. أغلق جميع نوافذ Visual Studio. يظهر مربع الحوار VSIX Installer.

  7. حدد License لقراءة شروط الترخيص، ثم حدد Close للعودة إلى مربع الحوار VSIX Installer.

  8. حدد Modify. يبدأ تثبيت تحديث الملحق. بعد فترة، يتغير مربع الحوار ليوضح أنه تم إجراء التعديلات. حدد Close، ثم أعد تشغيل Visual Studio لإكمال التثبيت.

إشعار

يمكنك استخدام الإصدار 2.3.0.0 من أدوات Data Lake فقط أو إصدار أحدث للاتصال بمجموعات مجموعات Interactive Query وتشغيل استعلامات Apache Hive التفاعلية.

التوصيل باشتراكات Azure

يمكنك استخدام Data Lake Tools لـ Visual Studio للتوصيل بمجموعات HDInsight الخاصة بك، والقيام ببعض عمليات الإدارة الأساسية، وتشغيل استعلامات Apache Hive.

إشعار

للحصول على معلومات حول الاتصال بمجموعة Hadoop عامة، راجع كيفية كتابة وإرسال استعلامات Apache Hive باستخدام Visual Studio.

الإتصال باشتراك Azure

للاتصال باشتراك Azure الخاص بك:

  1. افتح Visual Studio.

  2. في نافذة Start، حدد Continue without code.

  3. في شريط قائمة IDE، اختر View>Server Explorer.

  4. في Server Explorer، انقر بزر الماوس الأيمن فوق Azure، وحدد Connect to Microsoft Azure Subscription، وأكمل عملية المصادقة. من Server Explorer، قم بتوسيع Azure>HDInsight لعرض قائمة مجموعات HDInsight الحالية.

  5. إذا لم يكن لديك أي مجموعات، فأنشئ واحدة باستخدام مدخل Microsoft Azure أو Azure PowerShell أو HDInsight SDK. لمزيد من المعلومات، راجع إعداد المجموعات في HDInsight.

    HDInsight cluster list, Server Explorer, Visual Studio.

  6. قم بتوسيع مجموعة HDInsight. تحتوي المجموعة على عقد لـ Apache Hive Databases. أيضاً، حساب تخزين افتراضي، وأي حسابات تخزين إضافية مرتبطة، وHadoop Service Log. يمكنك توسيع الكيانات.

بعد الاتصال باشتراك Azure الخاص بك، يمكنك القيام بالمهام التالية.

اتصل بـ Azure من Visual Studio

للاتصال بمدخل Microsoft Azure من Visual Studio:

  1. في Server Explorer، وسّع Azure>HDInsight وحدد مجموعتك.

  2. انقر بزر الماوس الأيمن فوق مجموعة HDInsight، وحدد Manage Cluster in Azure portal.

تقديم أسئلة وتعليقات من Visual Studio

لطرح الأسئلة و/ أو تقديم ملاحظات من Visual Studio:

  1. من Server Explorer، اختر Azure>HDInsight.

  2. انقر بزر الماوس الأيمن فوق HDInsight وحدد إما MSDN Forum لطرح الأسئلة، وإما Give Feedback لتقديم ملاحظات.

إشعار

حالياً، النوع الوحيد من مجموعة HDInsight الذي يمكنك الارتباط به هو نوع Apache Hive.

لربط مجموعة HDInsight:

  1. انقر بزر الماوس الأيمن فوق HDInsight، ثم حدد Link a HDInsight Cluster لعرض مربع الحوار Link a HDInsight Cluster.

  2. أدخل عنوان URL للاتصال in the form https://CLUSTERNAME.azurehdinsight.net. يملأ Cluster Name تلقائيّاً جزء اسم المجموعة من عنوان URL الخاص بك عندما تنتقل إلى حقل آخر. ثم أدخل Username وPassword، وحدد Next.

    Link a cluster, HDInsight, Visual Studio.

  3. حدد إنهاء. إذا كان ربط المجموعة ناجحاً، فسيتم إدراج الكتلة بعد ذلك ضمن عقدة HDInsight.

لتحديث مجموعة مرتبطة، انقر بزر الماوس الأيمن فوق المجموعة وحدد Edit. يمكنك بعد ذلك تحديث معلومات نظام المجموعة.

Edit a linked cluster, HDInsight, Visual Studio.

استكشاف الموارد المرتبطة

من Server Explorer، يمكنك رؤية حساب التخزين الافتراضي وأي حسابات تخزين مرتبطة. إذا قمت بتوسيع حساب التخزين الافتراضي، يمكنك رؤية الحاويات في حساب التخزين. يتم وضع علامة على حساب التخزين الافتراضي والحاوية الافتراضية.

Data Lake Tools for Visual Studio linked resources in Server Explorer.

انقر بزر الماوس الأيمن فوق حاوية وحدد View Container لعرض محتويات الحاوية. بعد فتح الحاوية، يمكنك استخدام أزرار شريط الأدوات من أجل Refresh قائمة المحتوى، Upload Blob، Delete selected blobs، Open Blob، وتنزيل (Save As) الكرات الثنائية الكبيرة.

Container list and blob operations, HDInsight cluster, Visual Studio.

تشغيل استعلامات Apache Hive التفاعلية

Apache Hive عبارة عن بنية أساسية لمستودع البيانات تم إنشاؤها على Hadoop. يتم استخدام Apache Hive لتلخيص البيانات والاستعلامات والتحليل. يمكنك استخدام Data Lake Tools لـ Visual Studio لتشغيل استعلامات Apache Hive من Visual Studio. لمزيد من المعلومات حول Hive، راجع ما هي Apache Hive وHiveQL على Azure HDInsight؟.

Interactive Query في Azure HDInsight يستخدم Hive on LLAP في Apache Hive 2.1. يجلب Interactive Query التفاعل إلى الاستعلامات المعقدة على غرار مستودع البيانات على مجموعات البيانات الكبيرة والمخزنة. يعد تشغيل استعلامات Hive على Interactive Query أسرع بكثير من وظائف مجموعة Apache Hive التقليدية.

إشعار

يمكنك تشغيل استعلامات Apache Hive التفاعلية فقط عند الاتصال بمجموعة HDInsight Interactive Query.

يمكنك أيضاً استخدام Data Lake Tools لـ Visual Studio لمعرفة ما يوجد داخل وظيفة Apache Hive. تقوم Data Lake Tools for Visual Studio بتجميع سجلات Yarn الخاصة بوظائف Apache Hive معينة وإبرازها.

من Server Explorer، اختر Azure>HDInsight وحدد مجموعتك. هذه العقدة هي نقطة البداية في Server Explorer للأقسام التي يجب اتباعها.

عرض hivesampletable

تحتوي جميع مجموعات HDInsight على نموذج افتراضي لجدول Apache Hive يسمى hivesampletable.

من المجموعة الخاصة بك، اختر Apache Hive Databases>default> hivesampletable .

  • لعرض مخطط hivesampletable:

    قم بتوسيع hivesampletable. يتم عرض أسماء وأنواع بيانات أعمدة hivesampletable.

  • لعرض بيانات hivesampletable:

    انقر بزر الماوس الأيمن فوق hivesampletable، وحدد View Top 100 Rows. تظهر قائمة 100 نتيجة في النافذة Hive Table: hivesampletable. يكافئ هذا الإجراء تشغيل استعلام Apache Hive التالي باستخدام برنامج تشغيل Hive ODBC:

    SELECT * FROM hivesampletable LIMIT 100

    يمكنك تخصيص عدد الصفوف بتغيير Number of rows ؛ يمكنك اختيار 50 أو 100 أو 200 أو 1000 صف من القائمة المنسدلة.

إنشاء جداول Apache Hive

لإنشاء جدول Apache Hive، يمكنك استخدام واجهة المستخدم الرسومية أو يمكنك استخدام استعلامات Apache Hive. للحصول على معلومات حول استخدام استعلامات Hive، راجع إنشاء استعلامات Apache Hive وتشغيلها.

  1. من المجموعة الخاصة بك، اختر Hive Databases>default.

  2. انقر بزر الماوس الأيمن فوق default، وحدد default.

  3. قم بتكوين الجدول.

  4. حدد الزر Create Table لإرسال الوظيفة، ما يؤدي إلى إنشاء جدول Hive الجديد.

    Create Table window, Hive, HDInsight cluster, Visual Studio.

إنشاء وتشغيل استعلامات Hive

لديك خياران لإنشاء استعلامات Apache Hive وتشغيلها:

  • إنشاء استعلامات مخصصة
  • إنشاء تطبيق Apache Hive

إنشاء استعلام خاص

لإنشاء استعلام خاص وتشغيله:

  1. انقر بزر الماوس الأيمن فوق نظام المجموعة حيث تريد تشغيل الاستعلام، وحدد Write a Hive Query.

  2. أدخل استعلام Hive.

    محرر Hive يدعم IntelliSense. تدعم أدوات مستودع البيانات لـ Visual Studio تحميل بيانات التعريف عن بُعد عندما تقوم بتحرير برنامج Apache Hive النصي الخاص بك. على سبيل المثال، إذا كتبت SELECT * FROM، فسوف يسرد IntelliSense جميع أسماء الجداول المقترحة. عند تحديد اسم جدول، يسرد IntelliSense أسماء الأعمدة. تدعم الأدوات معظم عبارات Hive DML والاستعلامات الفرعية وUDFs المضمنة.

    IntelliSense example 1, Hive ad-hoc query, HDInsight cluster, Visual Studio.

    IntelliSense example 2, Hive ad-hoc query, HDInsight cluster, Visual Studio.

    إشعار

    يقترح IntelliSense بيانات تعريف الكتلة المحددة في شريط أدوات HDInsight فقط.

    إليك نموذج استعلام يمكنك استخدامه:

    SELECT devicemodel, COUNT(devicemodel) AS deviceCount
    FROM hivesampletable
    GROUP BY devicemodel
    ORDER BY devicemodel
    
  3. اختر وضع التنفيذ:

    • Interactive

      في القائمة المنسدلة الأولى، اختر Interactive، ثم حدد Execute.

      Interactive mode, Hive ad-hoc query, HDInsight cluster, Visual Studio.

    • الدفعه

      في القائمة المنسدلة الأولى، اختر Batch، ثم حدد Submit. أو حدد رمز القائمة المنسدلة بجوار Batch واختر Advanced.

      Batch mode, Hive ad-hoc query, HDInsight cluster, Visual Studio.

      إذا حددت خيار الإرسال المتقدم، فسيظهر مربع الحوار Submit Script. قم بتكوين Job Name وArguments وAdditional Configurations وStatus Directory للنص البرمجي.

      Submit Script dialog box, Hive ad-hoc query, HDInsight cluster, Visual Studio.

      إشعار

      لا يمكنك إرسال مجموعات إلى أنظمة مجموعات "Interactive Query". يجب عليك استخدام الوضع التفاعلي.

إنشاء تطبيق Apache Hive

لإنشاء حل Hive وتشغيله:

  1. من شريط القائمة، اختر File> New>Project .

  2. في نافذة Create a new project، حدد مربع البحث واكتب Hive. ثم اختر تطبيق Apache Hive وحدد التالي.

  3. في نافذة Configure your new project، أدخل Project name، وحدد أو أنشئ Location، ثم حدد Create.

    New Hive application, Configure your new project window, HDInsight Visual Studio.

  4. في مستكشف الحلول، انقر نقراً مزدوجاً فوق Script.hql لفتح البرنامج النصي.

عرض ملخص الوظيفة والمخرجات

يختلف ملخص الوظيفة اختلافاً طفيفاً بين الوضع Batch وInteractive.

Hive job summary windows, batch and interactive mode, Visual Studio.

استخدم الرمز Refresh لتحديث الحالة حتى تتغير حالة الوظيفة إلى Finished.

  • للحصول على تفاصيل الوظيفة من وضع Batch، حدد الروابط في الأسفل لمشاهدة Job Query، أو Job Output، أو Job Log، أو View Yarn Logs.

  • للحصول على تفاصيل المهمة من الوضع Interactive، راجع جزأي Output وHiveServer2 Output.

    Hive interactive job output, HDInsight cluster, Visual Studio.

عرض الرسم البياني للوظيفة

حالياً، يتم عرض الرسوم البيانية للوظائف فقط لوظائف Hive التي تستخدم Tez كمحرك تنفيذ. للحصول على معلومات حول تمكين Tez، راجع ما هي Apache Hive وHiveQL على Azure HDInsight؟. راجع أيضاً، استخدام Apache Tez بدلاً من Map Reduce.

لعرض جميع العوامل الموجودة داخل الرأس، انقر نقراً مزدوجاً فوق رؤوس الرسم البياني للوظيفة. يمكنك أيضاً الإشارة إلى عامل تشغيل معين لمعرفة المزيد من التفاصيل حول المشغل.

حتى إذا تم تحديد Tez كمحرك التنفيذ، فقد لا يظهر الرسم البياني للوظيفة إذا لم يتم تشغيل تطبيق Tez. قد يحدث هذا الموقف لأن المهمة لا تحتوي على عبارات DML. أو لأن عبارات DML يمكن أن تعود دون تشغيل تطبيق Tez. على سبيل المثال، لن يقوم SELECT * FROM table1 بتشغيل تطبيق Tez.

Apache Hive job graph, Visual Studio.

عرض تفاصيل تنفيذ المهمة

من الرسم البياني للوظيفة، يمكنك تحديد Task Execution Detail للحصول على معلومات منظمة ومرئية لوظائف Hive. يمكنك أيضاً الحصول على مزيد من تفاصيل الوظيفة. في حالة حدوث مشكلات في الأداء، يمكنك استخدام العرض للحصول على مزيد من التفاصيل حول المشكلة. على سبيل المثال، يمكنك استرداد معلومات حول كيفية عمل كل مهمة ومعلومات مفصلة حول كل مهمة (قراءة / كتابة البيانات، والجدولة / وقت البدء / الانتهاء، والمزيد). استخدم المعلومات لضبط تكوينات الوظائف أو بنية النظام بناءً على المعلومات المرئية.

Task Execution View window, Data Lake Visual Studio Tools.

مشاهدة ملف Hive jobs

يمكنك عرض استعلامات الوظائف وإخراج الوظيفة وسجلات الوظائف وسجلات Yarn لوظائف Hive.

في أحدث إصدار من الأدوات، يمكنك رؤية ما يوجد داخل وظائف Hive الخاصة بك عن طريق جمع سجلات Yarn وظهورها. يمكن أن يساعدك سجل Yarn في التحقيق في مشكلات الأداء. لمزيد من المعلومات حول كيفية قيام HDInsight بتجميع سجلات Yarn، راجع الوصول إلى سجلات تطبيق Apache Hadoop YARN.

لعرض وظائف Hive:

  1. انقر بزر الماوس الأيمن فوق مجموعة HDInsight، وحدد View Jobs.

    View Jobs, Apache Hive, HDInsight cluster, Visual Studio.

    تظهر قائمة بوظائف Hive التي تم تشغيلها على المجموعة.

  2. اختر وظيفة. في نافذة Hive Job Summary، حدد أحد الروابط التالية:

    • Job Query
    • Job Output
    • Job Log
    • Yarn Log

قم بتشغيل البرامج النصية Apache Pig

  1. من شريط القائمة، اختر File> New>Project .

  2. في نافذة Start، حدد مربع البحث وأدخل Pig. ثم حدد Pig Application وحدد Next.

  3. في نافذة Configure your new project، أدخل Project name، وحدد أو أنشئ Location للمشروع. وبعد ذلك، حدد إنشاء.

  4. في جزء IDE Solution Explorer ، انقر نقراً مزدوجاً فوق Script.pig لفتح البرنامج النصي.

التعليقات والمشكلات المعروفة

  • تم إصلاح مشكلة عدم عرض النتائج التي بدأت بقيم خالية. إذا حظرت هذه المشكلة، فاتصل بفريق الدعم.

  • يتم ترميز البرنامج النصي HQL الذي ينشئه Visual Studio، اعتماداً على إعداد المنطقة المحلية للمستخدم. لا يتم تنفيذ البرنامج النصي بشكل صحيح إذا قمت بتحميل البرنامج النصي إلى مجموعة كملف ثنائي.

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

في هذه المقالة، تعلمت كيفية استخدام حزمة Data Lake Tools لـ Visual Studio للاتصال بمجموعات HDInsight من Visual Studio. لقد تعلمت أيضاً كيفية تشغيل استعلام Hive.