Re: [SQL ] postgresql 8.1.4 cluster問題~
不太確定你所謂的 "負載量過大" 發生的瓶頸在那邊
I/O 方面的還是 CPU, Memory 方面的
另外分散流量
第1種方式是使用 PGCluster
他是 Synchronous Replication 的方式, 可以有效增加 Query 的速度
但若你的 DB 型態是屬於會有大量的寫入, 這部份對效能的增加就很有限,
甚至會拖慢速度
而第2種方式僅是一台主機上跑多個 PostgreSQL, 並不是 Cluster
PostgreSQL 目前尚無完整的 Cluster 解決方案
大都是利用 Replication 的功能衍生出來 Pooling or LoadBalance
達成分散流量的需求
你可以比較一下 Oracle RAC (ShareDisk) 跟 PostgreSQL (ShareNothing)
這兩種對於 Cluster 實作的方法,
就可以知道為何 PostgreSQL 大部份都是用 Replication 的概念去實作 Cluster
若使用 Synchronous Replication 這種方式 (ex: pgcluster or pgpool-II)
讀取的效能可有效提升, 但寫入的部份就......蠻慘的
若是選擇 Asynchronous 的方法 (ex: Slony), 就會碰到資料不同步的狀況
若你對資料同步的要求相當高, 這種方式就不適合, 僅能拿來當作備援方案
所以說穿了總歸一句就是 -> 有一好就沒有兩好
建議你要先清楚定義你想要的東西,
並且確認你的 DB 屬性是哪一類 (讀取多還是寫入多或是其他類別?)
才可以知道有沒有適合的作法可以解決你的問題
另外推薦你兩個文件
http://tinyurl.com/c2n984
http://tinyurl.com/3kj2kw
希望對你有幫助
以上如有錯誤請不吝賜教 :)
※ 引述《Creationary (想想~)》之銘言:
: 各位大大好~~~
: 因公司postgresql的負載量過大~~
: 必須分散流量~~
: 目前找到兩種方式如下:
: 1.套件包
: http://www.betalog.com/read.php/423.htm
: 需要一部主機一個postgresql嗎?
: 我configure 沒問題,但是make時就不成功了~~
: 2.使用ubuntu 8.04原有套件
: http://blog.csdn.net/barfoo/archive/2008/10/29/3173693.aspx
: 公司目前可使用的linux伺服器主機分別為ubuntu 8.04 i386、ubuntu 8.04 amd64
: WINDOWS主機:windows 2008 Server
: 我有詢問過~~
: 1.套件包方式的話~用一台主機裝設多個postgresql來run cluster ,
: 得到的答覆是理論上不行~而且會增加cpu的負荷~~
: 但是~~第二種方法也是另建資料庫呀~~
: 且~~第二種方法的原理跟第一種的不大一樣的感覺~~
: 第一種是有建立Load Balancer和Replicator
: 而第二種~~就只是建cluster,是嗎?
: 想要詢問的是~~
: 哪種方式會能獲得最大的效益?~~
: 小女子感激不盡~~XDXD~
--
Long。Time。No。See
因為有你,所以我存在。
My Blog: http://longtime.pixnet.net/
Welcome!!
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 220.130.69.168
推
05/27 01:04, , 1F
05/27 01:04, 1F
→
05/27 12:28, , 2F
05/27 12:28, 2F
→
05/27 12:32, , 3F
05/27 12:32, 3F
→
05/27 12:38, , 4F
05/27 12:38, 4F
推
06/03 09:57, , 5F
06/03 09:57, 5F
討論串 (同標題文章)
本文引述了以下文章的的內容:
完整討論串 (本文為第 5 之 5 篇):
Database 近期熱門文章
PTT數位生活區 即時熱門文章