gpt4 book ai didi

postgresql - 关于大数据加载期间检查点的问题?

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

这是一个关于 PostgreSQL 如何工作的问题。在使用“COPY”命令加载大数据期间,我看到多个检查点发生在 100% 的日志文件 (checkpoint_segments) 被回收的地方。

我想我不明白这一点。当单个事务需要比可用日志文件更多的空间时,pgsql 会做什么?看起来它在这个负载过程中多次回绕,这是一个单一的事务。我错过了什么?

一切正常,我只是想更好地理解它,以便我可以进行调整等等。

最佳答案

当检查点发生时,所有脏页都被写入磁盘。由于这些页面不会再丢失,因此不再需要它们的日志,因此可以保存以供回收。将脏页写入磁盘并不意味着此数据已提交。数据库可以从与每一行一起存储的元数据中看出它属于尚未提交的事务,并且它仍然可以中止该事务,在这种情况下,vacuum 最终将清除这些行。

加载大量数据时建议临时增加checkpoint_segments .

关于postgresql - 关于大数据加载期间检查点的问题?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6428047/

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