Postgresql

PostgreSQL 減少快閃記憶體寫入 (TBW)

  • March 16, 2021

我目前是一家初創公司,在我的數據庫伺服器上使用非伺服器級 NVME/SSD。我的主機板、CPU、DDR(ECC)等都是伺服器級的,除了快閃記憶體部分。

我正在尋找減少對我的 Postgresql 數據庫的寫入量的方法,以保持快閃記憶體驅動器的使用壽命,希望能降低故障率。

我的要求

  • 寫入速度(低優先級)
  • 高讀取速度和低延遲(高優先級)
  • 低寫入(高優先級)

問題

  • 非raid ubuntu系統推薦哪種儲存格式——ext4/xfs
  • 我應該查看哪些配置設置
  • 任何形式的設置都可以提高記憶體在快閃記憶體驅動器上的使用率
  • 我應該減少維護/真空頻率嗎?
  • 磁碟的塊大小。
  • WAL 的單獨磁碟?

為了盡可能減少檢查點的數量,增加max_wal_sizecheckpoint_timeout。價格是崩潰後更長的恢復時間。

確保它shared_buffers不會太低,這樣就沒有記憶體壓力會在檢查點之間將臟頁強制輸出到磁碟。您可以嘗試設置bgwriter_lru_maxpages = 0,以便後台工作人員不會主動清理檢查點之間的頁面。

設置wal_compression = on為壓縮整頁寫入(以 CPU 時間為代價)。

引用自:https://dba.stackexchange.com/questions/287110