我正在創建一個Cassandra時間序列數據庫,用於存儲數百萬系列的日常數據,這些數據可能總共可能有100B個數據點。在Cassandra中設計時間序列數據庫
我看了這篇文章: http://rubyscale.com/blog/2011/03/06/basic-time-series-with-cassandra/
這樣的設計是非常完善的。所以基本上我可以將每日時間戳記作爲列,並且如果必要的話,通過將該日添加到行來分割列。
兩個問題,我有:
- 我在看存儲多達20,000時間戳(每日)列。是否有必要通過例如分割行。一年的這個數量的列?分割行以減少每年365列的數量是否有優勢/劣勢。
- 我的另一個想法是,而不是逐行分欄是每年創建列家族。通過這種方式訪問多年的數據時,我不得不查詢多個列族而不是一個列族,並在客戶端加入結果。這種方法會加快速度或者放慢速度嗎?
所以你認爲在將表/列分割成單獨的列族中沒有任何要點,而是按行來完成它?單列系列中有太多行是否有缺點? – datageek
列家族只是一個額外的關鍵級別。如果我的數據具有相同的性質,並且需要緩存,比較(列名稱)等相同的設置,那麼我將它們放在同一個列族中。 Plus柱系列在編程上不易管理。只需寫入新密鑰即可創建密鑰。並且您無法在一個查詢中從單獨的CF讀取。 –