2012-04-19 38 views
4

對不起,我想不出一個更具描述性的標題:我們有更新couchDB視圖的問題,因爲他們無法訪問,而設計文檔被重新索引。是允許陳舊觀點的唯一解決方案嗎?couchDB意見無法訪問,而更新

在一種情況下,有幾個couchDB節點可以相互複製。在一個視圖中更新視圖將導致所有couchDB節點重新編制設計文檔。是不是可以更新一個節點上的視圖然後複製結果?我認爲這個問題是,新文檔可能被插入到其他節點,而其中的一個是重新索引。

在另一種情況下,我們有幾個couchDB節點,它們是相互讀/寫和複製的。對於Web應用程序,還有另一個具有隻讀couchDB節點的羣集......它們不會複製出來,而是從讀/寫池中複製。這裏的解決方案可能是將一個節點從集羣中取出,更新視圖並等待其重新索引。但是,該節點不會丟失在重新索引過程中創建的任何文檔嗎?是否有可能在重新索引時繼續接收文檔插入?

是否有其他可能的解決方案?我們正在遷移到第二種情況,所以這就是我主要關心的問題,但我想知道這兩種情況下是否有一個通用解決方案。使用陳舊的視圖不是一個理想的情況,因爲重新索引可能需要很長時間,而且它是一個高流量的站點。

回答

4

很高興聽到您在CouchDB上取得成功。

我建議你使用wiki中描述的staging-and-upgrade technique。它需要一點準備才能工作,然而一旦你有了它的工作,它沒有任何人的努力工作得很好。