当前位置: 技术问答>java相关
sax2大数据优化方案,分不够在加
来源: 互联网 发布时间:2017-03-27
本文导语: 我现在写了一个sax2解析xml的程序,就是用csdn上发表的那几篇文章的方法写的. 处理10m的xml熟读还可以,但40M的时候就很慢了. 比如如下xml 60 myid fname feifei 女 60 myid fname feifei 女 ___________________________...
我现在写了一个sax2解析xml的程序,就是用csdn上发表的那几篇文章的方法写的.
处理10m的xml熟读还可以,但40M的时候就很慢了.
比如如下xml
60
myid
fname
feifei
女
60
myid
fname
feifei
女
__________________________________________________________
ROW有上万个,并且我只要 1000到1050 这50 个
我应该如何在sax2中,只解析这50 个后就跳出
处理10m的xml熟读还可以,但40M的时候就很慢了.
比如如下xml
60
myid
fname
feifei
女
60
myid
fname
feifei
女
__________________________________________________________
ROW有上万个,并且我只要 1000到1050 这50 个
我应该如何在sax2中,只解析这50 个后就跳出
|
去截取XML是比较困难的,你可以用其他的XML分析器。对于数据有一个基本的分析,要处理的是大量的还是少量的,再根据不同的要求选取不同的分析器。
http://www.sosnoski.com/opensrc/xmlbench/results.html
http://www.sosnoski.com/opensrc/xmlbench/results.html
|
如果用dom 跟慢
|
使用XPath会快一些吧
|
我想当一个XML文件大到10M的时候,通常是一种Data-Centric的应用了,所以在这种情况下,由文件系统+plain text file的方式来存储数据是不合适的。这种时候需要的是一种XML Database,XML格式的数据以一种方便高效检索的格式存放其中,用户可以通过Xpath or XQuery来进行很灵活的查询。
|
我想sax之所以是简单接口,就因为是流的方式处理,而不象dom那样能随意访问文档的任何部分。估计是不能从中截取的
您可能感兴趣的文章:
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。