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

时间:2019-02-26 20:14:27

标签: postgresql bulkinsert

我正在处理50+百万行的表。

我想知道,如果我先在临时表中插入约5万行的批处理,然后一次将所有它们插入批量表中,而不是直接插入〜,是否可以期望获得更好的性能?批量表中有5万行?

确切地说,哪个更好?

  • 许多小的插入到目标表中 或

  • 首先插入临时表,然后将它们全部插入目标表?

该表没有索引。

欢迎任何有关提高性能的建议!

1 个答案:

答案 0 :(得分:1)

对于INSERT,性能不应取决于批处理的大小。

重要的是,不要在自己的事务中运行每个INSERT

此外,如果每个小INSERT都必须分别解析,那么很麻烦,因此请使用准备好的语句。

如果这样做,直接插入数据要比使用中间表更快。