2

HBaseを、{document => {term => weight}}「用語Xを重みZでドキュメントYに挿入する」などの形式の数百万のエントリをプッシュできるストアとして使用し、「このドキュメントの上位1000の用語を選択する」または「各ドキュメントの上位1000の用語を選択してください。」これは私の現在のMySQL実装で機能しますが、おそらくドメインはHBaseに適しています。HBaseとBigTableは、同様の問題ドメインであるフルテキストインデックス作成に使用されていることに注意してください。

私はHBaseで数ページしか読んでいないことがわかりますが、私の質問の要点を理解していただければ幸いです。この質問に関連しています。

考えられる障壁には、HBaseがLIMIT句と同等のクエリを許可しないことが含まれる場合があります。重みでクエリを実行したい場合は、を関連付けたいと思います{weight => term}。これは、同じ重みを持つ2つの用語で問題が発生します(HBaseでは一意のキーのみが許可されると想定しています)。または、特定の重みの用語のコレクションを保存する必要がありますが、これにより、返される用語の数を正確に制限する能力が制限されます。

4

1 に答える 1

0

簡単な答えはい。

より複雑な答えですが、現在、これらの「SQLなし」データストアはそれぞれ独自のプログラマーインターフェイスを実装しており、「SQLなし」はSQLベースではないことを意味します。ですから、コーディングの準備をしてください。難しいことではありません。ほとんどの場合、これらのデータストアは名前と値のペアストアであり、RESTまたはSOAPを介して取得されます(HBaseには列ファミリーの概念もあります)。しかし、彼らが役立つのはMap Reduceです。これは非常に興味深いクエリのフィールドであり、読む価値があります。

于 2009-11-05T21:22:51.997 に答える