Rychlý start: Dotazování Apache HBase v Azure HDInsight s Apache Phoenix

V tomto rychlém startu se dozvíte, jak pomocí Apache Phoenix spouštět dotazy HBase v Azure HDInsight. Apache Phoenix je SQL dotazovací modul pro Apache HBase. Je přístupný jako ovladač JDBC a umožňuje dotazování a správu tabulek HBase pomocí SQL. SQLLine je nástroj příkazového řádku pro spuštění SQL.

Pokud ještě nemáte předplatné Azure, vytvořte si napřed bezplatný účet.

Požadavky

Identifikace uzlu ZooKeeper

Když se připojíte ke clusteru HBase, musíte se připojit k jednomu z Apache ZooKeeper uzlů. Každý cluster HDInsight má tři uzly ZooKeeper. Curl lze použít k rychlé identifikaci uzlu ZooKeeper. Upravte následující příkaz curl tak, že a nahradíte příslušnými hodnotami, a pak do příkazového řádku zadejte PASSWORD CLUSTERNAME příkaz :

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

Část výstupu bude vypadat podobně jako:

    {
      "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"
      }

Poznamenejte si hodnotu pro host_name pozdější použití.

Vytvoření tabulky a manipulace s daty

SSH můžete použít pro připojení ke clusterům HBase a pak pomocí Apache Phoenix vytvářet tabulky HBase, vkládat data a dotazovat se na data.

  1. Pomocí ssh příkazu se připojte ke clusteru HBase. Upravte následující příkaz tak, že nahradíte názvem vašeho clusteru a CLUSTERNAME pak zadáte příkaz :

    ssh sshuser@CLUSTERNAME-ssh.azurehdinsight.net
    
  2. Změňte adresář na klienta Phoenix. Zadejte následující příkaz:

    cd /usr/hdp/current/phoenix-client/bin
    
  3. Spusťte PŘÍKAZ SQLLine. Upravte následující příkaz tak, že ZOOKEEPER nahradíte uzlem ZooKeeper, který jste identifikovali dříve, a pak zadejte příkaz :

    ./sqlline.py ZOOKEEPER:2181:/hbase-unsecure
    
  4. Vytvořte tabulku HBase. Zadejte následující příkaz:

    CREATE TABLE Company (company_id INTEGER PRIMARY KEY, name VARCHAR(225));
    
  5. K zobrazení seznamu všech !tables tabulek v HBase použijte příkaz SQLLine. Zadejte následující příkaz:

    !tables
    
  6. Vložte hodnoty do tabulky. Zadejte následující příkaz:

    UPSERT INTO Company VALUES(1, 'Microsoft');
    UPSERT INTO Company VALUES(2, 'Apache');
    
  7. Dotaz na tabulku Zadejte následující příkaz:

    SELECT * FROM Company;
    
  8. Odstranění záznamu Zadejte následující příkaz:

    DELETE FROM Company WHERE COMPANY_ID=1;
    
  9. Vytáhněte tabulku. Zadejte následující příkaz:

    DROP TABLE Company;
    
  10. K ukončení sqlline !quit použijte příkaz SQLLine. Zadejte následující příkaz:

    !quit
    

Vyčištění prostředků

Po dokončení tohoto rychlého startu můžete cluster odstranit. Pomocí HDInsight jsou vaše data uložena v Azure Storage, takže můžete clusteru bezpečně odstranit, pokud není používán. Za cluster služby HDInsight se účtují poplatky, i když se nepoužívá. Vzhledem k tomu, že poplatky za cluster představují několikanásobek poplatků za úložiště, dává ekonomický smysl odstraňovat clustery, které nejsou používány.

Informace o odstranění clusteru najdete v tématu Odstranění clusteru HDInsight pomocí prohlížeče, PowerShellu nebo Azure CLI.

Další kroky

V tomto rychlém startu jste zjistili, jak pomocí Apache Phoenix spouštět dotazy HBase v Azure HDInsight. Další informace o Apache Phoenix najdete v dalším článku, který vám poskytne podrobnější prozkoumání.