2016-05-17 25 views
4

我們已經成功地部署的Postgres 9.3使用流複製(WAL複製)。我們目前有2個從機,第二個從機是第一個從機的級聯從機。這兩個從站都是熱備用,並且正在使用主動只讀連接。Postgres的流複製 - 從只指數

由於加載,我們想創建一個第三奴隸,略有不同的硬件規格,以及更多的數據倉庫的使用情況,使用它作爲一個只讀數據庫不同的應用程序。由於它是針對不同的應用程序,因此我們希望專門針對該應用程序優化它,並通過使用一些附加索引來提高性能。出於規模和性能的考慮,我們寧願在主設備或其他2個從設備上使用這些索引。

所以我的主要問題是,我們能爲流複製創建奴隸不同的索引,如果沒有,是否有我錯過了另一個數據倉庫技術?

+0

由於它是數據倉庫,它必須是實時的?或者像「從第二奴隸夜間加載」的工作?就像「從備份和日誌複製奴隸,從複製中截斷,建立倉庫索引」(每天重複一遍)。 – Thilo

+1

理想情況下接近實時。我們已經嘗試加載夜間備份,但不幸的是它是一個100 + GB的數據庫,可能需要將近4小時才能從頭開始加載。 WAL複製一直是天賜之物。 –

回答

2

所以我的主要問題是,我們能爲流複製

沒有創建奴隸不同的索引,你不能。流式物理複製的工作級別低於此級別,即複製磁盤塊。它並沒有真正注意「這是一個索引更新」,「這是插入到表中」等。它沒有它需要的信息來維護僅待機索引。

如果沒有,是否有另一個我錯過的數據倉庫技術?

邏輯複製解決方案,如:

可以做你想做的。他們發送行更改,所以輔助服務器可以有額外的索引。

+0

美...非常感謝。過去曾經使用過slony,並不是一個巨大的粉絲,但是我會在另外兩個粉絲身上擁有雄性。 –