Mulai cepat: Query Apache HBase di Azure HDInsight dengan Apache Phoenix

Dalam mulai cepat ini, Anda belajar cara menggunakan Apache Phoenix untuk menjalankan kueri HBase di Azure HDInsight. Apache Phoenix adalah mesin kueri SQL untuk Apache HBase. Mesin ini diakses sebagai driver JDBC, dan memungkinkan kueri serta pengelolaan tabel HBase dengan menggunakan SQL. SQLLine adalah utilitas baris perintah untuk menjalankan SQL.

Jika Anda tidak memiliki langganan Azure, buat akun gratis sebelum Anda memulai.

Prasyarat

Mengidentifikasi node ZooKeeper

Ketika Anda tersambung ke kluster HBase, Anda perlu menyambungkan ke salah satu node Apache ZooKeeper. Setiap kluster HDInsight memiliki tiga node ZooKeeper. Curl dapat digunakan untuk mengidentifikasi node ZooKeeper dengan cepat. Edit perintah curl di bawah ini dengan mengganti PASSWORD dan CLUSTERNAME dengan nilai yang relevan, lalu masukkan perintah di prompt perintah:

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

Sebagian output akan terlihat mirip dengan:

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

Perhatikan nilai untuk host_name untuk digunakan nanti.

Membuat tabel dan memanipulasi data

Anda dapat menggunakan SSH untuk menyambungkan ke kluster HBase, lalu menggunakan Apache Phoenix untuk membuat tabel HBase, menyisipkan data, dan kueri data.

  1. Gunakan perintah ssh untuk menyambungkan ke kluster HBase Anda. Edit perintah di bawah ini dengan mengganti CLUSTERNAME dengan nama kluster Anda, lalu masukkan perintah:

    ssh sshuser@CLUSTERNAME-ssh.azurehdinsight.net
    
  2. Ubah direktori ke klien Phoenix. Masukkan perintah berikut:

    cd /usr/hdp/current/phoenix-client/bin
    
  3. Luncurkan SQLLine. Edit perintah di bawah ini dengan mengganti ZOOKEEPER dengan node ZooKeeper yang diidentifikasi sebelumnya, lalu masukkan perintah:

    ./sqlline.py ZOOKEEPER:2181:/hbase-unsecure
    
  4. Membuat tabel HBase. Masukkan perintah berikut:

    CREATE TABLE Company (company_id INTEGER PRIMARY KEY, name VARCHAR(225));
    
  5. Gunakan perintah SQLLine !tables untuk mencantumkan semua tabel di HBase. Masukkan perintah berikut:

    !tables
    
  6. Menyisipkan nilai ke dalam tabel. Masukkan perintah berikut:

    UPSERT INTO Company VALUES(1, 'Microsoft');
    UPSERT INTO Company VALUES(2, 'Apache');
    
  7. Lakukan kueri pada tabel. Masukkan perintah berikut:

    SELECT * FROM Company;
    
  8. Hapus catatan. Masukkan perintah berikut:

    DELETE FROM Company WHERE COMPANY_ID=1;
    
  9. Hilangkan tabel. Masukkan perintah berikut:

    DROP TABLE Company;
    
  10. Gunakan perintah SQLLine !quit untuk keluar dari SQLLine. Masukkan perintah berikut:

    !quit
    

Membersihkan sumber daya

Setelah Anda menyelesaikan mulai cepat, Anda dapat menghapus kluster. Dengan HDInsight, data Anda disimpan di Azure Storage, sehingga Anda dapat menghapus kluster dengan aman saat kluster tidak digunakan. Anda juga dikenakan biaya untuk kluster HDInsight, bahkan saat kluster tidak digunakan. Karena biaya untuk kluster berkali-kali lebih banyak daripada biaya untuk penyimpanan, masuk akal secara ekonomis untuk menghapus kluster saat tidak digunakan.

Untuk menghapus kluster, lihat Hapus kluster HDInsight menggunakan browser, PowerShell, atau Azure CLI Anda.

Langkah berikutnya

Dalam mulai cepat ini, Anda belajar cara menggunakan Apache Phoenix untuk menjalankan kueri HBase di Azure HDInsight. Untuk mempelajari lebih lanjut tentang Apache Phoenix, artikel berikutnya akan menyediakan pemeriksaan yang lebih mendalam.