Aracılığıyla paylaş


Hızlı Başlangıç: Apache Phoenix ile Azure HDInsight'ta Apache HBase sorgulama

Bu hızlı başlangıçta Apache Phoenix kullanarak Azure HDInsight'ta HBase sorguları çalıştırmayı öğreneceksiniz. Apache Phoenix, Apache HBase için bir SQL sorgu altyapısıdır. JDBC sürücüsü olarak erişilir ve SQL kullanarak HBase tablolarını sorgulamaya ve yönetmeye olanak tanır. SQLLine, SQL'i yürütmek için kullanılan bir komut satırı yardımcı programıdır.

Azure aboneliğiniz yoksa başlamadan önce ücretsiz bir hesap oluşturun.

Önkoşullar

ZooKeeper düğümünü tanımlama

Bir HBase kümesine bağlandığınızda Apache ZooKeeper düğümlerinden birine bağlanmanız gerekir. Her HDInsight kümesinin üç ZooKeeper düğümü vardır. Curl, bir ZooKeeper düğümünü hızla tanımlamak için kullanılabilir. Aşağıdaki curl komutunu PASSWORD ve CLUSTERNAME ile ilgili değerlerle değiştirerek düzenleyin ve ardından komutu bir komut satırına girin.

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

Çıkışın bir bölümü şuna benzer olacaktır:

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

Daha sonra kullanmak üzere host_name değerini not edin.

Tablo oluşturma ve verileri işleme

SSH kullanarak HBase kümelerine bağlanabilir ve ardından Apache Phoenix kullanarak HBase tabloları oluşturabilir, veri ekleyebilir ve veri sorgulayabilirsiniz.

  1. HBase kümenize bağlanmak için komutunu kullanın ssh . Aşağıdaki komutu CLUSTERNAME ile kümenizin adını değiştirerek düzenleyin ve komutu çalıştırın:

    ssh sshuser@CLUSTERNAME-ssh.azurehdinsight.net
    
  2. Phoenix istemcisine dizini değiştirin. Aşağıdaki komutu girin:

    cd /usr/hdp/current/phoenix-client/bin
    
  3. SQLLine'ı başlatın. ZOOKEEPER öğesini daha önce tanımlanan ZooKeeper düğümüyle değiştirin ve ardından komutu girin:

    ./sqlline.py ZOOKEEPER:2181:/hbase-unsecure
    
  4. Bir HBase tablosu oluşturun. Aşağıdaki komutu girin:

    CREATE TABLE Company (company_id INTEGER PRIMARY KEY, name VARCHAR(225));
    
  5. HBase'deki tüm tabloları listelemek için SQLLine !tables komutunu kullanın. Aşağıdaki komutu girin:

    !tables
    
  6. Tabloya değer ekleyin. Aşağıdaki komutu girin:

    UPSERT INTO Company VALUES(1, 'Microsoft');
    UPSERT INTO Company VALUES(2, 'Apache');
    
  7. Tabloyu sorgula. Aşağıdaki komutu girin:

    SELECT * FROM Company;
    
  8. Kaydı silme. Aşağıdaki komutu girin:

    DELETE FROM Company WHERE COMPANY_ID=1;
    
  9. Tabloyu kaldırın. Aşağıdaki komutu girin:

    DROP TABLE Company;
    
  10. SQLLine'dan !quit çıkmak için SQLLine komutunu kullanın. Aşağıdaki komutu girin:

    !quit
    

Kaynakları temizleme

Hızlı başlangıcı tamamladıktan sonra kümeyi silmek isteyebilirsiniz. HDInsight ile verileriniz Azure Depolama'da depolanır, bu nedenle kullanımda olmayan bir kümeyi güvenle silebilirsiniz. Kullanımda olmasa bile HDInsight kümesi için de ücretlendirilirsiniz. Küme ücretleri depolama ücretlerinden çok daha fazla olduğundan, kullanımda olmayan kümeleri silmek ekonomik bir anlam ifade eder.

Kümeyi silmek için bkz . Tarayıcınızı, PowerShell'i veya Azure CLI'yı kullanarak HDInsight kümesini silme.

Sonraki adımlar

Bu hızlı başlangıçta Apache Phoenix kullanarak Azure HDInsight'ta HBase sorguları çalıştırmayı öğrendiniz. Apache Phoenix hakkında daha fazla bilgi edinmek için sonraki makale daha ayrıntılı bir inceleme sağlayacaktır.

HDInsight'ta Apache Phoenix