文件数据库和关系数据库的比较

发表于:2011-10-14 10:12

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:3echo    来源:51Testing软件测试网采编

  一、关系数据库的优势和目前面临的问题

  从60年代末开始, 数据库技术经历了层次数据库、网状数据库和关系数据库而进入数据库管理系统( DBMS)阶段至今, 数据库技术的研究也不断取得进展。80年代, 关系数据库成为发展的主流, 几乎所有新推出的DBMS产品都是关系型的。关系型数据库在计算机数据管理的发展史上是个重要的里程碑,这种数据库具有数据结构化、最低冗余度、较高的程式和数据独立性、易于扩充、易于编制应用程式等好处,目前较大的信息系统都是建立在结构化数据库设计之上的。

  然而,随着网络技术和软件技术的飞速发展,特别是Internet和Intranet技术的发展,使得非结构化数据的应用日趋扩大。关系数据库从1970年发展至今,虽功能日趋完善,但对数据类型的处理只局限于数字、字符等,对多媒体信息的处理只是停留在简单的二进制代码文件的存储。然而,随着用户应用需求的提高、硬件技术的发展和Intranet/Internet提供的多彩的多媒体交流方式,用户对多媒体处理的需求从简单的存储上升为识别、检索和深入加工,正是用户呼唤出“通用”数据库服务器来处理占信息总量70%的声音、图像、时间序列信号和视频等复杂数据类型。据有关数据,1996年,全球数据库市场的销售额已接近40亿美元,预计到2000年,数据库市场销售额将达到80亿美元。巨大的增长潜力来自复杂数据类型的处理需求,使处理复杂数据类型的“超媒体”数据库将成为各公司投资研发的重点。

  二、全新的文件数据概念

  从1989年起,Lotus通过其群件产品Notes提出了数据库技术的全新概念-“文件数据库”,文件数据库差别于传统的其他数据库,他是用来管理文件。在传统的数据库中,信息被分割成离散的数据段,而在文件数据库中,文件是处理信息的基本单位。一文件能非常长、非常复杂、能无结构,和字处理文件类似。

  文件数据库和五、六十年代管理数据的文件系统不同,文件数据库仍属于数据库范畴。首先,文件系统中的文件基本上对应于某个应用程式。当不同的应用程式所需要的数据有部分相同时,也必须建立各自的文件,而不能共享数据,而文件数据库能共享相同的数据。因此,文件系统比文件数据库数据冗余度更大,更浪费存储空间,且更难于管理维护。其次,文件系统中的文件是为某一特定应用服务的,所以,要想对现有的数据再增加一些新的应用是非常困难的,系统不容易扩充。数据和程式缺乏独立性。而文件数据库具有数据的物理独立性和逻辑独立性,数据和程式分离。

  文件数据库也不同于关系数据库,关系数据库是高度结构化的,而Notes的文件数据库允许创建许多不同类型的非结构化的或任意格式的字段,和关系数据库的主要不同在于,他不提供对参数完整性和分布事务的支持,但和关系数据库也不是相互排斥的,他们之间能相互交换数据,从而相互补充、扩展。

  三、关系数据库和文件数据库的异同

  下面从三个方面比较两种数据库的异同:

  1、格式文本/多媒体

  在信息时代,所有信息大体上能分为两类:一类信息能够用数据或统一的结构加以表示。例如,成本、费用、人员、工资及员工业绩等,都能用数字或文字来描述或表达。这类信息具有相同的层次或网络结构,我们称之为结构化数据;而另一类信息根本无法用数字或统一的结构表示,例如,图象、声音等,我们称之为非结构化数据。这些非结构化数据既能是一段包含大量附加信息(如排版信息)的文字信息,也可能是一段声音、图象,甚至是影像。对于结构化数据和非结构化数据的关系如图所示,非结构化数据包括结构化数据,但又不止是结构化数据;结构化数据属于非结构化数据,是非结构化数据的特例。一般来说,在人们的认识之中,关系数据库最主要的特征就是数据的结构化。然而,随着网络技术和软件技术的飞速发展,特别是Internet和Intranet技术的发展,使得非结构化数据的应用日趋扩大。关系数据库是高度结构化的,这种数据结构化使关系数据库具有冗余度最低、程式和数据独立性较高、易于扩充、易于编制应用程式的特点。不过,随着应用领域的不断拓展, 为满足应用对数据处理不断“苛刻”的需求, 人们开始发现关系数据库的许多限制和不足。因为文件数据库的基本元素就是文件本身,而数据库中的文件能同时包含结构化的和非结构化的信息,所以,文件数据库能够存储和管理类似文件这样的非结构化数据。特别是,Notes的对象库是个非常最佳的商业信息存储器,可用于高效地存储、传播、分配和管理这类信息。这类信息通常具有丰富的数据类型,如表格(能是从某个关系数据库或电子表软件中得到的)、格式化文本、WWW的页面、图像、OLE对象、或扫描的图象及传真件、声频或视频信号这样的多媒体信息。

  2、在结构上

  关系数据库是应用数学方法来处理数据库数据的,其数据模型也是建立在数学概念基础上的,在关系模型中,数据在用户观点下的逻辑结构就是一张二维表。而Lotus Notes是个文件数据库管理系统,文件数据库的基本元素就是文件。这里的文件和关系数据库中的记录相似。Notes文件的结构是由表单(form)定义的,而表单由一组各式各样的字段域组成。

  (1)域(Domain)和字段(Field)

  在关系数据库中,域(Domain)是属性值的集合,如:大于0小于150的正整数,长度小于25的字符串集合等等。而在文件数据库中,域(Field)的概念出目前表单对象中,域是表单上存储数据的单个元素,域决定了一个独立的文件能包含什么数据。虽二者的中文译文相同,但其实际意义和作用相差千里。反而在文件数据库中域的概念和关系数据库中的字段(Field)相类似。

21/212>
《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号