Partilhar via


Guia de início rápido: consultar o Apache HBase no Azure HDInsight com o Apache Phoenix

Neste início rápido, você aprenderá a usar o Apache Phoenix para executar consultas HBase no Azure HDInsight. Apache Phoenix é um mecanismo de consulta SQL para Apache HBase. Ele é acessado como um driver JDBC e permite consultar e gerenciar tabelas do HBase usando SQL. SQLLine é um utilitário de linha de comando para executar SQL.

Se não tiver uma subscrição do Azure, crie uma conta gratuita antes de começar.

Pré-requisitos

Identificar um nó do ZooKeeper

Quando você se conecta a um cluster HBase, precisa se conectar a um dos nós do Apache ZooKeeper. Cada cluster HDInsight tem três nós do ZooKeeper. Curl pode ser utilizado para identificar um nó do ZooKeeper de forma rápida. Edite o comando curl abaixo substituindo PASSWORD e CLUSTERNAME com os valores relevantes e, em seguida, digite o comando em um prompt de comando:

curl -u admin:PASSWORD -sS -G https://CLUSTERNAME.azurehdinsight.net/api/v1/clusters/CLUSTERNAME/services/ZOOKEEPER/components/ZOOKEEPER_SERVER

Uma parte da saída será semelhante a:

    {
      "href" : "http://hn*.432dc3rlshou3ocf251eycoapa.bx.internal.cloudapp.net:8080/api/v1/clusters/myCluster/hosts/<zookeepername1>.432dc3rlshou3ocf251eycoapa.bx.internal.cloudapp.net/host_components/ZOOKEEPER_SERVER",
      "HostRoles" : {
        "cluster_name" : "myCluster",
        "component_name" : "ZOOKEEPER_SERVER",
        "host_name" : "<zookeepername1>.432dc3rlshou3ocf251eycoapa.bx.internal.cloudapp.net"
      }

Anote o valor de host_name para uso posterior.

Criar uma tabela e manipular dados

Você pode usar SSH para se conectar a clusters HBase e, em seguida, usar o Apache Phoenix para criar tabelas HBase, inserir dados e consultar dados.

  1. Use o comando ssh para se conectar ao seu cluster HBase. Edite o comando abaixo substituindo CLUSTERNAME pelo nome do cluster e digite o comando:

    ssh sshuser@CLUSTERNAME-ssh.azurehdinsight.net
    
  2. Altere o diretório para o cliente Phoenix. Digite o seguinte comando:

    cd /usr/hdp/current/phoenix-client/bin
    
  3. Inicie o SQLLine. Edite o comando abaixo substituindo ZOOKEEPER pelo nó ZooKeeper identificado anteriormente e digite o comando:

    ./sqlline.py ZOOKEEPER:2181:/hbase-unsecure
    
  4. Crie uma tabela HBase. Digite o seguinte comando:

    CREATE TABLE Company (company_id INTEGER PRIMARY KEY, name VARCHAR(225));
    
  5. Use o comando SQLLine !tables para listar todas as tabelas no HBase. Digite o seguinte comando:

    !tables
    
  6. Insira valores na tabela. Digite o seguinte comando:

    UPSERT INTO Company VALUES(1, 'Microsoft');
    UPSERT INTO Company VALUES(2, 'Apache');
    
  7. Consulte a tabela. Digite o seguinte comando:

    SELECT * FROM Company;
    
  8. Excluir um registo. Digite o seguinte comando:

    DELETE FROM Company WHERE COMPANY_ID=1;
    
  9. Solte a mesa. Digite o seguinte comando:

    DROP TABLE Company;
    
  10. Use o comando SQLLine !quit para sair do SQLLine. Digite o seguinte comando:

    !quit
    

Limpar recursos

Depois de concluir o início rápido, convém excluir o cluster. Com o HDInsight, seus dados são armazenados no Armazenamento do Azure, para que você possa excluir com segurança um cluster quando ele não estiver em uso. Você também será cobrado por um cluster HDInsight, mesmo quando ele não estiver em uso. Como as cobranças para o cluster são muitas vezes maiores do que as taxas para armazenamento, faz sentido econômico excluir clusters quando eles não estão em uso.

Para excluir um cluster, consulte Excluir um cluster HDInsight usando seu navegador, PowerShell ou a CLI do Azure.

Próximos passos

Neste início rápido, você aprendeu como usar o Apache Phoenix para executar consultas HBase no Azure HDInsight. Para saber mais sobre o Apache Phoenix, o próximo artigo fornecerá um exame mais profundo.