高级数据库:实现综合项目 (高级数据库综合项目)

随着信息技术的不断进步和发展,数据库技术的重要性也日益增强。面对不断增加的数据量和不同类型的数据,传统的数据库技术已经无法满足当今社会和企业的需求。高级数据库技术则成为了当前的趋势,具有更强的数据处理和管理能力。本文将探讨如何使用高级数据库技术实现一个综合项目。

一、选择数据库

在实现综合项目之前,首先需要选择一种合适的数据库。市场上各种类型的数据库繁多,可供选择的有关系型数据库、面向对象数据库、XML数据库等等。我们需要根据项目的实际需求来选择一种适合的数据库。

关系型数据库拥有稳定且成熟的数据库管理系统,能够实现高效的数据搜索和管理,广泛应用于企业数据系统中。面向对象数据库则更加适合复杂的数据结构和数据关系中的大规模应用。XML数据库是一种基于XML的数据管理系统,具有处理半结构化数据和支持复杂查询的优势,适合于Web应用程序和数据交换的应用领域。当然,还有很多其他类型的数据库,也需要视具体情况来选择。

二、设计数据库

在选择了适合的数据库之后,接下来需要进行数据库的设计。对于一个复杂的项目,需要考虑到数据的规模、结构以及数据之间的关系。一个好的数据库设计应该具有高效的数据存储和查询,同时还需要避免数据的冗余,保证数据的完整性和安全性。

数据库的设计应该包含以下几个步骤:

1. 确定数据库的范围和目的:需要考虑到数据库中存储的数据类型、数据量以及数据的使用目的。

2. 建立数据模型:确定数据类型,建立合理的数据模型,包括实体、属性、关系等。

3. 设计数据结构和约束:可以使用E-R模型和关系模型来建立表结构,同时使用主键、外键、唯一键等约束来保证数据的完整性和安全性。

4. 设计索引:可以对关键字段进行索引,优化数据库的查询性能。

5. 进行数据库的优化:最后需要对数据库进行优化,包括数据的划分、存储、备份等操作,保证数据的稳定性和可靠性。

三、实现综合项目

在数据库的设计完成后,就可以开始实现综合项目了。在实现项目时,需要了解项目的需求和功能,并根据项目的需要对数据库进行适当的调整。

1. 数据库连接:在项目中需要使用数据库进行数据操作,需要先建立数据库连接。不同的数据库连接方法略有不同,可以参考数据库的官方文档进行连接。

2. 数据操作:数据库的操作包括增加、删除、修改和查询。在实现项目时需要根据实际需要进行各种数据操作。具体的数据操作方式和相关语句可以参考数据库的官方文档。

3. 数据库事务:数据库事务机制可以保证数据的一致性和完整性,对于一些对数据一致性要求比较高的项目,需要使用数据库事务来保证数据的安全性。

4. 数据备份:数据备份是数据库管理中非常重要的一部分,可以保证数据的可靠性和恢复性,在实现项目时需要定时进行数据备份。

四、

本文主要介绍了使用高级数据库实现综合项目的步骤和方法。在实现项目时需要选择适合的数据库,进行合理的数据库设计,并根据项目的实际需求进行优化。同时需要了解数据库的连接、数据操作、事务和备份等内容,以保证数据的完整性和安全性。希望本文能够对大家使用高级数据库实现综合项目有所帮助。

相关问题拓展阅读:

数据库的发展简史

从1964年,世界上之一个数据库系统IDS(Integrated Data Storage,空裂集成数据存储)诞生开始,到今天数据库发展已经超过了60年。由于数据库行业最早由海外发起,导致国内的数据库主要由海外企业主导,而数据库在金融、电信、工业、互联网等各个方面的重要性越来越大。

随着国家政策的搜梁支持以及资本的持续关注,我国数据库行业有望迎来新一轮的增长,2023年我国数据库市场规模有望接近7百亿元。

目前,我国数据库产品主要以关系型为主,非关系型及混合型数据库较少。截止2023年6月,我国关系型数据库共有81个,非关系型数据库共有54个。在非关系型数据库中,键值型数据库占比更高,占非关系型数据库的9.26%。

现在国产企业正在更多地采取自研这条技术路线,经过多年发展,国产数据库软件产业已初具规模,目前国产数据库厂商分为两类,一类是传统数据库厂商,包括南大通用,武汉达梦,人大金仓,神舟通用等,一类是新兴的互联网巨斗漏闭头数据库,如阿里巴巴,腾讯,华为和金山云等,近年,无论在党政市场还是在商业市场,互联网巨头数据库是占有率提升都更快一些。

使用计算机后,随着数据处理量的增长,产生了数据管理技术。

数据管理技术的发展与计算机硬件(主要是外部存储器)系统软件及计算机应用的范围有着密切的联系。

数据管理技术的发展经历了以下四个阶段:人工管理阶段、文件系统阶段、数据库阶段和高级数据库技术阶段。

数据管理的诞生

数据库的历史可以追溯到五十年前,那时的数据管理非常简单。

通过大量的分类、比较和表格绘制的机器运行数百万穿孔卡片来进行数据的处理,其运行结果在纸上打印出来或者制成新的穿孔卡片。

而数据管理就是对所有这些穿孔卡片进行物理的储存和处理。

然而,1950 年雷明顿兰德公司(Remington Rand Inc)的一种叫做Univac I 的计算机推出了一种一秒钟可以输入数百条记录的磁带驱动器,从而引发了数据管理的革命。

1956 年IBM生产出之一个磁盘驱动器—— the Model 305 RAMAC。

此驱动器有50 个盘片,每个盘片直径是2 英尺,可以储存5MB的数据。

使用磁盘更大的好处是可以随机存取数据,而穿孔卡片和磁带只能顺序存取数据。

1951: Univac系统使用磁带和穿孔卡片作为数据存储。

数据库系统的萌芽出现于二十世纪60 年代。

当时计算机开始广泛地应用于数据管理,对数据的共享提出了越来越高的要求。

传统的文件系统已经不能满足人们的需要,能够统一管理和共享数据的数据库管理系统(DBMS)应运而生。

数据模型是数据库系统的核心和基础,各种DBMS软件都是基于某种数据模型的。

所以通常也按照数据模型的特点将传统数据库系统分成网状数据库、层次数据库和关系数据库三类。

最早出现的网状DBMS,是美国通用电气公司Bachman等人在1961年开发的IDS(Integrated Data Store)。

1964年通用电气公司(General ElectricCo.)的Charles Bachman 成功地开发出世界上之一个网状DBMS也即之一个数据库管理系统——集成数据存储(Integrated Data Store IDS),奠定了网状数据库的基础,并在当时得到了广泛的发行和应用。

IDS 具有数据模式和日志的特征,但它只能在GE主机上运行,并且数据库只有一个文件,数据库所有的表必须通过手工编码生成。

之后,通用电气公司一个客户——BF Goodrich Chemical 公司最终不得不重写了整个系统,并将重写后的系统命名为集成数据管理系统(IDMS)。

网状数据库模型对于层次和非层次结构的事物都能比较自然的模拟,在关系数据库出现之前网状DBMS要比层次DBMS用得普遍。

在数据库发展史上,网状数据团卖唤库占有重要地位。

层次型DBMS是紧随网络型数据库而出现的,最著名最典型的层次数据库系统是IBM 公司在1968 年开发的IMS(Information Management System),一种适合其主机的层次数据库。

这是IBM公司研制的最早的大型数据库系统程序产品。

从60年代末产生起,如今已经发展塌凯到IMSV6,提供群集、N路数据共享、消息队列共享等先进特性的支持。

这个具有30年历史的数据库产品在如今的WWW应用连接、商务智能应用中扮演着新的角色。

1973年Cullinane公司(也就是后来的Culli软件公司),开始出售Goodrich公司的IDMS改进版本,并且逐渐成为当时世界上更大配颂的软件公司。

网状数据库和层次数据库已经很好地解决了数据的集中和共享问题,但是在数据独立性和抽象级别上仍有很大欠缺。

用户在对这两种数据库进行存取时,仍然需要明确数据的存储结构,指出存取路径。

而后来出现的关系数据库较好地解决了这些问题。

1970年,IBM的研究员E.F.Codd博士在刊物《munication of the ACM》上发表了一篇名为“A Relational Model of Data for Large Shared Data Banks”的论文,提出了关系模型的概念,奠定了关系模型的理论基础。

尽管之前在1968年Childs已经提出了面向的模型,然而这篇论文被普遍认为是数据库系统历史上具有划时代意义的里程碑。

Codd的心愿是为数据库建立一个优美的数据模型。

后来Codd又陆续发表多篇文章,论述了范式理论和衡量关系系统的12条标准,用数学理论奠定了关系数据库的基础。

关系模型有严格的数学基础,抽象级别比较高,而且简单清晰,便于理解和使用。

但是当时也有人认为关系模型是理想化的数据模型,用来实现DBMS是不现实的,尤其担心关系数据库的性能难以接受,更有人视其为当时正在进行中的网状数据库规范化工作的严重威胁。

为了促进对问题的理解,1974年ACM牵头组织了一次研讨会,会上开展了一场分别以Codd和Bachman为首的支持和反对关系数据库两派之间的辩论。

这次著名的辩论推动了关系数据库的发展,使其最终成为现代数据库产品的主流。

1969年Edgar F.“Ted” Codd发明了关系数据库。

1970年关系模型建立之后,IBM公司在San Jose实验室增加了更多的研究人员研究这个项目,这个项目就是著名的System R。

其目标是论证一个全功能关系DBMS的可行性。

该项目结束于1979年,完成了之一个实现SQL的 DBMS。

然而IBM对IMS的承诺阻止了System R的投产,一直到1980年System R才作为一个产品正式推向市场。

IBM产品化步伐缓慢的三个原因:IBM重视信誉,重视质量,尽量减少故障;IBM是个大公司,官僚体系庞大,IBM内部已经有层次数据库产品,相关人员不积极,甚至反对。

然而同时,1973年加州大学伯克利分校的Michael Stonebraker和Eugene Wong利用System R已发布的信息开始开发自己的关系数据库系统Ingres。

他们开发的Ingres项目最后由Oracle公司、Ingres公司以及硅谷的其他厂商所商品化。

后来,System R和Ingres系统双双获得ACM的1988年“软件系统奖”。

1976年霍尼韦尔公司(Honeywell)开发了之一个商用关系数据库系统——Multics Relational Data Store。

关系型数据库系统以关系代数为坚实的理论基础,经过几十年的发展和实际应用,技术越来越成熟和完善。

其代表产品有Oracle、IBM公司的 DB2、微软公司的MS SQL Server以及Informix、ADABAS D等等。

1974年IBM的Ray Boyce和Don Chamberlin将Codd关系数据库的12条准则的数学定义以简单的关键字语法表现出来,里程碑式地提出了SQL(Structured Query Language)语言。

SQL语言的功能包括查询、操纵、定义和控制,是一个综合的、通用的关系数据库语言,同时又是一种高度非过程化的语言,只要求用户指出做什么而不需要指出怎么做。

SQL集成实现了数据库生命周期中的全部操作。

SQL提供了与关系数据库进行交互的方法,它可以与标准的编程语言一起工作。

自产生之日起,SQL语言便成了检验关系数据库的试金石,而SQL语言标准的每一次变更都指导着关系数据库产品的发展方向。

然而,直到二十世纪七十年代中期,关系理论才通过SQL在商业数据库Oracle和DB2中使用。

1986年,ANSI把SQL作为关系数据库语言的美国标准,同年公布了标准SQL文本。

SQL标准有3个版本。

基本SQL定义是ANSⅨ,“Database Language – SQL with Integrity Enhancement”,一般叫做SQL-89。

SQL-89定义了模式定义、数据操作和事务处理。

SQL- 89和随后的ANSⅨ,“Database Language-Embedded SQL”构成了之一代SQL标准。

ANSⅨ描述了一种增强功能的SQL,叫做SQL-92标准。

SQL-92包括模式操作,动态创建和SQL语句动态执行、网络环境支持等增强特性。

在完成SQL-92标准后,ANSI和ISO即开始合作开发SQL3标准。

SQL3的主要特点在于抽象数据类型的支持,为新一代对象关系数据库提供了标准。

1976年IBM E.F.Codd发表了一篇里程碑的论文“R系统:数据库关系理论”,介绍了关系数据库理论和查询语言SQL。

Oracle的创始人Ellison非常仔细地阅读了这篇文章,被其内容震惊,这是之一次有人用全面一致的方案管理数据信息。

作者E.F.Codd 1966年就发表了关系数据库理论,并在IBM研究机构开发原型,这个项目就是R系统,存取数据表的语言就是SQL。

Ellison看完后,敏锐意识到在这个研究基础上可以开发商用软件系统。

而当时大多数人认为关系数据库不会有商业价值。

Ellison认为这是他们的机会:他们决定开发通用商用数据库系统Oracle,这个名字来源于他们曾给中央情报局做过的项目名。

几个月后,他们就开发了Oracle 1.0。

但这只不过是个玩具,除了完成简单关系查询不能做任何事情,他们花相当长的时间才使Oracle变得可用,维持公司运转主要靠承接一些数据库管理项目和做顾问咨询工作。

而IBM却没有计划开发,为什么蓝色巨人放弃了这个价值上百亿的产品,原因有很多:IBM的研究人员大多是学术出身,他们最感兴趣的是理论,而非推向市场的产品,从学术上看,研究成果应公开发表论文和演讲能使他们成名,为什么不呢?还有一个很主要的原因就是IBM当时有一个销售得还不错的层次数据库产品IMS。

直到1985年IBM才发布了关系数据库DB2 ,Ellision那时已经成了千万富翁。

Ellison曾将IBM 选择Microsoft 的MS-DOS作为IBM-PC机的操作系统比为:“世界企业经营历史上最严重的错误,价值超过了上千亿美元。”IBM发表R系统论文,而且没有很快推出关系数据库产品的错误可能仅仅次之。

Oracle的市值在1996年就达到了280亿美元。

随着信息技术和市场的发展,人们发现关系型数据库系统虽然技术很成熟,但其局限性也是显而易见的:它能很好地处理所谓的“表格型数据”,却对技术界出现的越来越多的复杂类型的数据无能为力。

九十年代以后,技术界一直在研究和寻求新型数据库系统。

但在什么是新型数据库系统的发展方向的问题上,产业界一度是相当困惑的。

受当时技术风潮的影响,在相当一段时间内,人们把大量的精力花在研究“面向对象的数据库系统(object oriented database)”或简称“OO数据库系统”。

值得一提的是,美国Stonebraker教授提出的面向对象的关系型数据库理论曾一度受到产业界的青睐。

而Stonebraker本人也在当时被Informix花大价钱聘为技术总负责人。

然而,数年的发展表明,面向对象的关系型数据库系统产品的市场发展的情况并不理想。

理论上的完美性并没有带来市场的热烈反应。

其不成功的主要原因在于,这种数据库产品的主要设计思想是企图用新型数据库系统来取代现有的数据库系统。

这对许多已经运用数据库系统多年并积累了大量工作数据的客户,尤其是大客户来说,是无法承受新旧数据间的转换而带来的巨大工作量及巨额开支的。

另外,面向对象的关系型数据库系统使查询语言变得极其复杂,从而使得无论是数据库的开发商家还是应用客户都视其复杂的应用技术为畏途。

二十世纪六十年代后期出现了一种新型数据库软件:决策支持系统(DSS),其目的是让管理者在决策过程中更有效地利用数据信息。

于是在1970年,之一个联机分析处理工具——Express诞生了。

其他决策支持系统紧随其后,许多是由公司的IT部门开发出来的。

1985年,之一个商务智能系统(business intelligence)由Metaphor计算机系统有限公司为Procter & Gamble公司开发出来,主要是用来连接销售信息和零售的扫描仪数据。

同年, Pilot软件公司开始出售之一个商用客户/服务器执行信息系统——mand Center。

同样在这年,加州大学伯克利分校Ingres项目演变成Postgres,其目标是开发出一个面向对象的数据库。

此后一年, Graphael公司开发了之一个商用的对象数据库系统—Gbase。

1988年,IBM公司的研究者Barry Devlin和Paul Murphy发明了一个新的术语—信息仓库,之后,IT的厂商开始构建实验性的数据仓库。

1991年,W.H. Bill Inmon出版了一本“如何构建数据仓库”的书,使得数据仓库真正开始应用。

1991: W.H.“Bill” Inmon发表了”构建数据仓库”

二十世纪九十年代,随着基于PC的客户/服务器计算模式和企业软件包的广泛采用,数据管理的变革基本完成。

数据管理不再仅仅是存储和管理数据,而转变成用户所需要的各种数据管理的方式。

数据仓库与数据库有什么联系

数据仓库是基于数据库技术的,是研究如何将大规模复杂的数据更有效的组织用于方便使用的技术。这是我搞这么多年数据仓库的认识。

数据库

★数据库发展阶段大致划分为如下几个阶段:

人工管理阶段;

文件系统阶段;

数据库系统阶段;

高级数据库阶段。

当人们从不同的角度来描述这一概念时就有不同的定义(当然是描述性的)。例如,称数据库是一个“记录保存系统”(该定义强调了数据库是若干记录的)。又如称数据库是“人们为解决特定的任务,以一定的组织方式存储在一起的相关的数据的”(该定义侧重于数据的组织)。更有甚者称数据库是“一个数据仓库”。当然,这种说法虽然形象,但并不严谨。

严格地说,数据库是“按照数据结构来组织、存储和管理数据的仓库”。在经济管理的日常工作中,常常需要把某些相关的数据放进这样“仓库”,并根据管理的需要进行相应的处理。例如,企业或事业单位的人事部门常常要把本单位职工的基本情况(职工号、姓名、年龄、性别、籍贯、工资、简历等)存放在表20.6.3中,这张表就可以看成是一个数据库。有了这个”数据仓库”我们就可以根据需要随时查询某职工的基本情况,也可以查询工资在某个范围内的职工人数等等。这些工作如果都能在计算机上自动进行,那我们的人事管理就可以达到极高的水平。此外,在财务管理、仓库管理、生产管理中也需要建立众多的这种”数据库”,使其可以利用计算机实现财务、仓库、生产的自动化管理。

J.Martin给数据库下了一个比较完整的定义:数据库是存储在一起的相关数据的,这些数据是结构化的,无有害的或不必要的冗余,并为多种应用服务;数据的存储独立于使用它的程序;对数据库插入新数据,修改和检索原有数据均能按一种公用的和可控制的方式进行。当某个系统中存在结构上完全分开的若干个数据库时,则该系统包含一个“数据库”。

· 数据库的优点

使用数据库可以带来许多好处:如减少了数据的冗余度,从而大大地节省了数据的存储空间;实现数据资源的充分共享等等。此外,数据库技术还为用户提供了非常简便的使用手段使用户易于编写有关数据库应用程序。特别是近年来推出的微型计算机关系数据库管理系统dBASELL,操作直观,使用灵活,编程方便,环境适应广泛(一般的十六位机,如IBM/PC/XT,国产长城0520等均可运行种软件),数据处理能力极强。数据库在我国正得到愈来愈广泛的应用,必将成为经济管理的有力工具。

数据库是通过数据库管理系统(DBMS-DATA BASE MANAGEMENT SYSTEM)软件来实现数据的存储、管理与使用的dBASELL就是一种数据库管理系统软件。

· 数据库结构与数据库种类

数据库通常分为层次式数据库、网络式数据库和关系式数据库三种。而不同的数据库是按不同的数据结构来联系和组织的。

1.数据结构模型

(1)数据结构

所谓数据结构是指数据的组织形式或数据之间的联系。如果用D表示数据,用R表示数据对象之间存在的关系,则将DS=(D,R)称为数据结构。例如,设有一个号码簿,它记录了n个人的名字和相应的号码。为了方便地查找某人的号码,将人名和号码按字典顺序排列,并在名字的后面跟随着对应的号码。这样,若要查找某人的号码(假定他的名字的之一个字母是Y),那么只须查找以Y开头的那些名字就可以了。该例中,数据的D就是人名和号码,它们之间的联系R就是按字典顺序的排列,其相应的数据结构就是DS=(D,R),即一个数组。(2)数据结构种类

数据结构又分为数据的逻辑结构和数据的物理结构。数据的逻辑结构是从逻辑的角度(即数据间的联系和组织方式)来观察数据,分析数据,与数据的存储位置无关。数据的物理结构是指数据在计算机中存放的结构,即数据的逻辑结构在计算机中的实现形式,所以物理结构也被称为存储结构。本节只研究数据的逻辑结构,并将反映和实现数据联系的方法称为数据模型。

目前,比较流行的数据模型有三种,即按图论理论建立的层次结构模型和网状结构模型以及按关系理论建立的关系结构模型。

2.层次、网状和关系数据库系统

(1)层次结构模型

层次结构模型实质上是一种有根结点的定向有序树(在数学中”树”被定义为一个无回的连通图)。例如图20.6.4是一个高等学校的组织结构图。这个组织结构图像一棵树,校部就是树根(称为根结点),各系、专业、教师、学生等为枝点(称为结点),树根与枝点之间的联系称为边,树根与边之比为1:N,即树根只有一个,树枝有N个。这种数据结构模型的一般结构见图20.6.5所示。

图20.6.4 高等学校的组织结构图 图20.6.5 层次结构模型

图20.6.5中,Ri(i=1,2,…6)代表记录(即数据的),其中R1就是根结点(如果Ri看成是一个家族,则R1就是祖先,它是R2、R3、R4的双亲,而R2、R3、R4互为兄弟),R5、R6也是兄弟,且其双亲为R3。R2、R4、R5、R6又被称为叶结点(即无子女的结点)。这样,Ri(i=1,2,…6)就组成了以R1为树根的一棵树,这就是一个层次数据结构模型。

按照层次模型建立的数据库系统称为层次模型数据库系统。IMS(Information Manage-mentSystem)是其典型代表。

(2)网状结构模型

在图20.6.6中,给出了某医院医生、病房和病人之间的联系。即每个医生负责治疗三个病人,每个病房可住一到四个病人。如果将医生看成是一个数据,病人和病房分别是另外两个数据,那么医生、病人和病房的比例关系就是M:N:P(即M个医生,N个病人,P间病房)。这种数据结构就是网状数据结构,它的一般结构模型如图20.6.7所示。在图中,记录Ri(i=1,2,8)满足以下条件:

①可以有一个以上的结点无双亲(如R1、R2、R3)。

②至少有一个结点有多于一个以上的双亲。在”医生、病人、病房”例中,”医生有若干个结点(M个医生结点)无”双亲”,而”病房”有P个结点(即病房),并有一个以上的”双亲”(即病人)。

图20.6.6 医生、病房和病人之间的关系

图20.6.7 网状结构模型

按照网状数据结构建立的数据库系统称为网状数据库系统,其典型代表是DG(Data Base Task Group)。用数学方法可将网状数据结构转化为层次数据结构。

(3)关系结构模型

关系式数据结构把一些复杂的数据结构归结为简单的二元关系(即二维表格形式)。例如某单位的职工关系就是一个二元关系(见表20.6.8)。这个四行六列的表格的每一列称为一个字段(即属性),字段名相当于标题栏中的标题(属性名称);表的每一行是包含了六个属性(工号、姓名、年龄、性别、职务、工资)的一个六元组,即一个人的记录。这个表格清晰地反映出该单位职工的基本情况。

表20.6.8 职工基本情况

通常一个m行、n列的二维表格的结构如表20.6.9所示。

表中每一行表示一个记录值,每一列表示一个属性(即字段或数据项)。该表一共有m个记录。每个记录包含n个属性。

作为一个关系的二维表,必须满足以下条件:

(1)表中每一列必须是基本数据项(即不可再分解)。(2)表中每一列必须具有相同的数据类型(例如字符型或数值型)。(3)表中每一列的名字必须是唯一的。(4)表中不应有内容完全相同的行。(5)行的顺序与列的顺序不影响表格中所表示的信息的含义。

由关系数据结构组成的数据库系统被称为关系数据库系统。

在关系数据库中,对数据的操作几乎全部建立在一个或多个关系表格上,通过对这些关系表格的分类、合并、连接或选取等运算来实现数据的管理。dBASEII就是这类数据库管理系统的典型代表。对于一个实际的应用问题(如人事管理问题),有时需要多个关系才能实现。用dBASEII建立起来的一个关系称为一个数据库(或称数据库文件),而把对应多个关系建立起来的多个数据库称为数据库系统。dBASEII的另一个重要功能是通过建立命令文件来实现对数据库的使用和管理,对于一个数据库系统相应的命令序列文件,称为该数据库的应用系统。因此,可以概括地说,一个关系称为一个数据库,若干个数据库可以构成一个数据库系统。数据库系统可以派生出各种不同类型的辅助文件和建立它的应用系统。

· 数据库的要求与特性

为了使各种类型的数据库系统能够充分发挥它们的优越性,必须对数据库管理系统的使用提出一些明确的要求。

1.建立数据库文件的要求

(1)尽量减少数据的重复,使数据具有最小的冗余度。计算机早期应用中的文件管理系统,由于数据文件是用户各自建立的,几个用户即使有许多相同的数据也得放在各自的文件中,因而造成存储的数据大量重复,浪费存储空间。数据库技术正是为了克服这一缺点而出现的,所以在组织数据的存储时应避免出现冗余。

(2)提高数据的利用率,使众多用户都能共享数据资源。

(3)注意保持数据的完整性。这对某些需要历史数据来进行预测、决策的部门(如统计局、银行等)特别重要。

(4)注意同一数据描述方法的一致性,使数据操作不致发生混乱。如一个人的学历在人事档案中是大学毕业,而在科技档案中却是大学程度,这样就容易造成混乱。

(5)对于某些需要保密的数据,必须增设保密措施。

(6)数据的查找率高,根据需要数据应能被及时维护。

2.数据库文件的特征

无论使用哪一种数据库管理系统,由它们所建立的数据库文件都可以看成是具有相同性质的记录的,因而这些数据库文件都有相同的特性:

(1)文件的记录格式相同,长度相等。

(2)不同的行是不同的记录,因而具有不同的内容。

(3)不同的列表示不同的字段名,同一列中的数据的性质(属性)相同。

(4)每一行各列的内容是不能分割的,但行的顺序和列的顺序不影响文件内容的表达。

3.文件的分类

对文件引用最多的是主文件和事物文件。其他的文件分类还包括表文件、备份文件、档案的输出文件等。下面将讲述这些文件。

(1)主文件。主文件是某特定应用领域的永久性的数据资源。主文件包含那些被定期存取以提供信息和经常更新以反映最新状态的记录。典型的主文件有库存文件、职工主文件和收帐主文件等。

(2)事务文件。事务文件包含着作为一个信息系统的数据活动(事务)的那些记录。这些事务被分批以构成事务文件。例如,从每周工资卡上录制下来的数分批存放在一个事务文件上,然后对照工资清单文件进行处理以便打印出工资支票和工资记录簿。

(3)表文件。表文件是一些表格。之所以单独建立表文件而不把表设计在程序中是为了便于修改。例如,一个公用事业公司的税率表或国内税务局的税率就可以存储在表中文件。

(4)备用文件。备用文件是现有生产性文件的一个复制品。一旦生产性文件受到破坏,利用备用文件就可以重新建立生产性文件。

(5)档案文件。档案文件不是提供当前处理使用的,而是保存起来作为历史参照的。例如,国内税务局(IRS)可能要求检查某个人最近15年的历史。实际上,档案文件恰恰是在给定时间内工作的一个”快照”。

(6)输出文件。输出文件包含将要打印在打印机上的、显在屏幕上的或者绘制在绘图仪上的那些信息的数值映象。输出文件可以是”假脱机的”(存储在辅存设备上),当输出设备可用时才进行实际的输出。

数据仓库

1.

数据仓库是在企业管理和决策中面向主题的、集成的、与时间相关的、不可修改的数据

数据仓库,英文名称为Data Warehouse,可简写为DW。

数据仓库之父Bill Inmon在1991年出版的“Building the Data Warehouse”一书中所提出的定义被广泛接受——数据仓库(Data Warehouse)是一个面向主题的(Subject Oriented)、集成的(Integrated)、相对稳定的(Non-Volatile)、反映历史变化(Time Variant)的数据,用于支持管理决策(Decision Making Support)。

◆面向主题:操作型数据库的数据组织面向事务处理任务,各个业务系统之间各自分离,而数据仓库中的数据是按照一定的主题域进行组织的。

◆集成的:数据仓库中的数据是在对原有分散的数据库数据抽取、清理的基础上经过系统加工、汇总和整理得到的,必须消除源数据中的不一致性,以保证数据仓库内的信息是关于整个企业的一致的全局信息。

◆相对稳定的:数据仓库的数据主要供企业决策分析之用,所涉及的数据操作主要是数据查询,一旦某个数据进入数据仓库以后,一般情况下将被长期保留,也就是数据仓库中一般有大量的查询操作,但修改和删除操作很少,通常只需要定期的加载、刷新。

◆反映历史变化:数据仓库中的数据通常包含历史信息,系统记录了企业从过去某一时点(如开始应用数据仓库的时点)到目前的各个阶段的信息,通过这些信息,可以对企业的发展历程和未来趋势做出定量分析和预测。

数据仓库是一个过程而不是一个项目。

数据仓库系统是一个信息提供平台,他从业务处理系统获得数据,主要以星型模型和雪花模型进行数据组织,并为用户提供各种手段从数据中获取信息和知识。

从功能结构化分,数据仓库系统至少应该包含数据获取(Data Acquisition)、数据存储(Data Storage)、数据访问(Data Access)三个关键部分。

什么是数据仓库

(转载自北大高科网站,

)

目前,数据仓库一词尚没有一个统一的定义,著名的数据仓库专家W.H.Inmon在其著作《Building the Data Warehouse》一书中给予如下描述:数据仓库(Data Warehouse)是一个面向主题的(Subject Oriented)、集成的(Integrate)、相对稳定的(Non-Volatile)、反映历史变化(Time Variant)的数据,用于支持管理决策。对于数据仓库的概念我们可以从两个层次予以理解,首先,数据仓库用于支持决策,面向分析型数据处理,它不同于企业现有的操作型数据库;其次,数据仓库是对多个异构的数据源有效集成,集成后按照主题进行了重组,并包含历史数据,而且存放在数据仓库中的数据一般不再修改。

根据数据仓库概念的含义,数据仓库拥有以下四个特点:

1、面向主题。操作型数据库的数据组织面向事务处理任务,各个业务系统之间各自分离,而数据仓库中的数据是按照一定的主题域进行组织。主题是一个抽象的概念,是指用户使用数据仓库进行决策时所关心的重点方面,一个主题通常与多个操作型信息系统相关。

2、集成的。面向事务处理的操作型数据库通常与某些特定的应用相关,数据库之间相互独立,并且往往是异构的。而数据仓库中的数据是在对原有分散的数据库数据抽取、清理的基础上经过系统加工、汇总和整理得到的,必须消除源数据中的不一致性,以保证数据仓库内的信息是关于整个企业的一致的全局信息。

3、相对稳定的。操作型数据库中的数据通常实时更新,数据根据需要及时发生变化。数据仓库的数据主要供企业决策分析之用,所涉及的数据操作主要是数据查询,一旦某个数据进入数据仓库以后,一般情况下将被长期保留,也就是数据仓库中一般有大量的查询操作,但修改和删除操作很少,通常只需要定期的加载、刷新。

4、反映历史变化。操作型数据库主要关心当前某一个时间段内的数据,而数据仓库中的数据通常包含历史信息,系统记录了企业从过去某一时点(如开始应用数据仓库的时点)到目前的各个阶段的信息,通过这些信息,可以对企业的发展历程和未来趋势做出定量分析和预测。

企业数据仓库的建设,是以现有企业业务系统和大量业务数据的积累为基础。数据仓库不是静态的概念,只有把信息及时交给需要这些信息的使用者,供他们做出改善其业务经营的决策,信息才能发挥作用,信息才有意义。而把信息加以整理归纳和重组,并及时提供给相应的管理决策人员,是数据仓库的根本任务。因此,从产业界的角度看,数据仓库建设是一个工程,是一个过程。

整个数据仓库系统是一个包含四个层次的体系结构,具体由下图表示。

数据仓库系统体系结构

·数据源:是数据仓库系统的基础,是整个系统的数据源泉。通常包括企业内部信息和外部信息。内部信息包括存放于RDBMS中的各种业务处理数据和各类文档数据。外部信息包括各类法律法规、市场信息和竞争对手的信息等等;

·数据的存储与管理:是整个数据仓库系统的核心。数据仓库的真正关键是数据的存储和管理。数据仓库的组织管理方式决定了它有别于传统数据库,同时也决定了其对外部数据的表现形式。要决定采用什么产品和技术来建立数据仓库的核心,则需要从数据仓库的技术特点着手分析。针对现有各业务系统的数据,进行抽取、清理,并有效集成,按照主题进行组织。数据仓库按照数据的覆盖范围可以分为企业级数据仓库和部门级数据仓库(通常称为数据集市)。

·OLAP服务器:对分析需要的数据进行有效集成,按多维模型予以组织,以便进行多角度、多层次的分析,并发现趋势。其具体实现可以分为:ROLAP、MOLAP和HOLAP。ROLAP基本数据和聚合数据均存放在RDBMS之中;MOLAP基本数据和聚合数据均存放于多维数据库中;HOLAP基本数据存放于RDBMS之中,聚合数据存放于多维数据库中。

·前端工具:主要包括各种报表工具、查询工具、数据分析工具、数据挖掘工具以数据挖掘及各种基于数据仓库或数据集市的应用开发工具。其中数据分析工具主要针对OLAP服务器,报表工具、数据挖掘工具主要针对数据仓库。

目前,数据仓库一词尚没有一个统一的定义,著名的数据仓库专家W.H.Inmon在其著作《Building the Data Warehouse》一书中给予如下描述:数据仓库(Data Warehouse)是一个面向主题的(Subject Oriented)、集成的(Integrate)、相对稳定的(Non-Volatile)、反映历史变化(Time Variant)的数据,用于支持管理决策。对于数据仓库的概念我们可以从两个层次予以理解,首先,数据仓库用于支持决策,面向分析型数据处理,它不同于企业现有的操作型数据库;其次,数据仓库是对多个异构的数据源有效集成,集成后按照主题进行了重组,并包含历史数据,而且存放在数据仓库中的数据一般不再修改。多维

数据仓库的组成

数据仓库数据库

是整个数据仓库环境的核心,是数据存放的地方和提供对数据检索的支持。相对于操纵型数据库来说其突出的特点是对海量数据的支持和快速的检索技术。

数据抽取工具

把数据从各种各样的存储方式中拿出来,进行必要的转化、整理,再存放到数据仓库内。对各种不同数据存储方式的访问能力是数据抽取工具的关键,应能生成COBOL程序、MVS作业控制语言(JCL)、UNIX脚本、和SQL语句等,以访问不同的数据。数据转换都包括,删除对决策应用没有意义的数据段;转换到统一的数据名称和定义;计算统计和衍生数据;给缺值数据赋给缺省值;把不同的数据定义方式统一。

元数据

元数据是描述数据仓库内数据的结构和建立方法的数据。可将其按用途的不同分为两类,技术元数据和商业元数据。

技术元数据是数据仓库的设计和管理人员用于开发和日常管理数据仓库是用的数据。包括:数据源信息;数据转换的描述;数据仓库内对象和数据结构的定义;数据清理和数据更新时用的规则;源数据到目的数据的映射;用户访问权限,数据备份历史记录,数据导入历史记录,信息发布历史记录等。

商业元数据从商业业务的角度描述了数据仓库中的数据。包括:业务主题的描述,包含的数据、查询、报表;

元数据为访问数据仓库提供了一个信息目录(informationdirectory),这个目录全面描述了数据仓库中都有什么数据、这些数据怎么得到的、和怎么访问这些数据。是数据仓库运行和维护的中心,数据仓库服务器利用他来存贮和更新数据,用户通过他来了解和访问数据。

访问工具

为用户访问数据仓库提供手段。有数据查询和报表工具;应用开发工具;管理信息系统(EIS)工具;在线分析(OLAP)工具;数据挖掘工具。

数据集市(DataMarts)

为了特定的应用目的或应用范围,而从数据仓库中独立出来的一部分数据,也可称为部门数据或主题数据(subjectarea)。在数据仓库的实施过程中往往可以从一个部门的数据集市着手,以后再用几个数据集市组成一个完整的数据仓库。需要注意的就是再实施不同的数据集市时,同一含义的字段定义一定要相容,这样再以后实施数据仓库时才不会造成烦。

数据仓库管理:安全和特权管理;跟踪数据的更新;数据质量检查;管理和更新元数据;审计和报告数据仓库的使用和状态;删除数据;复制、分割和分发数据;备份和恢复;存储管理。

信息发布系统:把数据仓库中的数据或其他相关的数据发送给不同的地点或用户。基于Web的信息发布系统是对付多用户访问的最有效方法。

设计数据仓库的九个步骤

)选择合适的主题(所要解决问题的领域)

)明确定义fact表

)确定和确认维

)choosingthefacts

)计算并存储fact表中的衍生数据段

)roundingoutthedimensiontables

)choosingthedurationofthedatabase

)theneedtotrackslowlychangingdimensions

)确定查询优先级和查询模式。

技术上

硬件平台:数据仓库的硬盘容量通常要是操作数据库硬盘容量的2-3倍。通常大型机具有更可靠的性能和和稳定性,也容易与历史遗留的系统结合在一起;而PC服务器或UNIX服务器更加灵活,容易操作和提供动态生成查询请求进行查询的能力。选择硬件平台时要考虑的问题:是否提供并行的I/O吞吐?对多CPU的支持能力如何?

数据仓库DBMS:他的存储大数据量的能力、查询的性能、和对并行处理的支持如何。

网络结构:数据仓库的实施在那部分网络段上会产生大量的数据通信,需不需要对网络结构进行改进。

实现上

建立数据仓库的步骤

1)收集和分析业务需求

2)建立数据模型和数据仓库的物理设计

3)定义数据源

4)选择数据仓库技术和平台

5)从操作型数据库中抽取、净化、和转换数据到数据仓库

6)选择访问和报表工具

7)选择数据库连接软件

8)选择数据分析和数据展示软件

9)更新数据仓库

数据抽取、清理、转换、和移植

1)数据转换工具要能从各种不同的数据源中读取数据。

2)支持平面文件、索引文件、和legacyDBMS。

3)能以不同类型数据源为输入整合数据。

4)具有规范的数据访问接口

5)更好具有从数据字典中读取数据的能力

6)工具生成的代码必须是在开发环境中可维护的

7)能只抽取满足指定条件的数据,和源数据的指定部分

8)能在抽取中进行数据类型转换和字符集转换

9)能在抽取的过程中计算生成衍生字段

10)能让数据仓库管理系统自动调用以定期进行数据抽取工作,或能将结果生成平面文件

11)必须对软件供应商的生命力和产品支持能力进行仔细评估

主要数据抽取工具供应商:Prisolutions.Carleton’sPASSPORT.InformationBuildersInc.’s

EDA/SQL.SASInstituteInc.

高级数据库综合项目的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于高级数据库综合项目,高级数据库:实现综合项目,数据库的发展简史,数据仓库与数据库有什么联系的信息别忘了在本站进行查找喔。


数据运维技术 » 高级数据库:实现综合项目 (高级数据库综合项目)