[发明专利]一种快速处理XML压缩数据的方法及其装置有效

专利信息
申请号: 200910238256.5 申请日: 2009-11-24
公开(公告)号: CN102073663A 公开(公告)日: 2011-05-25
发明(设计)人: 王晓磊;仇睿恒;张磊;王毅 申请(专利权)人: 北大方正集团有限公司;北京大学;北京北大方正技术研究院有限公司
主分类号: G06F17/30 分类号: G06F17/30
代理公司: 北京天昊联合知识产权代理有限公司 11112 代理人: 陈源;罗建民
地址: 100871 北京市海*** 国省代码: 北京;11
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 一种 快速 处理 xml 压缩 数据 方法 及其 装置
【说明书】:

技术领域

本发明涉及XML数据处理领域,尤其涉及一种快速处理XML压缩数据的方法及其装置。

背景技术

在现有的XML数据压缩方法中,有很多压缩方法是基于XML结构和数据特征的处理方法,比如XGRIND、XPRESS等。在这些方法中,一方面,避免使用XML原始的容器方式表示结构,并且在压缩后的数据中直接保存XML的结构信息,以实现对压缩数据的直接查询;另一方面,把具有同种数据类型或具有类似特征的数据放到一起压缩,以达到较高的数据压缩比。从这类将结构与数据分离压缩的压缩数据中读取信息时,通常的做法是首先解压缩出原始XML数据,再使用公知的XML解析方式进行解析,相关内容可参见专利号为US 7,013,425B2的美国专利“Data processing method,and encoder,decoderand xml parser for encoding and decoding an xml  document”和公开号为US 2004/0225754A1的美国专利申请“Method ofcompressing xml data and method of decompressing compressed xmldata”。

比如,在XGRIND压缩方法中,分别对表示XML结构的元数据(XML标签和属性的形式)、枚举型属性值和一般元素/属性值采取不同的压缩方法。具体地讲,对于元数据,每个开始标签用一个字符“T”加上一个唯一分配的元素ID编码,所有的结束标签用一个字符“/”编码,属性名用一个字符“A”加上一个唯一分配的属性ID编码;对于枚举型属性值,采用字典编码法;对于一般元素/属性值,采用霍夫曼编码法(参见http://dsl.serc.iisc.ernet.in/pub/xgrindicde02.pdf)。按照现有方法对XGRIND压缩数据中的结构信息进行读取时,程序首先需要读出表示XML结构信息的字符和编号,通过某种方式转换为开始标签、结束标签或属性名的字符串表示,再使用公知的XML解析方法对字符串形式的XML数据进行解析,从而分析出XML结构信息。对XML数据进行读取时,也是先解压缩成字符串表示,然后对字符串表示的XML数据进行解析。在整个读取过程中,额外的计算机资源消耗包括在整个读取过程中,额外的计算机资源消耗包括解压过程中将XML结构信息和XML数据处理为符合XML形式字符串的运算消耗、解压缩后XML数据的存储消耗、XML解析方法中的字符串比较、查找的运算消耗以及解析字符串形式的XML数据的运算消耗。这些计算机资源消耗造成了程序运行效率的降低。

再比如,在XPRESS压缩方法中,分别对标签和不同类型的数据值采取不同的压缩方法。具体地讲,对于标签的压缩,将元素的路径编码为[0.0,1.0]中的某一间隔,并使用这些间隔之间的包含关系,对路径表达进行估计。对于数据值的压缩,具体地,对于数字型数据值,整数则采用差分编码,浮点数则采用f32编码;对于字符串型数据值,枚举型则采用字典编码,文本数据则采取霍夫曼编码(参见http://islab.kaist.ac.kr/chungcw/InterConfPapers/sigmod2003_jkmin.pdf)。按照现有方法读取XPRESS压缩数据时,除了上述问题之外,还存在关于浮点数类型的数据的问题。具体地讲,如上所述,在XPRESS中,对类型为xsd:float的XML数据采用f32编码,其数据表示方式与IEEE单精度浮点数表示相同,在压缩后的数据中记录为4个字节。按照现有方法对该类型的数据进行读取时,因为XML Schema规范规定类型为xsd:float的数据必须表示为十进制形式,所以XML数据解压过程涉及从IEEE单精度浮点数表示到浮点数的十进制字符串表示的转换,需要经过多次浮点数乘法和浮点数加法运算;而在应用程序内部,该XML数据一般对应于计算机中的一个浮点数类型的数值,在大多数计算机系统中,浮点数类型数值的表示方式正是IEEE单精度浮点数表示,因此,XML数据解析过程又涉及再把浮点数的十进制字符串转换为IEEE单精度浮点数表示,同样需要经过多次浮点数乘法和浮点数加法运算。可以看到,整个过程中有两次多余的数据表示方式转换,而且对常见的计算机体系架构来说,浮点数运算的开销是相对较大的。

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北大方正集团有限公司;北京大学;北京北大方正技术研究院有限公司,未经北大方正集团有限公司;北京大学;北京北大方正技术研究院有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/200910238256.5/2.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top