全部产品
Search
文档中心

Lindorm:Menggunakan API ApsaraDB for HBase untuk bahasa non-Java dalam mengembangkan aplikasi

更新时间:Nov 10, 2025

Di Lindorm, mesin LindormTable mendukung akses melalui API non-Java HBase, termasuk C++, Python, dan Go. Topik ini menjelaskan operasi akses tersebut.

Prasyarat

Menggunakan API ApsaraDB for HBase untuk bahasa non-Java, seperti Python, untuk terhubung ke LindormTable

Untuk informasi lebih lanjut tentang penggunaan paket instalasi Thrift, lihat dokumentasi resmi Apache Thrift. Langkah-langkah berikut menjelaskan cara menggunakan Thrift untuk mengakses mesin tabel lebar Lindorm:

  1. Jalankan pernyataan berikut untuk menggunakan file definisi Thrift2 untuk ApsaraDB for HBase guna menghasilkan file bahasa definisi antarmuka (IDL) dalam bahasa yang sesuai:

    thrift --gen <language> Hbase.thrift
    Catatan

    Parameter language menentukan bahasa pemrograman yang ingin Anda gunakan. Nilai yang didukung mencakup python, php, cpp, atau py.

    Contoh pernyataan:

    thrift --gen py Hbase.thrift
  2. Buat klien untuk mengakses LindormTable.

    Server Thrift di Lindorm menggunakan HTTP sebagai lapisan transport. Oleh karena itu, Anda perlu menggunakan ThttpClient dari Thrift saat membuat klien. Metode pembuatan klien bervariasi tergantung pada bahasa pemrograman yang digunakan. Jika Access Control List (ACL) diaktifkan, tentukan nama pengguna dan kata sandi dalam dua header di ThttpClient untuk autentikasi. Jika ACL dinonaktifkan, nama pengguna dan kata sandi tidak diperlukan. Thrift memungkinkan Anda memanggil fungsi spesifik bahasa untuk menetapkan header kustom di ThttpClient. Contoh berikut menggunakan Python. Jalankan pernyataan berikut untuk membuat klien dan menghubungkannya ke LindormTable:

     # -*- coding: utf-8  -*-
     # Anda dapat menjalankan perintah pip install thrift untuk menghasilkan dua modul berikut:
     from thrift.protocol import TBinaryProtocol
     from thrift.transport import THttpClient
    
     # Anda dapat menjalankan perintah thrift --gen py hbase.thrift untuk menghasilkan dua modul berikut:
     from hbase import THBaseService
     from hbase.ttypes import TColumnValue, TColumn, TTableName, TTableDescriptor, TColumnFamilyDescriptor, TNamespaceDescriptor, TGet, TPut, TScan
    
     # Tentukan titik akhir LindormTable.
     url = "http://ld-bp17j28j2y7pm****-proxy-lindorm.lindorm.rds.aliyuncs.com:9190"
     transport = THttpClient.THttpClient(url)
     headers = {}
     # Tentukan nama pengguna.
     headers["ACCESSKEYID"]="testuser";
     # Tentukan kata sandi yang sesuai dengan nama pengguna.
     headers["ACCESSSIGNATURE"]="password"
     transport.setCustomHeaders(headers)
     protocol = TBinaryProtocol.TBinaryProtocolAccelerated(transport)
     client = THBaseService.Client(protocol)
     transport.open()
     # Tutup koneksi.
     transport.close()

Contoh kode dalam bahasa lain

Untuk mendapatkan contoh kode lengkap untuk bahasa non-Java lainnya, klik salah satu tautan unduhan berikut untuk mengunduh contoh kode untuk bahasa dari GitHub: