MDA之路

MDA,UML,XML,Eclipse及Java相关的Blog
posts - 53, comments - 494, trackbacks - 0, articles - 2
  BlogJava :: 首页 :: 新随笔 :: 联系 :: 聚合  :: 管理

数据库和XML数据读取性能比较

Posted on 2005-03-10 17:24 wxb_nudt 阅读(4142) 评论(1)  编辑  收藏 所属分类: 技术杂谈

硬件:CPU P4赛扬2.2G,内存512M

操作系统:Windows XP SP2

数据库:Access2002

软件环境:JDK1.4Eclipse3.01

 

数据库采用JDBC-ODBC桥的方式连接,XML的访问采用SAX方式。性能参数如下:

记录数

XML读取时间(毫秒)

数据库读取时间(毫秒)

100

156

94

1000

500

93

3000

828

94

5000

1000

109

10000

1485

94

100000

9172

125

很明显,数据库的性能大大超过XMLXML的数据量在超过10000条记录时访问时间超过了1秒,性能难以承受。而数据库对数据量的增加不太敏感。

几点说明:

1.       Access数据库对于大数据量的数据是不够的,要测试海量数据最好使用SqlServer之类的专业数据库;

2.       JDBC-ODBC桥的方式是数据库访问方式中效率最低的,也就是说采用其他方式还可以进一步提高数据库的性能。

3.       XML的访问我不是直接写SAX代码得到的,而是通过EMF(Eclipse Model Framework)自动生成的代码得到的,这样函数调用的层数增多了,对性能有一些影响,不过影响不会太大,对于IO来说,函数跳转的时间可以忽略不计。

4.       XML应该适合小量的数据存储,最好少于10000条记录,这样访问时间可以保持在2秒以下,勉强可以接受。

希望这组数据可以对使用XML作为数据源的人提供一点启示。

注意:转载请注明出处!


评论

# re: 数据库和XML数据读取性能比较  回复  更多评论   

2008-04-14 16:36 by music
谢谢!

只有注册用户登录后才能发表评论。


网站导航: