我目前正在测试带有PostgreSQL的JDBC插入批量插入的速度。
似乎有一个散装插入应该做的最佳插入数,而且不是很高(大约 200(。我称之为最佳数字,因为插入更多(或更少(需要更多时间来插入一百万行。
为什么会这样,我可以增加这个最佳数字吗?
如果您对我的测试的工作原理感兴趣:
我正在创建一百万个应该插入到表中的事件。我将最大批量大小设置为 1,让程序插入并测量时间,因为要插入的事件数命中 0。然后,我以最大体积大小再重复此操作。
如果在事务块中执行插入,最后进行一次提交,您将看到更快的插入,例如
begin;
insert 1;
insert 2;
commit;