2009-07-29 120 views
1

我最近編寫了一個使用couchdb的網絡應用程序。我喜歡couchdb,它適合應用程序 - 它具有很多動態行爲,並直接從couchdb中直接取得JSON。能夠通過瀏覽器上傳圖片很不錯,並且可以輕鬆修改文檔數據。由於應用程序是couchapp,複製也使部署變得輕而易舉,部署所需的全部是複製到生產服務器。哪些無模式數據存儲提供良好的性能?

然而,對於一個新的應用程序,我想(我認爲博客類型thingy),我想要良好的性能,這是我認爲couchdb不強的一個領域。該應用程序將主要閱讀導向(我估計90 %讀取到10%寫入)。

哪些數據存儲提供一個單服務器方案的最佳效果?我會很有興趣聽到人們在這方面的經驗......

+0

我不知道是什麼的map/reduce與你的問題做。 mapreduce是一個用於在大型數據集上並行運行多個作業的框架。 (http://en.wikipedia.org/wiki/MapReduce) – 2009-07-29 21:08:22

+0

其實我覺得你可能會想的是無模式的數據存儲 – 2009-07-29 21:09:00

回答

2

如果它主要是讀取性能,你擔心,爲什麼不乾脆把varnish代理CouchDB中的前面?我在varnish中使用了一些自定義配置,告訴它儘管couchdb指定了must-validate,但實際上並沒有爲couchdb查詢緩存對象,然後在_changes上使用一個帶有活動HTTP GET的腳本,該腳本使用來自_changes的數據來顯式清除已更改來自清漆的條目。

作爲加清漆讓你做URL重寫,這是我需要的。其他大多數解決方案都涉及運行諸如apache或ngnix之類的東西,只是爲了重寫couchdb的URL。

3

我認爲MongoDB開始看起來像無頭數據存儲的領跑者表現明智。

目前,我們正處在評估這個存儲範圍可以從10KB到50MB的二進制對象的過程中,我一直非常深刻的印象,它甚至在適度的硬件性能。

相關問題