如果我的分区键包含文本日期作为分区键的一部分以避免大分区,是否可以在 Cassandra 数据库中找到第一个和最后一个条目?
CREATE TABLE trades (
stockexchange text,
symbol text,
ts timestamp,
date text,
tid text,
price decimal,
side text,
size decimal,
PRIMARY KEY ((stockexchange, symbol, date), ts, tid)
) WITH CLUSTERING ORDER BY (ts ASC, tid ASC)
一种解决方案是 - 创建第二个表并单独存储。仅:证券交易所、符号、时间戳
这使您能够通过您的密钥找到第一个和最后一个时间戳(股票交易所:符号)
请注意,您必须在同一时刻存储数据,并且 Cassandra 不是 ACID 数据库类型。
CREATE TABLE trades (
stockexchange text,
symbol text,
ts timestamp,
date text,
tid text,
price decimal,
side text,
size decimal,
PRIMARY KEY ((stockexchange, symbol, date), ts, tid)
) WITH CLUSTERING ORDER BY (ts ASC, tid ASC)
CREATE TABLE trades_timestampts (
stockexchange text,
symbol text,
tid text,
ts timestamp,
PRIMARY KEY ((stockexchange, symbol), ts, tid)) WITH CLUSTERING ORDER BY (ts asc, tid asc);
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句