2013-04-22 10 views
5

テーブルに複数の非PK列があるとどうなるのでしょうか。Cassandraテーブルの複数の列

CREATE TABLE raw_metrics (
schedule_id int, 
time timestamp, 
value double, 
PRIMARY KEY (schedule_id, time) 
); 

我々が得る:

enter image description here

は、今私たちは2つの列を持っているときに何が起こるか疑問に思う 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, 
value1 double, 
value2 int, 
PRIMARY KEY (schedule_id, time) 
); 
row key columns... 
123  1339707619:"value1" | 1339707679:"value2" | 1339707784:"value2" 
... 

いうか:は、私たちのようなもので終わるつもりです

など
row key columns... 
123  1339707619:"value1":"value2" | 1339707679:"value1":"value2" | 1339707784:"value1""value2" 
... 

私は私が求めています何を推測、これはことを考えるとスパーステーブルになるだろうされている場合であります私は一度に "value1"または "value2"を挿入するだけです。

このような状況では、複数の列(各タイプごとに1つ、たとえばdouble、int、dateなど)を格納したい場合は、すべてを単一の表に格納するのではなく、

答えて

1

この投稿は、複合キーが作成されたときに何が起こっているのかを説明する際に役立つかもしれない: Cassandra Composite Columns - How are CompositeTypes chosen?

だから、基本的に表には、次のようになります:

row key columns... 
123  1339707619:"value1" | 1339707679:"value2" | 1339707784:"value2" 

もセカンダリインデックスへの参照を参照してください。 http://wiki.apache.org/cassandra/SecondaryIndexes

関連する問題