私はこのようなテーブルを持っている:クエリーを効率的に実行するために、CassandraでALLOW FILTERINGを使用していますか?
CREATE TABLE IF NOT EXISTS Posts (
idObject int,
objectType text,
idParent uuid,
id uuid,
idResolution uuid,
PRIMARY KEY ((idObject, objectType, idParent), id)
);
は今、次のクエリを見てみましょう:
SELECT * FROM POSTS WHERE idobject = 1 AND objectType = 'COURSE' AND idParent = 00000000-0000-0000-0000-000000000000 AND idResolution = 00000000-0000-0000-0000-000000000000 ALLOW FILTERING
は今パーティション・キーは完全には知られているので、私はALLOW FILTERING
を使用している場合があるように起こっていますフィルタリングは既知の単一パーティションで実行されるため、パフォーマンス上の問題はありますか?
idResolution列のセカンダリ索引を追加することは、パフォーマンスの観点からALLOW FILTERINGに代わる良い方法です。 –