Tüm Ürünler
Search
Belge Merkezi

:Java dışı bir HBase SDK kullanarak LindormTable'a erişin

Son Güncelleme:Oct 07, 2026

Lindorm geniş sütunlu motoru, C++, Python ve Go gibi Java dışı HBase API'leri aracılığıyla erişimi destekler. Bu konuda SDK'nın nasıl yükleneceği ve erişim işlemlerinin nasıl yapılacağı açıklanmaktadır.

Arka plan bilgileri

Lindorm geniş tablo motoru, Thrift üzerinden C++, Python ve Go gibi Java dışı dillerden erişimi destekler.

Lindorm geniş tablo motoru HBase Thrift2 arayüz tanımını kullanır; bu nedenle dile özel arayüzler oluşturmak için HBase Thrift2 tanım dosyasını indirmeniz gerekir. Lindorm'daki HBase Thrift2 arayüz tanımı, HBase Thrift1 tanımına kıyasla daha nettir ve Java benzeri bir API çağırma deneyimi sunar. HBase Thrift2 tanım dosyası, şu anda HBase Thrift1 tanım dosyasına göre daha kapsamlı özellikler sunar ve kullanımı daha kolaydır.

Ön koşullar

  • Thrift yükleme paketini indirdiniz.

  • HBase Thrift2 tanım dosyasını indirdiniz.

  • Access by using a non-Java ApsaraDB for HBase API uç noktasını edindiniz. Daha fazla bilgi için bkz. Uç noktaları görüntüleyin. Lindorm örneğinizin Database connection sayfasında LindormTable sekmesini seçin, ApsaraDB for HBase-compatible endpoints bölümünü genişletin ve ardından VPC veya genel ağ için Access by using a non-Java ApsaraDB for HBase API bölümündeki HTTP uç noktasını kopyalayın. Bağlantı noktası 9190'dır.

LindormTable'a erişin (Python örneği)

Thrift yükleme paketinin nasıl kullanılacağına ilişkin talimatlar için Apache Thrift resmi belgelerine bakın. Aşağıdaki adımlar Thrift kullanarak LindormTable'a nasıl erişileceğini göstermektedir:

  1. Hedef diliniz için arayüz dosyalarını oluşturmak üzere HBase Thrift2 tanım dosyasını kullanın. Aşağıdaki komutu çalıştırın:

    thrift --gen <language> hbase.thrift
    Not

    language parametresi, hedef diliniz için oluşturucu işaretini belirtir; örneğin Python için py, php veya cpp. Desteklenen dillerin ve bunlara karşılık gelen oluşturucu işaretlerinin tam listesi için Apache Thrift resmi belgelerine bakın.

    Örneğin, Python arayüz dosyalarını oluşturmak için language parametresini py olarak ayarlayın ve aşağıdaki komutu çalıştırın:

    thrift --gen py hbase.thrift
  2. Lindorm geniş tablo motoruna erişmek için bir istemci oluşturun.

    Lindorm'daki Thrift sunucusu taşıma katmanı olarak HTTP kullanır. Bu nedenle, istemci oluştururken ThttpClient taşıma uygulamasını kullanmanız gerekir. Örneğiniz için Erişim Denetim Listesi (ACL) etkinleştirildiyse, kullanıcı adını ve parolayı iletmek için ThttpClient nesnesine iki özel üst bilgi eklemeniz gerekir. ACL devre dışı bırakıldıysa bu adım gerekli değildir. ThttpClient öğesinin her dile özel uygulaması, özel üst bilgileri ayarlamak için bir işlev sağlar. Aşağıdaki Python örneği, bir istemcinin nasıl oluşturulacağını ve LindormTable'a nasıl erişileceğini göstermektedir.

    # -*- coding: utf-8  -*-
    # The following two modules are generated by running the 'pip install thrift' command.
    from thrift.protocol import TBinaryProtocol
    from thrift.transport import THttpClient
    # The following two modules are generated by running the 'thrift --gen py hbase.thrift' command.
    from hbase import THBaseService
    from hbase.ttypes import TColumnValue, TColumn, TTableName, TTableDescriptor, TColumnFamilyDescriptor, TNamespaceDescriptor, TGet, TPut, TScan
    # Configure the endpoint for LindormTable.
    url = "http://ld-bp17j28j2y7pm****-proxy-lindorm.lindorm.rds.aliyuncs.com:9190"
    transport = THttpClient.THttpClient(url)
    headers = {}
    # Set the username.
    headers["ACCESSKEYID"]="testuser";
    # Set the password for the username.
    headers["ACCESSSIGNATURE"]="password"
    transport.setCustomHeaders(headers)
    protocol = TBinaryProtocol.TBinaryProtocolAccelerated(transport)
    client = THBaseService.Client(protocol)
    transport.open()
    # Close the connection after completing the operations.
    transport.close()

Kod örnekleri

Diğer Java dışı diller için eksiksiz kod örnekleri aşağıdaki GitHub bağlantılarında mevcuttur.