我正在使用executeBatch写入数据库。 批量大小为50。
long startt = System.currentTimeMillis();
da.writeAll(batchRaiseRecords);
LoggerClient.writeError("DML write sendDML - " + (System.currentTimeMillis() - startt) + " - size - " + batchRaiseRecords.size(),"");
现在,此操作所用的时间从 0.2到6秒不等。我怀疑为什么这么多变化?
Line 2246: DML write sendDML - 362555602 - size - 50,
Line 3960: DML write sendDML - 609145666 - size - 50,
Line 6034: DML write sendDML - 1398866678 - size - 50,
Line 7676: DML write sendDML - 324071619 - size - 50,
Line 9398: DML write sendDML - 492674501 - size - 50,
Line 11180: DML write sendDML - 632663209 - size - 50,
Line 14926: DML write sendDML - 6776384464 - size - 50,
Line 16542: DML write sendDML - 384737523 - size - 50,
Line 17896: DML write sendDML - 287436213 - size - 50,
Line 18730: DML write sendDML - 206414079 - size - 50,
Line 19548: DML write sendDML - 288492245 - size - 50,
Line 20382: DML write sendDML - 310753856 - size - 50,
Line 21212: DML write sendDML - 695180583 - size - 50,
Line 22466: DML write sendDML - 232818139 - size - 50,
Line 23360: DML write sendDML - 246089140 - size - 50,
Line 24420: DML write sendDML - 192751420 - size - 50,
我多次试过这个操作,结果几乎相似。
为什么同一操作中的这么多变化 executeBatch()?
编辑: DML用于写入MySql数据库。并且只有一个客户。