(计算机应用技术专业论文)大文本存储管理研究与应用.pdf_第1页
(计算机应用技术专业论文)大文本存储管理研究与应用.pdf_第2页
(计算机应用技术专业论文)大文本存储管理研究与应用.pdf_第3页
(计算机应用技术专业论文)大文本存储管理研究与应用.pdf_第4页
(计算机应用技术专业论文)大文本存储管理研究与应用.pdf_第5页
已阅读5页,还剩55页未读 继续免费阅读

(计算机应用技术专业论文)大文本存储管理研究与应用.pdf.pdf 免费下载

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

文档简介

中文摘要 论文题目:大文本存储管理研究与应用 专业:计算机应用技术 硕士生:韩雨涝( 签名) 驻匾瘩 指导教师:刘天时( 签名) 兰兰全= 竺二支 、j 摘要 随着计算机技术和多媒体技术的快速发展,计算机存储的数据已经不仅是一些简单 的文字数据,还包括图片、声音、视频等数据。这些数据通常被称为大文本数据,是一 种二进制大对象( b l o b ,b i n a r yl a r g eo b j e c t ) ,具有数据量大、数据格式多样、数据 长度不确定的特点。如何安全、有效的管理这类数据成为信息系统面临的重要问题。 本文阐述了信息系统通常采用的大文本数据存储管理方法,并讨论了这些方法的优 缺点。针对这些方法的不足,给出了一种解决方案。本文也研究了大文本数据的传输、 备份与恢复等等。基于以上理论,设计和开发了大文本存储管理系统。论文的主要工作 如下: 1 、分析了开发大文本存储管理系统的可行性,介绍了系统的设计模式、主要功能 模块、开发平台、系统架构。 2 、研究了j a v a 存储过程、触发器等数据库对象,并应用这些对象保持大文本数据 存储的一致性。 3 、研究和讨论了组件技术,重点讨论了n e t 组件和c o m 组件技术,将组件的理 论应用到本系统的设计当中。 4 、以饼n e t 对大型数据库o r a c l e 的访问为例介绍了该方案的实现思路,给出了 该方案一个应用实例大文本存储管理系统,该系统采用了b s 的体系结构和a d o n e t 的数据库访问方式。 系统试运行与测试结果表明:系统运行良好,实现了预期的功能。 关键词:大文本数据o r a c l e 数据库c # n e tj a v a 存储过程 论文类型:应用研究 n 英文摘要 s u b j e c t : r e s e a r c ha n d a p p l i c a t i o no f r i c h t e x td a t as t o r a g em a n a g e m e n t s p e c i a l i t y :c o m p u t e r a p p l i c a t i o nt e c h n i q u e n a m e :h a ny h l a o ( s i g n a t u r e ) 蚰蟾纽 i n s t m c t o r :l i ut i a n s h i ( s i 印a t u 旧达a ;豳 三 a b s i r a c r w i t ht h er a p i dd e v e l o p m e n to fc o m p u t e ra n dm u l t i m e d i at e c h n o l o g y , t h ed a t aw h i c ha r e s t o r e di nc o m p u t e ra r en o to n l ys i m p l et e x td a t a ,b u ta l s oi m a g e s ,a u d i oa n dv i d e oa n ds oo n t h e s ek i n d so fd a t aa r ec a l l e dr i c h t e x td a t a t h e ya r eak i n do fb i n a r yl a r g eo b j e c t ,a n da r e c h a r a c t e r i z e db yh u g ed a t aq u a n t i t y , d i v e r s ed a t af o r m a ta n di n d e f i n i t ed a t al e n g t h h o wt o m a n a g et h ek i n do fd a t as a f e l ya n de f f e c t i v e l yt u r n so u tt ob eas e d o u sp r o b l e m t h i sd i s s e r t a t i o nn a r r a t e ss e v e r a lm e t h o d so fs t o r a g em a n a g e m e n tf o rr i c h t e x td a t ai n i n f o r m a t i o ns y s t e m ,a n dt h e nd i s c u s s e st h ea d v a n t a g ea n dd i s a d v a n t a g eo ft h e s em e t h o d s a i m i n g a tt h e s ed r a w b a c k s ,as o l u t i o ni sp r e s e n t e di nt h i sd i s s e r t a t i o n i na d d i t i o n ,t h et h e s i s s t u d i e st r a n s m i s s i o n ,b a c k u pa n dr e s t o r a t i o no fr i c h t e x td a t a b a s e do nt h ea b o v et h e o r y ,w c h a v ed e s i g n e da n dd e v e l o p e dt h ef i c h t e x ts t o r a g em a n a g es y s t e m t h em a i nw o r ko ft h e d i s s e r t a t i o ni sa sf o l l o w s : 1 、a n a l y z et h ef e a s i b i l i t yi ne x p l o r a t i o no ft h i sr i c h t e x ts t o r a g em a n a g es y s t e ma n d i n t r o d u c et h ed e s i g nm o d e l ,m a i nf u n c t i o nm o d u l e ,d e v e l o p i n gp l a t f o r ma n ds y s t e m a t i c f a b r i c 2 、r e s e a r c hj a v as t o r e dp r o c e d u r e ,t r i g g e ra n do t h e rd a t a b a s eo b j e c t sa n dm a k eu s eo f t h e s ed a t a b a s eo b j e c t st or e a l i z er i c h t e x td a t as t o r a g ec o n s i s t e n c y 3 、r e s e a r c ha n dd i s c u s sc o m p o n e n tt e c h n o l o g y ,f o c u so n n e tc o m p o n e n ta n dc o m c o m p o n e n tt e c h n o l o g y ,a n da p p l yt h et e c h n o l o g yt ot h ed e s i g no ft h i ss y s t e m 4 、p r o v i d et h er e a l i z a t i o no ft h es o l u t i o nb yu s i n g 甜n e tt ov i s i tl a r g e s c a l ed a t a b a s e o r a c l e ,a n dg i v ea ni n s t a n c ew h i c hu s e sb sa r c h i t e c t u r ea n da d o n e td a t a b a s ea c c e s s i n g t e c h n o l o g y t h er u n n i n ga n dt e s t i n gr e s u l t so ft h es y s t e mp r o v et h a tt h es y s t e mi sr u n n i n gw e l la n d a c h i e v e st h ef u n c t i o ne x p e c t e d k e y w o r d s :r i c h t e x td a t a ,o r a c l ed a t a b a s e ,c # n e t , j a v as t o r e dp r o c e d u r e t h e s i s :a p p l i c a t i o ns t u d y i 学位论文创新性声明 本人声明所呈交的学位论文是我个人在导师指导下进行的研究工作及取得的研究成 果。尽我所知,除了文中特别加以标注和致谢中所罗列的内容以外,论文中不包含其他 人已经发表或撰写过的研究成果;也不包含为获得西安石油大学或其它教育机构的学位 或证书而使用过的材料。与我一同工作的同志对本研究所做的任何贡献均已在论文中做 了明确的说明并表示了谢意。 申请学位论文与资料若有不实之处,本人承担一切相关责任。 论文作者签名:垒面遴日期:垒班二匿 学位论文使用授权的说明 本人完全了解西安石油大学有关保留和使用学位论文的规定,即:研究生在校 攻读学位期间论文工作的知识产权单位属西安石油大学。学校享有以任何方法发表、 复制、公开阅览、借阅以及申请专利等权利。本人离校后发表或使用学位论文或与 该论文直接相关的学术论文或成果时,署名单位仍然为西安石油大学。 论文作者签名垒煎遗 导师签名:兰! 甥 日期:超鲤蔓二眵 日期:7 于一i a - 第一章绪论 第一章绪论 1 1 课题研究背景和意义 在工程设计领域,随着计算机在产品生产过程中的广泛应用,大量的数据文件通过 计算机生成、保存和传递,企业的各个部门( 尤其是设计部门) 逐年积累了数据庞大的 电子图纸等文档,随着数据量的迅速增长,保存、管理和检索的工作量越来越大,在人 工管理的模式下极易出现差错,甚至会造成资料的遗失。在如此巨大的数据信息库中, 如何准确、快速的找到所需数据,如何减少数据的冗余,实现企业数据高效存储,是企 业面临的一个重要问题。 作者参与了某公司基于b s 结构的工程设计管理信息系统的开发,该系统涉及到种 类繁多的大文本数据的处理,通常是文档、视频、图片等,这些数据具有数据量大、数 据格式多样化、数据长度不确定的特点。在系统开发过程中,积累了n e t 技术开发基于 w e b 的应用系统处理数据文件的实践经验,结合自身的研究方向,确定了大文本存储管 理研究与应用研究课题。 通过课题的研究,解决了如何对语音、视频以及图片等大文本数据进行科学、安全、 有效的存储和管理,使相关人员可以方便高效地获取、共享和重复利用这些数据,从而 极大提高企业大文本数据管理的效率,使得企业的信息得到了安全有效的保存,增加了 企业的竞争力,同时对于提高企业的经济效益有着巨大影响,顺应了时代的进步。 1 2 课题国内外研究现状 1 2 1 大文本存储管理研究现状 由于大文本数据具有数据量大、种类繁多的特点,因此要实现这类数据的安全、高 效的存储管理成为信息系统面临的重要问题。目前国内外对大文本数据存储管理主要采 取了以下几种方式: 1 、文件系统管理方式 在已有的关系数据库基础上,结合文件系统对大文本数据进行处理,具体做法是将 常规数据用关系数据库处理,而将大文本数据用文件处理,两者之问由应用程序建立联 系,从而达到一体化处理常规数据与大文本数据。 2 、扩充关系数据库方式 目前,主流数据库管理系统都在一定程度上支持大文本数据的应用,主要是在系统 中引入新的数据类型,以便存储大文本数据对象,如o r a c l e 、s y b a s e 、s q l s e r v e r 等都扩 展了长字段类型,可达2 g b 空间,这样可存放各种大文本数据,如声音,图片、文字等 【1 1 。用关系数据存储大文本数据对象的方法有:用专用的字段存放大文本数据对象:大 文本字段存放在不同字段中,使用时再重新构建。 3 、面向对象数据库方式 西安石油大学硕学位论文 八十年代初期发展起来的面向对象技术推动了数据库技术的发展。面向对象技术与 数据库技术的结合导致了面向对象数据库( o o d b ) 的诞生。o o d b 的理论研究和实践 活动十分活跃,是九十年代至2 0 0 0 年计算机领域中最热门和有生命力的研究课题。在理 论研究方面对于形式化描述和语言标准已经取得重大进展:在实现方面,o o d b 也从原 型走向产品。研究表明:面向对象数据库是解决多媒体数据库的较为科学的方法和工具。 惠普公司研究开发的i r i s 系统;s e r u i ol o g i c 公司研制的g e m s t o n e 系统;o b i e c ts t o r ed e s i 公司研制的o b j e c ts t o r e 系统;o n t ol o g i c 公司研制的o n t o s 系统:m c c 公司研制的o r i o n 系统;美国研制的p o s tg r e s 系统等。这些系统大都被开发成商品化的o o d b ,并推向市 场,在功能和性能方面显示了强大的生命力。然而迄今为止,o o d b 的市场并不理想, 远未被广大用户接受。就总体而言,面向对象数据库仍在发展之中,理论研究仍未取得 令人满意的结果,其产品也远未被广大用户所接受。然而无人怀疑它的强大生命力和未 来的前景,面向对象数据库仍是一个方兴未艾的研究方 f i 1 2 1 。 比较以上几种方法,面向对象模型最适合大文本数据存储,但是它缺乏坚实的理论 基础,目前也没有一个统一的标准,实现技术不成熟;关系数据模型是以集合论、关系 代数作为理论基础,实现上也很成熟,使用扩充的关系数据模型,不但能增加对大文本 数据对象的支持,还能兼容以前的类型,在实现和效率上具有较大优势。文件系统管理 方式存储结构简单,是一种常用的大文本数据存储方式。目前,在信息系统的开发过程 中,常采用扩充关系数据库和文件管理两种方式对大文本数据进行存储管理。 1 2 2 大文本传输技术研究现状 大文本数据文件常用传输模式为f 1 1 p 文件传输服务和直接远程提交文件的w e b 服 务。 f 】m 是应用层基于t c p i p 协议韵远程文件传输的应用协议标准,通常可提供给计算 机用户上传文件到计算机指定目录中,也可以从f t p 服务器目录下载文件。企业组建 f t p 服务器后,给客户创建一个f 1 限用户账号和目录。这样,企业就可以和客户之间进 行文件远程传输。f t p 方式传输文件主要有三个特点。首先,f t p 服务器为客户创建帐 号和文件目录后,客户可借助工具软件远程访问f t p 目录中的文件,也可使用w e b 浏 览器登录f t p 站点,对文件进行操作。其次,f r p 文件服务器上的文件大小和文件数目 由服务器决定,远程操作就如同操作本地文件。最后,它是一种非即时通信,远程文件 可以随时随地传输。 w e b 服务是提供给企业和客户之间全方位信息交流的平台。w e bh t r p 的基本协议 是h t t p 。浏览器通过t c p i p 网络,用h t r p 协议与服务器之间进行信息交流和文件的 传输服务,w e b 方式上传时,服务器端程序可将文件基本信息( 文件名、文件路径等) 写入数据库指定表中,以便于文件的检索。w e b 方式大文本传输有三个特点。首先,上 传文件大小、格式可以自由控制。其次,通过w e b 浏览器操作,操作界面简单,对用 2 第一章绪论 户要求低。最后,文件服务器端和客户端人员不必同时在线,大文本文件传输方便【3 】。 相比f 1 限服务,w e b 服务具有可编程性,功能可扩张性、易于管理、安全性好等优 点。因此,f 1 甲主要地位逐渐被w e b 服务的h t t p 所取代。 1 2 3 大文本压缩技术研究现状 在声音、视频等大文本数据应用中,大文本数据信息的数据量相当庞大,对存储器 的存储容量、网络带宽以及计算机的处理速度都有较高的要求,单纯依靠硬件来满足现 实需求是不可能的,必须采用有效的压缩技术。根据不同编码对原始文件数据产生不同 的损失效果,可把压缩技术分为无损压缩、有损压缩和混合压缩三大类。 1 、无损压缩:无损压缩也称为无失真压缩,本质是对原始数据中的冗余部分进行压 缩。无损压缩可无任何误差或失真的恢复到原始数据。此类压缩对在内容上重复较多的 文件压缩倍数比较大,而对没有重复或者重复较少的文件压缩比较低,压缩比例一般在 2 :1 到5 :1 。无损压缩中经常采用的方法有h u f f m a n 编码、算术编码和l z w 编码等。 2 、有损压缩:又称失真压缩,通过此压缩后不能把数据恢复到原始状态,同原始数 据存在误差。虽然采用有损压缩数据不能完全恢复,但其损失的部分对理解原数据基本 上没有影响。有损压缩利用了人类视觉和听觉器官对频带中某些频率不敏感这一特点, 采用一些高效的有限失真数据压缩算法,大幅度减少多媒体中的冗余信息,其压缩效率 大大高于无损压缩。常用的有损压缩方法有:p c m ( 脉冲编码调制) 、预测编码、变换 编码、插值等。在新一代数据压缩方法中,很多是有损压缩,矢量量化、子带编码、基 于模型的压缩等,这些已经接近成熟。 3 、混合压缩:是有损压缩和无损压缩的结合,其吸收了各种单一压缩的优点,以求 在压缩比、压缩效率和保真度之间取得最佳效果。j p e g ( j o i n tp h o t o g r a p h i ce x p e r t sg r o u p ) 静态的数字图像数据压缩编码标准和m p e g ( m o v i n gp i c t u r ee x p e r t sg r o u p ) 活动图像压 缩标准采用了混合编码的压缩方法。 大文本压缩新技术主要有两种:基于分析的压缩算法和小波变换在图像压缩中的应 用。将来研究工作主要集中在设计新的压缩算法,支持对压缩数据域数据直接操作和如 何将用于大文本数据的传输和使用的各种标准结合起来。 1 3 本文主要的工作和内容 论文首先介绍了大文本存储管理的两种方法,通过对两种方法优缺点的对比,给出 了一种大文本存储管理方法,并设计和开发了基于此方法的大文本存储管理系统,文中 对开发这种大文本存储管理系统所涉及的开发工具和使用的相关技术进行了阐述。 论文分为六大部分,其中: 第一章主要介绍课题的背景和意义,课题国内外的研究现状,本文主要的工作和内 容。 3 西安石油大学硕学位论文 第二章本章对文件系统和数据库存储大文本数据进行了详细介绍,最后给出了一种 大文本存储管理方案,并对该方法进行了阐述。 第三章本章介绍了系统的总体方案,详细介绍了系统体系结构、后台关系数据库 o r a c l e ,最后阐述了系统开发工具v i s u a ls t u d i o n e t 及相关理论。 第四章本章给出了大文本存储管理系统的体系结构,进行了系统功能模块的设计、 数据库的设计和系统安全性设计。 第五章实现基于b s 模式的大文本存储管理系统,并对系统功能进行了测试。 第六章是本文的总结部分,对所做的工作进行了总结,并对后续的研究工作进行了 展望。 4 第二章大文本数据存储管理 第二章大文本数据存储管理 大文本数据数据量大,占用大量的硬盘空间、内存和网络资源,因此大文本数据存 储管理是否合理,对系统的存储效率、查询速度有很大的影响。根据存储位置的不同, 把信息系统通常使用的大文本数据存储管理方法分为两种:一种是文件系统存储,另外 一种是数据库存储。以下分别对这两种方法进行介绍,并在文件系统存储大文本数据的 基础上给出一种大文本数据存储管理方案。 2 1 基于文件系统的大文本数据存储管理 2 1 1 基于文件系统的大文本数据存储管理概述 采用文件系统存储大文本数据,大文本数据以文件的形式存储于操作系统一个固定 目录中,通过数据库管理系统建立了一个包含这些大文本数据文件基本信息的数据表, 即大文本数据文件的信息索引表。数据库只负责管理和维护大文本数据文件基本信息, 并不负责管理和维护真正的大文本数据。通过索引表,用户可以快速方便地检索到大文 本文件的具体存储位置,从而可以按照应用需求对大文本数据文件进行操作。 我们把这些大文本数据文件的文件名、文件路径、文件类型等数据称为元数据 ( m e t a d a t a ) 。元数据目前没有统一的定义,常见的定义是:元数据是关于数据的数据。 是一种专门来描述数据特征、属性、结构的数据,用来完成信息的描述、定位、搜寻 4 1 。 2 1 2 基于文件系统的大文本数据存储管理优缺点分析 通过上述文件系统存储大文本数据的介绍,可以看出数据库中存储的仅仅是文件路 径、文件名等元数据信息,真正的大容量的大文本数据并没有存储在数据库中,因此数 据库所占用的空间比较小,大大减轻了数据库负担,这无疑为数据库的流畅运行提供了 保证【5 1 。 由于数据库只负责维护大文本数据文件的路径、文件名等元数据信息,并不能保证 路径和文件名下是否确实存在所指定的大文本数据文件,并且如果这些大文本数据文件 更改了路径,或者更改了文件名,那样数据库中储存的那些路径和文件名就成了空壳, 用户就无法通过文件路径找到大文本数据文件,导致数据存储的不一致性。因此,如何 保证数据库中存储的路径和文件名的有效性,即如何保证数据库中所存储的路径和文件 名与操作系统固定目录中大文本数据文件的一致性是这种存储方式的关键;另外,由于 这种对文件目录的安全需要操作系统的支持,而不同的操作系统又有不同的处理方式, 故即使解决了操作系统上的安全问题,但是做到对所有操作系统都有效却有困难:最后 是在发布应用程序时所有的数据文件都要同时发布出去,数据有随时丢失、被查看、更 改的危险。 5 西安石油大学硕学位论文 2 2 基于数据库的大文本数据存储管理 b l o b ( b i n a r yl a r g eo b j e c t ) 称作“二进制大对象”,这个概念最早产生于i n f o r m i x 公 司生产的世界上第一个支持多媒体管理的管理数据库服务器i n f o r m i xo n l i n e l 6 1 。在引入 b l o b 数据类型后,数据库不仅能够处理文字、数值等简单对象,而且能将其它复杂对 象,如图像、声音、视频、语音考虑成一个数据库操作的原子单位的一部分进行存取和 恢复。随着数据库技术的发展,其他数据库管理系统也提供了对b l o b 对象不同程度和 不同形式的支持。常见的数据库系统支持的b l o b 类型表现形式如下表所示: 表2 1 不同数据库对b l o b 类型支持 数据库b l o b 类型 o r a c l eb l o b ,c l o b ,b n i e ,l o n gr a w ,l o n g ,r a w s q ls e r v e r l m a g e ,t b x t s y b a s e l o n gm c h a r v f pm e m o a c c e s s o l eo b j e c t ,m e m 0 k i n g b a s e b i n a r y ,v a r b i n a r y ,t e x t ,b l o b 2 2 1 基于o r a c l e 的大文本数据存储管理概述 o r a c l e 数据库同样提供了对大文本数据的支持。在o r a c l e 7 数据库系统中,用l o n g 或l o n gr a w 数据类型存储大文本数据,每种类型数据字段存储数据的晟大长度为 2 g b 。其中l o n g 用来存储字符数据,l o n gr a w 用来存储二进制数据。而o r a c l e8 i 对大文本数据的存储进行了改进,引进了新的大对象类型l o b ( l a r g eo b j e c t s ) 来存储大 文本数据,存储容量达到了4 g b l7 i 。 与l o n g 和l o n g r a w 类型创建的列相比,l o b 类型的列具有三个优点: 1 、l o b 列可以存储4 g b 的数据,这是l o n g 或l o n gr a w 列中可以存储的数据 量的两倍; 2 、个表可以有多个l o b 列,但是一个表最多只有一个l o n g 或l o n gr a w 列; 3 、l o b 数据支持随机次序访问,而l o n g 和l o n gr a w 数据只能通过顺序访问。 将l o b 按照存储位置的不同分为两类,内部l o b 和外部l o b 。内部l o b 包括三 种类型:b l o b ( 二进制数据) 、c l o b ( 单字节字符数据) 、n c l o b ( 多字节国家字 符数据) 。c l o b 和n c l o b 类型适用于存储超长的文本数据,b l o b 字段适用于存储 大量的二进制数据,如图像、视频、音频等。内部l o b 将数据以字节流的形式存储在数 据库内部的表空间中,并进行空间优化和提供有效的安全访问机制,因而内部l o b 的许 多操作都可以参与事务,也可以像处理普通数据一样对其进行备份,在提交失败或媒体 介质故障是可进行恢复操作。外部l o b ,即b f i l e 数据类型,在数据库中存储的是由绝 6 第二章大文本数据存储管理 对路径的别名和文件名组成的定位符,大文本数据以文件形式存储在操作系统文件目录 中。该类型所表示的数据是只读的,不参与事务,因此b f l l e 对处理不需要事务控制的 操作系统文件很有用。该类型可帮助用户管理大量的由外部程序访问的文件。 b f i l e 数据类型存储有两个特点: 首先,数据本身并不存放在数据库的表空间中,而是存储在数据库服务器的文件系 统中,其文件大小仅受操作系统的限制,因此要在o r a c l e 数据库中管理超过4 g b 的海 量数据,通常采用b f i l e 方式存储。 其次,文件存储在数据库表空间外,o r a c l e 准备对其进行操作,要求数据必须已经 作为操作系统的文件存在,且o r a c l e 必须有读取该文件( 当然还有目录访闯) 的特权,因 此要实现对b f i l e 数据的管理,客户端必须首先将待管理的数据文件上传到数据库服务 器所在的操作系统上。 2 2 2 基于o r a c l e 的大文本数据的管理与操作 o r a e l e 9 i 提供了多种管理和操作l o b 类型的方法,这些方法包括基于p u s q l 的 d b m sl o b 包、o r a c l e 调用接口、p r o e c c + + 、j d b c 等嘲。以下主要介绍基于p i s q l 的d b m s _ l o b 包和o r a c l e 调用接口两种管理和操作l o b 类型的方法。 1 、p l s q l 的d b m s _ l o b 包 o r a c l e 数据库通常使用d b m sl o b 包完成对l o b 的操作,d b m sl o b 包包含了 许多对l o b 操作的方法( 函数或过程) 。按功能类别、操作对象的不同,d b m sl o b 包中的方法可以分为修改内部l o b 对象,读取或者检验l o b 对象,针对外部只读型l o b 对象的操作。表2 2 对这些方法进行了分类介绍: 7 西安石油大学硕学位论文 表2 - 2 不同类别l o b 操作的方法及说明 方法类别方法名称 方法说明 修改内部l o ba p p e n d 0将源l o b 中的内容加到目的l o b 中 c o p y 0从源l o b 中复制数据到目的l o b e r a s e 0 删除l o b 中全部或部分内容 l o a d f r o m f i l e0装入b f i l e 文件的数据到一个内部l o b 中 l o a d c l o b f r o m f i l e 0从一个字符文件装入数据到一个l o b l o a d b l o b f r o m f i l e 0从一个二进制文件装入数据到一个l o b 由 t r i m 0 将l o b 值减少到指定的长度 w r i t e 0 在指定偏移向l o b 中写入数据 w r i t e a p p e n d 0 在l o b 后追加数据 读取或者检验c o m p a r e 0比较两个同种数据类型的l o b 值是否相 l o b 对象同 g e t c h u n k s i z e 0 进行读写时获得可用字节块的大小 g e i l e n g t h ( )获取指定l o b 的长度 i n s t r ( )查找在给定的l o b 中第n 次匹配的位置 r e a d 0 从指定的偏移量开始读出l o b 中的数据 s u b s t r 0 从指定偏移抽取l o b 的子集 针对外部只读 f i l e c l o s e 0 关闭文件 型l o b 对象 f 1 l e c l o s e a l l 0 关闭所有打开的文件 f i l e e x i s t s 0 检查文件是否在文件系统中存在 f i l e g e e t n a m e 0 获取给定定位符相关联的目录和文件名 f i l e i s o p e n 0 检查当前的b f i l e 定位符是否打开 f i l e o p e n 0 打开文件 上述方法都是基于l o b 定位器的,若将l o b 列设为n u l l ,则因无l o b 定位器不 能使用p l s q l d b m sl o b 包中的方法。为了获取l o b 的定位器,可使用s e l e c t 语 句读取l o b 定位器,并赋给p u s q l 变量中,也可将这个变量传递到d b m sl o b 包中 的函数或程序中。 2 、o c i ( o r a c l e 调用接口) o c i 是o r a c l e 公司开发的一个应用程序开发工具,提供了一组可对o r a c l e 数据库进 行存取的接口子例程( 函数) ,通过在第三代程序设计语言中进行调用,完成对b l o b 数据类型的访问和操作。作为一种数据库访问方法,它具有访问速度快,将s q l 的数据 8 第二章大文本数据存储管理 访问和c 语言的程序化能力集于一身的特点。从本质上说o c i 是一种可以操纵o r a c l e 数据库的应用程序接口。o c i 应用程序主要任务是连接o r a c l e 服务器、从事某种数据交 换和完成必要的数据处理。o c i 基本的编程流程见下图: 初始化进程 0 初始化环境 士 分配句柄和数据结构 0 连接服务器与开始会话 士 发出s q l 命令和处理数据 士 终止与服务器连接 0 ”藉放旬鞴籀疆垂霜 图2 - 10 c i 编程流程 以上介绍了两种常用的访问和管理o r a c l el o b 对象的方法,当在o r a c l e 数据库环 境中访闯和操作含有l o b 类型的表时,经常使用p i _ s q ld b m sl o b 包,否则在其它 环境中使用o c i 技术比较方便。 2 2 3 基于数据库大文本数据存储管理优缺点分析 1 、易于管理 当大文本数据与元数据存储在数据库中时,两者同时备份和恢复。这样就降低了元 数据和大文本数据不同步的机会。另外,不需要为文件系统中的文件单独设置安全性。 2 、一致性 大文本数据和元数据的插入、更新、删除都在同一个事务中实现,这样就保证了文 件系统大文本数据与数据库元数据之间的一致性。 3 、可伸缩性 尽管文件系统被设计为能够处理大量不同大小的对象,但是文件系统不能较好的对 大量小文件进行优化。在这种情况下,数据库系统可以进行优化。 4 、可用性 数据库具有比文件系统更多的可用性。数据库允许在分布式环境中复制、分配数据。 在主系统失效的情况下,日志转移提供了保留数据库备用副本的方法。 9 西安石油大学硕学位论文 总之,此种方法将大文本数据直接存储在数据库的一个字段之中。数据库中不再仅 仅是一个索引,可以最大限度地发挥数据库管理系统( d b m s ) 的数据备份、数据恢复 以及事务处理等功能,具有数据保密性好、安全可靠、不易丢失和被修改的优点。但是 由于大文本数据全部存储在数据库中,当数据量很大时,加重了数据库负担,在读取大 文本数据时,必须进行必要的后处理工作以识别这些数据,加大了程序开发的难度。 2 3 大文本数据存储管理方法比较 通过对两种常用的大文本数据存储方案的介绍,可以归纳出下表: 表2 - 3 两种大文本数据存储方法比较 文件系统存储b l o b 、c l o bb n l e 大文本数据存储位嚣数据库外数据库数据库外 检索速度快慢快 大文本数据定位方式文件绝对路径b l o b 定位符b f i l e 定位符 大文本数据安全度低高低 数据库负担 轻重 轻 数据一致性差系统自动差 适用情况数据量小数据量大数据量大 如何对图像、声音、视频等大文本数据进行高效率的存储与管理,往往是一个系统 的可扩展性评价的重要部分。目前,大部分应用系统对大文本数据存储都采取文件系统 的方式来处理,这种方式的优点是速度快、操作简单,但是不方便管理和维护。在o r a c l e 数据库中,推荐使用数据库b l o b 类型对大文本数据进行存储。通过以上两种常用的大 文本数据存储方法的介绍,可以得到如下结论:如果数据量不大,对数据保密性、安全 性要求较高,应采用数据库b l o b 或者c l o b 存储。但是面对海量大文本数据时,对系 统响应速度要求较高,最好选用文件系统存储大文本数据,利用关系数据库对文件系统 上的大文本数据进行定位,实现对大文本数据进行高效的存储和管理。 2 4 大文本存储管理方案设计 关系数据库存储非格式化的大文本数据效率较低,但可以高效的存储格式化数据, 因此只要在格式化和非格式数据之间有一个合理的折中,就能很好的实现对大文本数据 的存储管理,基于此思想进行大文本存储管理方案设计。具体方案在传统文件系统存储 大文本数据方法基础之上改进的,利用文件系统来管理大文本数据文件,而利用关系数 据库管理系统管理大文本数据的元数据,这些元数据是字符型的文本,存储在关系数据 库中。为了使文件管理的大文本数据文件和关系数据库管理的大文本数据的元数据对应 起来,将大文本数据文件在文件系统中的存储路径作为大文本数据的一个属性存储到关 系数据库中,采用了一种特殊机制来将文件系统的管理和关系数据库对元数据的管理整 合起来,实现了大文本数据文件和元数据的一致性。这种方案的优点是充分发挥关系数 l o 第二章大文本数据存储管理 据库管理系统的成熟和传统优势,同时利用了文件管理系统的强大功能,实现了大文本 数据安全、高效的存储。其存储结构如下: 图2 2 改进大文本存储管理方案存储结构图 关系数据库中的元数据和服务器上的大文本数据文件共同组成了完整的大文本数 据,两者是紧密联系在一起的,不可分割的,这就要求数据库管理系统在大文本数据的 插入、更新等方面必须实现两者的同步和一致,从而保证大文本数据的一致性。该大文 本数据存储管理方案主要有以下特点: 1 、保持由大文本元数据信息和其在操作系统上的大文本数据文件的一致性。 2 、实现大文本数据对象的传输控制:大本文数据对象在服务器和客户机之间的传输 控制。 3 、实现大文本数据对象的备份与恢复:包括大文本数据对象的内容及其在数据库中 的元数据信息。 4 、实现大文本的显示。 5 、实现大文本数据的压缩和解压缩。 大文本数据以文件形式存储在系统服务器上,利用服务器的文件系统来管理所有大 文本数据文件。虽然大文本数据文件存储在服务器上,看似和服务器上存储其它文件一 样,可以由使用和管理服务器的入或程序进行访问,但是系统管理员需要开辟出特定的 受保护的空间来存放这些文件,不能手动或者通过应用程序对大文本数据文件进行删除 或者修改,否则会导致大文本数据文件和关系数据库中相应的大文本数据的元数据信息 不一致。 1 1 西安石油大学硕学位论文 第三章系统总体方案及相关技术 设计和开发文本存储管理,首先应当考虑开发模式,选择合适的系统体系结构,然 后确定系统开发坏境,选择合适的开发工具进行系统的开发。 3 1 系统体系结构 软件系统体系结构在软件工程中已扮演着越来越重要的角色。系统体系结构经历几 个发展阶段:从最初的主机终端( m a i n f r a m e t e r m i n a l ) 模式到文件服务器工作站( f i l e s e r v e r w o r k s t a t i o n ) 模式,最终发展到c s 模式。随着网络信息管理系统向i n t e m e t i n t r a n e t 的迁移,出现了w w w 技术与数据库技术相结合的w e b 数据库应用即b r o w s e s e n ,e “浏 览器朋艮务器) 计算模型,以下对c s 和b s 模式分另4 进行介绍。 3 1 1c s 体系结构 c s 模式是c l i e n t s e r v e r ( 客户朋艮务器模式) 的简称,由美国b o f l a n d 公司最早研发, 该技术是九十年代管理信息系统( m i s ) 中较为先进的技术。应用程序保存在客户端, 所有数据被存放在服务器端,每个客户与数据库保持一个连接,客户端通过应用程序向 数据库服务器发送s q l 命令,数据库服务器根据s q l 请求,完成数据库操作,最后向 客户端返回应答信剧9 】。服务器通常采用高性能的p c 、工作站或小型机,并采用大型数 据库系统,如o r a c l e ,s q ls e r v e r 等,同时在客户端需要安装专用的客户端软件。下图 为c s 模式结构图: 数据厍 图3 - 1e s 模式结构图 3 1 2b s 三层体系结构 b s 模式是b r o w s e r s e r v e r ( w 曲浏览器服务器模式) 的简称,是美国微软公司研 发,是一种以w e b 技术为基础的架构模式。在这种结构下,客户端是标准的浏览器( 如 i n t e r n e te x p l o r e ,n e t s c a p en a v i g a t o r 等) ,服务器端为标准的w 曲服务器协同应用服务器 响应浏览器的请求。主要事务逻辑在服务器端( s e r v e r ) 实现,数据库服务器接收到数 据请求,完成数据库处理工作,返回数据给应用服务器,形成所谓三层体系结构。b s 模式结构如下图所示: 1 2 第三章系统总体方案及相关技术 数据厍 图3 - 2b s 模式结构图 3 1 3c s 模式与b s 模式的比较 b s 模式的特点: 1 、客户端与平台无关 b s 模式采用的t ( :p 佃、m t p 等协议都是开放的、经标准化组织所确定的协议, 从而保证了其应用的通用性和跨平台性。 2 、共享程度高 在网络中的不同地域,用户可以随时申请对信息的操作,而无须担心因在网络中所 处的物理位置变化或使用的客户端环境不同而被服务器拒绝访问。 3 、简化了客户端,便于维护 b ,s 模式把c s 模式的胖客户机结构变成瘦客户机形式,大大减轻了客户机的负担。 系统的开发者无需再为不同级别的用户设计开发不同的客户应用程序,而只需安装通用 的客户端软件,把所有的用户功能都实现在w e b 服务器端,然后按照不同的功能为各个 组别的用户设置权限就可以了。 4 、使用简单,易于扩展 对于c s 模式,客户应用程序有自己特定的规格,使用者需要接受专门培训。而采 用b s 模式时,客户端只是一个简单易用的浏览器软件,即可在i n t r a n e t 内使用,也可 以直接连入i n t e r n e t ,具有良好的可扩展性。无论是决策层还是操作层的人员都无需培训, 就可以直接使用。 当然b s 模式也出现了一些不足。首先,当访问w e b 服务器的客户端较多时,w e b 服务器负担过重。其次,由于h t t p 可靠性不高,所以容易造成系统信息的丢失或者故 障。最后,复杂应用构造困难,虽然可以用a c t i v e x 等技术开发较为复杂的程序,但相 对于c s 这些技术开发复杂。 c s 模式的特点: 1 、交互性强 在c s 模式中,客户端有一套完整的应用程序,在出错提示、在线帮助等方面都有 强大的功能。b s 虽然由j a v a s c r i p t 、v b s c r i p t 提供了一定的交互能力,但与c s 的一整 套客户应用相比是太有限了,很多交互功能b s 模式很难实现。 2 、c s 模式提供了更安全的存取模式 由于c s 是配对的点对点的结构模式,采用适用于局域网、安全性比较好的网络协 西安石油大学硕学位论文 议,安全性可以得到较好的保证。而b s 采用点对多点、多点对多点这种开放的结构模 式,并采用t c p i p 这一类运用于i n t e m e t 的开放性协议,安全性较差。 3 、采用c s 模式降低网络通信量 b s 采用了逻辑上的三层结构,而在物理上的网络结构仍然是原来的以太网或环形 网。这样,第一层与第二层结构之间的通信、第二层与第三层结构之间的通信都需占用 同一条网络线路。而( s 只有两层结构,网络通信量只包括c l i e n t 与s e r v e r 之间的通信 量。所以,c s 处理大量信息的能力是b s 所无法比拟的。 4 、由于c s 在逻辑结构上比b s 少一层,对于相同的任务,c s 完成的速度总比 b s 快,使得c s 更利于处理大量数据。 b s 模式和c s 模式有着各自结构上的优缺点,它们的主要区别如下表所示: 表3 - 1 两种模式比较 项目c s

温馨提示

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

最新文档

评论

0/150

提交评论