首页 基于面向对象XML的集中式和分布式存储模型

基于面向对象XML的集中式和分布式存储模型

举报
开通vip

基于面向对象XML的集中式和分布式存储模型基于面向对象XML的集中式和分布式存储模型 2007 þ 8 $ T ?? ? ? ø 33 Q ø 15 ? August 2007 Computer Engineering Vol.33 No.15 $øщ?:1000—3428(2007)15—0058—03 $??,,$??,,,?:TP ????$???:A 311.13 ??? 基于面向对象的集中式和分布式存储模型XML 1213 张晓琳 ,丁 红 ,谭跃生 ,王国仁 ,1. 内蒙古科技大学网络中心,包头 014010,2. 鲁东大学物理与电子...

基于面向对象XML的集中式和分布式存储模型
基于面向对象XML的集中式和分布式存储模型 2007 þ 8 $ T ?? ? ? ø 33 Q ø 15 ? August 2007 Computer Engineering Vol.33 No.15 $øщ?:1000—3428(2007)15—0058—03 $??,,$??,,,?:TP ????$???:A 311.13 ??? 基于面向对象的集中式和分布式存储模型XML 1213 张晓琳 ,丁 红 ,谭跃生 ,王国仁 ,1. 内蒙古科技大学网络中心,包头 014010,2. 鲁东大学物理与电子 工程 路基工程安全技术交底工程项目施工成本控制工程量增项单年度零星工程技术标正投影法基本原理 学院,烟台 264025, 3. 东北大学信息科学与工程学院,沈阳 110004, 摘 要:针对面向对象的XM L 数据,提出了 2 种存储模型。在分布式存储中,对象的一个属性或元素,如果是从超类继承的,其属性值 或元素值存放在超类对应的对象中,如果是该类新定义的属性或元素,则放在该类对应的对象中。在该集中式存储中,对象的所有属性值 都存放在所属类的对应对象中,超类中没有子类实例的数据,只有直接实例数据。通过典型查询语句,测试、 分析 定性数据统计分析pdf销售业绩分析模板建筑结构震害分析销售进度分析表京东商城竞争战略分析 了 2 种存储模型的性能, 实验结果 关于同志近三年现实表现材料材料类招标技术评分表图表与交易pdf视力表打印pdf用图表说话 pdf 明两种存储模型的可行性和高效性。 关键词:面向对象的XML ,分布式存储模型,集中式存储模型 Centralized and Distributed Storage Model Based on Object-oriented XML 1213ZHANG Xiao-lin, DING Hong, TAN Yue-sheng, WANG Guo-ren (1. Network Center, Inner Mongolia University of Science and Technology, Baotou 014010; 2. School of Physics & Electronic Engineering, Ludong University, Yantai 264025; 3. School of Information Science & Engineering, Northeastern University, Shenyang 110004) 【Abstract】This paper proposes centralized and distributed storage models for object-oriented XML. As for distributed storage model, an attribute or element inherited from superclass resides in object of superclass, an attribute or element defined oneself resides in its own object. As for centralized storage model, all attributes and elements reside in their own object, there is not any subclass instance but direct instance in superclass object. The storability of the two models is analyzed by some typical queries. The experimental results show that they are effective and feasible. 【Key words】object-oriented XML; distributed storage model; centralized storage model 2)子树级:一个子树对应一个 录记。这种方法的关键在于如 何1 概述 划分子树,可根据物理块大小、逻辑意义进行划分。 XML 正成为网络数据描述和交换的标准。面向对象的方 3)文档级:将整个文档作为一个记录。法具有很强的建模能力,例如继承、非单调继承、多态性、 粒度的记录组织方式各有特点。记录的粒度越小,记录 复杂数据结构等。将面向对象的特征引入到 XML 中,可以 数目就越多,从而降低了记录的存储效率,但是粒度小的 记提高 XML 语言的建模能力。可用继承扩X展M L 的模式语言 录在重组文档时可以避免不必要的转换和解析。记录的粒度 DTD 支持元素继承、非单调多重继承、重载、阻断、多态和 越大,记录表示的节点就越多,在构造记录、向记录中插入 [1]冲突处理机制。XML-RL 是基于高级数据模型的、以规则 节点和分裂记录时就越麻烦。本文针对面向对象的 XML 数 为基础的 XML 查询语言,可用面向对象的特征扩X展M L-RL 据,采用了基于模型的N ative XML 数据库存储策略。节点 [2] 支持多态元素、多态引用、包含元素、包含引用等。的粒度是子树级,根据逻辑意义划分子树。根据用继承扩展 根据 XML 文档本身的特点,XML 存储方法有2 种:关 [1] 的 DTD 信息, 设计 领导形象设计圆作业设计ao工艺污水处理厂设计附属工程施工组织设计清扫机器人结构设计 并实现了2 种存储模型:分布式存储模 [3][4,5]系数据库方式和 Native XML数据库方式 。 型和集中式存储模型。 Native XML数据库在物理上存 储XM L 数据有3 种方式: 2 面向对象XM L 的存储模型(1)平坦的流方式(flat streams),又称为基于文本的方式 用一棵有序的标识树模拟XM L 文档,节点对应元素,(text-based),将 XML 数据转换为字节流。这种方式X将M L 边表示元素间的包含关系。 用三元组(id,label,[value])表文档转换为字节流,将其存储在文件系统的文本文件中或示一个节点,id 表示节点 存 标识符,id 采用前序遍历递增的生成方法la,bel 表示标识名, 储为数据库的BLO B 字段中。value 是可选的,表示节点的值。1图 显示一 个X ML 数据树 (2)建立模型方式,又称为基于模型的方式(model-based,) 实例。 按照某种(物理)模型存储X ML 文档,如D OM 或它的变体。 基金项目:内蒙古自然科学基金资助项目(200508010808) 这种 方案 气瓶 现场处置方案 .pdf气瓶 现场处置方案 .doc见习基地管理方案.doc关于群访事件的化解方案建筑工地扬尘治理专项方案下载 能够以一种比较自然的方式来存XM储L 数据。 作者简介:张晓琳(1966,),女,教授、博士,主研方向:对象数据 (3)混合型方式(mixed),综合了方式(1)、方式(2)的特点。 库,XML 数据库,丁 红,副教授、硕士,谭跃生,教授,王国仁, 在物理存储中,存取的最小单位是记录,每个记录都有 教授、博士生导师自己的 ID,在决定存储方案时,就要考虑记录与节点的对应 [5]收稿日期:2006-09-05 E-mail:zhangxl@imust.cn 关系,即记录的粒度。记录的粒度有以下3 种: 1)节点级:每一个节点对应一个记录。 gradC ourse 2 5 9 22 29 40 15 43 50 57 student student person teacher TA courser underC ourse person person 48 27 30 41 42 44 3 4 6 8 10 13 20 23 16 38 51 55 58 62 taughtB y taughtB y teaches takes pid teaches nam e pidcidaddr pid takes pid pid nam e cidpid cidpid 36 46 11 12 24 25 26 59 45 17 18 19 31 52 53 60 nam e sno nam e sno nam e addr takenB ysno nam e tno nam e takes phone 7 takenB y n am e takenB y nam e 32 35 14 28 49 56 21 63 39 phone tno courses teachers teachers teachers courses courses 3334 courses 47 54 61 nam e addr 37 students students students courses ss1005 CS100 1004 1006 CS2001004 Mary John 1003 01 01 2145681 John 03 Jack 2245681 CS200 John VB VC ++ DBM S ad 2 02C S300 CS100 C S200 1001 1002 ad1 L inda 1006 1007 1003 C S300 Helen C S 100 021004 ad 3 1005 1006 C S 300 图 1 一棵 XML 数据树实例T1 表 1 分布式数据仓中类节点的存储结构 2.1 分布式存储 内2.1.1 路径仓18B 8B 4B ID 4B #PCDATA 4B #PCDATA 容路径仓是一棵能够紧凑、准确地表示面向对象XML的 H Type H Type H Type 结 H SupC pid name addr 数据树,是两级双向树:组级和元素级。组级提供路径信息、 构 person 类层次信息,元素级保存从孩子元素指向父亲元素的信息。 表 2 对象节点的存储结构 类层次即该类及其所有直接和间接子类。类层次索引的定义 4B 4B 4B 4B 2B 1002 18B 内容为:在以索引类为根的类层次子树上存放的该类特有的元素 H P L C H P L 结构 pid 和属性对象 id。而继承的元素和属性的对i象d 存放在较高的 person 4B 4B 2B John 4B 4B 2B ad1 内容层次中。图2 是图 1 XML 数据树的分布式存储的路径仓。H P L C H P L C name addr {} -1 0:un iv person 1 个 XML 子树片 1:person 5:st udent 23 :gradcourse 15 : co urse 22 : un derco urse 9 :t eacher 14 :ta 断结构如图4 所示。{2 2,23 } 0 {} 0 {} 0 {5 ,9 ,1 4} 0,0,0 {1 4} 0,0 {} 0 {1 4 } 0 2:pid 4:addr 7:t ak es 6:sno 10 :tno 2 0 :taught By 1 2 :teach es16 : cid per s on 5 {} 0,1,2 ,3,4,5 ,6 {} 0,1,2 {} 1,4 ,5 {} 0 ,1 ,2 {} 0,1 ,2 {} 0 ,1 {} 0,1 ,2 {} 0,1 3:name 11 :pho ne 18 :takeBy 17 : name 6 7 8 {} 0,1 ,2,3,4 ,5,6 nam e {} 0 ,1 {} 0 ,1,2 pid addr {} 0,1 ,2 8 :co urses 13 : co urses 1 9 :st udent s 21 :teachers {} 0 ,1 ,2 ad1 {} 0,1 J o hn {} 0,1 ,2 {} 0 ,1,2 1002 图 2 XML 数据树 T1 的分布式路径仓 图 4 1 个 XML 子树片断 2.1.2 数据仓 2.2 集中式存储 显示了图1 XML 数据树T 1 的分布式存储数据仓的 图 3 2.2.1 路径仓二叉树结构。数据仓中的节点能存储类或实例对象,存储类 在集中式存储中,类层次信息的定义位:在以索引类为 的节点被连接到根节点的左指针,类节点的右指针指向每个 根的类层次子树上存放该类全部的元素和属性的对id。超象 相应类的实例对象,对象节点的右指针指向下一个对象节点。 类中没有子类实例的数据,只有其直接实例的数据。5 是图 每个对象节点的左指针指向嵌套层次的父亲节点。在类层次 图 1 中 XML 数据树集中式存储的路径仓。中,一个子类的实例对象只存储子类中定义的 属性和元素,从超类继承的属性和元素存储在 -1 0:univ 相应的超类实例对象中。 37:underCourse / : / DocRoot/ :44:underCours e 0 0:uni vu1 0 00,0,0 1:person 0,1 5:student 0 30:course 0 12:teacher 19:TA 1:person u1 p2 p3p4u1 p1 p7p6u1 u1 u1 p5 u1 u1 0 0 0 0 0 0 0 0 0 0 20:pid 0,1,2 1 0,1 0,1 5:student s1s2s3p3 p5 p6 28:teaches 50:teaches 2:pid 35:taughtBy 42:taughtBy 17:teaches 4:addr 6:pid 10:takes 13:pid 31:cid 38:cid 45:cid 9:teach er t1t2p4 p6 0 0 0 0 0 0 0 0 0 0,1,2 0,1 0,1 1 0 0 0 0 0 0 40:takenBy 47:takenBy 16:phone26:takes 33:takenBy 3:name 7:sno 8:name 9:addr 14:tno 21:sno22:tno 24:addr 32:na me 14:TA s3 t2 t a 139:name 46:name 25:phone 23:name 15:name 0 0 0 0,1 0 0 15:cours eu1 c1 u1 c2 c3u1 27:coursers 11:courses 41:students 48:students 34:students 18:coursers 0 0 0 0 22:undercou rse c2 uc 1 43:teachers 36:teachers 49:taughtBy 29:coursers 23:gradcour segc1 c3 图 5 XML 数据树 T1 的集中式路径仓 图 3 XML 数据树 T1 的分布式数据仓 2.2.2 数据仓 图 6 显示了图1 XML 数据树的集中式存储数据仓的二叉分布式数据仓的类节点“person”的存储结构、对象节 树结构。数据仓中的节点存储类或实例对象,存储类的节点点的存储结构见表 1、表 2。 表 4 比较查询执行时间 被连接到根节点的左指针,类节点的右指针指向每个相应 类 集中式存储模式分布式存储模式查询编号 的实例对象,对象节点的右指针指向下一个对象节点。每个 oox1.xml oox2.xml oox3.xml oox1.xml oox2.xml oox3.xml 对象节点的左指针指向嵌套层次的父亲节点。 29.5 32.3 38.2 35.6 42.9 56.3 查询 1 50.3 128.8 153.4 56.3 133.9 160.0 查询 2和分布式存储数据仓的区别是:在类层次中,一个类的 230.3 438.1 653.2 123.6 395.2 576.6 查询 3实例对象存储类中全部的属性和元素,超类中没有子类实例 65.4 138.1 1 57.2 58.5 120.1 1 32.1 查询 4对象的数据,只有直接实例对象数据。 175.4 823.4 1 235.2 200.3 987.0 1 675.3 查询 5 321.7 2 187.8 3 035.3 254.9 876.4 1 827.5 查询 6/ : / DocRoot:/ 42.1 89.5 1 09.7 123.2 258.3 306.5 查询 7 0:univ u1 150.8 338.8 561.9 266.8 436.9 695.7 查询 8 1:personp1p2p3 实验结果分析如下: 5:student s1 s2 (1)查询执行时间与查询所涉及到的路径仓、数据仓的大 12:teacher t1 小以及查询结果的大小有关X。ML 文档越大,数据仓和路径 19:TAta1 仓越大,查询耗时越大,如查询 1。查询结果越多,查询耗 30:course c1 时越大,如查询 2~查询 6。 37:undercourseuc1 (2)在分布式存储模式中,一个子类的对象分2 个部分为 44:gradcoursegc1 (或多个部分)进行存储:超类继承的属性和元素,该子类定 图 6 XML 数据树 T1 的集中式数据仓 义的属性和元素。在存取一个对象时,要进行连接操作,因 此,查询结果如果分布在 2 个部分(或多个部分)时,分布式 3 性能测试 存储模式效率较低,例如查询 7、查询 8。集中式存储模式在 本系统的测试环境如下:(1)硬件环境:CPU P42.0GHz, 对类进行查询时要涉及整个类层次,在查询多态元素、多态 1GB 内存,120GB 硬盘。(2)操作系统平台:Windows 2000 引用,并且查询结果对应在一个类的对象实例时,集中式存 Professional操作系 统。(3)编程环境:JDK1.4.2_04,DOM API 储模式效率较低,例如查询3、 查询 6。对于分布式和集中式 采用的是Apach e XML4J-bin.4.3.0。 查询 1~查询 3,从数据仓取数据所耗时间相似,差异是路径 笔者设计了一个X ML 文档生成器,自动生成3 个不同 [2]仓的索引时间。 规模的、符合面向对象的D TD的 XML 文档,文件名分别 (3)使用通配符“//”的查询,结构索引法、节点索引法 为 oox1.xml、oox2.xml 和 oox3.xml。表 2 列出了 3 个 XML 都进行了大量连接操作,效率较低,而路径仓方法使用组匹 文档的原文档大小、集中式存储模式和分布式存储模式大 配,效率较高。例如查询 4。由于此查询查询的不是一个类 小。 对应的实例对象,而是所有子元素 addr,在集中式数据仓涉 从表 3 可以看出,分布式存储模式占用的存储空间比集 及到整个类层次,因此效率较低。中式略大。虽然分布式路径仓存储空间比集中式路径仓略小, (4)由于引用索引相比结构索引和值索引耗时多,因此查 但是分布式数据仓存储空间要大于集中式数据仓,主要是由 询引用耗时较多,例如查询 5 和查询6 。 于分布式数据仓的一个对象2分 个部分进行存储, 2 种模式 的值索引占用空间大小相近。 4 结束语 表 3 XML 文档的存储空间 针对面向对象X ML 数据提出了分布式和集中式存储技集中式存储 集中式 分布式存储 分布式装入 文档大小 文档 /MB 大小/MB装入时间大小/MB时间/s术,路径仓提供了简明的组级路径概要和类层次信息,数据 oox1.xml 21.55 仓存储类和实例对象。分布式存储模式占用的存储空间比集 75.42 232s 78.56 315 oox2.xml 72.20 223.82 1 175s 231.53 1 536 中式略大。虽然分布式路径仓存储空间比集中式路径仓略小, oox3.xml 122.00 353.80 2 102s 365.65 2 923 但分布式数据仓存储空间要大于集中式数据仓,主要是由 于为了对集中式存储模式和分布式存储模式进行“查询性 分布式数据仓的一个对象分2 个部分进行存储, 2 种模式的 能”的比较测试,针对前述3的 个 XML 文档,对查询1 ~查 值索引占用空间大小相近。分布式存储存取一个对象时需询 8 这 8 个语句的执行性能进行了测试,并对集中式和分布 要 式存储模式进行性能比较分析。表 4 列出了 8 个测试查询的 进行连接操作频繁的连接操作,这可以提高系统效率,集中式存储不会因,为但在对类进行查询时,属性和元素的继承 而执行时间(取连续5 次执行的平均值),单位为m s。 就可能涉及整个类层次。 查询 1 查询 name=“John”并且p id>1 000 的 person 的参考文献 addr。1 Wang G. Extending XML Schema with Nonmonotonic Inheri- 查询 2 查询全部perso n 的 pid 和 name。tance[C]//Proc. of the 1st International Workshop on XML Schema 查询 3 查询全部人的名字,包括pe rson、students、teachersand Data Management. 2003: 402-407. 和 TAs。2 张晓琳, 王国仁. 用继承扩展 XML-RL[J]. 小型微型计算机系统, 查询 4 查询全部a ddr 的信息。addr 不是某个类对应的实 2005, 26(2): 243-247. 例对象。 3 Chaudhuri S, Shim K. Storage and Retrieval of XML Data Using 查询 5 查询全部被T A“Jack”教授的u nderCourse名 称。 Relational Databases[C]//Proc. of VLDB’01, San Francisco. 2001. 查询 6 查询教师“Helen”教授的全部c ourse,包括 under 4 Goldman R, McHugh J, Widom J. Lore: A Database Management System for XML[J]. Dr. Dobb’s Journal, 2000, 25(4): 76-80. Course 和 gradeCourse。 查 5 Meng X. OrientStore: A Schema Based Native XML Storage 询 7 查询全部T A。 System[C]//Proc. of VLDB’03, San Francisco. 2003: 1057-1060. 查询 8 查询全部studen t 包括其所有子元素。
本文档为【基于面向对象XML的集中式和分布式存储模型】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
is_477730
暂无简介~
格式:doc
大小:29KB
软件:Word
页数:0
分类:生活休闲
上传时间:2017-12-19
浏览量:17