2017-09-27 125 views
-1

我的問題可能非常廣泛,但我真的需要問這個問題。我打算使用Key Value NoSQL數據庫,並且我在NoSQL世界中是全新的。我正在瀏覽維基百科頁面https://en.wikipedia.org/wiki/Key-value_database不同類型的Key Valye數據庫之間的區別

根據Wiki KV數據庫分爲4類以下類別。

KV – eventually consistent 
KV – ordered 
KV – RAM 
KV – solid-state drive or rotating disk 

我無法理解它們之間的確切區別。如果任何人能向我解釋這將是偉大的。

回答

1

這種類型是有趣的,也許有點誤導。我可以對其中一些發表評論:

內存 - 我已經與Redis合作過,所以我說的將適用於該數據庫。 Redis旨在將信息保存在RAM中,而不是在光盤上。基本上,如果關閉數據,那麼它的緩存比數據庫更多。它可以將配置爲保存光盤上的數據,但其設計並非如此。

最終一致 - 我與Cassandra合作過。 EC意味着讀操作不能保證提供最新的值。他們最終會返回最新的,但不會在更新後立即返回。在Cassandra中,您可以指定需要哪種級別的一致性 - 這會影響您讀/寫的速度。較少的一致性==更快(其折衷)。與redis不同,cassandra保存到光盤。

固態驅動器或旋轉磁盤 - 我曾與couchbase。 Couchbase保存到光盤,並保證始終保持一致(在讀取操作的鍵,但不是視圖/索引)。所以當你從CB讀取密鑰時,你知道它始終是最新的值。我認爲這個類別的名字有點誤導。其他數據庫(如cassandra)也保存到光盤,因此名稱有點偏離。

希望這有助於。

+0

很好的解釋和非常有幫助。進一步說,我決定去與最終一致的數據庫。所以我喜歡Dynamo,Cassandra和Riak。現在我應該評估這些數據庫並找到最適合我的參數? –

相關問題