Use Data Lake Tools para Visual Studio para se conectar ao Azure HDInsight e executar consultas do Apache Hive

Saiba como usar o Microsoft Azure Data Lake e as ferramentas de Stream Analytics para Visual Studio (Data Lake Tools). Use a ferramenta para se conectar ao Apache Hadoop no Azure HDInsight e enviar consultas Hive.

Para obter mais informações sobre como usar o HDInsight, consulte Introdução ao HDInsight.

As Ferramentas do Data Lake para Visual Studio podem ser usadas para acessar o Data Lake Analytics e o HDInsight. Para obter informações sobre as Ferramentas do Data Lake, confira Desenvolver scripts U-SQL usando as Ferramentas do Data Lake para Visual Studio.

Pré-requisitos

Para concluir este artigo e usar as Ferramentas do Data Lake para Visual Studio, você precisa dos seguintes itens:

Instalar Ferramentas do Data Lake para Visual Studio

Siga as instruções apropriadas para instalar o Data Lake Tools para sua versão do Visual Studio:

  • Visual Studio 2017 ou Visual Studio 2019:

    Durante a instalação do Visual Studio, certifique-se de incluir a carga de trabalho de desenvolvimento do Azure ou a carga de trabalho de processamento e armazenamento de dados.

    Para instalações existentes do Visual Studio, vá para a barra de menus do IDE e selecione ferramentas>Obter Ferramentas e Recursos para abrir o instalador do Visual Studio. Na guia cargas de trabalho, selecione pelo menos a carga de trabalho de desenvolvimento do Azure (em Web & Nuvem). Ou selecione a carga de trabalho de Armazenamento e processamento de dados (em outros conjuntos de ferramentas).

    Workload selection, Visual Studio Installer.

  • Para Visual Studio 2015

    Baixe o Data Lake Tools. Escolha a versão das Ferramentas do Data Lake que correspondem à versão do Visual Studio.

Atualize o Data Lake Tools para Visual Studio

Em seguida, verifique se você atualizou o Data Lake Tools para a versão mais recente.

  1. Abra o Visual Studio.

  2. Na janela Iniciar, selecione Continuar sem código.

  3. Na barra de menus do IDE do Visual Studio, escolha Extensões>Gerenciar Extensões.

  4. Na caixa de diálogo Gerenciar Extensões, expanda o nó Atualizações.

  5. Se a lista de atualizações disponíveis inclui Azure Data Lake e Stream Analytic Tools, selecione-as. Em seguida, selecione o botão Atualizar. Depois que a caixa de diálogo Baixar e Instalar aparecer e desaparecer, o Visual Studio adicionará a Azure Data Lake e a extensão de Stream Analytics Tools à agenda de atualização.

  6. Selecione todas as janelas do Visual Studio. A caixa de diálogo Instalador do VSIX é exibida.

  7. Selecione a Licença para ler os termos de licença e selecione Fechar para retornar à caixa de diálogo do Instalador do VSIX.

  8. Selecione Modificar. A instalação da atualização da extensão começa. Após alguns instantes, a caixa de diálogo é alterada para mostrar que isso é feito fazendo modificações. Selecione Fechare reinicie o Visual Studio para concluir a instalação.

Observação

Você pode usar somente as Ferramentas do Data Lake versão 2.3.0.0 ou posterior para se conectar aos clusters de Consulta Interativa e executar consultas interativas Hive.

Conectar-se a assinaturas do Azure

Você pode usar o Data Lake Tools para Visual Studio para conectar seus clusters HDInsight, executar algumas operações básicas de gerenciamento e executar consultas Hive.

Observação

Para obter informações sobre como se conectar a um cluster Hadoop genérico, consulte Como escrever e enviar consultas Hive usando o Visual Studio.

Conectar-se a uma assinatura do Azure

Para conectar-se à sua assinatura do Azure:

  1. Abra o Visual Studio.

  2. Na janela Iniciar, selecione Continuar sem código.

  3. Na barra de menus do IDE, escolha Exibir>Gerenciador de Servidores.

  4. Em Gerenciador de Servidores, clique com o botão direito do mouse em Azure, selecione Conectar à Assinatura do Microsoft Azuree conclua o processo de autenticação. Em Gerenciador de servidores, expanda Azure>HDInsight para exibir uma lista de clusters HDInsight existentes.

  5. Se não tiver nenhum cluster, crie um usando o portal do Azure, o Azure PowerShell ou o SDK do HDInsight. Para obter mais informações, veja Configurar clusters no HDInsight.

    HDInsight cluster list, Server Explorer, Visual Studio.

  6. Expanda um cluster do HDInsight. O cluster contém nós para Bancos de Dados do Hive. Também, uma conta de armazenamento padrão, contas de armazenamento vinculadas e o Log de Serviço do Hadoop. Você pode expandir mais as entidades.

Depois de se conectar à assinatura do Azure, você poderá fazer as tarefas a seguir.

Conectar ao Azure a partir do Visual Studio

Conectar-se ao portal do Azure pelo Visual Studio:

  1. Em Gerenciador de servidores, expanda Azure>HDInsight e selecione seu cluster.

  2. Clique com o botão direito do mouse no cluster HDInsight e selecione Gerenciar Cluster no portal do Azure.

Fazer perguntas e comentários sobre o Visual Studio

Para fazer perguntas e/ou comentários sobre o Visual Studio:

  1. Em Gerenciador de servidores, escolha Azure>HDInsight.

  2. Clique com o botão direito do mouse em HDInsight e selecione um Fórum do MSDN para fazer perguntas ou Fazer comentários para comentar.

Observação

Atualmente, o único tipo de cluster HDInsight ao qual você pode vincular é um tipo de Hive.

Para conectar um cluster HDInsight:

  1. Clique com o botão direito do mouse em HDInsighte selecione vincular um Cluster HDInsight para exibir a caixa de diálogo Vincular um Cluster HDInsight.

  2. Insira uma URL de conexão no formulário https://CLUSTERNAME.azurehdinsight.net. O nome do cluster preenche automaticamente com a parte do nome do cluster da URL quando você vai para outro campo. Insira um nome de usuário e uma senha e selecione Próximo.

    Link a cluster, HDInsight, Visual Studio.

  3. Selecione Concluir. Se a vinculação do cluster for bem-sucedida, o cluster será listado no nó HDInsight .

Para atualizar um cluster vinculado, clique com o botão direito do mouse no cluster e selecione Editar. Você pode atualizar as informações do cluster.

Edit a linked cluster, HDInsight, Visual Studio.

Explorar recursos vinculados

No Gerenciador de Servidores, pode-se visualizar a conta de armazenamento padrão e quaisquer contas de armazenamento vinculadas. Se você expandir a conta de armazenamento padrão, visualizará os contêineres na conta de armazenamento. Tanto a conta de armazenamento padrão como o contêiner padrão estão marcados.

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

Clique com o botão direito do mouse em um contêiner e selecione Exibir contêiner para exibir o conteúdo do contêiner. Depois de abrir um contêiner, você pode usar os botões da barra de ferramentas para Atualizar a lista de conteúdo, Carregar Blob, Excluir BLOBs selecionados, Abrir Blobe baixar (salvar como) BLOBs selecionados.

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

Executar consultas interativas do Apache Hive

O Apache Hive é uma infraestrutura do data warehouse criada no Hadoop. O Hive é usado para análise, consultas e resumo de dados. Você pode usar as Ferramentas do Data Lake para Visual Studio a fim de executar consultas Hive pelo Visual Studio. Para mais informações sobre o Hive, consulte O que é Apache Hive e HiveQL em Azure HDInsight?.

A consulta interativa no Azure HDInsight usa o Hive no LLAP no Apache Hive 2,1. A Consulta Interativa traz interatividade a consultas de estilo data warehouse complexas em conjuntos de dados grandes e armazenados. A execução de consultas Hive na Consulta Interativa é muito mais rápida em comparação com os trabalhos em lotes tradicionais do Hive.

Observação

Você só pode executar consultas interativas do Hive quando se conecta a um cluster de Consulta Interativa HDInsight.

Use também o Data Lake Tools para Visual Studio a fim de ver o que está em um trabalho do Hive. As Ferramentas do Data Lake para Visual Studio coletam e revelam logs Yarn de determinados trabalhos do Hive.

Em Gerenciador de Servidores, escolha Azure>HDInsight e selecione seu cluster. Esse nó é o ponto de partida no Gerenciador de Servidores para as seções seguirem.

Exibir hivesampletable

Todos os clusters HDInsight vêm com uma tabela Hive de exemplo chamada hivesampletable.hivesampletable

No cluster, escolha bancos de dados do hive>padrão>hivesampletable.

  • Para exibir o hivesampletable esquema:

    Expanda hivesampletable. Os nomes e os tipos de dados das hivesampletable colunas são mostrados.

  • Para exibir os hivesampletable dados:

    Clique com o botão direito do mouse em hivesampletable, e selecione Exibir as Primeiras 100 Linhas. A lista de 100 resultados é exibida na janela Tabela Hive: hivesampletable . Essa ação é o equivalente a executar a seguinte consulta Hive usando o driver ODBC do Hive:

    SELECT * FROM hivesampletable LIMIT 100

    Você pode personalizar a contagem de linhas alterando o número de linhas; Você pode escolher as linhas 50, 100, 200 ou 1000 na lista suspensa.

Criar tabelas Hive

Você pode usar a GUI ou usar consultas Hive para criar uma tabela Hive. Para obter informações sobre como usar consultas de Hive, consulte Executar consultas Hive.

  1. No cluster, escolha Bancos de Dados do Hive>padrão.

  2. Clique com botão direito do mouse em Padrãoe selecione Criar Tabela.

  3. Configure a tabela.

  4. Selecione o botão Criar Tabela para enviar o trabalho, que cria a nova tabela Hive.

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

Validar e executar consultas do Hive

Você tem duas opções para criar e executar consultas do Hive:

  • Criar consultas locais
  • Criar um aplicativo Hive

Criar uma consulta ad hoc

Para criar e executar consultas ad hoc:

  1. Clique com o botão direito do mouse no cluster em que você deseja executar a consulta e selecione Escrever uma consulta Hive.

  2. Insira uma consulta Hive.

    O editor do Hive é compatível com o IntelliSense. Agora as Ferramentas do Data Lake para Visual Studio dão suporte à obtenção de metadados remotos quando você edita o script do Hive. Por exemplo, se você digitar SELECT * FROM, o IntelliSense listará todos os nomes de tabela sugeridos. Quando um nome de tabela for especificado, o IntelliSense listará os nomes de coluna. As ferramentas dão suporte a quase todas as instruções DML Hive, subconsultas e UDFs internos.

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

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

    Observação

    O IntelliSense sugere apenas os metadados dos clusters selecionados na Barra de Ferramentas do HDInsight.

    Aqui está uma consulta de exemplo que você pode usar:

    SELECT devicemodel, COUNT(devicemodel) AS deviceCount
    FROM hivesampletable
    GROUP BY devicemodel
    ORDER BY devicemodel
    
  3. Escolha o modo de execução:

    • Interativo

      Na primeira lista suspensa, escolha Interativoe, em seguida, selecione Executar.

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

    • Batch

      Na primeira lista suspensa, escolha Lotee, em seguida, selecione Enviar. Ou selecione o ícone suspenso ao lado de Enviar e escolha Avançado.

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

      Se você selecionar a opção de envio avançado, a caixa de diálogo Enviar script será exibida. Configure o Nome do Trabalho, Argumentos, Configurações Adicionais e Diretório de Status do script.

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

      Observação

      Você não pode enviar lotes para os clusters de consulta interativa. Você deve usar o modo interativo.

Criar um aplicativo Hive

Para criar e executar uma solução de Hive:

  1. Na barra de menus, escolha Arquivo>Novo>Projeto.

  2. Na janela Criar um novo projeto, selecione a caixa Pesquisar e digite Hive. Em seguida, escolha Aplicativo Hive e selecione Avançar.

  3. Na janela Configurar novo projeto insira um Nome de projeto, selecione ou crie a Localização do projeto e selecione Criar.

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

  4. No Gerenciador de Soluções, clique duas vezes em Script.hql para abri-lo.

Exibir Resumo e saída do trabalho

O resumo do trabalho varia ligeiramente entre o modo de lote e interativo.

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

Use o botão Atualizar para atualizar o status até que o status do trabalho seja alterado para Concluído.

  • Para obter os detalhes do trabalho no modo de Lote, selecione os links na parte inferior para ver a Consulta do Trabalho, a Saída do Trabalhoou o Log do Trabalhoou para Exibir os Logs do Yarn.

  • Para obter detalhes do trabalho no modo interativo , consulte os painéis saída e saída HiveServer2.

    Hive interactive job output, HDInsight cluster, Visual Studio.

Exibir gráfico de trabalho

Atualmente, os gráficos de trabalho são mostrados apenas para trabalhos do Hive que usam Tez como o mecanismo de execução. Para mais informações sobre habilitar oTez, consulte O que é o Apache Hive e HiveQL em Azure HDInsight?. Consulte também, Utilize o Apache Tez ao invés da Redução de Mapa.

Para ver todos os operadores dentro do vértice, clique duas vezes nos vértices do gráfico do trabalho. Você também pode apontar para um operador específico e ver mais detalhes sobre o operador.

Mesmo se tez for especificado como o mecanismo de execução, o gráfico do trabalho poderá não aparecer se nenhum aplicativo Tez for iniciado. Essa situação pode ocorrer porque o trabalho não contém instruções DML. Ou porque as instruções DML podem retornar sem iniciar um aplicativo Tez. Por exemplo, SELECT * FROM table1 não iniciará o aplicativo Tez.

Apache Hive job graph, Visual Studio.

Detalhes de Execução da Tarefa

No gráfico de trabalho, você pode selecionar Detalhes de Execução da Tarefa para obter informações estruturadas e visualizadas para trabalhos do Hive. Você também pode obter mais detalhes sobre o trabalho. Se ocorrerem problemas de desempenho, você poderá usar o modo de exibição para obter mais detalhes sobre o problema. Por exemplo, você pode obter informações sobre como funciona cada tarefa e informações detalhadas sobre cada tarefa (leitura/gravação de dados, agendamento/início/término e assim por diante). Use as informações para ajustar as configurações de trabalho ou a arquitetura do sistema com base nas informações visualizadas.

Task Execution View window, Data Lake Visual Studio Tools.

Exibir trabalhos Hive

Você pode exibir consultas de trabalho, saída do trabalho, logs de trabalho e logs do Yarn para trabalhos do Hive.

Na versão mais recente das ferramentas, você pode ver o que está dentro de trabalhos do Hive coletando e identificando logs do Yarn. Um log do Yarn pode ajudar você a investigar problemas de desempenho. Para saber mais sobre como o HDInsight coleta logs do Yarn, confira Acessar logs de aplicativo do HDInsight programaticamente.

Para exibir trabalhos do Hive:

  1. Clique com o botão direito do mouse em um cluster HDInsight e selecione Exibir Trabalhos.

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

    Uma lista dos trabalhos do Hive executados no cluster aparecerá.

  2. Selecione um trabalho. Na janela Resumo do Trabalho de Hive, selecione uma das seguintes opções:

    • Consulta do Trabalho
    • Saída do trabalho
    • Log de trabalhos
    • Log do Yarn

Executar scripts do Pig do Apache

  1. Na barra de menus, escolha Arquivo>Novo>Projeto.

  2. Na janela Iniciar, selecione a caixa Pesquisar e insira Pig. Em seguida, selecione aplicativo Pig e selecione Avançar.

  3. Na caixa de diálogo Configurar seu novo projeto, insira um Nome do projeto e um Local para o projeto. Em seguida, selecione Criar.

  4. No painel Gerenciador de soluções IDE, clique duas vezes em script.pig para abrir o script.

Comentários e problemas conhecidos

  • Foi corrigido um problema no qual os resultados que são iniciados com valores nulos não são mostrados. Se você estiver bloqueado em relação a esse problema, contate a equipe de suporte.

  • O script HQL criado pelo Visual Studio é codificado, dependendo da configuração de região local do usuário. O script não executa corretamente se você carrega o script em um cluster como um arquivo binário.

Próximas etapas

Neste artigo, você aprendeu a usar o pacote Ferramentas do Data Lake para Visual Studio para conectar-se aos clusters HDInsight pelo Visual Studio. Você também aprendeu a executar uma consulta do Hive.