gpt4 book ai didi

postgresql - PostgreSQL 中的 "buffer"有多大

转载 作者:行者123 更新时间:2023-11-29 11:37:16 26 4
gpt4 key购买 nike

我正在使用 pg_buffercache 模块来查找耗尽我的 RAM 缓存的 pig 。例如,当我运行此查询时:

SELECT c.relname, count(*) AS buffers
FROM pg_buffercache b INNER JOIN pg_class c
ON b.relfilenode = c.relfilenode AND
b.reldatabase IN (0, (SELECT oid FROM pg_database WHERE datname = current_database()))
GROUP BY c.relname
ORDER BY 2 DESC
LIMIT 10;

我发现 sample_table 使用了 120 个缓冲区。

120 个缓冲区是多少字节?

最佳答案

PostgreSQL 的硬编码 block 大小为 8192 字节 -- 请参阅 pre-defined block_size variable .每当您编辑配置以指定 shared_buffers 等时,这曾经是一个要记住的数字,但配置现在支持像 MB 这样的后缀,它将为你。

通过努力,可以将 block_size 更改为其他值。对于少数应用程序,可能有更优化的大小,但代码对大小做出假设的地方数量很大。

关于postgresql - PostgreSQL 中的 "buffer"有多大,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2887402/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com