Partilhar via


Adicionar bibliotecas personalizadas do Apache Hive ao criar o cluster do HDInsight

Saiba como pré-carregar bibliotecas do Apache Hive no HDInsight. Este documento contém informações sobre como utilizar uma Ação de Script para pré-carregar bibliotecas durante a criação do cluster. As bibliotecas adicionadas através dos passos neste documento estão globalmente disponíveis no Hive. Não é necessário utilizar o ADD JAR para carregá-las.

Como funciona

Ao criar um cluster, pode utilizar uma Ação de Script para modificar os nós de cluster à medida que são criados. O script neste documento aceita um único parâmetro, que é a localização das bibliotecas. Esta localização tem de estar numa Conta de Armazenamento do Azure e as bibliotecas têm de ser armazenadas como ficheiros jar.

Durante a criação do cluster, o script enumera os ficheiros, copia-os para o /usr/lib/customhivelibs/ diretório nos nós principais e de trabalho e, em seguida, adiciona-os à hive.aux.jars.path propriedade no core-site.xml ficheiro. Nos clusters baseados no Linux, também atualiza o hive-env.sh ficheiro com a localização dos ficheiros.

A utilização da ação de script neste artigo disponibiliza as bibliotecas ao utilizar um cliente hive para WebHCat e HiveServer2.

O script

Localização do script

https://hdiconfigactions.blob.core.windows.net/setupcustomhivelibsv01/setup-customhivelibs-v01.ps1

Requisitos

  • Os scripts têm de ser aplicados aos nós Principais e aos Nós de trabalho.

  • Os jars que pretende instalar têm de ser armazenados em Armazenamento de Blobs do Azure num único contentor.

  • A conta de armazenamento que contém a biblioteca de ficheiros jar tem de estar ligada ao cluster do HDInsight durante a criação. Tem de ser a conta de armazenamento predefinida ou uma conta adicionada através das Definições da Conta de Armazenamento.

  • O caminho WASB para o contentor tem de ser especificado como um parâmetro para a Ação de Script. Por exemplo, se os jars forem armazenados num contentor com o nome libs numa conta de armazenamento com o nome mystorage, o parâmetro será wasbs://libs@mystorage.blob.core.windows.net/.

    Nota

    Este documento pressupõe que já criou uma conta de armazenamento, um contentor de blobs e carregou os ficheiros para a mesma.

    Se não tiver criado uma conta de armazenamento, pode fazê-lo através do portal do Azure. Em seguida, pode utilizar um utilitário como Explorador de Armazenamento do Azure para criar um contentor na conta e carregar ficheiros para a mesma.

Criar um cluster com o script

  1. Comece a aprovisionar um cluster com os passos em Aprovisionar clusters do HDInsight no Linux, mas não conclua o aprovisionamento. Também pode utilizar Azure PowerShell ou o SDK .NET do HDInsight para criar um cluster com este script. Para obter mais informações sobre como utilizar estes métodos, veja Personalizar clusters do HDInsight com Ações de Script. Para o portal do Azure, no separador Configuração + preços, selecione a ação + Adicionar script.

  2. Para Armazenamento, se a conta de armazenamento que contém a biblioteca de ficheiros jar for diferente da conta utilizada para o cluster, conclua Contas de armazenamento adicionais.

  3. Para Ações de Script, forneça as seguintes informações:

    Propriedade Valor
    Tipo de script - Personalizado
    Name Bibliotecas
    Bash script URI https://hdiconfigactions.blob.core.windows.net/linuxsetupcustomhivelibsv01/setup-customhivelibs-v01.sh
    Tipos de nó Cabeça, Trabalho
    Parâmetros Introduza o endereço WASB no contentor e na conta de armazenamento que contém os jars. Por exemplo, wasbs://libs@mystorage.blob.core.windows.net/.

    Nota

    Para o Apache Spark 2.1, utilize este URI de script bash: https://hdiconfigactions.blob.core.windows.net/linuxsetupcustomhivelibsv01/setup-customhivelibs-v00.sh.

  4. Continue a aprovisionar o cluster conforme descrito em Aprovisionar clusters do HDInsight no Linux.

Assim que a criação do cluster estiver concluída, poderá utilizar os jars adicionados através deste script do Hive sem ter de utilizar a ADD JAR instrução .

Passos seguintes

Para obter mais informações sobre como trabalhar com o Hive, veja Utilizar o Apache Hive com o HDInsight