英语原文共 23 页,剩余内容已隐藏,支付完成后下载完整资料
数据库管理系统的介绍
数据库(有时拼成Database)也称为电子数据库,是指由计算机特别组织的用下快速查找和检索的任意的数据或信息集合。数据库与其它数据处理操作协同工作,其结构要有助于数据的存储、检索、修改和删除。数据库可存储在磁盘或磁带、光盘或某些辅助存储设备上。
一个数据库由一个文件或文件集合组成。这些文件中的信息可分解成一个个记录,每个记录有一个或多个域。域是数据库存储的基本单位,每个域一般含有由数据库描述的属于实体的一个方面或一个特性的信息。用户使用键盘和各种排序命令,能够快速查找、重排、分组并在查找的许多记录中选择相应的域,建立特定集上的报表。
数据库记录和文件的组织必须确保能对信息进行检索。早期的系统是顺序组织的(如:字母顺序、数字顺序或时间顺序);直接访问存储设备的研制成功使得通过索引随机访问数据成为可能。用户检索数据库信息的主要方法是query(查询)。通常情况下,用户提供一个字符串,计算机在数据库中寻找相应的字符序列,并且给出字符串在何处出现。比如,用户必须能在任意给定时间快速处理内部数据。而且,大型企业和其它组织倾向于建立许多独立的文件,其中包含相互关联的甚至重叠的数据,这些数据、处理活动经常需要和其它文件的数据相连。为满足这些要求,开发邮各种不同类型的数据库管理系统,如:非结构化的数据库、层次型数据库、网络型数据库、关系型数据库、面向对象型数据库。
在非结构化的数据库中,按照实体的一个简单列表组织记录;很多个人计算机的简易数据库是非结构的。层次型数据库按树型组织记录,每一层的记录分解成更小的属性集。层次型数据库在不同层的记录集之间提供一个单一链接。与此不同,网络型数据库在不同记录集之间提供多个链接,这是通过设置指向其它记录集的链或指针来实现的。网络型数据库的速度及多样性使其在企业中得到广泛应用。当文件或记录间的关系不能用链表达时,使用关系型数据库。一个表或一个“关系”,就是一个简单的非结构列表。多个关系可通过数学关系提供所需信息。面向对象的数据库存储并处理更复杂的称为对象的数据结构,可组织成有层次的类,其中的每个类可以继承层次链中更高一级类的特性,这种数据库结构最灵活,最具适应性。
很多数据库包含自然语言文本信息,可由个人在家中使用。小型及稍大的数据库在商业领域中占有越来越重要的地位。典型的商业应用包括航班预订、产品管理、医院的医疗记录以及保险公司的合法记录。最大型的数据库通常用天政府部门、企业、大专院校等。这些数据库存有诸如摘要、报表、成文的法规、通讯录、报纸、杂志、百科全书、各式目录等资料。索引数据库包含参考书目或用于找到相关书籍、期刊及其它参考文献的索引。目前有上万种可公开访问的数据库,内容包罗万象,从法律、医学、工程到新闻、时事、游戏、分类广告、指南等。科学家、医生、律师、财经分析师、股票经纪人等专家和各类研究者越来越多地依赖这些数据库从大量的信息中做快速的查找访问。
所有数据库(最简单的除外)中都有复杂的数据关系及其链接。处理与创建,访问以及维护数据库记录有关的复杂任务的系统软件包叫做数据库管理系统(DBMS)。DBMS软件包中的程序在数据库与其用户间建立接口。(这些用户可以是应用程序员,管理员及其他需要信息的人员和各种操作系统程序)。
DBMS可组织,处理和表示从数据库中选出的数据元。该功能使决策者能搜索,探查和查询数据库的内容,从而对在正规报告中没有的,不再出现的且无法预料的问题做出回答。这些问题最初可能是模糊的并且(或者)是定义不恰当的,但是人们可以浏览数据库直到获得所需的信息。简言之,DBMS将“管理”存储的数据项,并从公共数据库中汇集所需的数据项以回答非程序员的询问。
DBMS由3个主要部分组成:(1)存储子系统,用来存储和检索文件中的数据;(2)建模和操作子系统,提供组织数据以及添加,删除,维护,更新数据的方法;(3)用户和DBMS之间的接口。在提高数据库管理系统的价值和有效性方面正在展现以下一些重要发展趋势;
1.管理人员需要最新的信息以做出有效的决策。
2.客户需要越来越复杂的信息服务以及更多的有关其订单,发票和账号的当前信息。
3.用户发现他们可以使用传统的程序设计语言,在很短的一段时间内用数据库系统开发客户应用程序。
4.商业公司发现了信息的战略价值,他们利用数据库系统领先于竞争对手。
1. 数据库模型
数据库模型描述了在数据库中结构化和操纵数据的方法,模型的结构部分规定了数据如何被描述(例如树,表等):模型的操纵部分规定了数据添加,删除,显示,维护,打印,查找,选择,排序和更新等操作。
分层模型
第一个数据库管理系统使用的是分层模型,也就是说,将数据记录排列成树形结构。一些记录时根目录,在其他所有记录都有独立的父记录。树形结构的设计反映了数据被使用的顺序,也就是首先访问处于树根位置的记录,接下来是跟下面的记录,等等。
分层模型的开发是因为分层关系在商业应用中普遍存在,众所周知,一个组织结构图表就描述了一种分层关系:高层管理人员在最高层,中层管理人员在较低的层次,负责具体事务的雇员在最底层。值得注意的是,在一个严格的分层结构体系中,在每个管理层下可能有多个雇员或多个层次的雇员,但每个雇员只有一个管理者。分层结构数据的典型特征是数据之间的一对多关系。
在分层方法中,当数据库建立时,每一关系即被明确地定义。在分层数据库中的每一记录只能包含一个关键字段,任意两个字段之间只能有一种关系。由于数据并不总是遵循这种严格的分层关系,所以这样可能会出现一些问题。
关系模型
在1970年,数据库研究取得了重大突破。E.F.Codd提出了一种截然不同的数据库管理方法,使用表作为数据结构,称之为关系模型.
关系数据库是使用最广的数据结构,数据被组织成关系表,每个表由称作记录的行和称作字段的列组成。每个记录包含了专用项目的字段值。例如,在一个包含雇员信息的表中,一个记录包含了像一个人姓名和地址这样的字段的值。
结构化查询语言(SQL)是一种在关系型数据库中用于处理数据的查询语言。它是非过程化语言或者说是描述性的,用户只须指定一种类似于英语的描述,用来确定操作,记录或描述记录组合。查询优化器将这种描述翻译为过程执行数据库操作。
网状模型
网状模型在数据之间通过链接表结构创建关系,子记录可以链接到多个父记录。这种将记录和链接捆绑到一起的方法叫做指针,他是指向一个记录存储位置的存储地址。使用网状方法,一个子记录可以链接到一个关键记录,同时,它本身也可以作为一个关键记录。链接到其他一系列子记录。在早期,网状模型比其他模型更有性能优势;但是在今天,这种优势的特点只有在自动柜员机网络,航空预定系统等大容量和高速处理过程中才是最重要的。
分层和网状数据库都是专用程序,如果开发一个新的应用程序,那么在不同的应用程序中保持数据库的一致性是非常困难的。例如开发一个退休金程序,需要访问雇员数据,这一数据同时也被工资单程序访问。虽然数据是相同的,但是也必须建立新的数据库。
对象模型
最新的数据库管理方法是使用对象模型,记录由被称作对象的实体来描述,可以在对象中存储数据,同时提供方法或程序执行特定的任务。
对象模型使用的查询语言与开发数据库程序所使用的面向对象的程序设计语言是相同的,因为没有像SQL这样简单统一的查询语言,所以会产生一些问题。对象模型相对较新,仅有少数几个面向对象的数据库实例。它引起了人们的关注,因为选择面向对象程序设计语言的开发人员希望有一个基于在对象模型基础上的数据库。
分布式数据库
类似的,分布式数据库指的是数据库的各个部分分别存储在物理上相互分开的计算机上。分布式数据库的一个目的是访问数据信息时不必考虑其他位置。注意,一旦用户和数据分开,通信和网络则开始扮演重要角色。
分布式数据库需要部分常驻于大型主机上的软件,这些软件在大型机和个人计算机之间建立桥梁,并解决数据格式不兼容的问题。在理想情况下,大型主机上的数据库看起来像是一个大的信息仓库,而大部分处理则在个人计算机上完成。
分布式数据库系统的一个缺点是它们常以主机中心模型为基础,在这种模型中,大型主机看起来好像是雇主,而终端和个人计算机看起来好像是奴隶。但是这种方法也有许多优点:由于数据库的集中控制,前面提到的数据完整性和安全性的问题就迎刃而解了。当今的个人计算机,部门级计算机和分布式处理都需要计算机之间以及应用程序之间在相等或对等的基础上相互通信,在数据库中客户机/服务器模型为分布式数据库提供了框架结构。
利用相互连接的计算机上运行的数据库应用程序的一种方法是将程序分解为相互独立的部分。客户端是一个最终用户或通过网络申请资源的计算机程序,服务器是一个运行着的计算机软件,存储着那些通过网络传输的申请。当申请的资源是数据库中的数据时,客户机/服务器模型则为分布式数据库提供了框架结构。
文件服务器指的是一个通过网络提供文件访问的软件,专门的文件服务器是一台被指定为文件服务器的计算机。这是非常有用的,例如,如果文件比较大而且需要快速访问,在这种情况下,一台微型计算机或大型主机将被用作文件服务器。分布式文件服务器将文件分散到不同的计算机上,而不是将它们集中存放到专门的文件服务器上。
后一种文件服务器的优点包括在其他计算机上存储和检索文件的能力,并可以在每一台计算机上消除重复文件。然而,一个重要的缺点是每个读写请求需要在网络上传播,在刷新文件时可能出现问题。假设一个用户申请文件中的一个数据并修改它,同时另外一个用户也申请这个数据并修改它,解决这种问题的方法叫做数据锁定,即第一个申请使其他申请处于等待状态,直到完成第一个申请,其他用户可以读取这个数据,但不能修改。
数据库服务器是一个通过网络为数据库申请提供服务的软件,例如,假设某个用户在他的个人计算机上输入了一个数据查询命令,如果应用程序按照客户机/服务器模型设计,那么个人计算机上的查询语言通过网络传送数据库服务器上,当发现数据时发出通知。
在工程界也有许多分布式数据库的例子,如SUN公司的网络文件系统(NFS)被应用到计算机辅助工程应用程序中,将数据分散到由SUN工作站组成的网络上的不同硬盘之间。
分布式数据库是革命性的进步,因为把数据存放在被使用位置上是很合乎常理的。例如一个大公司不同部门之间的计算机,应该将数据存储在本地,然而,当被授权的管理人员需要整理部门数据时,数据应该能够被访问。数据库信息系统软件将保护数据库的安全性和完整性,对用户而言,分布式数据库和非分布式数据库看起来没有什么差别。
2. 数据库应用的生存周期
由于数据库系统是大型组织的信息系统的基础部分,因而,数据库应用程序生存周期和信息系统生存周期之间有着内在的联系。
数据库应用程序生存周期的各个阶段并没有非常严格的顺序,而是通过反馈环对前面的阶段进行重复。例如,在数据库设计时遇到的问题,可能需要额外的需求收集和分析。所有的阶段都存在反馈环。
数据库应用程序生存周期的各个阶段: |
数据库规划 |
系统定义 |
需求收集和分析 |
数据库设计 |
DBMS选择(可选) |
应用程序设计 |
建立原型(可选) |
实现 |
数据转换和加载 |
测试 |
运行维护 |
对于小型的数据库应用程序,只有少量的用户,这个生存周期并不需要非常复杂。然而,当设计—个大型的数据库应用程序,拥有几十甚至上千用户,使用上百个查询和应用程序时,这时的生存周期将会变得非常复杂。本章主要关注与开发中大型数据库应用程序相关的活动。下面的各节将更详细地讲述与数据库应用程序生存周期每一阶段相关的活动。
3. 数据库规划
数据库规划:数据库规划是一种管理活动,目的是使数据库应用程序的各个阶段可以尽可能高效和有效地实现。
数据库规划必须同信息系统的整体策略结合在—起。对信息系统策略的明确叙述包括以下三个主要问题:
■ 确定企业计划和目标,以及信息系统需要的后续定义。
■ 评价现有的信息系统,确定其具有的优点和缺点。
■ 评价可能会带来竞争优势的IT机遇。
数据库规划的重要的第一步是清晰定义项目的任务描述。任务描述定义了数据库应用程序的主要目标。任务描述是由组织内负责该数据库项目的人员(如主管或负责人)。任务描述可以帮助明确该项目的目标,并提供高效开发所需数据库应用程序的清晰路线。一旦定义了任务描述,下一步就是确定任务目标。每个任务目标都应当确定一个数据库必须支持的特殊任务。如果数据库支持所有的任务目标,那么任务描述也就实现了。任务描述和任务目标可能还包括一些额外的信息,通常包括要完成的工作、完成工作需要的资源和需要的资金。
数据库规划还应该包括相关标准的建立,如数据应如何收集、应该如何确定数据的格式、需要什么
全文共14276字,剩余内容已隐藏,支付完成后下载完整资料
资料编号:[144065],资料为PDF文档或Word文档,PDF文档可免费转换为Word
以上是毕业论文外文翻译,课题毕业论文、任务书、文献综述、开题报告、程序设计、图纸设计等资料可联系客服协助查找。