我正在尝试为Cassandra 11x中的传感器网络建模时间序列数据。我的主要用例是查询特定源设备的大时间范围。我更喜欢使用cql来节省实现时间。
使用cql3我正在定义一个这样的表:
create table example (
source int,
sample_time timeuuid,
value double,
PRIMARY KEY (source,sample_time)
);
但是这个分区键会导致行快速增长过宽/过热,并且不会对查询进行并行化。理想情况下,我想将一个compositetype定义为我的分区键,这是否支持cql?
我已阅读http://www.datastax.com/dev/blog/advanced-time-series-with-cassandra,有关高吞吐量时间表的部分特别相关。我是否必须直接定义存储布局并忘记cql?
答案 0 :(得分:3)
这需要Cassandra 1.2:
CREATE TABLE foo (
a int,
b text,
c uuid,
PRIMARY KEY ((a, b))
);
将为您提供由int,text。
组成的存储引擎行键