2

Hbaseで次のスキーマを作成しました。

create 'test','lg'

put 'test','row1','lg:htype','get'
put 'test','row1','lg:ip','192.168.12.123' 
put 'test','row1','lg:stat','success'

このスキーマでは、行キーを作成したいと考えています。私の質問は、hBase シェルで行キーを作成する方法です。

上記のスキーマを使用して、列ファミリーを作成しました。hbase シェルを使用して行キーを定義する方法。または、列ファミリーとして定義した方法のように行キーを定義する必要があります。その場合、HBase がそれをどのように区別するかは、列ファミリー メンバーであり、このフィールドは行キーです。

そして、行キーをユーザー ID とタイムスタンプの複合キーとして使用したいと考えています。シェル経由でhbaseで複合行キーを作成する方法を教えてください。

助けてください。

4

2 に答える 2

1

この場合、「row1」が行キーです。HBase にとって行キーは単なるバイト配列であるため、設計時に行キーを指定する方法はありません。それよりも手の込んだことを行うには、アプリケーション コード (Java、Ruby スクリプトなど) で行う必要があります。

行キー構造を事前に定義する方法で HBase とやり取りしたい場合は、HBase のオープン ソース SQL「スキン」である Phoenix を試すことができます。

https://github.com/forcedotcom/Phoenix

(完全な開示: Phoenix プロジェクトは、もともと私の雇用主である Salesforce によって作成されました。)

于 2013-04-23T21:12:19.967 に答える