admin 管理员组

文章数量: 1184232


2024年4月20日发(作者:while 函数)

第37卷第5期・学术 

Vo1.37 No.5 

湖南农机 

2010年9月 

Sep.201 O 

HUNAN AGRICULTURAL MACHINERY 

基于关系数据库的XML数据在存储方法的研究 

赖世锋,蒋年德 

(东华理工大学,江西抚州344000) 

摘要:分析和研究了XML数据在关系数据库中的存储方法,提出了全面的存储方法,此种存储方法是基于查询 

代价的,首先通过转换接口把XML DTD转换为XML Schema,然后通过DOM树解析工具得到初始模式,接着通过模 

式转换操作获取模式空间,之后引入了以哈希连接算法为基础的代价模型,用改进的算法从模式空间中找出一个最优 

的模式,提高了存储方法的性能。最后,通过实验证明改进后的映射方法与经典的伯哈农存储方法相比较具有更好的 

性能。 

关键词:XML;数据存储;关系数据库 

中图分类号:TP311.13 文献标识码:A 文章编号:1007—8320(2010)05—0032-02 

Research on XML data storage method which based on Relational database 

LAI Shi-feng.JIANG Nian-de 

(East China Institute ofTechnology,Fuzhou,Jiangxi 344000,China) 

Abstract:Analysis and research of the XML data stored in a relational database approach,in this paper,a comprehensive 

storage method is put forward.This storage method is based on the query cost.First of all,through the conversion interface,the 

XML DTD into XML Schema,Then use the DOM tree analysis tool get the initial mode of analysis tools,Then use the mode 

conversion to obtain pattern space,after the introduction to hash join algorithm based on cost model,improved method is used 

from the model space to find a best model,improve the performance of the storage method.Finally,experiments shows that 

improved mapping method and the classical Bohannon storage method have better performance compared. 

Key words:XML;Data Storage:Relational database 

1 引言 

准化。 

(2)转换XML Schema为DOM树模型。 

XML是Extensible Markup Language的缩写,XML数据的 

(3)利用不同的规则生成全部的模式空问,再利用哈希连 

可扩展性和自我描述性使得它成为当前网络上数据传输的主 

接算法生成的模型来进行评估,找出最优的查询代价模式。 

要形式,但是它对数据的处理能力却相当的有限,实现XML 

(4)利用选择算法搜索出最优的模式,但是这个模式还不 

存储为关系数据库以后,就可以利用关系数据库所带有的存 

是关系模式,需要通过规则并且利用DOM树把它映射为关系 

储管理等技术来处理XML数据,所以把XML转换为关系数 

模式。 

据库存储方式是很有研究价值的。通过对XML数据在关系数 

整个存储方法过程如图1所示: 

据库中的存储方法的研究,发现基于DTD的存储方法不能够 

适应XML文档以XML Schema为标准的趋势,伯哈农存储方 

法的搜索算法不够高效且转换规则存在一些漏洞等问题。因 

此,本文提出了一种全面的存储方法。 

2 XML数据在关系数据库中的存储方法 ‘ 

由于关系数据是一种结构化的数据,它以扁平的二维关 

图1存储方法的过程 

系表存储在关系数据库,而XML数据是半结构化的,所以要 

3存储方法的具体步骤 

实现存储,必需进行模式映射。大多XML文档是基于DTD 

(Document Type Definition)模式,因此这里从DTD开始着手 

3.1 ×ML DTD到XML Schema的转换过程 

对数据的转化。存储的主要思想如下: 

本文实现的XML DTD到XML schema的转化工具是一个 

(1)由于XMLSchema已成为XML文档定义的大势所趋, 

公开的c#类,类名为FiSchemaOutPutFromDTD,通过此类中 

所以先把DTD转化成XML Schema,实现XML文档定义的标 

的四种方法可以实现从XML DTD到XML Schema的转换。 

收稿日期:2010—08—17 

3_2生成初始模式 

作者简介:赖世锋(1983一),男,硕士研究生,主要研究方向:Web 

利用DOM树文档模式的生成算法,产生DOM树文档模 

数据挖掘。 

式,也就是模式空间的初始模式,算法如下: 

第37卷 赖世锋,等:基于关系数据库的XML数据在存储方法的研究 33 

初始化DOM树文档模式为空; 

while(XML Schema中当前访问元素不为空)do 

{ 

f 

CisCffeateTable(gi); 

addColumn(Ci,id,pk); 

switch(当前访问的元素) 

{ 

if(i!=1) 

{ 

case复杂元素:为该复杂元素创建新的类型并标注 

为已访问; 

break; 

Parent

id=GetParentNode(gi); 

_

addColunm(Ci,parent id,fk); 

) 

case多值元素:为该多值元素创建新的类型并标注 

foreach(vj in ) 

为己访问; 

break; 

case可选元素:为该可选元素创建新的类型并标注 

为已访问; 

break; 

default:在DOM树文档模式中增加该元素,标注该元 

素已访问; 

break; 

} 

访问XML Schema中的下一个元素; 

} 

3.3代价模型的生成 

以上述过程所得到的DOM初始模式为基础,我们通过垂 

直分割、垂直合并、水平分割、水平合并、“I上浮”和“I下 

移”这6种模式转换操作产生所有的模式,即模式空间。其中 

每一个模式都对应着关系数据库中的一个存储方案,就要从 

中挑选出一个最合适的,而衡量是否合适的标准就是建立查 

询代价基础之上的,与其它的代价模型相比,哈希连接算法 

的连接代价较小,这里引入一个基于哈希连接算法的代价模 

型Es ̄COSThash=3(IRII+IR21)+SP1・SP2・IR1I,通过它计算出代 

价模型。 

3.4关系模式的生成 

现在可以生成所有的模式,又存在代价模型,剩下的任务 

就是把前两者组织在一起并且选优,即从这么多的模式中选 

出一个最优的模式。本文采用的模式搜索算法的中心思想是 

把整个模式空间按内存大小分成若干组,首先把生成的第一 

组模式载人内存,从中选出一个代价较小的模式,然后把这个 

模式及其对应的代价记录下来,接着把第二组模式载入内存, 

从中选出一个代价最小的模式,让这个模式与第一组生成的 

模式进行代价比较,记录较小者,依次类推,直至模式空间生 

成完毕,最后得出代价最小的模式,即:最优模式。 

得到了最优模式以后,利用如下算法将其映射为关系模 

式。 

函数:将最优中间模式映射为关系模式 

输入:最优中问模式 

输出:关系模式 

public void MapToRelation() 

{ 

S={gl,g2,…gn}; 

for(i=l;i<n+l;i++) 

f 

path=getPath(vj,gi); 

if(vj.IDREF==true) 

addColumn(Ci,path,fk); 

else 

addColumn(Ci,path); 

) 

4实验 

本文所使用的查询负载与XML文档均来自xML 

Benchmark网站,其中XML文档的大小为105M,先通过公开 

接口FiScbemaOutputFr0mDTD把XML DTD转换成XML 

Schema,然后通过使用DOM解析器扫描XML文档的统计信 

息。如图2所示: 

ID 父结点IB 元素名称 元索数量j元素大小 

j 1 0 Publish 6; 7 

2 l Categ0ries 

3 1 open auetions: 6 15 

4 ; 1 鎏 ̄osed_auetions; 6i }l5 

: ; 2 category 9l_ 28 

6 3 9 饕 ion 59000 8; 

7 。4 closed

_

auction 47760: l2 

^ I÷ 

8 5 Id 10 

! 

9 5 Name 0 

l 

10 5 Description lO 

11 6 Privacv 29900 22j 

ll 

l2 6 fu1旦tation. .59ooo i 

13 7 Price 48850 10- 

14 7 Annotation 48850 

j l5 12 Author 98950 20 

l 12 I Happihess 989∞ 3_5 

l7 14 Text 6 

18 14 Publisher 30; 2l0; 

. . … .. , 

, . , 一 ~ , 一 一 一 ~ ~ 

图2 XML文档的统计信息 

利用获取的统计信息与DOM树文档模式生成算法,就可 

以得出模式空间的初始模式,再利用以上代价模型生成和关 

系模式的生成,我们就能得到关系模式。 

在这里我们把它同使用伯哈农方法得出的关系模式进行 

比较。结果如图3所示。 

图3直观地表示出两种不同模式在相同查询负载下的效 

率,实验证时改进后的关系模式的查询效率更高。 

(下转第60页) 

湖南农机 

自由曲面设计:主要采用曲面特征设计,包括了基本表面、移 

动特征和串通图形三个部分。②草图设计:伴随着实体造型技 

2010年9月 

业设计必然朝着数字化、集成化、网络化、智能化方向发展。我 

国的制造业在经济全球化中面临的巨大的挑战,解决的唯一 

术的发展,满足了工业设计师传统的手绘习惯。重点在于两个 

方面:一是设计过程中的人机交互技术,二是草图重建技术。 

出路就是自主创新,而创新的重点在于企业自主品牌的构建。 

其中更是与工业设计的发展息息相关。我国的工业设计必须 

站在现在工业的基础上,结合传统文化精华,培养既具有很强 

设计能力又有很好艺术修养的复合型人才,真正形成充满中 

国特色的产品创新设计。 

参考文献 

[1]张凯.中国传统文化与现代工业设计[J].艺术百家,2007,23(3). 

[2]吴翔冲国工业设计发展瓶颈问题探讨[J].艺术百家,2008,24(2). 

[3]刘桦,杨随.计算机辅助工业设计系统体系结构研究[J].机械设计, 

2005,22(4). 

(2)人机交换技术。经过十几年的技术积累,人体的标准 

数据库、三维人体模型以及一些人机设计系统在人机交互技 

术中得到了广泛应用。在CAID领域中人机交互技术主要体 

现在:①人机界面技术:人机界面就是指连接可编程序控制器 

(PLC)、变频器、直流调速器、仪表等现场控制设备,利用显示 

屏显示,通过输入单元(如触摸屏、键盘、鼠标等)写入工作参 

数或输入操作命令,来实现人与机器信息交互。随着计算机技 

术的发展,人机交互界面已发生巨大变化,人机界面模拟、虚 

拟界面、多感官界面是人机界面技术的几个重要研究方向。② 

[4]王泓.关于计算机辅助工业设计的人机互动模式[J].广西质量监督 

导报2007,(6). 

虚拟仿真技术:在计算机软硬件系统的支持下,可有效地进行 

人机关系的设计、评估、检验等工作,主要体现在触觉反馈,压 

力反馈等基础技术以及人机交互的模拟,人机虚拟环境的构 

建方面。 

(3)CAID中智能技术的研究。当前,智能CAID技术已有 

相当的程度的发展,利用计算机支持的协同丁作技术CSCW 

[5]余俊.设计_Y-程技术发展概况[n中国机械工程,1997,8(4):100— 

103. 

[6]Eui D J S,Kee D.A man—machine interface model with improved 

visibilityand reachfunctions[J].Compute ̄Engineering,1996,30(3): 

475-486. 

[7]Dani T H,Gadh R.Creation of concept shape designs via a virtual reality 

interface[J].Computer—AidedDesign,1997,29(8):555—563 

[8]Chu Chi—ChengP,DaniTH,GadhR.Multi—sensory userinterfacefora 

virtual—realitybased computer—aided desin systgem[J].Computer— 

Aided Design,1997,29(10):709-725. 

(Computer Supposed Cooperative Work),柔性智能接口技术等, 

可对设计过程提供一体化的计算机技术支持。在工业设计中 

体现为创造性设计思 m 设计文法和创新设计。 

(4)CAID中高新技术的运用。CAID领域中引入虚拟实现, 

神经网络,遗传算法等新兴技术及并行协同设计等设计方法, 

并结合传统的优化设计,模糊技术,智能技术等,来进行研究 

逐渐得到了发展应用。主要包括了面向并行协同的工业设计, 

基于VR的产品设计,绿色设计等。 

[9]毕晓冬.网络环境下基于CSCW的智能CAID系统[J].聊城大学学 

报。2007.20(1). 

[10]徐冬溶,潘云鹤,王选.创造性思维及模拟[J].软件学报,1996, 

(10):138—150. 

[11]曹钢.金属材料壳体造型设计中的并行工程[A].见:中国-r,Ik ̄ 

计协会十年优秀论文选.北京:中国轻工业出版社,1998:158—163. 

3结语 

工业设计是科学技术转化为产品的桥梁,在社会竞争中 

扮演着越来越重要的角色。在计算机技术高速发展的今天,工 

(上接第33页) 

30 

25 

[12]刘志峰,刘光复.绿色产品与绿色设计[J]_机械设计,1997,(12): 

】一3. 

换而来的,所以改进后的方法实现了更为全面且较为高效的 

目的。 

参 考 文 献 

20 

15 

[1]董泉伶,郝春晖.XML DTD与XMLSehema的对比[J]..现代计算机, 

2006,8(241):64—66. 

10 

5 

[2]李占波,李娜.XML数据在关系数据库中的存储[J].微计算机信息, 

查询负载2 查询负载3 查询负载4 

2007,23(9):192一I94. 

0 查询负载1 

图3两种不同模式的查询代价 

[3]Lu S,sun Y,Atay M,et a1.A new inlining algorithm for mapping XML 

DTDs to relational schemas[C]//LNCS 2841:Pmeessdings of the Fimt 

International Workshop on XML Schema and Data Management 

4结语 

本文主要展示了改进后的存储方法所建立的关系模式和 

用伯哈农方法所建立的关系模式相对比较是优是劣的实验结 

果。实验用XML Generator生成XML文档和查询负载,通过 

实验结果的比较和分析,基于改进后的存储方法所生成的关 

(XSDM2003).NewYork:Spinger,2003:366—377. 

[4]P.Selinger,M.Astrahan,D.Chamberlin,R.Lorie,and T.Price.Access. 

Path Selection in a Relational Database Management System.Proceed— 

ings of the ACM SIGMOD International Conference Management of Da- 

ta.Boston.MA.1979:45—48. 

系模式的查询时间要少于基于伯哈农方法的关系模式的查询 

[5]Florescu D.and D.Kossmann.Storing and Querying XML Data using all 

RDBMS.IEEEDataEngineeringBulhin.1999.22(3):27—34. 

时间,另外由于改进后的方法是从DTD描述的XML文档变 


本文标签: 模式 设计 方法 技术 工业