2011-09-22 58 views
1

我目前正在運行一個項目,我們需要每年爲大約2億個帳戶存儲400億個文檔(PDF,TIFF),並且想知道是否可以使用Cassandra進行此操作?這主要是因爲Cassandra設計中的可擴展性,穩定性和多個數據中心的使用。Cassandra用於存儲文檔

但我想知道爲此使用Cassandra是否是一個好主意 - 或者像CouchDB這樣的另一種選擇是更好的選擇嗎?

剛一說明,我們不需要在文件全文檢索,併爲每個文檔只會有一個有限的連接到每個元數據 - 獨特的ID,如日期,時間,來源,所有者和,再加上一些關鍵字。通常通過對所有者ID的查詢來完成對文檔的訪問,並從那裏選擇通過原始和可選的日期/時間需要的文檔。所以沒有什麼幻想。

感謝您對此的看法。

回答

1

只是一些想法:

你可能想也考慮分佈式文件系統,如HDFS。

每年40億美元是1361每秒 - Cassandra可以處理這種寫入負載,假設文件大小適中,而不是所有巨大的數兆字節的文件。

您預期會發生什麼樣的讀取負載?

這些文件是否會永久保存,即每年增加400億無限期增加?

如果一個文件是100KB(比如說),那我認爲是每年4PB。我還沒有聽說過Cassandra集羣這麼大 - 值得問一下Cassandra mailing list(有一些現實的數字而不是我的猜測!)。

我聽說Cassandra節點通常可以在重負載下管理1TB,也可能在輕負載下處理10TB。因此,第一年至少有400個節點的羣集,可能更多,特別是如果您想要複製。

This page給出了一些2009年HDFS功能數據 - 使用4000個節點的14PB(6000萬個文件)以及許多其他有趣的細節(例如需要60GB RAM的名稱節點)。