磨礪技術珠磯,踐行數據之道,追求卓越價值
回到上一級頁面: PostgreSQL雜記頁 回到頂級頁面:PostgreSQL索引頁
如題,前領導談起此話題。
我覺得這是很有意思的。如果我是設計師,該如何來設計?
我所能想到的是:
一:應用層面,
根據應用的狀況,進行數據庫水平分割(個人理解,就是把不同應用的表,分發到不同數據庫節點)。
二:每一個邏輯數據庫的層面:
采用集群,進行負載分割。
但是集群方案需要慎重選擇,不是所有的集群方案都有負載分發的能力的。所以要采用multi-master方式來分布負載。
就是說,邏輯上是一個數據庫,但物理實現上是多個存儲節點同時參與運算如查詢等來提高響應速度。
三:對邏輯數據庫中的每一個表的層面:
采用分區表,合理運用並行處理能力。
如果可能,對頻繁使用的查詢所涉及的表,采用簇表。
四:在物理數據庫節點層面,
在成本允許的情況下,
盡量多加CPU,提高並行運算能力(max_connections的合理值,受此影響)
多增加內存,采用高速磁盤,最好是用固態硬盤,減少IO延遲。
五:在具體的SQL查詢中,如果可能,采用Hint提示,使用並行查詢
回到上一級頁面: PostgreSQL雜記頁 回到頂級頁面:PostgreSQL索引頁
磨礪技術珠磯,踐行數據之道,追求卓越價值