استكشاف أخطاء Apache Hive وإصلاحها باستخدام Azure HDInsight

تعرف على أهم الأسئلة وحلولها عند العمل مع حمولات Apache Hive في Apache Ambari.

كيف أقوم بتصدير Hive metastore واستيراده على مجموعة أخرى؟

خطوات القرار

  1. اتصل بمجموعة HDInsight باستخدام عميل Secure Shell (SSH). لمزيد من المعلومات، راجع قراءة إضافية.

  2. قم بتشغيل الأمر التالي على نظام مجموعة HDInsight التي تريد تصدير metastore منها:

    for d in `hive -e "show databases"`; do echo "create database $d; use $d;" >> alltables.sql ; for t in `hive --database $d -e "show tables"` ; do ddl=`hive --database $d -e "show create table $t"`; echo "$ddl ;" >> alltables.sql ; echo "$ddl" | grep -q "PARTITIONED\s*BY" && echo "MSCK REPAIR TABLE $t ;" >> alltables.sql ; done; done
    

    يقوم هذا الأمر بإنشاء ملف يسمى allatables.sql.

  3. انسخ الملف alltables.sql إلى نظام مجموعة HDInsight الجديدة، ثم قم بتشغيل الأمر التالي:

    hive -f alltables.sql
    

تفترض التعليمات البرمجية الموجودة في خطوات الدقة أن مسارات البيانات على الكتلة الجديدة هي نفسها مسارات البيانات على الكتلة القديمة. إذا كانت مسارات البيانات مختلفة، يمكنك تحرير ملف alltables.sql الذي تم إنشاؤه يدوياً لعكس أي تغييرات.

لمزيد من القراءة

كيف يمكنني تحديد موقع سجلات Hive على نظام مجموعة؟

خطوات القرار

  1. اتصل بمجموعة HDInsight باستخدام SSH. لمزيد من المعلومات، راجع قراءة إضافية.

  2. لعرض سجلات عميل Hive، استخدم الأمر التالي:

    /tmp/<username>/hive.log
    
  3. لعرض سجلات Hive metastore، استخدم الأمر التالي:

    /var/log/hive/hivemetastore.log
    
  4. لعرض سجلات خادم Hive، استخدم الأمر التالي:

    /var/log/hive/hiveserver2.log
    

لمزيد من القراءة

كيف أقوم بتشغيل Hive shell بتكوينات محددة على نظام مجموعة؟

خطوات القرار

  1. حدد زوجاً من قيم مفتاح التكوين عند بدء Hive shell. لمزيد من المعلومات، راجع قراءة إضافية.

    hive -hiveconf a=b
    
  2. لسرد جميع التكوينات الفعالة في Hive shell، استخدم الأمر التالي:

    hive> set;
    

    على سبيل المثال، استخدم الأمر التالي لبدء Hive shell مع تمكين تسجيل التصحيح على وحدة التحكم:

    hive -hiveconf hive.root.logger=ALL,console
    

لمزيد من القراءة

كيف أقوم بتحليل بيانات Apache Tez DAG على المسار الحرج لنظام المجموعة؟

خطوات القرار

  1. لتحليل الرسم البياني غير الدوري الموجه من Apache Tez (DAG) على الرسم البياني العنقودي الحرج، قم بالاتصال بمجموعة HDInsight باستخدام SSH. لمزيد من المعلومات، راجع قراءة إضافية.

  2. في موجه الأوامر، أدخل الأمر التالي:

    hadoop jar /usr/hdp/current/tez-client/tez-job-analyzer-*.jar CriticalPath --saveResults --dagId <DagId> --eventFileName <DagData.zip> 
    
  3. لسرد أدوات التحليل الأخرى التي يمكن استخدامها لتحليل Tez DAG، استخدم الأمر التالي:

    hadoop jar /usr/hdp/current/tez-client/tez-job-analyzer-*.jar
    

    يجب عليك تقديم مثال لبرنامج كالوسيطة الأولى.

    تشمل أسماء البرامج الصالحة:

    • أداة تحليل إعادة استخدام الحاوية: اطبع تفاصيل إعادة استخدام الحاوية في يوم
    • CriticalPath: ابحث عن المسار الحرج لـ DAG
    • LocalityAnalyzer: طباعة تفاصيل المنطقة في DAG
    • ShuffleTimeAnalyzer: تحليل تفاصيل وقت التبديل في DAG
    • SkewAnalyzer: تحليل تفاصيل الانحراف في DAG
    • SlowNodeAnalyzer: طباعة تفاصيل العقدة في DAG
    • SlowTaskIdentifier: اطبع تفاصيل المهمة البطيئة في DAG
    • SlowestVertexAnalyzer: طباعة تفاصيل أبطأ قمة في DAG
    • SpillAnalyzer: اطبع تفاصيل الانسكاب في DAG
    • TaskConcurrencyAnalyzer: اطبع تفاصيل تزامن المهام في DAG
    • VertexLevelCriticalPathAnalyzer: ابحث عن المسار الحرج عند مستوى الرأس في DAG

لمزيد من القراءة

كيف يمكنني تنزيل بيانات Tez DAG من نظام مجموعة؟

خطوات القرار

هناك طريقتان لجمع بيانات Tez DAG:

  • من سطر الأوامر:

    اتصل بمجموعة HDInsight باستخدام SSH. في موجه الأوامر، شغّل الأمر التالي:

    hadoop jar /usr/hdp/current/tez-client/tez-history-parser-*.jar org.apache.tez.history.ATSImportTool -downloadDir . -dagId <DagId>
    
  • استخدم عرض Ambari Tez:

    1. اذهب إلى أمباري.
    2. انتقل إلى عرض Tez (أسفل أيقونة المربعات في الزاوية العلوية اليمنى).
    3. حدد DAG الذي تريد عرضه.
    4. حدد تنزيل البيانات.

لمزيد من القراءة

الاتصال بنظام مجموعة HDInsight باستخدام SSH

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

إذا لم تتعرف على مشكلتك أو لم تتمكن من حلها، فتفضل بزيارة إحدى القنوات التالية للحصول على مزيد من الدعم:

  • احصل على إجابات من خبراء Azure عبر Azure Community Support.

  • تواصل مع AzureSupport - حساب Microsoft Azure الرسمي لتحسين تجربة العملاء. وصل مجتمع Azure بالموارد المناسبة: الإجابات، والدعم، والخبراء.

  • إذا كنت بحاجة لمزيد من المساعدة، فيمكنك إرسال طلب دعم من Azure portal. حدد "Support" من شريط القائمة أو افتح المحور "Help + support" . لمزيد من المعلومات التفصيلية، راجع كيفية إنشاء طلب دعم Azure. يتم تضمين الوصول إلى إدارة الاشتراك ودعم الفواتير في اشتراك Microsoft Azure، ويتم توفير الدعم الفني من خلال إحدى خطط دعم Azure.