簡體   English   中英

如何為此設置配置PostgreSQL?

[英]How should PostgreSQL be configured for this setup?

我想調整PostgreSQL服務器,但是即使在線閱讀了一些教程,我也無法從數據庫中獲得良好的性能。

我的服務器具有以下規格:

  • Windows Server 2012 R2數據中心
  • 英特爾CPU E5-2670 v2 @ 2.50 GHz
  • 64位操作系統
  • 512 GB內存
  • PostgreSQL 9.3

我想將postgres用作以下任務的數據存儲/聚合系統:

  • 從各種數據源(主要是平面文件)讀取數據(容量在100GB和1TB之間)
  • 預處理/清除數據
  • 匯總數據
  • 將匯總或采樣的數據饋送到R或python中進行建模
  • 最多10個並發用戶

這意味着,我不太在意以下內容:

  • 更新speds(我僅批量加載數據)
  • 抗故障能力(萬一發生故障,我可以隨時從輸入文件中重新加載所有內容)

當前,加載速度很好,但是創建索引和聚合數據需要很長時間,並且幾乎不占用任何內存。

這是我當前的postgres.config: http : //pastebin.com/KpSi2zSd

我認為這里明顯的步驟是顯着增加work_mem和maintenance_work_mem的細節,細節是“多少”?

如果您可以控制一次運行的聚合查詢和/或索引創建的數量,那么您可以大膽地使用這些查詢,但是您會面臨這樣的風險:如果有10個並發用戶和30GB設置,您可能會將服務器置於內存中壓力。

對於運行緩慢的查詢,它確實會為您帶來一些好處,因為它們會告訴您例如“排序方法:外部合並磁盤”需要大量內存,然后您可以在調整設置的同時保持關注服務器上的總內存使用情況。

我不排除您必須重新調整負載,以便最耗費資源的資源自己運行,而耗費資源較少的操作同時運行。

但是,我認為目前您缺少一些硬指標,這些指標很難讓您在內存分配上做出不錯的選擇。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM