All Products
Search
Document Center

:Akses LindormTable menggunakan SDK HBase non-Java

Last Updated:Jun 22, 2026

Lindorm wide-column engine mendukung akses melalui API HBase non-Java, seperti C++, Python, dan Go. Topik ini menjelaskan cara menginstal SDK dan melakukan operasi akses.

Informasi latar belakang

Lindorm wide table engine mendukung akses dari bahasa non-Java (seperti C++, Python, dan Go) melalui Thrift.

Mesin tabel lebar Lindorm menggunakan definisi antarmuka HBase Thrift2, sehingga Anda perlu mengunduh file definisi HBase Thrift2 untuk menghasilkan antarmuka khusus bahasa. Dibandingkan dengan HBase Thrift1, definisi antarmuka HBase Thrift2 di Lindorm lebih jelas dan memberikan pengalaman pemanggilan API yang mirip dengan Java. Saat ini, file definisi HBase Thrift2 menyediakan fitur yang lebih lengkap dan lebih mudah digunakan daripada file definisi HBase Thrift1.

Prasyarat

  • Anda telah mengunduh paket instalasi Thrift.

  • Anda telah mengunduh file definisi HBase Thrift2.

  • Anda telah memperoleh endpoint untuk Access by using a non-Java ApsaraDB for HBase API. Untuk informasi selengkapnya, lihat View endpoints. Pada halaman Database connection instans Lindorm Anda, pilih tab LindormTable, buka bagian ApsaraDB for HBase-compatible endpoints, lalu salin endpoint HTTP pada bagian Access by using a non-Java ApsaraDB for HBase API untuk VPC atau jaringan publik. Port-nya adalah 9190.

Akses LindormTable (contoh Python)

Untuk petunjuk penggunaan paket instalasi Thrift, lihat dokumentasi resmi Apache Thrift. Langkah-langkah berikut menjelaskan cara menggunakan Thrift untuk mengakses LindormTable:

  1. Gunakan file definisi HBase Thrift2 untuk menghasilkan file antarmuka untuk bahasa target Anda. Jalankan perintah berikut:

    thrift --gen <language> hbase.thrift
    Catatan

    Parameter language menentukan flag generator untuk bahasa target Anda, misalnya py untuk Python, php, atau cpp. Untuk daftar lengkap bahasa yang didukung beserta flag generator-nya, lihat dokumentasi resmi Apache Thrift.

    Sebagai contoh, untuk menghasilkan file antarmuka Python, atur parameter language ke py dan jalankan perintah berikut:

    thrift --gen py hbase.thrift
  2. Buat client untuk mengakses mesin tabel lebar Lindorm.

    Server Thrift di Lindorm menggunakan HTTP sebagai lapisan transport-nya. Oleh karena itu, Anda harus menggunakan implementasi transport ThttpClient saat membuat client. Jika Access Control List (ACL) diaktifkan untuk instans Anda, Anda harus menambahkan dua header kustom ke objek ThttpClient untuk meneruskan username dan password. Langkah ini tidak diperlukan jika ACL dinonaktifkan. Setiap implementasi ThttpClient khusus bahasa menyediakan fungsi untuk mengatur header kustom. Contoh Python berikut menunjukkan cara membuat client dan mengakses LindormTable.

    # -*- coding: utf-8  -*-
    # Dua modul berikut dihasilkan dengan menjalankan perintah 'pip install thrift'.
    from thrift.protocol import TBinaryProtocol
    from thrift.transport import THttpClient
    # Dua modul berikut dihasilkan dengan menjalankan perintah 'thrift --gen py hbase.thrift'.
    from hbase import THBaseService
    from hbase.ttypes import TColumnValue, TColumn, TTableName, TTableDescriptor, TColumnFamilyDescriptor, TNamespaceDescriptor, TGet, TPut, TScan
    # Konfigurasikan endpoint untuk LindormTable.
    url = "http://ld-bp17j28j2y7pm****-proxy-lindorm.lindorm.rds.aliyuncs.com:9190"
    transport = THttpClient.THttpClient(url)
    headers = {}
    # Atur username.
    headers["ACCESSKEYID"]="testuser";
    # Atur password untuk username tersebut.
    headers["ACCESSSIGNATURE"]="password"
    transport.setCustomHeaders(headers)
    protocol = TBinaryProtocol.TBinaryProtocolAccelerated(transport)
    client = THBaseService.Client(protocol)
    transport.open()
    # Tutup koneksi setelah menyelesaikan operasi.
    transport.close()

Contoh kode

Contoh kode lengkap untuk bahasa non-Java lainnya tersedia di tautan GitHub berikut.