0

私のクエリは次のとおりです。

ユーザー ID を指定して、他のユーザーの評価と比較した評価に基づいて、このユーザーに適したおすすめの曲を見つけます。

ここではすべてをリアルタイムで処理したいと考えています。そのため、イベントが発生すると、推奨事項に適切な重みを付け、次のようなクエリをサポートする列ファミリーを維持します。

SELECT recommendation_id FROM cf WHERE user_id=123 AND recommendation_type='song'

そこで、ユーザーのすべての評価 (各曲は列) を格納する列ファミリーのようなものと、おすすめのセットのようなものを考えていました。ただし、これをリアルタイムで機能させる方法は思いつきません。評価と可能な推奨事項を入力するストーム トポロジが必要です。

これに関して厄介なもう 1 つの点は、cassandra で多くの更新が必要になることです。作るだけならいいじゃないですか。

私はそのようなデータモデルの例を見つけようとしてきましたが、まだ見つけていません。他の人が見つけたリソースは役に立ちます。

更新: 問題を組み立てる別の方法は、反復協調フィルタリングをサポートするデータ構造を見つけようとしているということです。これは可能ですか?

4

2 に答える 2

1

私は最近、行列分解を使用した予測分析に ML + Hadoop を使用することについて、Spotify からこれらのスライドを見ました。スライド 11 に示されているように、写真には Cassandra が写っていますが、ほとんどの結果は毎晩事前に計算されています。

于 2013-08-07T06:08:32.303 に答える
0

セット、マップ、リストなどの CQL コレクションを使用することもできます。Datastax コミュニティによるこのブログ投稿をご覧ください。

http://www.datastax.com/dev/blog/cql3_collections

于 2013-08-06T08:29:42.177 に答える