http://wiki.apache.org/cassandra/CassandraLimitations
Quote:Cassandra有两个级别的索引:键和列.但在超级列系列中,存在第三级子列; 这些都没有编入索引,并且对子列的任何请求都会反序列化该超列中的所有子列.因此,您希望避免需要大量子列的数据模型.
=>什么是子列?有趣的是,谷歌搜索这个词并没有真正产生结果.我知道超级列的概念,但它并不十分清楚"子列"这个术语究竟是指什么(如何定义):
什么概念是正确的?
第一:
ROW-KEY
SubCol SubCol
col col col val
val val col val
Run Code Online (Sandbox Code Playgroud)
要么
第二:
ROW-KEY
Column Column
SubCol SubCol SubCol SubCol
val val val val
Run Code Online (Sandbox Code Playgroud)
此外,定义中的内容是什么:
comparator = UTF8Type and
subcomparator = UTF8Type and
Run Code Online (Sandbox Code Playgroud)
这只是一个定义问题.
谢谢马库斯
标准列的父级是其行.子列的父级是其超级列.除此之外,它们是相同的 - 只有一个额外的嵌套级别,尽管如您所提到的那样对索引和检索有影响.
更多信息,请访问http://wiki.apache.org/cassandra/DataModel和http://arin.me/blog/wtf-is-a-supercolumn-cassandra-data-model
正常列族:
row
col col col ...
val val val ...
Run Code Online (Sandbox Code Playgroud)
超级列系列:
row
supercol supercol ...
(sub)col (sub)col ... (sub)col (sub)col ...
val val ... val val ...
Run Code Online (Sandbox Code Playgroud)