簡単にするために、主キーが論理的に長いテーブルがあるとしましょう。
現時点では、私が行ったプロジェクト (リレーショナル データベースを使用していた) から継承されたもので、(そのプロジェクトで) 主キーとして使用した long を返す IDMaker クラスがあります。
私が理解している限り、この ID はタイムスタンプ ベースであり、単調に増加するため、HBase 行キーの候補として適していないためです。
今、読んで、
http://ikaisays.com/2011/01/25/app-engine-datastore-tip-monotonically-increasing-values-are-bad/
http://hbase.apache.org/book/rowkey.design.html
およびLars George による「HBase: the definitive guide」の第 9 章、
「塩漬け」戦略が私のニーズに合うことがわかりました。それは基本的に私のキーにプレフィックスを追加するため、単調なシリーズを破ります。
ここで質問: このような戦略を使用して、この ID から始めます:
1
2
3
4
これらのキーが 1 つのリージョン サーバーに送られると仮定し、これらの ID を次のように変換します (もちろん、プレフィックスは一例です)。
0:1
7:2
9:3
a:4
4 つの行が同じリージョン サーバーに送信されないようにするにはどうすればよいですか? 言い換えれば、ここでうまく説明されていることを避けるために、私のプレフィックスが十分であることをどのように確認できますか-悪い/ ?