組合鍵(Compound keys)和聚類(clustering)
組合鍵提供了聚類功能。例如定義(a, b) PRIMARY KEY是一個組合鍵。
建議使用uuid類型作為key,便于進行序列化操作。
cassandra規定組合鍵的第一個成員a用于分區(partition),後面的成員b則用于聚類。
實際存儲時,a值相同的行存儲在一起,并按照b進行排序,這就使查詢等操作十分高效。
a值相同的行在進行插入,更新和删除等操作時是原子的,互不幹擾的。
歸集列(Collection columns)
CQL 3 引入以下歸集類型
• 集合
• 清單
• 映射
以前的cassandra版本在處理一個使用者多個郵箱等問題時不如SQL優雅(SQL隻需再建立一個郵箱表就可以了),
新的cassandra CQL 3版本可以通過把郵箱字段定義為歸集類型即可。
再比如對于一首mp3歌曲,可以用集合類型設定tags,用list類型設定評論,用map類型設定點播時間等。
待續...