我剛剛發現JDBC的addBatch操作,如果給 「INSERT INTO MYTABLE(ID,姓名)VALUES(?,?)」 將創造這樣的事情:在JDBC中批量插入 - 單個事務會變慢多少?
BEGIN TRANSACTION
INSERT INTO mytable (id, name) VALUES (1, "a");
INSERT INTO mytable (id, name) VALUES (2, "b");
...
END TRANSACTION
相比,這樣的語句:"INSERT INTO mytable (id, name) VALUES (1, "a"), (2, "b"), .. "
,大規模交易的速度會慢多少? I/O問題的差異會顯着嗎?
我認爲批處理是關於消除網絡往返和延遲。顯然,發送一批N次操作比每次執行N次操作會產生很大的差異。 – duffymo 2013-04-20 02:27:20