2015-05-06 134 views
5

由於.NET開發人員當前正在使用RavenDb作爲我們的默認數據庫選擇,請在nosql方案中使用。現在微軟推出了DocumentDbnosql文檔數據庫即服務,我們正在尋找兩者之間的差異。數據庫即服務看起來不錯,因爲我們在我們自己的服務器上運行RavenDb。Azure DocumentDb vs RavenDb

Ayende Rahien作爲interesting post,但與舊的DocumentDb版本相比已有些過時。儘管如此,它仍是一個很好的閱讀。

編輯:閱讀Thoughts on Azure DocumentDB後,我開始懷疑的DocumentDbabout the pricing。假設我的數據模型包含7個集合,這意味着我將不得不每月支付7 * 25 = $ 175!我必須在這裏犯一些錯誤,對!

EDIT2: DocumentDb的創造者的想法似乎把更多的不是一個類型的文件到一個單一的集合,它似乎使用ravendb了一段時間後,現在有點奇怪我。術語collection造成了一定的麻煩了解DocumentDb定價,因爲它是東西DocumentDb完全不同的那麼RavenDb

在這情況下,你會選擇DocumentDbRavenDb

回答

4

The post建議您在一個集合中放置更多的東西,否則會比其他東西更多。我不確定長期的智慧,但他們提出這是降低成本的一種方法。此外,由於不存在交叉收集事務隔離,因此如果您需要一次更新多個文檔,並將它們保留在同一個集合中,可能會更好。

+1

正好。不要將集合看作只能容納單一類型實體的表格。 –

+0

可以說DocumentDB的集合比表格更接近物理分區。集合支持許多實體類型(它們不強制實施模式)。每個集合都獲得預留的存儲量(10GB)和吞吐量(基於perf層)。在查看存儲和吞吐量時,您會發現定價非常具有競爭力(與https://ravenhq.com/pricing.html比較) –

+0

是的,將它們視爲分區。這有幫助。我仍然想知道這會如何影響編碼和運行體驗,但我現在就會去做。由於這個原因,索引會更大/更慢?或者這只是b-tree索引中的一個問題,而不是DDB使用的前3字符散列方法。 –