全部产品
Search
文档中心

E-MapReduce:Gunakan HBase Shell

更新时间:Jul 02, 2025

Setelah membuat kluster E-MapReduce (EMR) yang mencakup layanan HBase, Anda dapat menggunakan HBase Shell untuk terhubung ke HBase dan melakukan operasi seperti membaca serta menulis data. Topik ini menjelaskan cara menggunakan HBase Shell untuk terhubung ke HBase dan menjalankan perintah umum.

Prasyarat

Kluster DataServing atau kluster kustom yang mencakup layanan HBase telah dibuat. Untuk informasi lebih lanjut, lihat Buat kluster.

Hubungkan ke HBase

  1. Masuk ke kluster yang diinginkan dalam mode SSH. Untuk informasi lebih lanjut, lihat Masuk ke kluster.

  2. Jalankan perintah berikut untuk terhubung ke HBase:

    hbase shell

    Setelah terhubung ke HBase, sistem akan menampilkan tips penggunaan dasar, informasi versi HBase, dan prompt hbase(main):001:0>.

    Anda dapat menjalankan perintah help untuk melihat daftar perintah yang didukung oleh HBase Shell.

Perintah HBase Shell yang Umum

Buat tabel

Jalankan perintah create untuk membuat tabel. Tentukan nama tabel dan satu atau lebih keluarga kolom. Sebagai contoh, jalankan perintah berikut untuk membuat tabel bernama table1 dengan keluarga kolom cf1:

create 'table1', 'cf1'

Tulis data ke tabel

Jalankan perintah put untuk menulis data ke tabel. Tentukan nama tabel, kunci baris, kolom, dan nilai yang ingin ditulis. Kolom dalam HBase terdiri dari keluarga kolom dan kualifikasi kolom. Dalam contoh berikut, kolom cf1:q1 terdiri dari keluarga kolom cf1 dan kualifikasi kolom q1.

put 'table1', 'r1', 'cf1:q1', 'v1'
put 'table1', 'r1', 'cf1:q2', 'v2'
put 'table1', 'r2', 'cf1:q1', 'v3'

Pindai tabel

Jalankan perintah scan untuk mendapatkan semua data yang memenuhi kondisi tertentu dari sebuah tabel. Anda dapat menambahkan kondisi ke perintah scan sesuai kebutuhan bisnis. Sebagai contoh, jalankan perintah berikut untuk mendapatkan semua data di kolom cf1:q1 dari table1:

scan 'table1', {COLUMNS => 'cf1:q1'}

Keluaran berikut dikembalikan:

ROW                                                COLUMN+CELL
 r1                                                column=cf1:q1, timestamp=2022-09-14T16:06:34.339, value=v1
 r2                                                column=cf1:q1, timestamp=2022-09-14T16:06:36.615, value=v3
2 row(s)

Dapatkan data

Jalankan perintah get untuk mendapatkan data dari satu baris atau sel dalam tabel. Anda dapat menambahkan kondisi ke perintah get sesuai kebutuhan bisnis. Sebagai contoh, jalankan perintah berikut untuk mendapatkan nilai kolom cf1:q1 di baris r1 dari table1:

get 'table1', 'r1', {COLUMNS => 'cf1:q1'}

Keluaran berikut dikembalikan:

COLUMN                                             CELL
 cf1:q1                                            timestamp=2022-09-14T16:06:34.339, value=v1
1 row(s)

Hapus data

  • Hapus data dari satu sel

    Jalankan perintah delete untuk menghapus nilai dari satu sel dalam tabel. Sel sesuai dengan kolom dalam satu baris tabel. Sebagai contoh, jalankan perintah berikut untuk menghapus nilai kolom cf1:q1 di baris r2 dari table1:

    delete 'table1', 'r2', 'cf1:q1'
  • Hapus data dari beberapa sel

    Jalankan perintah deleteall untuk menghapus nilai semua kolom yang memenuhi kondisi tertentu dalam satu baris tabel. Sebagai contoh, jalankan perintah berikut untuk menghapus semua data di baris r1 dari table1. Anda dapat menambahkan nama keluarga kolom ke perintah untuk membatasi ruang lingkup penghapusan.

    deleteall 'table1', 'r1'

Nonaktifkan tabel

Jalankan perintah disable untuk menonaktifkan tabel. Sebelum menghapus tabel atau memodifikasi pengaturan spesifik tabel, Anda harus menonaktifkannya terlebih dahulu. Sebagai contoh, jalankan perintah berikut untuk menonaktifkan table1:

disable 'table1'

Aktifkan tabel

Jalankan perintah enable untuk mengaktifkan tabel. Sebagai contoh, jalankan perintah berikut untuk mengaktifkan table1:

enable 'table1'

Hapus tabel

Jalankan perintah drop untuk menghapus tabel. Anda harus menonaktifkan tabel sebelum menghapusnya. Sebagai contoh, jalankan perintah berikut untuk menghapus table1:

drop 'table1'

FAQ

Apakah HBase menyediakan antarmuka pengembangan visual?

HBase tidak menyediakan antarmuka pengembangan visual yang lengkap. Antarmuka web bawaan HBase digunakan terutama untuk pemantauan dan pengelolaan performa serta status kluster HBase, bukan untuk melakukan operasi data. Untuk melakukan operasi pembuatan, pembacaan, pembaruan, dan penghapusan (CRUD) pada data dalam kluster HBase, Anda dapat menggunakan alat baris perintah (HBase Shell), API Java, serta antarmuka lainnya seperti REST API dan Thrift API.

Referensi

Untuk informasi lebih lanjut, lihat Panduan Referensi Apache HBase di situs resmi Apache HBase.