如何在postgreSQL中插入值比insert()value()函数更快?

时间:2015-03-16 07:35:11

标签: perl postgresql sybase-iq

我有一个优化问题。目前我在Perl中使用DBI连接到IQ(Sybase)然后将值加载到散列中,然后连接到PostgreSQL并使用该散列逐行插入insert() value()。这很慢。有谁知道更快的方式来运行它?我的主要问题是两个不同的DB服务器,我需要在插入时避免使用散列,因此某些类型的批量插入是理想的,不确定如何?

1 个答案:

答案 0 :(得分:1)

填充PostgreSQL数据库is documented hereCOPY命令是你的恶魔。

  • 使用COPY
  • 删除索引
  • 删除外键约束
  • 增加maintenance_work_mem
  • 增加checkpoint_segments
  • 禁用WAL存档和流复制
  • 之后运行ANALYZE