Iam运行基于TPCC的事务测试,包括HSQL,Derby,SQLite和H2嵌入式数据库。每个数据库都以内存模式运行,具有默认配置。每个测试都有完全相同的初始数据库执行完全相同的事使用HSQL,初始数据库比小数据库更好。这是输出:
的SQLite
initial db rows:279606交易数:272270
initial db rows:398870交易数:142080
initial db rows:598867交易数:79170
HSQL
initial db rows:279606交易数:226660
initial db rows:398870交易数:220650
initial db rows:598867交易数:288360
数
H2
initial db rows:279606交易数量:158280
initial db rows:398870交易数:136810
initial db rows:598867交易数:115720
德比
initial db rows:279606交易数:8920
initial db rows:398870交易数:8650
initial db rows:598867交易数:7990
以下是HSQL执行交易的分钟数:
min/rows 279606 398870 598867
1: 34530 31620 24590
2: 33010 30900 27770
3: 26490 26380 30190
4: 24180 24520 30370
5: 21540 20370 29220
6: 17690 20570 29090
7: 18620 17250 30310
8: 17950 17290 31070
9: 16920 17080 25580
10: 15730 14670 30170
任何想法为什么较小的数据库变得如此慢,而最大的数据库提供更好和稳定的结果?
如果对于其他dbms是相同的,我会在我的测试应用程序中出现一些错误,但这真的很奇怪。