全部產品
Search
文件中心

ApsaraDB for HBase:快速開始

更新時間:Jul 06, 2024

HBase增強版Shell訪問頁面下載最新版本的HBase Shell,並根據Shell使用指導完成Shell訪問HBase的相關配置,同時需要確認配置好白名單

HBase執行個體中建立表

hbase(main):002:0> create 'testTable', {NAME => 'f'}

上面的命令在HBase中建立了一張名為testTable,列族ColumnFamily為f的表。

Search執行個體中建立索引

在Search執行個體的控制台,單擊資料庫連接可以看到WebUI訪問。注意:使用前需要設定好訪問白名單和訪問密碼。

config set可以選擇_indexer_default作為配置集,numShards設定為節點個數,其它採用預設值即可。

建立映射關係

假設我們需要將testTable表中f:name這一列(列族為f,列名為name )映射到索引表democollectionname_s這一列。於是我們將下述JSON寫入到一個檔案中,如schema.json

{
  "sourceNamespace": "default",
  "sourceTable": "testTable",
  "targetIndexName": "democollection",
  "indexType": "SOLR",
  "rowkeyFormatterType": "STRING",
  "fields": [
    {
      "source": "f:name",
      "targetField": "name_s",
      "type": "STRING"
    }
  ]
}

備忘:JSON檔案中各個參數的含義參見HBase索引管理

在HBase shell中執行:

hbase(main):006:0> alter_external_index 'testTable', 'schema.json'

等待命令結束後,索引映射關係就已經建立完畢。

HBase中寫入資料

寫入資料參見使用Java API訪問增強版叢集,這裡使用Shell寫入一條樣本資料

hbase(main):008:0> put 'testTable', 'row1', 'f:name', 'foo'
Took 0.1697 seconds

Search執行個體中查詢資料

在Search的WebUI中,選中剛才建立的索引democollection,單擊Query查詢,就可以查到剛才寫入的一行資料。

查詢HBase

在Search的使用情境中,一般是將HBase表一行資料的部分列同步到Search執行個體,即只需要將那些需要多維查詢的列配置到映射JSON檔案中。通過Search查詢的結果中,每行資料都會有一個列id,這個id即為這一行資料在HBase表中的rowkey。拿到這個rowkey後,回查HBase,就可以獲得完整資料。