2012-01-14 7 views
4

私はさまざまなキーワードを検索しているユーザーにデータを記録しています。私が作りたいのは、ユーザーが何回検索したかによって昇順と降順にソートされたユニークなキーワードすべてのレポートです。カサンドラのソート結果を数えて

これはCassandraを使用してモデル化できるものですか?その場合、モデルはどのように見えますか?

ありがとうございます!

答えて

0

各キーワードを行キーとして使用し、各行にカウンター列を使用して検索数を追跡できます。その後、すべての行をスキャンしてカウンターを読み取ってレポートを作成することができます。 Cassandraは結果をソートしません(OrderPreservingPartitionerではなくデフォルトのRandomPartitionerを使用することを前提にしています)が、おそらく数万のキーワードしかないので、クライアントで簡単に並べ替えることができます。

2

eBay tech blogによれば、カウンタ値をキー自体に保存することは珍しいことではありません。だから、回数、ボブ、ケンを保存し、そしてジミーは、次のように単一の行が見える、ウェブサイトにログインするには:あなたの鍵が自動的に最高のカウントで自分自身を並べ替えるということ

logins: [(0001_Bob,''), (0002_Bob, ''), ..., (0010_Ken, ''), (0012_Jimmy, ''), ...]

をお知らせテールエンドであり、これは一定の時間ルックアップに近い。

ユーザーがログインするたびに、新しい列キーが作成されます。これまでに発生したログインの数と次の鍵の必要な整数値をすばやく検索できるように、別の行のログイン数を追跡する必要があります。

login_count: [(Bob, 2), (Ken, 10), (Jimmy, 10), ...]

関連する問題