作者comodore (Commodore)
看板java
标题[问题] Sqlite设定autocommit=false依然很慢
时间Fri Jun 9 23:14:33 2017
请问大家,
资料库如果需要写入几十万笔的新增与删除,
已经将auto commit设定为false了,
也使用preparedstatement搭配addbatch了
但还是非常慢, 需要大概跑个几十分钟,
看档案总管, 在执行时会有一个journal档,
会是因为那个档的buffer太小的关系吗?
还是I/O硬碟读小速度太慢呢?
谢谢
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 111.71.64.239
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/java/M.1497021276.A.949.html
1F:→ zop: sqlite适合跑几十万笔吗? 06/10 11:05
2F:推 pttnews: 1F正解 06/12 14:14
3F:→ comodore: 所以是选错DB的问题吗? 谢谢 06/12 16:31
4F:→ adrianshum: 不auto commit 不代表不commit. 每完成一部份还是comm 06/14 12:20
5F:→ adrianshum: it 一下吧,不然rollback segment (不晓得SQLite 相 06/14 12:20
6F:→ adrianshum: 当的东西叫什麽)太大肯定慢。另外你batch size 多大 06/14 12:20
7F:→ adrianshum: ?add 一个然後立刻就executebatch 肯定没帮助 06/14 12:20
8F:→ comodore: 全部add完之後, 才一次加执行整个batch的 06/21 18:18