2011-02-15 54 views
0

到目前爲止,我的「數據庫服務器」一直都很喜歡成爲一臺PC。如何「分發」數據庫?

不幸的是,負載變得過多,所以看起來我需要「分發」數據庫。

這究竟是什麼?我如何在幾臺服務器上傳播我的d/b?我需要一箇中間服務器,用戶查詢&以某種方式將負載分配給'真正'的D/B服務器?

這是如何工作的?來回d/b寫?閱讀?

任何的n00b 101個網站或書籍?

回答

1

到底什麼是與單個數據庫的瓶頸退房「高性能MySQL的。它是

  • 讀取性能
  • 寫性能

高流量的網站使用的幾種方法。

  • 使用主/從模型。添加一臺或多臺服務器,並將它們作爲主數據庫的從服務器。所有寫入操作都將在您的主設備上執行。讀取可以從任何從站執行。這可能是最簡單的方法。

  • 拆分。不需要連接的實體可以移動到不同的數據庫服務器。 每個分片都可以有自己的主從服務器。

    http://www.codefutures.com/database-sharding/

  • 集羣 - 的Oracle RAC中,MySQL NDB可以提供聚類,其中一組服務器充當單個單元。

    http://dev.mysql.com/doc/refman/5.0/en/mysql-cluster-overview.html

+0

+1我的apolgies沒有及時回覆;個人問題。有一些非常簡單但非常有效的技術。我被告知「我們有一種感覺,數據庫太慢了」,我應該把它整理一下。不是數據庫專家,我正在尋找想法。首先,我想我應該配置數據庫訪問。再次感謝 – Mawg 2011-02-17 02:08:54

1

如果你使用MySQL,你可以看看MySQL代理,負責處理循環和負載在多個服務器之間平衡。其他許多RDBMS也具有此功能。

另一種方式向周圍擴散的負載是「碎片」你的數據庫,或者換句話說,創建多個系統的記錄,並有區分的方式/定位系統,其從檢索它們。這是一種常見的做法。

對於MySQL服務器通過O'reily

+0

+1我apolgies不回覆越快;個人問題。不幸的是,這是MS訪問。 – Mawg 2011-02-17 02:09:18