私はcassandra
を初めて使用しており、分析タスク(索引付けが必要)に使用しています。Cassandra - 非主キーの欠点を持つWHERE節
cassandra, select via a non primary key私はWHERE clause
のプライマリキー以外の列を使用して自分のDBにクエリを実行できません。 (パフォーマンスの問題のために推奨されません)
- は、セカンダリインデックスを作成します。そうするには
は、(すべての主要な欠点を持つ)3つの可能性があるようです。
- 新しいテーブルを作成します(私はcassandraでも問題ありません)。
- 私は主キーの中で照会したいカラムを入れます。この場合、WHERE句に主キーのすべての部分を定義する必要があります。
IN
または=
以外の演算子は使用できません。
上記の3つの制約を持たない別の方法(WHERE clause
非プライマリキー列)はありますか?
カサンドラはあなたが説明しているユースケースにはあまり適していません。クエリーの柔軟性が必要なように思えますが、カッサンドラからそれを取り除くことはできません。要するに、(冗長データを持つ)クエリテーブルを作成するための推奨事項は、拡張可能なソリューション***です。リレーショナルデータベースのようなカサンドラを使用しようとするのではなく、 – Aaron
こんにちは@Aaron oups、問題はクエリの柔軟性のために 'mongodb'は' cassandra'よりも推奨されますが、 'read/write'パフォーマンス(私の場合は非常に重要です)であり、後者は非常に悪い点です。 – farhawa
このパフォーマンスを見る唯一の方法は、冗長データを使用してクエリベースのモデリング手法を採用することです。リレーショナルモデルや類似のメソッドを使用してクエリの柔軟性を実現しようとすると、Cassandraはかなりひどく機能します。 – Aaron