Postgresql

postgresql - 每個表/數據庫的記憶體首選項

  • January 10, 2010

我很好奇是否有任何方法可以提示 postgresql 哪些數據更可能記憶體在記憶體中。在我的場景中,伺服器將主要處理讀取流量,整個數據集比可用記憶體大得多,但有些表

$$ which are not necessarily most frequently accessed $$應該儲存在記憶體中,而其他不需要高性能並且可以從磁碟訪問。 我知道 memcached 或類似的可能是合理的解決方法,但也許這一切都可以在沒有它的情況下完成。

這個問題更適合stackoverflow嗎?

沒有辦法提示 PostgreSQL 關於你的記憶體。在大多數情況下,您不需要 - 最常用的表部分將被記憶體。它並不像“這張表最常用,讓我們記憶體這張表”那麼天真,它確實考慮了其他事情。(例如,大表的順序掃描仍然不允許用完完整的緩衝區記憶體)

您可以做的解決方法是將熱表放在不同的表空間中,安裝在不同的分區上,並調整該分區的作業系統記憶體參數(當然,如果這在作業系統級別上可行的話)。PostgreSQL 在很大程度上依賴於作業系統級別的文件系統記憶體,因此如果您可以根據需要調整該記憶體,那可以解決您的問題。

引用自:https://serverfault.com/questions/101267