(计算机软件与理论专业论文)gdix内容管理器存储技术的研究与实现.pdf_第1页
(计算机软件与理论专业论文)gdix内容管理器存储技术的研究与实现.pdf_第2页
(计算机软件与理论专业论文)gdix内容管理器存储技术的研究与实现.pdf_第3页
(计算机软件与理论专业论文)gdix内容管理器存储技术的研究与实现.pdf_第4页
(计算机软件与理论专业论文)gdix内容管理器存储技术的研究与实现.pdf_第5页
已阅读5页,还剩67页未读 继续免费阅读

(计算机软件与理论专业论文)gdix内容管理器存储技术的研究与实现.pdf.pdf 免费下载

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

摘要 摘要 本文主要研究g d i x 内容管理器的存储技术。i b m 研究部门调查发现,全球 8 5 的信息是非结构化的,包括纸上的文件、报告、视频和音频文件、照片、传 真件、信件。如何管理非结构化信息,成为传统数据管理的一大难题。内容管理 包括诸多方面,如内容的创建、储存、分享、应用、检索等,尤以内容的存储为 内容管理的基础并对内容管理的其它方面产生重要影响。x m l 是网络应用数据交 换的事实标准。g d i x 内容管理器采用简化版x m l 作为内容存储的标准,以具有 良好的扩展性,适应更多的软件平台和应用程序。为了有效和可靠的存储和检索 x m l 数据以及提高空阳j 利用率,本文提出新的x m l 本地存储结构和方法并实现 了以此为基础的内容存储子系统。论文工作的主要内容如下: 首先,提出了内容管理的三层存储模型。存储模型底层采用逻辑卷管理 ( l v m ) ,中间是x m l 数据存储优化器与日志文件系统和数据库的联合存储,上 层提供统一的a p i 对内容进行读写操作。由于l v m 在物理存储介质和上层应用 之间添加了一层抽象层,这使得系统管理员在分配存储空问给应用和用户时具有 更大的弹性,可以在不中断应用运行的情况下为应用扩充存储空间。 其次,引入简化版x m l 作为存储内容的标准。简化版x m l 与完全x m l 最 大的不同在于其用子元素而不用属性来放置信息,这种用子元素而不用属性放置 信息的方法更容易扩展:简化版x m l 的剖析器比完全功能的x m l 剖析器具有更 快的速度且体积更小:简化版x m l 易学、易教兼易用。 第三,对l v m 进行改进设计并实现以符合项目的需求。设计并实现了最佳 适应算法和磁盘整理算法。 第四,提出x m l 本地存储结构与方法。x m l 文档的存储要求既不同于文件 系统也不同于关系数据库系统,它的树状结构与对象数据库类似,但是数据却是 变长结构。若各x m l 文档之问存在相同的元素值,那么这将导致空间浪费,同 时降低检索效率。为此,提出新的x m l 本地存储结构,可以把整个存储子系统 所有的同名且同值的叶元素节点合并,极大提高了空间利用率和检索速度。x m l 文档的结构控制信息和部分元素值在g d i x 存储池上单独存放,同时所有叶元素 节点存放于数据库。 关键诃:简化版x m l ,x m l 存储技术,l v m ,内容管理,g d i x 存储池 摘要 a b s t r a c t t h i st h e s i si so nt h er e s e a r c ho ft h es t o r i n gt e c h n o l o g yi ng d i xc o n t e n tm a n a g e r a c c o r d i n gt ot h es u r v e yo fi b mr e s e a r c hd e p a r t m e n t ,8 5p e r c e n to fi n f o r m a t i o na l l o v e rt h ew o r l di sn o n s t r u c t u r e d ,i n c l u d i n gp a p e rf i l e ,r e p o r t ,v i d e oa n da u d i of i l e , p h o t o 。f a xf i l ea n dm a i lf i l e h o wt om a n a g en o n - s t r u c t u r e di n f o r m a t i o nh a sb e e n b e c o m i n gap r o b l e md u r i n gm a n a g i n gt r a d i t i o n a ld a t a m a n a g i n gc o n t e n ti n c l u d e sa l o to fa s p e c t s ,s u c ha sc r e a t e ,s t o r i n g ,s h a r i n g ,a p p l y i n g ,s e a r c h i n gc o n t e n t ,e t c s t o r i n gc o n t e n ti st h eb a s eo fm a n a g i n gc o n t e n t ,a n di m p o r t a n t l yw o r ko nt h eo t h e r a s p e c t s o fm a n a g i n gc o n t e n t x m li st h ef a c ts t a n d a r di ne x c h a n g i n gn e t w o r k a p p l i c a t i o nd a t a i no r d e rt ob ee x t e n d i b l ea n db ea d a p t e dt om o r es o f t w a r ep l a t f o r m a n da p p l i c a t i o n ,g d i xc o n t e n tm a n a g e ra d o p tm i n i m a lx m la st h es t a n d a r do f s t o r i n gc o n t e n t t h i st h e s i sp r o p o s e san e wx m l l o c a ls t o r a g es t r u c t u r ea n dm e t h o d s , a n dr e a l i z e st h es t o r i n gc o n t e n ts u b s y s t e mt os t o r ex m ld a t af o rt h es a k eo fs t o r i n g a n ds e a r c h i n gx m ld a t ae f f i c i e n t l ya n dr e l i a b l ya n dm a k i n gag o o du s eo fs t o r i n g s p a c e t h em a i nw o r ko ft h i st h e s i si n c l u d e s : f i r s t l y ,t h et h e s i sp r o p o s e st h et h r e el e v e ls t o r i n gm o d e lo fm a n a g i n gc o n t e n t t h e b o t t o mo ft h em o d e la d o p t sl o g i c a lv o l u m em a n a g e r ( l v m ) ,a n dt h em i d d l ei sx m l d a t ao p t i m i z i n gs t o r a g e ,a n dt h et o pp r o v i d e st h ec a p a b i l i t yo fw r i t i n go rr e a d i n g c o n t e n tw i t ht h ei d e n t i c a la p i l v mi n s e r t sa na b s t r a c tl e v e lb e t w e e np h y s i c a ls t o r a g e a n da p p l i c a t i o nl e v e l ,w h i c hm a k e sa d m i n i s t r a t o rh a sm o r ef l e x i b i l i t yw h i l ea s s i g n i n g p h y s i c a ls p a c et oa p p l i c a t i o n sa n du s e r s a d d i n gm o r es t o r a g es p a c ed o e s n tn e e dt o s t o pa p p l i c a t i o n sr u n n i n g s e c o n d l y ,t h i st h e s i sa d o p t sm i n i m a lx m l a st h es t a n d a r do fs t o r i n gc o n t e n t t h e m o s ts i g n i f i c a n td i f f e r e n c eb e t w e e nm i n i m a lx m la n df u l lx m li st h a tt h ef o r m e r l a c k sa t t r i b u t e st oh o l di n f o r m a t i o n ,i n s t e a du s e sc h i l de l e m e n t st oh o l di n f o r m a t i o n s om i n i m a lx m li sm o r ee x t e n d a b l ea n di t sp a r s e r sa r em u c hf a s t e ra n ds m a l l e rt h a n f u l lx m l p a r s e r sa n di ti sm u c he a s i e rt ol e a r n ,t e a c ha n du s e t h i r d l y ,t oa c c o r dw i t ht h er e q u i r e m e n to ft h ep r o j e c tw er e d e s i g na n di m p l e m e n t m o r ef e a t u r e sf o rl v m t h i st h e s i si n t r o d u c e st h eo p t i m a la d o p t i n ga l g o r i t h m sa n d t h ed i s kd e f r a g sa l g o r i t h m s f o u r t h l y ,t h i s t h e s i s p r o p o s e sx m l l o c a ls t o r a g es t r u c t u r ea n dm e t h o d s t h e r e q u i r e m e n to fx m ls t o r a g ei sd i f f e r e n tf r o me i t h e rf i l es y s t e mo rr e l a t i o n a ld a t a b a s e h l 华南理工大学硕十学位论文 s y s t e m s i m i l a rt oo b j e c to r i e n t e dd a t a b a s e ,i th a sat r e es t r u c t u r e ,m e a n w h i l e ,i t d i f f e r sf r o mr e l a t i o n a ld a t a b a s ei nt h a ti th a sv a r i a n tl e n g t hr e c o r d s i tw i l lr e s u l ti n w a s t i n gs p a c ea n dr e d u c i n gs e a r c h i n gr a t ei fm a n yx m l f i l e sh a v et h es a m ee l e m e n t v a l u e + s ow ei n t r o d u c et h en e wx m ll o c a ls t o r a g es t r u c t u r e ,w h i c hc a nu n i t ea l lt h e s a m ee l e m e n tv a l u ei nt h ew h o l es t o r a g es u b s y s t e m ,a n di m p r o v es p a c eu s a g ea n d s e a r c h i n gr a t e t h es t r u c t u r a lc o n t r o li n f o r m a t i o n so fx m l f i l e sa n dp a r t so fe l e m e n t v a l u ea r es t o r e di ng d i xs t o r a g ep o o la l o n e a tt h es a m et i m e ,a l lt h el e a fe l e m e n t n o d e sa r ep u ti n t od a t a b a s e k e yw o r d s :m i n i m a lx m l ,x m ls t o r i n gt e c h n o l o g y ,l v m ,m a n a g i n g c o n t e n t ,g d i xs t o r a g ep o o l 华南理工大学 学位论文原创性声明 本人郑重声明:所呈交的论文是本人在导师的指导下独立进行研 究所取得的研究成果。除了文中特别加以标注引用的内容外,本论文 不包含任何其他个人或集体已经发表或撰写的成果作品。对本文的研 究做出重要贡献的个人和集体,均已在文中以明确方式标明。本人完 全意识到本声明的法律后果由本人承担。 作者签名:夕窖罐参度日期:溺绛6 月亏日 学位论文版权使用授权书 本学位论文作者完全了解学校有关保留、使用学位论文的规定, 同意学校保留并向国家有关部门或机构送交论文的复印件和电子版, 允许论文被查阅和借阅。本人授权华南理工大学可以将本学位论文的 全部或部分内容编入有关数据库进行检索,可以采用影印、缩印或扫 描等复制手段保存和汇编本学位论文。 保密酬在l 年解密后适用本授权书。 本学位论文属于 不保密口。 ( 请在以上相应方框内打“”) 作者签名: 导师签名: 孝挝良 柚对 i 之 j 日期:辫年6 月罗e t 帆谚刚秒日 第一章绪论 本章首先说明了g d i x 内容管理器的存储策略的研究背景,接着陈述本研究课题的 来源及主要研究内容,最后鸟瞰全文。 1 1 论文来源 本研究课题来自国家留学基金管理委员会的i b m 软件奖研金项目,项目名称为“电 子政务资源库的内容空间管理”。 1 2 内容管理概述 1 2 1 内容管理 i b m 研究部门调查发现,全球8 5 的信息是非结构化的川,包括纸上的文件、报告、 视频和音频文件、照片、传真件、信件。 如何管理非结构化信息,成为传统数据管理的一大难题。在所有信息中,仅有5 是数字化信息,随着数字化信息的增加,所有行业都面临着管理各种格式的信息的挑战。 内容管理j 下是随着数据管理的发展而为客户提供的一种应用软件,它管理、集成和 访问从音频、视频到扫描图像的各种格式的商业信息。 对于这项新兴的技术,业内尚未有一个统一的定义。据文献 2 1 介绍,g a r t n e r g r o u p 认为,内容管理包括企业内部内容管理、w e b 内容管理、电子商务交易内容管理和企业 外部网信息共享内容管理,这是从内容范围、形式角度的一种笼统的分类。g i g a i n f o r m a t i o n g r o u p 则将内容管理视作电子商务的内容引擎,认为内容管理应和电子商务 服务器集成,从而形成内容生产、传递以及电子商务端到端系统。而m e m l ll y n c h 认为。 内容管理应侧重于企业员工、企业用户、合作伙伴和供应商方便获得非结构化信息的处 理过程,其目的是把非结构化信息出版到i n t r a n e t 、e x t r a n e t 和i t e ( i n t e r n e tt r a d i n g e x c h a n g e s ) ,从而使用户可以检索、使用、分析和共享。 内容是任何类型的数字信息的结合体,可以是文本、图形图像、w e b 页面、业务文 档、数据库表单、视频、声音文件等。应该说,内容是一个比数据、文档和信息更广的 概念,是对各种结构化数据、非结构化文档、信息的聚合,这在某种程度上也包含了知 识。管理是施加在”内容”对象上的一系列处理过程,包括收集、确认、批准、整理、定 华南理工大学硕士学位论文 位、转换、分发、更新、存档等,目的是为了使”内容”能够在正确的时间、以正确的形 式传递到正确的地点和人。1 2 这样,内容管理可以定义为:协助组织和个人,借助信息技术,实现内容的创建、 储存、分享、应用、更新,并在企业个人、组织、业务、战略等诸方面产生价值的过程。 而内容管理系统就是能够支撑内容管理的一种工具或一套工具的组合引。 1 2 2 内容管理的存储技术 内容管理包括诸多方面,如内容的创建、储存、分享、应用、检索等,尤以内容的 存储为内容管理的基础并对内容管理的其它方面产生重要影响。 上文提到,全球8 5 的信息是非结构化的。对于这些非结构化信息不能简单使用关 系数据库系统来存储。若使用文件系统存储它们,又不能高效检索非结构化信息中的某 些内容。 因为x m l 是网络应用数据交换的事实标准【3 】,g d i x 内容管理器采用简化版x m l ( 详见本文第三章第二节) 作为内容存储的标准,以具有良好的扩展性,适应更多的软 件平台和应用程序。海量的数据需要有效和可靠的存储和检索x m l 数据。 1 3 国内外x m l 存储技术的研究现状 1 3 1 基于文件系统的存储管理技术 使用平面文件( f l a tf i l e ) 是存储x m l 的种最简单的方法,它与保存字处理文档 或电子表格的方法相同,即都保存为文件。以这种方式保存的x m l 文档既可以用普通 的文本编辑器来编辑它,也可以用专门的编辑工具来编辑它。 使用文件系统来存储x m l 文档的优点是简单易用,而且也适合于x m l 文档内容 少、数量小的场合,但其局限性x m l 也是显而易见的。文献f 4 】分析了其优缺点: ( i ) 大小受限制。对于包含有2 0 个学生的x m l 文档,用文件系统来存储还能应 付,但是当要存储某所大学所有系的学生的信息时,无论是数据传输还是数据维护都变 得难于操作。 ( 2 ) 并发性与数据库不同的是,文件系统不能提供并发性控制。在一个文件系统 中只有一个单一文档,在一个时间只能有一个人可以处理信息,当两个人试图在同一时 刻编辑同一文件时,一个人所做的改变会完全丢失。 ( 3 ) 安全控制对于文件系统,其安全控制的基本单位是一个文件,无法对文件的 一个部分来规定访问控制权限。 绪论 为了解决上面提出的问题。需要从基本的x m l 单元是一个文档的想法中脱离出来 应该充分利用x m l 的结构信息_ 柬有效地存储x m l 文档。 1 3 2 基于关系数据库管理系统酌存储管理技术 x m l 的未来与数据库技术是密不可分的,数据库的成熟技术和优越的性能也为 x m l 的存储提供了基础:数据库通常可以处理海量的数据信息,允许多个用户同时处 理信息,支持版本控制和不同级别的安全访问控制,提供可重用信息的共享。 可是利用关系型数据库来存储x m l 文档也有一定的困难,这主要是因为关系型数 据库是完全结构化的模型,所表达的信息非常规则,但它无法表达一些层次性质的数据, 而则是半结构化的模型,特别适合表达层次型的数据,更具灵活性。 要实现关系型数据库存储x m l ,必须将一个完整的x m l 文档分割成多个相互关联 的数据表,对x m l 数据的查询将涉及到多个表的访问和连接操作。嗍 文献【5 】对基于d b 2 对象关系数据库管理系统的x m le x t e n d e r 进行了介绍。x m l e x t e n d e r 使用两种不同的方法管理x m l 文档,办即x m lc o l u m n 和x m l c o l l e c t i o n 。 x m lc o l u m n 把全部的标记文档存储于单个表列( t a b l ec o l u m n ) 中。用户自定义的函数 可以访问到文档的每一部分。为了有效查询一篇文档的结构,用户必须对文档元素及其 属性创建索引。与x m lc o l u m n 相对,x m lc o l l e c t i o n 则基于“分解”文档的思想。元 素或元素属性被映射到一个或多个表的列上,元素的文本内容和元素属性值变为表中的 值。文档访问定义( d o c u m e n ta c c e s sd e f i n i t i o n s ) 负责管理文档的结构。存储过程实 现对文档的分解和重组。 1 3 3 基于面向对象数据库管理系统的存储管理技术 h y p e r s t o r m 【6 l 【3 0 】采用了基于面向对象数据库管理系统的存储管理技术。h y p e r s t o r m 的目的是建立一个应用数据库框架,以便能在联接面向对象数据库管理系统和信息查询 系统的系统中存储结构文档。h y p e r s t o r m 使用三种不同的策略在面向对象数据库中表 示s g m l 文档:( 1 ) 每个逻辑文档节点对应一个数据库对象,( 2 ) 文档以b l o b 方式存 于数据库,( 3 ) 前两种方法的混合,也就是说“非平面”( n o n f l a t ) 元素在对象层中使 用单个数据库对象表示,而“平面”( f l a t ) 元素则以它们原有的方式表示。至于哪个元 素是“平面”或“非平面”元素则是管理器的任务。 1 3 4 基于n a t i v ex m l 数据库系统的存储管理技术 n a t i v e x m l 数据库是专门用来存储x m l 文档的,定义如下:n a t i v e x m l 数据库 华南理t 大学硕上学位论文 是完全用来存储和操作x m l 数据的数据库,其中的数据可以通过x m l 和、x p a t h 、 x s l t 、d o m 、s a x 等相关标准来访问。n a t i v e x m l 数据库使用什么形式存储数据并 不重要,但底层数据表示形式必须维持完全的x m l 结构和相关的元数据。基本存储单 元是一个x m l 文档,存储数据对不需要进行和数据库的映射转换。 n a t i v e x m l 数据库中x m l 的存储形式可分为两种方式:基于文本的存储方式 ( t e x t - b a s e d ) 和基于模型的存储方式( m o d e l b a s e d ) 。1 4 ( 1 ) 基于文本的存储方式 基于文本的n a t i v e x m l 数据库将x m l 存储为文本,同时为这些x m l 文档建立索 引,使得数据库的查询引擎能方便地在多个x m l 文档的任意节点之间跳跃。 这种数据库的优点是当访问整个文档或文档片段时,具有很高的查询速度。但当要 将数据以一种不同于原文档层次结构的方式取出时,性能就不理想了。 ( 2 ) 基于模型的存储方式 这种方式首先为要存储的文档建立一个内部对象模型并保存这个模型。例如将 x m l 文档以文档对象模型d o m 的形式保存,那么数据库表可以分类为元素表、属性 表、表等。p c d a t a 与基于文本的存储方式一样,基于模型的存储方式也不适用于取出 的文档结构与存入的文档结构不同的场合。 t a m i n o 第一个也是最成功的一个n a t i v e x m l 数据库,它除了能够存储和访闯x m l 外,还提供了相关的各种组件和机制,例如开放数据库连接( o p e n d a t a b a s e c o n n e c t i v i t y , o d c ) 、兼容统一字符编码、h t t p 通信、处理数据的能力、以及强大的查询功能。 1 3 5 其它存储技术 文献e 8 3 研究了如何实现用b 树存储x m l 文档以及对其进行查询、更新等操作。 图1 - 1 是该b 树示意图。 i n lik e y 1 1 7 il llk 州x 】lliik 何【n 1li i t 缸:a u t h g r 、。 i _ - - _ _ - _ - _ 一t a r t n t :x 2 ( h m k ) f b t mn o d e i f i r s t d h l l d :i t ( ;r s tn a m e ) i r t e a m i d :x + 2 c l o tm m a e ) a t t r i b u t e i 地s e m l 口 t t t i b t t t e e l m t i l l t t ;。舅。 r h t :n u l i l g n r :l 图1 1 b 树示意图 4 绪论 b 树节点是一个记录类型,主要内容有:整形变量n ( 记录节点中关键数目) ;指向 父亲节点的指针p a r e n t ;关键字数组k e y n 】( k e y1 0 1 不存在) ;对应各关键字的记录数组, r e c o r d n ( 没有r e c o r d o ) :指向子树的指针数组p o i n t e r n ( p o i n t e r 0 1 指向关键字小于k e y 【l 】的节点) 。 对应各关键字的记录,也就是x m l 文档中的元素。因此,该记录类型的内容有: 字符数组t a g ( 标记名称) ;整形变量p a r e n t ( 记录该元素的父元素的关键字) ,f i r s t c h i l d , l a s t c h i l d ( 第一个和最后一个子元素的关键字) ;a t t r i b u t e ( 记录该元素的属性名和属性值, 若有多个属性,则a t t r i b u t e 为记录数组) ;t e x t 记录该节点的内容;l e v e r 记录该元素的文 档树中的层次( x m l 文档根元素的层次为0 ) 。该文所指的节点仅指位b 树中的由多个关 键字构成的节点,而元素指位于x m l 文档中以及b 树中的记录。 文献 9 7 提出了一种基于相容关系的索引模式,结合x m l 文档拓扑结构的自身特 点,能够有效地处理基于相对路径的查询。这种模式的主要特点包括:( 1 ) 利用x m l 数 据的拓扑结构而不是x m l 文档的模式( d t d 或x m ls c h e m a ) 来进行相对路径到绝对路 径的转换;( 2 ) 对拓扑结构进行基于相容关系的数字方式编码,能够快速确定对应结点的 依赖关系。实验证明这种方法在处理基于规则路径表示( 尤其是相对路径) 的x m l 查询 时具有更高的效率。 1 4 研究目的与主要工作 由于现有的存储技术大多是研究如何存储单个x m l 文档的问题,并没有研究在整 个内容管理器内各x m l 文档之间的关系问题。若各x m l 文档之间存在相同的元素值, 那么这将导致空间浪费,同时降低检索效率。为此,本文的研究目的是有效和可靠的存 储和检索x m l 数据,同时提高空间利用率。 论文的主要工作如下; 首先,提出了内容管理的三层存储模型。 其次,引入简化版x m l 作为存储内容的标准。 第三,提出x m l 本地存储结构与方法,设计并实现了g d i x 存储池存储优化过的 x m l 数据。 1 5 论文组织 第二章介绍了g d i x 内容管理器,并指出内容存储子系统在整个系统的基础地位, 同时也介绍了r e i s e r f s 文件系统的先进技术。第三章介绍x m l ,尤其引入简化版x m l 标准。本文所研究的存储对象_ x m l 数据均以简化版x m l 为标准。第四章对l v m 的设计与实现进行了分析。第五章设计与实现内容存储子系统。在本章内,为提高检索 华南理工大学硕上学位论文 x m l 数据的速度,提出新的存储数据模型,并对之进行了详尽的分析。此外设计并实 现了g d i x 存储池存储优化后的x m l 数据,使得应用程序可以方便地存储和检索x m l 数据。在第五章的结尾,对内容存储子系统进行测试分析。第六章是结论以及未来需继 续研究的内容。 6 第一二章g d i x 内容管理器和r e i s e r f s 第二章g d i x 内容管理器和r e is e r f s 2 1g d l x 内容管理器概述 g d i x 内容管理器的目标是使得资源库借助内容管理器可以把各种资源按照一定格 式存放到存储设备上,便于管理各种资源,并提高对内容的访问效率。 由于x m l 逐渐成为i n t e r n e t 数据表示与数据交换的标准,而且x m l 具有可扩展、 跨平台、结构化存储、数据内容与表现分离等特点,非常适合作为资源库的资源描述及 存储标准。 g d i x 内容管理器的基本架构包括内容存储子系统、内容创建子系统、管理内容子 系统和内窑发布予系统。 2 2 系统架构 图2 一l 是g d i x 内容管理器系统架构。 内容创建子系统负责将原始内容( 各种类型资源) x m l 化。如果原始内容就是已规整 好的x m l 文档( 指符合简化版x m l 标准的文档) ,此子系统可以省略。 在内容存储子系统中,需要着重解决x m l 文档的存储和读写的优化问题。该子系 统的主要功能是对x m l 文档进行存储优化。 管理内容子系统负责对整个g d i x 内容管理器的其余方面进行管理。 内容发布子系统可以利用已有的内容发布接口,也可以使用自己的内容发布接口。 2 2 1 内容存储子系统 图2 - 2 是内容存储子系统的系统架构。存储模型底层采用逻辑卷管理( l v m ) ,中 间层采用r 志文件系统和数据库的联合存储,上层提供统一的a p i 对内容进行读写操 作。 由于l v m 在物理存储介质和上层应用之间添加了一层抽象层,这使得系统管理员 在分配存储空间给应用和用户时具有更大的弹性,可以在不中断应用运行的情况下为应 用扩充存储空间。 x m l 数据存储优化器是内容存储子系统的核心。x m l 数据存入内容存储子系统时 需先经过x m l 数据存储优化器。优化器重新整理x m l 数据,以新的存储结构存入g d i x 存储池,同时把所有叶元素节点存入关系数据库,以期达到提高内容检索速度和存储空 华南理丁大学硕士学位论文 间使用效率。 图2 - 1g d i x 内容管理器系统架构 图2 - 2 内容存储子系统的系统架构 8 第二章g d i x 内容管理 和r e i s e r f s 2 2 2 内容发布子系统 图2 - 3 内容发布子系统结构图 内容发布子系统接收不同用户的查询,并通过直接访问内容存储组件来处理该查 询。该组件包含一个接受用户输入和返回处理结果的用户接口和一个构建x m l 结果文 档的x m l 组合器 2 3r e is e r f s 概述 在1 9 9 7 年7 月2 3 日,h a n sr e i s e r t l 0 1 把他的基于平衡树结构的r e i s e r f s 文件系统在 网上公布。这是r e i s e r f s 的第一次公开亮相。此后,r e i s e r f s 一直在h a n sr e i s e r 和领 导下的开发小组下丌发和发展,s u s e l i n u x 也对它的发展起了重大的帮助。出于r e i s e r f s 有一些很有用的特性,更主要的是它比e x t 2 f s 要快得多,所以它很快被很多人使用。 2 3 1 搜寻方式 r e i s e r f s 是基于平衡树的文件系统结构,尤其对于大量文件的巨型文件系统,如服 务器上的文件系统,搜索速度要比e x t 2 快;e x t 2 使用局部的二分查找法,综合性能比不 上r e i s e r f s 。1 1 1 1 2 3 2 空间分配和利用情况 r e i s e r f s 里的目录是完全动态分配的,因此不存在e x t 2 中常见的无法回收巨型目录 占用的磁盘空间的情况。r e i s e r f s 里小文件( “k ) 可以直接存储进树,小文件读取和 9 华南理工人学硕上学位论文 写入的速度更快,树内节点是按字节对齐的,小的文件可共享同一个硬盘块,节约大量 空间。e x t 2 使用固定大小的块分配策略,也就是说,不到4 k 的小文件也要占据4 k 的 空间,导致的空间浪费比较严重。 2 3 3 先进的e t 志机制 r e i s e r f s 有先进的日志( j o u m a l i n i g l o g g i n g ) 机制,在系统意外崩溃的时候,未完成的 文件操作不会影响到整个文件系统结构的完整性。e x t 2 虽然健壮性很强,但一旦文件系 统被不正常地断开,在下一次启动时它将不得不进行漫长的检查系统数据结构的完整性 的过程,这是为了防止数据丢失而必需的操作。对于较大型的服务器文件系统,这种“文 件系统检查”可能要持续好几个小时,在很多场合下这样长的时间是无法接受的。解决 这个问题的一种技术“日志文件系统”。在日志的帮助下,每个对数据结构的改变都被 记录下来,日志在机制保证了在每个实际数据修改之前,相应的日志已经写入硬盘。正 因为如此,在系统突然崩溃时,在下次启动几秒钟后就能恢复成一个完整的系统,系统 也就能很快的使用了。 2 3 4 支持海量磁盘和优秀的综合性能 r e i s e r f s 是一个相当现代化的文件系统,相比之下,e x t 2 虽然性能已经很好了,但 其设计还只是2 0 世纪8 0 年代的水准。r e i s e r f s 的出现,使l i n u x 拥有了像i r i x a i x 那 样的高档商用u n i x 才有的高级文件系统。r e i s e r f s 可轻松管理上百g 的文件系统,在 企业级应用中有其用武之地,由于它的高效存储和快速小文件i ( 9 特点,它在桌面系统 上也表现出色:启动x 窗口系统的时间r e i s e r f s 比e x t 2 少1 3 。而e x t 2 则无法管理2 g 以上的单个文件,这也使得r e i s e r f s 在某些大型企业级应用中比e x t 2 要出色i i “。 2 4r e is e r f s 技术 2 4 1b 一平衡树 r e i s e r f s 使用了特殊的优化b 一平衡树( 每个文件系统一个) 来组织所有的文件系 统数据。这为其自身提供了非常不错的性能改进,也能够减轻文件系统设计上的人为约 束。例如,现在一个目录下可以容纳1 0 0 ,0 0 0 个子目录。另一个使用b 树的好处就是 r e i s e r f s 能够像大多其它的下一代文件系统一样,根据需要动态地分配索引节,而不必 在文件系统创建时建立固定的索引节。这有助于文件系统更灵活地适应其面临的各种存 0 第二章g d i x 内容管理器和r e i s e r f s 储需要,同时提供附加的空间有效率。 r e i s e r f s 有许多特征是特别针对提高小文件的性能的。和e x t 2 不同,r e i s e r f s 并 不固定地以l k 或者4 k 的块分配存储空间,而是分配所需要的精确尺寸。而且r e i s e r f s 也包括了以尾文件为中心的特殊优化尾文件是指那些比文件系统块小的文件及文 件结尾部分。为了提高性能,r e i s e r f s 能够在b 树的叶子节点存储文件,而不是把数 据存储在磁盘的其它地方再指向它。这样做有两个好处:第一,它显著地提高了小文件 的性能。由于文件数据和s t a t _ d a t a ( 索引节) 信息是紧挨着存储的,它们通常能被同一 次磁盘i o 操作所读取。第二,r e i s e r f s 能够压缩尾文件,节省大量磁盘空问。实际上, 带有尾文件压缩功能( 默认) 的r e i s e r f s 文件系统可以比同等的e x t 2 文件系统多存储6 个百分点的数据,这就其自身来说是令人惊叹的。 2 4 2 日志处理 r e i s e r f s 提供了改进的结构化一致性和可恢复性,以及比非日志文件系统( 例如: h p f s 、e x t 2 和传统u n i x 文件系统) 快得多的系统重启时间。发生系统故障时非同志 文件系统容易崩溃,是由于一个逻辑写文件操作通常占用多个媒体i o 来完成,且在 任何给定时间,可能没有完全反映在媒体上。这些文件系统依靠重启实用程序( 也就是 f s c k ) ,f s c k 检查文件系统的所有元数据( 例如:目录和磁盘寻址结构) 以检测和修复结 构完整性问题。这是一个耗时并且容易出错的过程,在最糟糕的情况下,它还可能丢失 或放错数据。 相反,r e i s e r f s 使用原来为数据库丌发的技术,记录了文件系统元数据上执行的操 作( 即原子事务) 信息。如果发生系统故障,可通过重放同志并对适当的事务应用日志 记录,来使文件系统恢复到一致状态。由于重放实用程序只需检查文件系统最近活动所 产生的运行记录,而不是检查所有文件系统的元数据,因此,与这种基于日志的方法相 关的文件系统恢复时间要快得多。 2 5r e i s e r f s 的磁盘布局 2 5 1r e is e r f s 树 r e i s e r f s 树是一棵由节点构成的b 平衡树。树的第一层( 最低层) 为出格式化节点 构成,称作叶节点,在此以上各层均节点统称为内部节点。图2 - 4 描述了一个高度为3 、 扇出为2 的平衡树。最高一层包含根节点。根据需要,可以通过在树顶增加一个新根节 点来增加层数。 华南理t 大学硕士学位论文 从树的根出发,到所有格式化叶子的每一条路径长度相等。 图2 - 4 一个高度为3 、扇出为2 的平衡树 r e i s e r f s 树默认最大深度为5 ,并建立在磁盘块( 下称盘块) 上。换言之,树上的一 个节点便是一个盘块。几乎每一个属于r e i s e r f s 树的盘块都有一个块首( b l o c kh e a d ) , 更准确地说,块首是一个格式化叶节点或内部节点的首部,而不是非格式化节点的首部。 换言之,只有存放格式化叶节点或内部节点的盘块才有块首这一数据结构。 2 5 2 盘块 首先来看一下存放三种不同节点的盘块的结构: 第一种盘块( 见图2 5 ) ,树中的内部节点存放于此,保存各种键及指向其它盘块的 指针。 图2 5 第一种盘块的结构 第二种盘块( 见图2 6 ) ,树中的叶节点安置于此,保存各i t e m s 和i t e m sh e a d e r s 。 图2 - 6 第二种盘块的结构 第三种盘块( 见图2 7 ) 。树中的非格式化节点存于此种盘块。放置大文件的数据。 薰蒸裟鋈粪i 粪粪嚣鋈鎏囊鍪;l 娄粪鋈羹粪黧鏊鎏;蒸阉 图2 7 第三种盘块的结构 接下来给出块首b l o c k _ h e a d 的数据结构1 2 】,见图2 - 8 。 星三兰璺望兰竖要些璺塑些竺璺 图2 8 块首b l o c k _ h e a d 的数据结构 如果想知道一个块首有多大,得先吲解键( k e y ) 的数据结构眦1 ,见图2 - 9 。 图2 - 9 键k e y 的数据结构 一个键的大小为2 4 字节,从而得知块首的大小为3 2 字节。( 由于内部节点和格式 化节点均有块首,而它们各自的块首数据结构有所差异,这里取最大值。) i t e m 的键由4 部分组成,并决定了该i t e m 在树中的位置。 2 5 3r e is e r f s 的对象 在键的数据结构中出现了对象概念,在r e i s e r f s 。对象只有两类:文件和目录。 r e i s e r f s 拥有对象的最大数目为42 9 49 6 72 9 2 ( = 2 3 2 - 4 ) 。每个对象皆有对象d 和键 ( k e y ) ,并由许多i t e m s 构成。 对象i d 从1 到4 2 9 4 9 6 7 2 9 5 ( 等于4 g 一1 ) ,按顺序分成i d 数目不一的6 组( 最多可 分成9 7 2 组) 。奇数组( 第1 、3 、5 组) 和偶数组( 第2 、4 、6 ) 交叉依次出现。 奇数组代表该组i d 己被使用,偶数组代表该组i d 未曾使用。当需要分配对象i d 时, 第一个未使用的对象i d 被先分配出去。 对于文件对象,它的i t e m s 有两种方式构成。第一种对应小文件( 小文件的大小:从 0 字节到f i a xd i r e c ti t e ml e n = 块大小一1 1 2 字节) : s t a t d a t ai t e m + d i r e c ti t e m 第二种对应大文件( 大文件的大小大于m a xd i r e c ti t e ml e n ) : s t a t d a t ai t e m4 - i n d i r e c ti t e m “d i r e c ti t e m 。 对于目录对象,它的i t e m s 通过以下方式构成: s t a t d a t ai t e m + d i r e c t o r yi t e m 华南理工人学硕士学位论文 2 5 4 节点 整棵树包含三种类型节点:内部节点( i n t e m a ln o d e s ) 、格式化节点( f o 咖a t t

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论