全部产品
Search
文档中心

Lindorm:Menghubungkan ke LindormTable menggunakan Lindorm Shell

更新时间:Feb 04, 2026

Lindorm Shell adalah alat klien HBase yang disediakan oleh Lindorm. Alat ini menggunakan HBase Java API untuk menghubungkan ke LindormTable dan melakukan berbagai operasi, seperti membuat tabel, memasukkan data, dan mengkueri data. Topik ini menjelaskan cara mengunduh Lindorm Shell dan menggunakannya untuk terhubung ke LindormTable.

Prasyarat

  • Lingkungan Java telah diinstal. Diperlukan Java Development Kit (JDK) versi 1.8 atau yang lebih baru.

  • Alamat IP klien telah ditambahkan ke daftar putih instans Lindorm. Untuk informasi selengkapnya, lihat Konfigurasi daftar putih.

Catatan penggunaan

  • Saat menghubungkan ke LindormTable menggunakan Lindorm Shell, Anda hanya dapat melakukan operasi bahasa definisi data (DDL) dan operasi baca-tulis data yang sederhana. Untuk informasi selengkapnya mengenai operasi yang tidak didukung, lihat Batasan pada HBase API.

  • Jangan gunakan HBase API untuk mengakses tabel lebar yang dibuat menggunakan SQL. Hal ini dapat menyebabkan karakter menjadi rusak (garbled).

  • Anda dapat menggunakan Lindorm Shell pada sistem operasi Linux atau macOS.

    Penting

    Jika Anda menggunakan Lindorm Shell pada sistem operasi Windows, Anda mungkin mengalami error atau library yang hilang. Jika hal ini terjadi, Anda harus menambahkan library yang diperlukan ke sistem Anda berdasarkan pesan error yang muncul.

Prosedur

  1. Unduh alat Lindorm Shell.

    1. Di pojok kiri atas Konsol Lindorm, pilih wilayah tempat instans berada. Pada halaman Instances, klik ID instans target.

    2. Pada panel navigasi di sebelah kiri, klik Database Connections, lalu klik tab Wide Table Engine.

    3. Klik Lindorm ShellDownload.

  2. Jalankan perintah untuk mengekstrak paket Lindorm Shell ke folder tujuan. Contoh berikut menunjukkan cara mengekstrak paket ke folder alihbase-2.0.18.

    tar zxvf hbaseue-shell.tar.gz
  3. Konfigurasikan parameter koneksi.

    1. Buka direktori alihbase-2.0.18/conf dan buka file hbase-site.xml.

      vi hbase-site.xml
    2. Konfigurasikan titik akhir (endpoint), username, dan password untuk menghubungkan ke LindormTable.

      <configuration>
          <property>
              <name>hbase.zookeeper.quorum</name>
              <value>ld-bp17j28j2y7pm****-proxy-lindorm-pub.lindorm.rds.aliyuncs.com:30020</value>
          </property>
          <property>
              <name>hbase.client.username</name>
              <value>testuser</value>
          </property>
          <property>
              <name>hbase.client.password</name>
              <value>password</value>
          </property>
      </configuration>

      Deskripsi parameter:

      • hbase.zookeeper.quorum: Titik akhir (endpoint) Access By Using HBase Java API untuk Mesin Tabel Lebar Lindorm.

        • Endpoint VPC: Gunakan endpoint ini jika Lindorm Shell diinstal pada Instance ECS yang berada dalam VPC yang sama dengan instans Lindorm.

        • Endpoint publik: Gunakan endpoint ini jika Lindorm Shell diinstal pada mesin lokal Anda, atau pada Instance ECS yang tidak berada dalam VPC yang sama dengan instans Lindorm.

      • hbase.client.username dan hbase.client.password: Username dan password yang digunakan untuk mengakses LindormTable. Jika Anda lupa password, Anda dapat mengubahnya melalui Cluster Management System LindormTable. Untuk informasi selengkapnya, lihat Mengubah password pengguna.

  4. Akses LindormTable menggunakan Lindorm Shell.

    Buka direktori alihbase-2.0.18/bin dan jalankan perintah berikut.

    ./hbase shell

    Informasi berikut menunjukkan koneksi berhasil.

    Version 2.0.18, r08b8d58a9d6ce89765d5ebe2ddff425aed644c16, Mon Feb  1 12:46:39 CST 2021
    Took 0.0034 seconds
    Catatan

    Untuk informasi selengkapnya tentang penggunaan shell, lihat Referensi Lindorm Shell.

Referensi Lindorm Shell

Referensi perintah

Untuk informasi selengkapnya mengenai perintah shell, lihat Apache HBase Shell.

Bahasa definisi data

  • create: Membuat tabel.

  • list: Menampilkan semua tabel.

  • disable: Menonaktifkan tabel.

  • is_disabled: Memverifikasi apakah suatu tabel dinonaktifkan.

  • enable: Mengaktifkan tabel.

  • is_enabled: Memverifikasi apakah suatu tabel diaktifkan.

  • describe: Menampilkan detail tabel tertentu, termasuk properti dan skema tabel.

  • alter: Mengubah konfigurasi tabel.

  • exists: Memverifikasi apakah suatu tabel ada.

  • drop: Menghapus tabel tertentu.

Bahasa manipulasi data

  • put: Memperbarui nilai pada sel tertentu.

  • get: Mengambil konten dari baris atau sel tertentu.

  • delete: Menghapus nilai sel dalam tabel.

  • deleteall: Menghapus semua sel dalam baris tertentu.

  • scan: Memindai dan mengembalikan data tabel.

  • count: Menghitung dan mengembalikan jumlah baris dalam tabel.

  • truncate_preserve: Menghapus semua data dalam tabel. Operasi ini menonaktifkan dan menghapus tabel yang ditentukan, lalu membuat ulang tabel tersebut dengan partisi region yang sama seperti tabel aslinya.

Masuk dan keluar dari lingkungan Shell

  • Masuk ke lingkungan Shell.

    bin/hbase shell
  • Keluar dari lingkungan Shell.

    quit

Referensi operasi

Buat tabel dan masukkan data

  1. Buat tabel. Anda harus menentukan nama tabel dan nama keluarga kolom.

    create 'table_name', 'column_family_name'

    Contoh:

    // Buat tabel bernama test dengan keluarga kolom bernama cf.
    create 'test', 'cf'
  2. Masukkan data.

    put 'table_name', 'rowkey', 'column_family_name:column_name', 'value'

    Contoh:

    put 'test', 'row1', 'cf:a', 'value1'
    put 'test', 'row2', 'cf:b', 'value2'
    put 'test', 'row3', 'cf:c', 'value3'
    Catatan

    row1 adalah kunci baris dari tabel test, cf:a menentukan nama keluarga kolom dan nama kolom, sedangkan value1 adalah nilainya.

Kueri

  • Kueri informasi semua tabel. Anda dapat menggunakan ekspresi reguler untuk memfilter tabel.

    list
    list 'abc.*'
    list 'test'
  • Kueri data dalam tabel tertentu.

    Perintah scan menyediakan cara fleksibel untuk mengakses data HBase. Anda dapat menggunakan operasi scan untuk memindai seluruh tabel atau mengkueri data dalam rentang tertentu. Kecepatan kueri sedikit lebih lambat dibandingkan dengan mengkueri satu data menggunakan perintah get. Jalankan pernyataan berikut untuk mengkueri tabel test.

    scan 'table_name'

    Contoh:

    scan 'test'

    Hasil:

    ROW                                      COLUMN+CELL
     row1                                    column=cf:a, timestamp=1421762485768, value=value1
     row2                                    column=cf:b, timestamp=1421762491785, value=value2
     row3                                    column=cf:c, timestamp=1421762496210, value=value3
    3 baris(s) dalam 0.0230 detik
  • Kueri satu baris data dari tabel.

    get 'table_name', 'Rowkey' 

    Contoh:

    get 'test', 'row1' 

    Hasil:

    COLUMN CELL
     cf:a timestamp=1421762485768, value=value1
    1 baris(s) dalam 0.0350 detik

Nonaktifkan dan aktifkan tabel

Anda dapat menonaktifkan atau mengaktifkan tabel tertentu. Sebelum menghapus tabel, mengubah pengaturannya, atau melakukan operasi lain, Anda harus terlebih dahulu menggunakan perintah disable untuk menonaktifkan tabel tersebut. Setelah penghapusan atau perubahan konfigurasi selesai, gunakan perintah enable untuk mengaktifkan kembali tabel tersebut.

disable 'table_name'
enable 'table_name'

Hapus tabel

Hapus tabel tertentu.

drop 'table_name'

Referensi konfigurasi umum

Konfigurasi Umum

  • Tetapkan epoch kompaksi mayor untuk tabel tertentu. Jangan atur parameter ini kecuali benar-benar diperlukan. Satuan waktu dalam milidetik (ms).

    Contoh berikut menetapkan epoch kompaksi mayor menjadi 7 hari.

    alter 'table_name', {NAME => 'column_family_name', CONFIGURATION => {'hbase.hregion.majorcompaction' => 16800000}}
    Catatan

    Nilai default: Math.Min(TTL, 1.728.000.000 ms). Jika Anda tidak menetapkan TTL, sistem akan menggunakan nilai default 20 hari (20 × 24 × 60 × 60 × 1000 ms = 1.728.000.000 ms).

  • Tetapkan algoritma kompresi data untuk keluarga kolom tabel tertentu.

    alter 'table_name', NAME => 'column_family_name', COMPRESSION => 'ZSTD'
  • Tetapkan tipe encoding blok untuk keluarga kolom tabel tertentu.

    Tetapkan tipe encoding blok untuk keluarga kolom tabel test menjadi DATA_BLOCK_ENCODING.

    alter 'table_name', NAME => 'column_family_name', DATA_BLOCK_ENCODING => 'DIFF'
  • Tetapkan masa hidup data (TTL) untuk keluarga kolom tabel tertentu. Satuan TTL adalah detik (s). Misalnya, 2.592.000 s setara dengan 30 hari.

    alter 'table_name', NAME => 'column_family_name', TTL => 2592000

    Untuk membatalkan periode validitas data dan menyimpan data secara permanen, Anda dapat mengatur nilai TTL menjadi FOREVER. Berikut contohnya:

    alter 'table_name' , {NAME => 'column_family_name', TTL => 'FOREVER'}
  • Tetapkan pre-sharding untuk tabel tertentu.

    create 'table_name',{NAME => 'column_family_name',COMPRESSION => 'snappy' }, { NUMREGIONS => 50, SPLITALGO => 'HexStringSplit' }

    Deskripsi parameter

    Field

    Deskripsi

    NAME

    Nama keluarga kolom tabel HBase.

    COMPRESSION

    Algoritma kompresi data untuk tabel HBase. Tidak ada algoritma kompresi default yang digunakan. Algoritma kompresi berikut tersedia:

    • ZSTD (Disarankan)

    • SNAPPY

    • LZ4

    NUMREGIONS

    Jumlah shard. Biasanya, hitung jumlah shard berdasarkan penggunaan penyimpanan 6 GB hingga 8 GB per shard. Jika instans berukuran besar, Anda dapat menetapkan jumlah shard yang lebih besar sesuai kebutuhan.

    SPLITALGO

    Algoritma yang digunakan untuk menginisialisasi partisi. Tabel HBase mendukung tiga algoritma pemisahan berikut. Skenario penggunaan masing-masing algoritma dijelaskan di bawah ini:

    • HexStringSplit: Cocok untuk kunci baris yang diawali dengan string heksadesimal.

    • DecimalStringSplit: Cocok untuk kunci baris yang diawali dengan string desimal.

    • UniformSplit: Cocok untuk kunci baris yang memiliki awalan sepenuhnya acak.

Setelah mengubah konfigurasi, jalankan pernyataan berikut untuk memverifikasi bahwa perubahan telah diterapkan:

describe 'table_name'