ドキュメント(フィールド:ID、キーワード、タイムスタンプ付き)がシステムに追加されるほぼリアルタイムのシステムを設計する必要があります。要件は、最後のx分でシステムに追加された文書からトップkのキーワードを取得することです。典型的な文書追加速度は約100文書/秒であり、将来的に増加する可能性がある(従って、技術は水平にスケーラブルでなければならない)。リアルタイムデータ集約に使用する技術(SQL/NoSQL)
私はsolrの高書き込み/秒について少し気にしていますが、top-kキーワードを生成するために(shardingを使って)solr-facetsを使うことを考えています。もう1つの選択肢は、Cassandraを使用することですが、OrderPreservingPartitionerが負荷分散を困難にする可能性があるため、範囲問合せ(集約の計算)にどのようにスケーリングするかはわかりません。
ちょっと興味がありますが、solr-facetsの問題は何ですか? –
何も問題ありません。それはちょうど仕事のための適切なツールのように見えません。ファセット、AFAIK(そしてGrant Ingersollが私を訂正できるかもしれません)では、検索の属性によって検索結果を掘り下げています。これは、ウェブサイト上での商品検索のようなものに最適です。あなたはイベントの最後の数分間を気にします。その後、古いものを捨てます。 –