2013-05-13 16 views
3

目前我們的系統使用PostgreSQL,但是我們似乎已經推動了它的能力極限。我們的某些表需要每秒處理超過100次的讀/寫操作,因此可能需要在多臺機器上水平擴展。Cassandra是一個很好的候選數據庫,它必須每秒支持超過100次讀/寫操作?

使用GAE的大表有很多經驗。 Big Table有豐富的查詢選項。例如,可以針對列表數據字段進行查詢。 Cassandra應該基於Big Table,但如果我理解正確,對於Cassandra,我們實際上必須在Cassandra之上自定義代碼層來使用和維護索引表。

將是巨大的,如果有可用的,我們沒有建立自己的自定義邏輯維護索引表,曲折合併連接等開源數據庫...

卡桑德拉是一個很好的這裏的人選?還是有可能被認爲更好的?

回答

5

除非操作是巨大的連接或返回成千上萬的行,否則您選擇的任何數據庫將能夠維持100個操作數/秒。 Cassandra將不會有成千上萬的讀取和寫入每個節點的問題。

不知道更多關於您的特定用例,不可能給您有意義的建議。卡桑德拉是一個很棒的數據庫,但如果它適合你,我不知道。我建議通過堆棧溢出的cassandra標籤來查看,看看人們問的是什麼,以及它是否看起來像你想要做的一樣,如果答案表明它可能與Cassandra(我知道我'我回答了很多問題,答案是Cassandra並不是這個特定案例的最佳選擇)。

Cassandra和GAE Big Table有很大的相似之處,但也有很大的不同。讓新Cassandra用戶絆倒的一件事情是,實際上沒有任何方法可以做到這樣的事情,比如「除非另有其他東西」或「添加項目並刪除除最後N個項目之外的所有項目」。

相關問題