Akses tabel HBase dengan Hive - Amazon EMR

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Akses tabel HBase dengan Hive

HBase dan Apache Hive terintegrasi erat, memungkinkan Anda menjalankan beban kerja pemrosesan paralel besar-besaran langsung pada data yang disimpan di HBase. Untuk menggunakan Hive dengan HBase, Anda dapat meluncurkannya pada klaster yang sama. Bagaimanapun juga, Anda dapat meluncurkan Hive dan HBase pada klaster terpisah. Menjalankan HBase dan Hive secara terpisah pada klaster yang berbeda dapat meningkatkan performa karena memungkinkan setiap aplikasi untuk menggunakan sumber daya klaster lebih efisien.

Prosedur berikut menunjukkan cara menghubungkan ke HBase pada klaster menggunakan Hive.

catatan

Anda hanya dapat menghubungkan klaster Hive untuk klaster HBase tunggal.

Menghubungkan Hive ke HBase
  1. Buat klaster terpisah dengan Hive dan HBase yang diinstal atau buat klaster tunggal dengan kedua HBase dan Hive yang diinstal.

  2. Jika Anda menggunakan klaster terpisah, modifikasi grup keamanan Anda sehingga HBase dan Hive port terbuka antara dua simpul utama ini.

  3. Gunakan SSH untuk terhubung ke master utama untuk klaster dengan Hive terinstal. Untuk informasi selengkapnya, lihat Connect ke simpul utama menggunakan SSH di Panduan Pengelolaan Amazon EMR.

  4. Luncurkan shell Hive dengan perintah berikut.

    hive
  5. (Opsional) Anda tidak perlu melakukan hal ini jika HBase dan Hive terletak di klaster yang sama. Connect klien HBase pada cluster Hive Anda untuk klaster HBase yang berisi data Anda. Pada contoh berikut, public-DNS-name digantikan oleh nama DNS master utama klaster HBase, misalnya: ec2-50-19-76-67.compute-1.amazonaws.com.

    set hbase.zookeeper.quorum=public-DNS-name;
  6. Lanjutkan untuk menjalankan kueri Hive pada data HBase Anda seperti yang diinginkan atau lihat prosedur berikutnya.

Untuk mengakses data HBase dari Hive
  • Setelah hubungan antara klaster Hive dan HBase dibuat (seperti yang ditunjukkan dalam prosedur sebelumnya), Anda dapat mengakses data yang disimpan pada klaster HBase dengan membuat tabel eksternal di Hive.

    Contoh berikut, ketika dijalankan dari prompt Hive pada simpul utama menciptakan tabel eksternal yang mereferensikan data yang disimpan dalam tabel HBase yang disebut inputTable. Oleh sebab itu, Anda dapat mereferensikan inputTable dalam pernyataan Hive untuk mengkueri dan memodifikasi data yang disimpan dalam klaster HBase.

    set hbase.zookeeper.quorum=ec2-107-21-163-157.compute-1.amazonaws.com; create external table inputTable (key string, value string) stored by 'org.apache.hadoop.hive.hbase.HBaseStorageHandler' with serdeproperties ("hbase.columns.mapping" = ":key,f1:col1") tblproperties ("hbase.table.name" = "t1"); select count(key) from inputTable ;

Untuk kasus penggunaan lebih lanjut dan contoh bagaimana mengombinasikan HBase dengan Hive, lihat AWS Posting Blog Big Data, Gabungkan NoSQL dan analisis paralel besar-besaran menggunakan Apache HBase dan Apache Hive di Amazon EMR.