admin 管理员组

文章数量: 1086019


2024年4月19日发(作者:linux cp强制覆盖)

维普资讯

XML数据压缩技术综述 

文苹编号:1003 5850(2008)07 0068—03 

XML数据压缩技术综述 

The Survey 0f XML Data Compression Techniques 

陈 莎 包晓玲 张胜 

(南昌航空大学 南昌 330063) 

【摘 要】随着互联网技术的迅速发展,XML已经成为Web上信息表示和数据交换的事实标准。由于XML具 

有自我描述能力,使得XML文档显得冗长。以至于包含了大量的冗余信息,这样必将影响数据查询处理和交换 

的效率。因此,XML数据压缩技术对于减少资源的使用显得特别重要。概述了XML压缩研究的现状;分析了 

典型的XML压缩技术,对其性能进行了比较;总结XML压缩技术的不足及发展趋势。 

【关键词】XML数据压缩,数据冗余,查询处理,DTD 

中图分类号:TP301.6 文献标识码:A 

ABSTRACT With the rapid development of the Web technology,XML has become defacto standard for Data expression and 

exchange.However,because of the self—described ability of the XML makes XML verbose、What is more,the increased size affects 

both queries and transfers.After a brief introduction tO the research background of XML Data Compression Technoogy,this paper 

presents an analysis of the XML compression techniques and the performance.At the end of this paper the future work of XML 

Data Compression Technology is presented. 

KEYWORDS XML data compression,data redundancy,query process,DTD 

随着互联网技术的迅速发展,XML已经成为 

压缩技术主要是用来解决XML的数据冗余问题,以 

满足网络宽带和存储空间的需求,其压缩率都高于传 

统的数据压缩技术,但是支持压缩文档的直接查询,如 

Web上信息交换与数据处理的事实标准。XML的主 

要优势在于结构信息丰富、语义明确,因此越来越多的 

信息以XML文件的形式进行存储和交换。但是由于 

XML具有自我描述性,使得XML显得冗长,给数据 

的存储和传输带来极大的不便。因此近些年来,为了更 

好地推广XML的应用,提高数据文件的传输和存储 

效率,在压缩领域提出了许多针对XML数据的压缩 

技术,着重考虑了XML数据的特殊性,分析XML数 

XmillI3]、XMLZip、XMLPPM、MillauI4 等都属于这类 

压缩技术。随着XML应用范围的扩大,XML文档的 

容量也在不断地加大,如果通过完全解压缩来对压缩 

数据进行操作处理必然造成了系统的负担,因此在没 

有完全解压缩的情况下进行随机存取和查询处理成为 

了发展的必然,这就出现了可查询的XML数据压缩 

技术,如XGrind[ 、XPRESS: 、XGzip E 、XQueCE。] 

等。 

据的结构和特点,在传统数据压缩算法的基础上进一 

步改进,提高数据压缩的性能。 

本文将分别介绍XML数据压缩技术研究的现 

状、XML数据压缩的典型技术及其性能比较、XML 

数据压缩技术的不足及发展趋势。 

2 XML数据压缩技术简介 

2.1不可查询XML数据压缩技术 

1 XML数据压缩研究现状 

由于XML数据自身的特点,决定了其数据冗余 

较大,由此构成了空间的浪费、查询效率的降低。针对 

这些问题,目前提出了许多XML数据的压缩技术,针 

XML结构特征和语义信息进行压缩,得到比传统压 

缩技术更好的压缩性能。 

根据查询的支持程度,XML数据压缩可以分为 

不可查询与可查询的数据压缩技术。不可查询的数据 

* 2008—01—04收到,2008=05—25改回 

这类压缩技术都拥有较好的压缩性能,有着出色 

的压缩比、压缩/解压缩时间短、存储空间小等,但是不 

能对压缩文档进行直接查询。 

2.1.1 Xmill 

Xmill是最早的不支持查询的XML压缩技术,建 

立在传统压缩技术Gzip之上,核心思想是将结构与内 

容分离。它在压缩XML文档时遵循3个规则:①结构 

与内容分离:文档结构由XML标签和属性组成,在 

Xmill中对于开始标签和属性一般采用字典编码的方 

** 基金项目:江西省教育厅科技计划项目(JGG08223);博士启动基金资助项目(EA200606198)。 

***陈莎,女,1984年生,硕士研究生,研究方向:XML,数据压缩。 

维普资讯

第21卷第7期 电脑开发与应用 

式进行,所有的结束标签都用“/”代替,数据项都用其 

的文档有着非常出色的压缩比。 

所在的容器的号表示。②具有相关语义的数据项分组: 

2.2查询XML数据压缩技术 

将具有相关语义的数据项放人同一个数据容器中。决 

这类XML数据压缩技术可以对压缩文档进行直 

定数据项放 那个容器主要是有两个因素决定:首先 

接查询,但是一定程度上牺牲了压缩性能。但是随着 

是数据项的路径,其次是容器表达式。③运用语义压缩 

XML压缩技术的不断改进,这类压缩技术将会成为 

机:在Xmill中针对不同的数据容器运用专门的压缩 

了XML压缩领域的一大趋势。 

机。Xmil1支持3种语义压缩机:元语义压缩机、联合 

①XGrind:XGrind是一种支持压缩域查询的 

语义压缩机、用户自定义语义压缩机。 

XML数据压缩技术,主要采用了同构转换的压缩思 

由于Xmill将结构和内容分离,因此Xmill具有 

想。压缩过程如图1所示,首先XGrind核心使DTD 

出色的压缩比率,其次内存消耗降低、减少了网络带 

解释器对XML文档的DTD进行分析,然后初始化一 

宽。同时Xmill也存在一定的问题,不能对压缩文档进 

个表,用来列出元素和非枚举类型属性出现的频率,同 

行查询,需要人工干预等。因此Xmill并没有被广泛地 

时还为枚举数据类型建立一个标志表。接下来XGrind 

应用。但是Xmill的优点对以后XML数据压缩技术 

核心使XML解释器对XML文档进行两次扫描,第1 

的研究和发展起到了重要的作用。 

次扫描把XML文档的元素和不含枚举数据类型的属 

2.1.2 XMLZip 

性出现的频率统计到频率表中去,第2次扫描是对元 

XMLZip与Xmill类似,也是建立在Gzip压缩技 

素、属性或数据值进行相应的编码。对于元数据和枚举 

术之上的XML压缩技术。 

类型属性值使用枚举类型属性编码器,对于非枚举类 

XMLZip压缩的XML文档结构用DOM树来表 

型属性值使用Huffman压缩机。最后将编码过的数据 

示。在压缩过程中深度变量L起到了决定性作用, 

和所建立的表格通过XML生成器处理,得到XML压 

XMLZip可以将这个DOM树分解为根组件:包括深 

缩文档。 

度为L的树结构中的所有节点,子组件:深度从L开 

始到所有子树节点的集合。最后利用Gzip压缩工具对 

各个组件进行独立压缩并最终输出一个XML压缩文 

档。值得注意的是深度L可以由用户指定,并且压缩 

性能的好坏直接取决于深度变量L值的大小,随着L 

的值增加会使得压缩性能变的非常糟糕。 

2.1.3 其他不可查询XML压缩技术 

①XMLPPM:压缩过程与Xmill类似,XMLPPM 

的核心思想也是将结构与内容分离。然而与Xmill不 

图1 XGring ̄构图 

同的是它采用了一种叫做多层次建模的建模技术,其 

XGrind系统的最大特点是在压缩数据之上支持 

中应用了SAX和PPM建模技术。 

查询,同时XGrind在保留了结构完整性的同时,又具 

xMLPPM采用了两步压缩的思想:首先 

有Xmill的数据与结构分离的特点。当然,付出的代价 

XMLPPM采用了SAX将XML文档中的标签、属性 

是压缩比率要比Xmill低,而且需要对XML文档进 

以及数据项进行分离并存人相对应的模型中去。接着, 

行两次解析,所以需要更长的压缩时间。 

XMLPPM采用PPM编码方式对各个模型中的数据 

进行压缩编码。具有以下特点:不需要人工干预,拥有 

xML分析器 

出色的压缩比率,支持在线压缩。 

rj统计收集器I 

X~I解 l l呻I数据类型识别器f 

②Millau:是一种在线的XML压缩技术,可以充 

析 

分的利用文档结构来进行压缩,来取得出色的压缩性 

器 I倒装算术编码器1 

I类型编码器 1

能,编码方式主要基于WBXML规则。在压缩过程中 

XML编码器 

采用了一个标记表来对XML标签和属性进行编码, 

图2 Xpress ̄构图 

而数据项使用传统的文本压缩机来进行压缩。虽然 

②Xpress:Xpress是一种支持直接高效查询 

Millau对于大容量的的XML文档的压缩性能没有传 XML压缩技术。主要思想是:首先采用了一种为 

统的文本压缩算法好,但是对于大小界于OKB~5KB 

XML文档中元素的树型路径进行编码而设计实现的 

维普资讯

XML数据压缩技术综述 

反向算术编码的编码方式:让每一个树路径都对应一 

要降低内存消耗,就要避免将整个未压缩文档调入内 

个[O.0,1.O]的实数区间,在整个压缩过程中就是利用 

这些实数区间来进行编码的。同时采用了数据类型的 

自动识别,这样避免了人工干预;接下来它还对不同的 

类型的数据采用不同的编码方式,这样可以得到更高 

的压缩比率;另外,也采用了与XGrind压缩算法相似 

的同构压缩思想,以保持与原来XML文档无论在语 

义还是结构上都保持相同,这样可以对XML压缩文 

档进行直接查询。如图2所示为Xpress的结构图。 

存,所以一般采用SAX分析器对XML文档进行分 

析。如表1所示给出了各XML压缩技术结构与性能 

的比较。 .. 

3 XML数据压缩技术的发展趋势 

通过本文的分析可以得知,上述的压缩算法都是 

在不可查询与可查询之间作着某种权衡,那么如何处 

理这种权衡就成为了一个很大的挑战。 

结合所存在的问题,提出XML数据压缩技术的 

③其他可查询压缩技术 

a.XQzip与XMill类似,采用了结构和内容分离 

的压缩思想,同时采用了结构索引树的技术,使得可以 

对XML压缩文档进行直接查询,而无需进行解压。 

b.XQuec也沿用了XMill的压缩思想,将结构和 

内容相分离,并将具有相关意义的数据项放到同一个 

数据容器中去,最后对不同的容器采用不同的压缩算 

法。此外为了支持对XML压缩文档的查询功能, 

XQuec为XML文档建立了结构树以及索引树。 

2.3 XML数据压缩技术的性能比较 

表1 XML压缩技术结构与性能比较 

压缩 压缩率 压缩时 内存消耗 应用的 XML文 查询 其他性能 

技术 /Gzip 间Gzlp 压缩算法 档分析器 功能 

Gzip、 不可 

关键在于:①应该具有良好、稳定的压缩性能,这包括: 

出色的压缩比、合理的压缩/解压缩时间、存储空间的 

有效利用、节省网络带宽;②XML压缩文档可以支持 

复杂查询及更新功能,减少人工干预。 

XML数据压缩技术目前已经成为XML研究领 

域的研究热点,并且具有很大的发展空间,随着Web 

Ⅱ 

 ] ] ] ]

技术的快速发展,XML数据压缩技术将会面临更大 

的挑战。 

参考文献 

万常选.XML数据库技术[M].北京:清华大学出版 

社,2004. 

David S.Data Compression The Complete Reference 

需人工干 

XM'l1 好 差不多 恒定 

Bzip 

SAX 预、不可 

查询 

在线压缩 

[M].Second Edition.Beijing:Pubishing House of 

Electroncs Industry,2003. 

XGrind 差 

至少 大致 Huffman 

两倍 恒定 编码 

SAX 

可 无需人 

查询 工干预 

Liefke H,Suciu D.XMILL:An Efficient Compressor 

for XML Data rC].US:Proc of the 2000 ACM 

SIGMOD Conf on Management of Data,2000. 

倒装算术 

XPR 差 至少 大致 

ESS 

编码、 SAX 可 无需人 

查询 工干预 

WI1fred N。Lain W Y,James C.Comopara tive 

两倍 恒定 Huffman 

编码 

Analysis of XML Compression Technologies[z]. 

World Wide Web:Internet and Web Information 

无需人 

Systems.2006:5-33. 

XML 好 

PPM 

长 恒定 

PPM SAX 

不可 工干预、 

查询 不可在 

Tolani P M,Haritsa J R.XGRIND:A Query-friendly 

XML Compressor Ec].In IEEE Proceedings of the 

18th International Conference Oil Data Engineering, 

2002. 

线压缩 

XML 

接近 较长 档大小 

与输入文 

不可 不

DOM zip 

可在 

zlp 成比例 查询 线压缩 

Min J,Park M J P,Chin W C.XPRESS:a Queriable 

Compression for XML Data[C].US:Proc of the 2003 

与输入文 

MillDTD tree、 不可 可在线 

au 较好 较长 档大小 D0M 

ACM on Management of Data.2003. 

成比例 Gzip 查询 压缩 

Cheng J,Ng W.XQzip:Querying Compressed XML 

Using Structural Indexing[c].In Proceedings of 

EDBT。2004. 

高效的XML压缩技术需要在压缩比率、压缩/ 

解压缩时间、内存消耗等方面有非常出色的性能,能够 

Arion A,Bonifati A,Costa G,et a1.XQueC:Pushing 

产生比传统的压缩技术Gzip更好的压缩性能。产生好 

的压缩率需要充分地利用XML文档的结构和数据。 

产生好的压缩/解压缩时间需要对文档分析遍历一次, 

Queries tO Compressed XML Data[C].In Proceedings 

of the 29th International Conferenceon Very Large 

Data Bases。2003. 


本文标签: 压缩 进行 技术 文档 查询