我想知道当表中有多个非PK列时会发生什么.我读过这个例子:http: //johnsanda.blogspot.co.uk/2012/10/why-i-am-ready-to-move-to-cql-for.html
这表明单列:
CREATE TABLE raw_metrics (
schedule_id int,
time timestamp,
value double,
PRIMARY KEY (schedule_id, time)
);
Run Code Online (Sandbox Code Playgroud)
我们得到:

现在我想知道当我们有两列时会发生什么:
CREATE TABLE raw_metrics (
schedule_id int,
time timestamp,
value1 double,
value2 int,
PRIMARY KEY (schedule_id, time)
);
Run Code Online (Sandbox Code Playgroud)
我们最终会得到这样的结果:
row key columns...
123 1339707619:"value1" | 1339707679:"value2" | 1339707784:"value2"
...
Run Code Online (Sandbox Code Playgroud)
更确切地说:
row key columns...
123 1339707619:"value1":"value2" | 1339707679:"value1":"value2" | 1339707784:"value1""value2"
...
Run Code Online (Sandbox Code Playgroud)
我想我要问的是,如果这只是一个稀疏表,因为我一次只插入"value1"或"value2".
在这种情况下,如果我想存储更多列(每个类型一个,例如double,int,date等),或许更好的是拥有单独的表而不是将所有内容存储在单个表中?
这篇文章可能有助于解释创建复合键时发生的情况: Cassandra Composite Columns - How are CompositeTypes selected?
所以基本上该表将如下所示:
row key columns...
123 1339707619:"value1" | 1339707679:"value2" | 1339707784:"value2"
Run Code Online (Sandbox Code Playgroud)
另请参阅二级索引参考: http ://wiki.apache.org/cassandra/SecondaryIndexes
| 归档时间: |
|
| 查看次数: |
327 次 |
| 最近记录: |