我正在创建一个数据库,并首先进行原型设计和基准测试.我正在使用H2,一个开源的,商业免费的,可嵌入的,关系型的java数据库.我目前没有索引任何列.
数据库增长到大约5GB后,其批处理写入速度加倍(写入速度减慢了原始速率的2倍).我使用一个新的,干净的数据库写入大约每行25行,现在是7GB,我写的大约是7行/ ms.我的行由short,int,float和byte [5]组成.
我对数据库内部甚至H2的编程知之甚少.我还要注意,我并没有贬低H2,因为这是我测试的其他DBMS的一个问题.
如果没有索引开销,哪些因素可能会减慢数据库的速度?它主要与文件系统结构有关吗?根据我的结果,我假设Windows XP和ntfs处理文件的方式使得在文件增长时将数据附加到文件末尾的速度变慢.