作者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/m.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