Aracılığıyla paylaş


Azure HDInsight kullanarak Apache Hive sorunlarını giderme

Apache Ambari'de Apache Hive yükleriyle çalışırken en çok sorulan sorular ve çözümleri hakkında bilgi edinin.

Hive meta veri depolarını dışarı aktarmak ve başka bir kümeye aktarmak Nasıl yaparım??

Çözüm adımları

  1. Secure Shell (SSH) istemcisi kullanarak HDInsight kümesine bağlanın. Daha fazla bilgi için bkz . Ek okuma.

  2. Meta veri deposunu dışarı aktarmak istediğiniz HDInsight kümesinde aşağıdaki komutu çalıştırın:

    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
    

    Bu komut allatables.sql adlı bir dosya oluşturur.

  3. Dosya alltables.sql yeni HDInsight kümesine kopyalayın ve aşağıdaki komutu çalıştırın:

    hive -f alltables.sql
    

Çözüm adımlarındaki kod, yeni kümedeki veri yollarının eski kümedeki veri yollarıyla aynı olduğunu varsayar. Veri yolları farklıysa, oluşturulan alltables.sql dosyayı değişiklikleri yansıtacak şekilde el ile düzenleyebilirsiniz.

Ek okuma

Bir kümede Hive günlüklerini Nasıl yaparım? bulabilirsiniz?

Çözüm adımları

  1. SSH kullanarak HDInsight kümesine bağlanın. Daha fazla bilgi için bkz . Ek okuma.

  2. Hive istemci günlüklerini görüntülemek için aşağıdaki komutu kullanın:

    /tmp/<username>/hive.log
    
  3. Hive meta veri deposu günlüklerini görüntülemek için aşağıdaki komutu kullanın:

    /var/log/hive/hivemetastore.log
    
  4. Hive sunucu günlüklerini görüntülemek için aşağıdaki komutu kullanın:

    /var/log/hive/hiveserver2.log
    

Ek okuma

Hive kabuğunu kümedeki belirli yapılandırmalarla Nasıl yaparım? başlatabilirsiniz?

Çözüm adımları

  1. Hive kabuğunu başlattığınızda bir yapılandırma anahtar-değer çifti belirtin. Daha fazla bilgi için bkz . Ek okuma.

    hive -hiveconf a=b
    
  2. Hive kabuğundaki tüm etkin yapılandırmaları listelemek için aşağıdaki komutu kullanın:

    hive> set;
    

    Örneğin, hive kabuğunu konsolunda hata ayıklama günlüğü etkin olarak başlatmak için aşağıdaki komutu kullanın:

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

Ek okuma

Apache Tez DAG verilerini küme açısından kritik bir yolda analiz Nasıl yaparım??

Çözüm adımları

  1. Apache Tez tarafından yönetilen bir döngüsel grafiği (DAG) küme açısından kritik bir grafikte analiz etmek için SSH kullanarak HDInsight kümesine bağlanın. Daha fazla bilgi için bkz . Ek okuma.

  2. Komut isteminde aşağıdaki komutu çalıştırın:

    hadoop jar /usr/hdp/current/tez-client/tez-job-analyzer-*.jar CriticalPath --saveResults --dagId <DagId> --eventFileName <DagData.zip> 
    
  3. Tez DAG'yi çözümlemek için kullanılabilecek diğer çözümleyicileri listelemek için aşağıdaki komutu kullanın:

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

    İlk bağımsız değişken olarak örnek bir program sağlamanız gerekir.

    Geçerli program adları şunlardır:

    • ContainerReuseAnalyzer: Kapsayıcı yeniden kullanım ayrıntılarını DAG'de yazdırma
    • CriticalPath: DAG'nin kritik yolunu bulma
    • LocalityAnalyzer: DAG'de yerellik ayrıntılarını yazdırma
    • ShuffleTimeAnalyzer: DAG'de karıştırma süresi ayrıntılarını analiz etme
    • SkewAnalyzer: DAG'de eğme ayrıntılarını analiz etme
    • SlowNodeAnalyzer: DAG'de düğüm ayrıntılarını yazdırma
    • SlowTaskIdentifier: DAG'de yavaş görev ayrıntılarını yazdırma
    • SlowestVertexAnalyzer: DAG'de en yavaş köşe ayrıntılarını yazdırma
    • SpillAnalyzer: Taşma ayrıntılarını DAG'de yazdırma
    • TaskConcurrencyAnalyzer: Görev eşzamanlılık ayrıntılarını DAG'de yazdırma
    • VertexLevelCriticalPathAnalyzer: DAG'de köşe düzeyinde kritik yolu bulma

Ek okuma

Kümeden Tez DAG verileri Nasıl yaparım? indirilsin mi?

Çözüm adımları

Tez DAG verilerini toplamanın iki yolu vardır:

  • Komut satırından:

    SSH kullanarak HDInsight kümesine bağlanın. Komut isteminde aşağıdaki komutu çalıştırın:

    hadoop jar /usr/hdp/current/tez-client/tez-history-parser-*.jar org.apache.tez.history.ATSImportTool -downloadDir . -dagId <DagId>
    
  • Ambari Tez görünümünü kullanın:

    1. Ambari'ye gidin.
    2. Tez görünümüne gidin (sağ üst köşedeki kutucuk simgesinin altında).
    3. Görüntülemek istediğiniz DAG'yi seçin.
    4. Verileri indir'i seçin.

Ek okuma

SSH kullanarak HDInsight kümesine bağlanma

Sonraki adımlar

Sorununuzu görmediyseniz veya sorununuzu çözemiyorsanız daha fazla destek için aşağıdaki kanallardan birini ziyaret edin:

  • Azure Topluluk Desteği aracılığıyla Azure uzmanlarından yanıt alın.

  • Müşteri deneyimini geliştirmek için resmi Microsoft Azure hesabı olan @AzureSupport ile bağlantı kurun. Azure topluluğunun doğru kaynaklara bağlanması: yanıtlar, destek ve uzmanlar.

  • Daha fazla yardıma ihtiyacınız varsa Azure portalından bir destek isteği gönderebilirsiniz. Menü çubuğundan Destek'i seçin veya Yardım + destek hub'ını açın. Daha ayrıntılı bilgi için bkz. Azure desteği isteği oluşturma. Abonelik Yönetimi’ne ve faturalandırma desteğine erişim Microsoft Azure aboneliğinize dahildir, Teknik Destek ise herhangi bir Azure Destek Planı üzerinden sağlanır.