我意识到PostgreSQL中的更新操作速度没有达到我的预期,尤其是当我同时更新这么多行时,比如10K行数据。有没有更新的快速替代方案?如使用快速COPY to INSERT操作。
谢谢你。
与INSERT
不同,UPDATE
可以针对大型写入进行优化。我确实有过更新数万条记录的情况,而且更新速度相当快。当然,批量操作的正常注意事项适用:
-
索引并不总是有帮助,事实上,如果更新整个表,索引也不会有帮助。您可能会发现删除索引、更新和重新创建索引的速度更快。
-
NOT EXISTS在大型集合上的更新速度非常慢。找到一种使用左联接的方法。
-
如果适用正常性能规则(请查看查询计划等)。