2011-08-05 32 views
2

在PostgreSQL的維基,對「複製,集羣和連接池」頁面(http://wiki.postgresql.org/wiki/Replication,_Clustering,_and_Connection_Pooling),它顯示了複製的要求下面的例子:PostgreSQL的複製工具

「您的用戶需要對數據庫的本地副本當他們離開辦公室時在他們的筆記本電腦上工作,在他們離開時進行修改,並且在他們返回時需要將它們與主數據庫合併。在這裏您需要一種異步的,懶惰的複製方法,並且將被迫考慮如何在主服務器和本地副本上修改相同記錄的情況下處理衝突「

這就是我的情況。但是,不幸的是,在同一頁面上,它說:「(...)這個背景的一個很好的來源是Postgres-R術語和數據庫複製的定義,它沒有提到的主要理論主題是如何解決在涉及投票和類似計劃的筆記本電腦情況等懶惰複製案例中解決衝突。「

我想知道的是,我可以在哪裏找到關於如何解決這種情況的材料,並且在PostgreSQL上這將是最好的方法。

回答

2

只是回答我自己的問題,如果有人發現它:我使用Rubyrep http://www.rubyrep.org/,它的工作。

+0

什麼的Postgres的確切版本,'rubyrep'和它的各種依賴寶石你用?你能繼續工作嗎? – fatuhoku

2

我將不得不進入RubyRep,但看起來像Bucardo可能是一個更廣泛的支持選項。

加布裏埃爾溫伯格在他的網站上有一個關於他如何使用Bucardo的優秀教程。這個人運行他自己的搜索引擎DuckDuckGo,並有很多針對他的使用案例進行優化的技巧和竅門。

http://www.gabrielweinberg.com/blog/2011/05/replicating-postgresql-with-bucardo.html

+1

看起來很棒。並更好地記錄。我有一個荒謬的小時間表,所以我現在會繼續使用RubyRep(非常簡單和無痛)。但如果我有機會重構這個項目,我會更深入地看看Bucardo。 – Nemeth