发布于 2026-09-10T10:59:37.465776Z · Matty Stratton · TigerData 博客

PostgreSQL 的维护设计假设负载存在安静期,批量 ETL 之间会留出清理窗口。IoT 传感器、交易流和指标采集这类不间断写入抹平了窗口,于是三件事同时发生:autovacuum 一直在跑并与写入争抢 I/O,检查点在 WAL 里制造连续的整页写突发,ANALYZE 的统计更新也与摄入互相干扰。WAL 因此成为吞吐上限,按作者测算每次插入连同索引会产生 2.5–3.5KB 的 I/O。加 worker 或换更快的存储只能推迟问题。
PostgreSQL 的维护设计假设负载存在安静期,批量 ETL 之间会留出清理窗口。IoT 传感器、交易流和指标采集这类不间断写入抹平了窗口,于是三件事同时发生:autovacuum 一直在跑并与写入争抢 I/O,检查点在 WAL 里制造连续的整页写突发,ANALYZE 的统计更新也与摄入互相干扰。WAL 因此成为吞吐上限,按作者测算每次插入连同索引会产生 2.5–3.5KB 的 I/O。加 worker 或换更快的存储只能推迟问题。
来源记录
- center.info_item · c4c3a1fa301fdcad · 2026-10-03T04:08:35.169032Z
- pgweb.info_item · c4c3a1fa301fdcad · 2026-10-03T04:08:55.967155Z