Troubleshoot Apache Hive by using Azure HDInsight (Utilizar o Azure HDInsight para resolver problemas do Apache Hive)
Saiba mais sobre as principais perguntas e suas resoluções ao trabalhar com cargas úteis do Apache Hive no Apache Ambari.
Como posso exportar um metastore do Hive e importá-lo para outro cluster?
Passos de resolução
Conecte-se ao cluster HDInsight usando um cliente Secure Shell (SSH). Para obter mais informações, consulte Leitura adicional.
Execute o seguinte comando no cluster HDInsight do qual você deseja exportar o 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
Este comando gera um arquivo chamado allatables.sql.
Copie o arquivo alltables.sql para o novo cluster HDInsight e execute o seguinte comando:
hive -f alltables.sql
O código nas etapas de resolução pressupõe que os caminhos de dados no novo cluster são os mesmos que os caminhos de dados no cluster antigo. Se os caminhos de dados forem diferentes, você poderá editar manualmente o arquivo gerado alltables.sql
para refletir quaisquer alterações.
Leitura adicional
Como localizar os logs do Hive em um cluster?
Passos de resolução
Conecte-se ao cluster HDInsight usando SSH. Para obter mais informações, consulte Leitura adicional.
Para exibir os logs do cliente Hive, use o seguinte comando:
/tmp/<username>/hive.log
Para exibir os logs do metastore do Hive, use o seguinte comando:
/var/log/hive/hivemetastore.log
Para exibir os logs do servidor Hive, use o seguinte comando:
/var/log/hive/hiveserver2.log
Leitura adicional
Como faço para iniciar o shell do Hive com configurações específicas em um cluster?
Passos de resolução
Especifique um par chave-valor de configuração ao iniciar o shell do Hive. Para obter mais informações, consulte Leitura adicional.
hive -hiveconf a=b
Para listar todas as configurações efetivas no shell do Hive, use o seguinte comando:
hive> set;
Por exemplo, use o seguinte comando para iniciar o shell do Hive com o log de depuração habilitado no console:
hive -hiveconf hive.root.logger=ALL,console
Leitura adicional
Como analiso os dados do Apache Tez DAG em um caminho crítico de cluster?
Passos de resolução
Para analisar um gráfico acíclico direcionado (DAG) Apache Tez em um gráfico crítico de cluster, conecte-se ao cluster HDInsight usando SSH. Para obter mais informações, consulte Leitura adicional.
Em um prompt de comando, execute o seguinte comando:
hadoop jar /usr/hdp/current/tez-client/tez-job-analyzer-*.jar CriticalPath --saveResults --dagId <DagId> --eventFileName <DagData.zip>
Para listar outros analisadores que podem ser usados para analisar Tez DAG, use o seguinte comando:
hadoop jar /usr/hdp/current/tez-client/tez-job-analyzer-*.jar
Você deve fornecer um programa de exemplo como o primeiro argumento.
Os nomes de programas válidos incluem:
- ContainerReuseAnalyzer: Imprimir detalhes de reutilização de contêiner em um DAG
- CriticalPath: Encontre o caminho crítico de um DAG
- LocalityAnalyzer: Imprimir detalhes da localidade em um DAG
- ShuffleTimeAnalyzer: analise os detalhes do tempo de embaralhamento em um DAG
- SkewAnalyzer: Analise os detalhes de distorção em um DAG
- SlowNodeAnalyzer: Imprimir detalhes do nó em um DAG
- SlowTaskIdentifier: Imprimir detalhes de tarefas lentas em um DAG
- SlowestVertexAnalyzer: imprima detalhes de vértice mais lentos em um DAG
- SpillAnalyzer: Imprima detalhes do derramamento em um DAG
- TaskConcurrencyAnalyzer: imprima os detalhes da simultaneidade da tarefa em um DAG
- VertexLevelCriticalPathAnalyzer: Encontre o caminho crítico no nível do vértice em um DAG
Leitura adicional
Como faço para baixar dados do Tez DAG de um cluster?
Passos de resolução
Há duas maneiras de coletar os dados do Tez DAG:
Da linha de comandos:
Conecte-se ao cluster HDInsight usando SSH. Na linha de comandos, execute o comando seguinte:
hadoop jar /usr/hdp/current/tez-client/tez-history-parser-*.jar org.apache.tez.history.ATSImportTool -downloadDir . -dagId <DagId>
Use a visualização Ambari Tez:
- Vá para Ambari.
- Vá para a visualização Tez (sob o ícone de blocos no canto superior direito).
- Selecione o DAG que você deseja visualizar.
- Selecione Baixar dados.
Leitura adicional
Conectar-se a um cluster HDInsight usando SSH
Próximos passos
Se não viu o problema ou não conseguiu resolvê-lo, visite um dos seguintes canais para obter mais suporte:
Obtenha respostas de especialistas do Azure através do Suporte da Comunidade do Azure.
Conecte-se com o @AzureSupport - a conta oficial do Microsoft Azure para melhorar a experiência do cliente. Ligar a comunidade do Azure aos recursos certos: respostas, suporte e especialistas.
Se precisar de mais ajuda, você pode enviar uma solicitação de suporte do portal do Azure. Selecione Suporte na barra de menus ou abra o hub Ajuda + suporte . Para obter informações mais detalhadas, consulte Como criar uma solicitação de suporte do Azure. O acesso ao suporte para Gestão de Subscrições e faturação está incluído na sua subscrição do Microsoft Azure e o Suporte Técnico é disponibilizado através de um dos Planos de Suporte do Azure.