には、私は私のカサンドラクラスタで、次の時系列を持っている:のApache Cassandraの制限と
CREATE TABLE consumptions (
meter_id int,
date date,
meter_date_time timestamp,
data text,
PRIMARY KEY ((meter_id, date), meter_date_time)
) WITH CLUSTERING ORDER BY (meter_date_time DESC)
iが月から最新の検針を必要とする月の消費を計算します。私の場合、クエリは次のようになります。
select * from consumtions
where meter_id = 1 and
date in (...'2016-12-30','2016-12-31'...)
limit 1
私は、複数のパーティションキーを持つIN句がアンチパターンであることを認識しています。非正規化がなければ、このクエリには良い方法がありますか?
他のほとんどのクエリでは、私はasnycクエリを使用しています - しかし、これはすべての結果を返し、私は限界を使用することはできません。
ご意見ありがとうございます。 **もう1つの選択肢は、毎日1対1のクエリを非同期に実行し、アプリケーションレベルで最新のメジャーをフィルタリングすることです。それはちょっとしたコードです** – itstata