2

クイズゲーム統計のバックエンドを構築しようとしています。グローバルな各画像の認識率と、国別の画像の認識率を知りたいです。

現在のデータモデルは次のとおりです。

表の結果 (
  国のテキスト、
  パーセントフロート、
  image_id テキスト、
  フェイルイント、
  わかりました。
  示された整数、
  PRIMARY KEY (国、パーセント、image_id)
);

国ごとに結果を照会できますが、グローバルな結果 (パーセントが高い画像) を取得できません。

ヒントはありますか?

4

2 に答える 2

2

すべての国の統計の合計を保持する "TOTAL" 国を定義することができます。

PSpercentカサンドラの結果整合性のため、主キーの一部を作成することは良い考えではないようですpercent。フィールドのアトミック更新を行うことはできません。

考えられる状況は 2 つあります。データ セットが十分に小さい場合 -percentフィールドにセカンダリ インデックスを持つ SQL DB の方が cassandra よりもうまく機能するか、SQL DB のデータが多すぎる - このデータを含む Cassandraモデルも機能しません。部分カウントのマップ/リデュースのみが機能します。

于 2013-02-09T15:24:55.700 に答える
0

2 つの CF が必要です。

もう 1 つの方法は、順序分割を使用し、CompoteType のキーを使用することです。そのため、キーは PRIMARY KEY (国、パーセント、image_id) ではなく、PRIMARY KEY ((国、パーセント、image_id)) になります。

また、別の列 image_id が必要であり、その image_id にセカンダリ インデックスを配置して、image_id=x のクエリを実行できるようにすることができます。

于 2013-02-10T03:58:30.523 に答える