استخدم 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، تحتاج إلى العناصر التالية:
مجموعة Azure HDInsight. لإنشاء مجموعة HDInsight، راجع البدء باستخدام Apache Hadoop في Azure HDInsight. لتشغيل استعلامات Apache Hive التفاعلية، تحتاج إلى مجموعة HDInsight Interactive Query.
Visual Studio. يعد إصدار Visual Studio Community مجانياً. الإرشادات الموضحة هنا تخص Visual Studio 2019.
تثبيت أدوات 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 (ضمن مجموعة النظراء & ويب). أو حدد حمل العمل تخزين البيانات ومعالجتها (ضمن مجموعات أدوات أخرى).
بالنسبة لبرنامج Visual Studio 2015:
تنزيل أدوات Data Lake. اختر إصدار Data Lake Tools الذي يتطابق مع إصدار Visual Studio الخاص بك.
تحديث أدوات Data Lake لبرنامج Visual Studio
بعد ذلك، تأكد من تحديث أدوات Data Lake إلى أحدث إصدار.
افتح Visual Studio.
في نافذة Start، حدد Continue without code.
في شريط قائمة Visual Studio IDE، اختر Extensions>Manage Extensions.
في مربع الحوار Manage Extensions، قم بتوسيع عقدة Updates.
إذا كانت قائمة التحديثات المتوفرة تتضمن Azure Data Lake وStream Analytic Tools ، فحددها. ثم حدد الزر Update الخاص به. بعد ظهور مربع حوار Download and Install واختفائه، يضيف Visual Studio الملحق Azure Data Lake وStream Analytic Tools إلى جدول التحديث.
أغلق جميع نوافذ Visual Studio. يظهر مربع الحوار VSIX Installer.
حدد License لقراءة شروط الترخيص، ثم حدد Close للعودة إلى مربع الحوار VSIX Installer.
حدد 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 الخاص بك:
افتح Visual Studio.
في نافذة Start، حدد Continue without code.
في شريط قائمة IDE، اختر View>Server Explorer.
في Server Explorer، انقر بزر الماوس الأيمن فوق Azure، وحدد Connect to Microsoft Azure Subscription، وأكمل عملية المصادقة. من Server Explorer، قم بتوسيع Azure>HDInsight لعرض قائمة مجموعات HDInsight الحالية.
إذا لم يكن لديك أي مجموعات، فأنشئ واحدة باستخدام مدخل Microsoft Azure أو Azure PowerShell أو HDInsight SDK. لمزيد من المعلومات، راجع إعداد المجموعات في HDInsight.
قم بتوسيع مجموعة HDInsight. تحتوي المجموعة على عقد لـ Apache Hive Databases. أيضاً، حساب تخزين افتراضي، وأي حسابات تخزين إضافية مرتبطة، وHadoop Service Log. يمكنك توسيع الكيانات.
بعد الاتصال باشتراك Azure الخاص بك، يمكنك القيام بالمهام التالية.
اتصل بـ Azure من Visual Studio
للاتصال بمدخل Microsoft Azure من Visual Studio:
في Server Explorer، وسّع Azure>HDInsight وحدد مجموعتك.
انقر بزر الماوس الأيمن فوق مجموعة HDInsight، وحدد Manage Cluster in Azure portal.
تقديم أسئلة وتعليقات من Visual Studio
لطرح الأسئلة و/ أو تقديم ملاحظات من Visual Studio:
من Server Explorer، اختر Azure>HDInsight.
انقر بزر الماوس الأيمن فوق HDInsight وحدد إما MSDN Forum لطرح الأسئلة، وإما Give Feedback لتقديم ملاحظات.
ارتباط أو تحرير نظام مجموعة
إشعار
حالياً، النوع الوحيد من مجموعة HDInsight الذي يمكنك الارتباط به هو نوع Apache Hive.
لربط مجموعة HDInsight:
انقر بزر الماوس الأيمن فوق HDInsight، ثم حدد Link a HDInsight Cluster لعرض مربع الحوار Link a HDInsight Cluster.
أدخل عنوان URL للاتصال in the form
https://CLUSTERNAME.azurehdinsight.net
. يملأ Cluster Name تلقائيّاً جزء اسم المجموعة من عنوان URL الخاص بك عندما تنتقل إلى حقل آخر. ثم أدخل Username وPassword، وحدد Next.حدد إنهاء. إذا كان ربط المجموعة ناجحاً، فسيتم إدراج الكتلة بعد ذلك ضمن عقدة HDInsight.
لتحديث مجموعة مرتبطة، انقر بزر الماوس الأيمن فوق المجموعة وحدد Edit. يمكنك بعد ذلك تحديث معلومات نظام المجموعة.
استكشاف الموارد المرتبطة
من Server Explorer، يمكنك رؤية حساب التخزين الافتراضي وأي حسابات تخزين مرتبطة. إذا قمت بتوسيع حساب التخزين الافتراضي، يمكنك رؤية الحاويات في حساب التخزين. يتم وضع علامة على حساب التخزين الافتراضي والحاوية الافتراضية.
انقر بزر الماوس الأيمن فوق حاوية وحدد View Container لعرض محتويات الحاوية. بعد فتح الحاوية، يمكنك استخدام أزرار شريط الأدوات من أجل Refresh قائمة المحتوى، Upload Blob، Delete selected blobs، Open Blob، وتنزيل (Save As) الكرات الثنائية الكبيرة.
تشغيل استعلامات 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 وتشغيلها.
من المجموعة الخاصة بك، اختر Hive Databases>default.
انقر بزر الماوس الأيمن فوق default، وحدد default.
قم بتكوين الجدول.
حدد الزر Create Table لإرسال الوظيفة، ما يؤدي إلى إنشاء جدول Hive الجديد.
إنشاء وتشغيل استعلامات Hive
لديك خياران لإنشاء استعلامات Apache Hive وتشغيلها:
- إنشاء استعلامات مخصصة
- إنشاء تطبيق Apache Hive
إنشاء استعلام خاص
لإنشاء استعلام خاص وتشغيله:
انقر بزر الماوس الأيمن فوق نظام المجموعة حيث تريد تشغيل الاستعلام، وحدد Write a Hive Query.
أدخل استعلام Hive.
محرر Hive يدعم IntelliSense. تدعم أدوات مستودع البيانات لـ Visual Studio تحميل بيانات التعريف عن بُعد عندما تقوم بتحرير برنامج Apache Hive النصي الخاص بك. على سبيل المثال، إذا كتبت
SELECT * FROM
، فسوف يسرد IntelliSense جميع أسماء الجداول المقترحة. عند تحديد اسم جدول، يسرد IntelliSense أسماء الأعمدة. تدعم الأدوات معظم عبارات Hive DML والاستعلامات الفرعية وUDFs المضمنة.إشعار
يقترح IntelliSense بيانات تعريف الكتلة المحددة في شريط أدوات HDInsight فقط.
إليك نموذج استعلام يمكنك استخدامه:
SELECT devicemodel, COUNT(devicemodel) AS deviceCount FROM hivesampletable GROUP BY devicemodel ORDER BY devicemodel
اختر وضع التنفيذ:
Interactive
في القائمة المنسدلة الأولى، اختر Interactive، ثم حدد Execute.
الدفعه
في القائمة المنسدلة الأولى، اختر Batch، ثم حدد Submit. أو حدد رمز القائمة المنسدلة بجوار Batch واختر Advanced.
إذا حددت خيار الإرسال المتقدم، فسيظهر مربع الحوار Submit Script. قم بتكوين Job Name وArguments وAdditional Configurations وStatus Directory للنص البرمجي.
إشعار
لا يمكنك إرسال مجموعات إلى أنظمة مجموعات "Interactive Query". يجب عليك استخدام الوضع التفاعلي.
إنشاء تطبيق Apache Hive
لإنشاء حل Hive وتشغيله:
من شريط القائمة، اختر File> New>Project .
في نافذة Create a new project، حدد مربع البحث واكتب Hive. ثم اختر تطبيق Apache Hive وحدد التالي.
في نافذة Configure your new project، أدخل Project name، وحدد أو أنشئ Location، ثم حدد Create.
في مستكشف الحلول، انقر نقراً مزدوجاً فوق Script.hql لفتح البرنامج النصي.
عرض ملخص الوظيفة والمخرجات
يختلف ملخص الوظيفة اختلافاً طفيفاً بين الوضع Batch وInteractive.
استخدم الرمز Refresh لتحديث الحالة حتى تتغير حالة الوظيفة إلى Finished.
للحصول على تفاصيل الوظيفة من وضع Batch، حدد الروابط في الأسفل لمشاهدة Job Query، أو Job Output، أو Job Log، أو View Yarn Logs.
للحصول على تفاصيل المهمة من الوضع Interactive، راجع جزأي Output وHiveServer2 Output.
عرض الرسم البياني للوظيفة
حالياً، يتم عرض الرسوم البيانية للوظائف فقط لوظائف Hive التي تستخدم Tez كمحرك تنفيذ. للحصول على معلومات حول تمكين Tez، راجع ما هي Apache Hive وHiveQL على Azure HDInsight؟. راجع أيضاً، استخدام Apache Tez بدلاً من Map Reduce.
لعرض جميع العوامل الموجودة داخل الرأس، انقر نقراً مزدوجاً فوق رؤوس الرسم البياني للوظيفة. يمكنك أيضاً الإشارة إلى عامل تشغيل معين لمعرفة المزيد من التفاصيل حول المشغل.
حتى إذا تم تحديد Tez كمحرك التنفيذ، فقد لا يظهر الرسم البياني للوظيفة إذا لم يتم تشغيل تطبيق Tez. قد يحدث هذا الموقف لأن المهمة لا تحتوي على عبارات DML. أو لأن عبارات DML يمكن أن تعود دون تشغيل تطبيق Tez. على سبيل المثال، لن يقوم SELECT * FROM table1
بتشغيل تطبيق Tez.
عرض تفاصيل تنفيذ المهمة
من الرسم البياني للوظيفة، يمكنك تحديد Task Execution Detail للحصول على معلومات منظمة ومرئية لوظائف Hive. يمكنك أيضاً الحصول على مزيد من تفاصيل الوظيفة. في حالة حدوث مشكلات في الأداء، يمكنك استخدام العرض للحصول على مزيد من التفاصيل حول المشكلة. على سبيل المثال، يمكنك استرداد معلومات حول كيفية عمل كل مهمة ومعلومات مفصلة حول كل مهمة (قراءة / كتابة البيانات، والجدولة / وقت البدء / الانتهاء، والمزيد). استخدم المعلومات لضبط تكوينات الوظائف أو بنية النظام بناءً على المعلومات المرئية.
مشاهدة ملف Hive jobs
يمكنك عرض استعلامات الوظائف وإخراج الوظيفة وسجلات الوظائف وسجلات Yarn لوظائف Hive.
في أحدث إصدار من الأدوات، يمكنك رؤية ما يوجد داخل وظائف Hive الخاصة بك عن طريق جمع سجلات Yarn وظهورها. يمكن أن يساعدك سجل Yarn في التحقيق في مشكلات الأداء. لمزيد من المعلومات حول كيفية قيام HDInsight بتجميع سجلات Yarn، راجع الوصول إلى سجلات تطبيق Apache Hadoop YARN.
لعرض وظائف Hive:
انقر بزر الماوس الأيمن فوق مجموعة HDInsight، وحدد View Jobs.
تظهر قائمة بوظائف Hive التي تم تشغيلها على المجموعة.
اختر وظيفة. في نافذة Hive Job Summary، حدد أحد الروابط التالية:
- Job Query
- Job Output
- Job Log
- Yarn Log
قم بتشغيل البرامج النصية Apache Pig
من شريط القائمة، اختر File> New>Project .
في نافذة Start، حدد مربع البحث وأدخل Pig. ثم حدد Pig Application وحدد Next.
في نافذة Configure your new project، أدخل Project name، وحدد أو أنشئ Location للمشروع. وبعد ذلك، حدد إنشاء.
في جزء IDE Solution Explorer ، انقر نقراً مزدوجاً فوق Script.pig لفتح البرنامج النصي.
التعليقات والمشكلات المعروفة
تم إصلاح مشكلة عدم عرض النتائج التي بدأت بقيم خالية. إذا حظرت هذه المشكلة، فاتصل بفريق الدعم.
يتم ترميز البرنامج النصي HQL الذي ينشئه Visual Studio، اعتماداً على إعداد المنطقة المحلية للمستخدم. لا يتم تنفيذ البرنامج النصي بشكل صحيح إذا قمت بتحميل البرنامج النصي إلى مجموعة كملف ثنائي.
الخطوات التالية
في هذه المقالة، تعلمت كيفية استخدام حزمة Data Lake Tools لـ Visual Studio للاتصال بمجموعات HDInsight من Visual Studio. لقد تعلمت أيضاً كيفية تشغيل استعلام Hive.