PostgreSQL:没有索引,临时表的大型插入的性能

问题描述 投票:0回答:1

我正在使用一个包含5000多万行的表。

我想知道如果我首先在临时表中插入约50k行的批量,然后一次性将所有行插入批量表中,而不是直接插入~50k行,我是否应该期待更好的性能散装表?

确切地说,哪个更好?

  • 许多小插入目标表或
  • 首先插入临时表,然后将所有这些插入到目标表中?

该表没有索引。

当然,欢迎任何提高性能的建议!

postgresql bulkinsert
1个回答
1
投票

使用INSERT时,性能不应该取决于批次的大小。

重要的是你不要在自己的交易中运行每个INSERT

另外,如果每个微小的INSERT必须单独解析,它会受到伤害,所以使用准备好的声明。

如果这样做,直接插入数据应该更快,而不是使用中间表。

© www.soinside.com 2019 - 2024. All rights reserved.