批量插入 1 萬條資料,DB 查詢構造器和原生 SQL 效能比較

datangkang123發表於2020-03-17

因專案需要匯入資料量較大的CSV到MYSQL資料庫,發現匯入很慢,因此對其進行了比較!

以10000條資料來作為樣本測試,第一次不分批全部匯入,DB查詢構造器報錯,提示佔位符超過65000個,超出MYSQL處理上限;原生SQL匯入正常:

成功匯入10000行
匯入用時7.0685548782349
記憶體使用:0.4242578125MB

然後分割成5000一批插入,DB查詢構造器插入正常:

成功匯入10000行
匯入用時37.71401309967
記憶體使用:0.33146875MB

原生SQL匯入:

成功匯入10000行
匯入用時32.702127933502
記憶體使用:0.4242578125MB

相差不大,因此,批量插入最好還是用原生SQL,不受佔位符限制。

不知大家有什麼更好的方法,批量插入大量資料到資料庫呢?

本作品採用《CC 協議》,轉載必須註明作者和本文連結

相關文章