数据库名词解释
数据管理不再仅仅是存储和管理数据,而是转变为用户需要的各种数据管理方式。数据库的类型很多,从最简单的有各种数据的表格,到可以存储海量数据的大型数据库系统,在各个方面都得到了广泛的应用。
在信息社会中,充分有效地管理和利用各种信息资源是科学研究和决策管理的前提。数据库技术是管理信息系统、办公自动化系统、决策支持系统等各种信息系统的核心部分,是科学研究和决策管理的重要技术手段。
数据库的定义:?定义1:数据库是建立在计算机存储设备上,按照数据结构组织、存储和管理数据的仓库。
简单来说,可以看作是电子文件柜——存放电子文件的地方。用户可以添加、截取、更新和删除文档中的数据。
在经济管理的日常工作中,往往需要将一些相关数据放入这样的“仓库”,根据管理的需要进行处理。
比如企事业单位的人事部门,往往存储着员工的基本信息(工号、姓名、年龄、性别、籍贯、工资、简历等。)放在一个表中,可以看作是一个数据库。有了这个“数据仓库”,我们可以根据需要随时查询一个员工的基本情况,还可以查询工资在一定范围内的员工人数,等等。如果这些工作都可以在计算机上自动进行,那么我们的人事管理就可以达到一个很高的水平。此外,在财务管理、仓库管理和生产管理中,需要建立许多这样的“数据库”,以便利用计算机实现财务、仓库和生产的自动化管理。
定义2:
严格地说,数据库是长期存储在计算机中的有组织的、可共享的数据集合。数据库中的数据是指以一定的数据模型组织、描述和存储在一起,具有尽可能少的冗余,高数据独立性和可扩展性,并在一定范围内被多个用户共享的特性。
这类数据集有以下特点:尽可能不重复,以最优的方式服务于特定组织的多种应用。其数据结构独立于使用它的应用程序,数据的添加、删除、修改和检索由统一的软件管理和控制。从发展历史来看,数据库是数据管理的高级阶段,是由文件管理系统发展起来的。[1]?[2]?
数据库处理系统:数据库是一个单位或一个应用领域的通用数据处理系统,存储着属于企事业单位、团体和个人的相关数据的集合。数据库中的数据是从全局的角度建立的,并按照一定的数据模型进行组织、描述和存储。它的结构基于数据之间的自然关系,因此可以提供所有必要的访问路径,数据不再针对某个应用,而是针对整个组织,具有整体的结构特征。
数据库中的数据是为许多用户共享他们的信息而建立的,并且已经摆脱了特定程序的限制和约束。不同的用户可以根据自己的用途使用数据库中的数据;多个用户可以同时共享数据库中的数据资源,即不同的用户可以同时访问数据库中的相同数据。数据共享不仅满足了用户对信息内容的要求,也满足了用户之间信息交流的要求。
数据库的基本结构:数据库的基本结构分为三个层次,反映了观察数据库的三种不同视角。
由内部模式组成的数据库称为物理数据库;由概念模式组成的数据称为概念数据库。由外部模式组成的数据库称为用户数据库。
(1)物理数据层。
它是数据库的最内层,是实际存储在物理存储设备上的数据集合。这些数据是原始数据,由用户处理,由内部模式描述的指令操作处理的位串、字符和字组成。
⑵概念数据层。
它是数据库的中间层,是数据库的整体逻辑表示。指出每个数据的逻辑定义和数据之间的逻辑关系是存储记录的集合。它涉及数据库中所有对象的逻辑关系,而不是它们的物理条件,是数据库管理员概念下的数据库。
(3)用户数据层。
它是用户看到和使用的数据库,代表一个或一些特定用户使用的数据集,即逻辑记录集。
不同级别的数据库之间的关系通过映射进行转换。
该数据库的主要特点是:(1)实现了数据共享。
数据共享包括所有用户可以同时访问数据库中的数据,用户可以通过接口以各种方式使用数据库并提供数据共享。
⑵减少数据冗余。
与文件系统相比,由于数据库实现了数据共享,避免了用户单独创建应用文件。减少大量重复数据,降低数据冗余,保持数据一致性。
(3)数据的独立性
数据的独立性包括逻辑独立性(数据库和应用程序的逻辑结构相互独立)和物理独立性(数据物理结构的变化不影响数据的逻辑结构)。
(4)数据集中控制。
在文件管理模式下,数据处于去中心化状态,不同的用户或者同一个用户在不同的进程中对自己的文件无所作为。数据库可以用来集中控制和管理数据,数据模型可以用来表达各种数据的组织和数据之间的关系。
⑸数据的一致性和可维护性,确保数据的安全性和可靠性。
主要包括:①安全控制:防止数据丢失、错误更新和未授权使用;②完整性控制:保证数据的正确性、有效性和兼容性;③并发控制:在同一时间段内,允许对数据的多次访问,可以防止用户之间的异常交互。
[6]故障恢复
数据库管理系统提供的一套方法可以及时发现并修复故障,从而防止数据被破坏。数据库系统可以尽快恢复数据库系统运行期间发生的故障,这些故障可能是物理或逻辑错误。比如系统误操作导致的数据错误。
数据库的数据类型:数据库通常分为三种类型:层次数据库、网络数据库和关系数据库。不同的数据库按照不同的数据结构连接和组织。
1.数据结构模型
(1)数据结构
所谓数据结构,是指数据的组织形式或者数据之间的联系。
如果D表示数据,R表示数据对象之间的关系集,则DS=(D,R)称为数据结构。
比如有一个电话簿,里面记录了n个人的名字和对应的电话号码。为了方便查找某人的电话号码,姓名和号码按字典顺序排列,对应的电话号码后接姓名。这样,如果你想找一个人的电话号码(假设他名字的第一个字母是Y),你只需要找到那些以Y开头的名字就可以了,在这个例子中,数据集D是名字和电话号码,它们之间的关系R是按照字典顺序排列的,它对应的数据结构是DS=(D,R),也就是一个数组。
⑵数据结构类型
数据结构分为数据的逻辑结构和物理结构。
数据的逻辑结构是从逻辑的角度(即数据的联系和组织)来观察和分析数据,而不考虑数据的存储位置;数据的物理结构是指存储在计算机中的数据的结构,即数据的逻辑结构在计算机中的实现形式,所以物理结构也叫存储结构。
这里只研究数据的逻辑结构,反映和实现数据连接的方法称为数据模型。
目前流行的数据模型有三种,分别是根据图论建立的层次结构模型和网络结构模型以及根据关系理论建立的关系结构模型。
2.分层、网状和关系数据库系统
(1)层次结构模型
层次结构模型本质上是一棵有根节点的有向有序树(数学上“树”定义为无环连通图)。下图是一所高等院校的组织架构。这个组织结构图就像一棵树。学校系是根(称为根节点),系、专业、老师、学生是分支(称为节点),根与分支的连接称为边,根与边的比值为1:N,即只有一个根,N个分支。
按照层次模型建立的数据库系统称为层次模型数据库系统。Ims(信息管理系统)就是其典型代表。
⑵网络结构模型
按照网状数据结构建立的数据库系统称为网状数据库系统,其典型代表是DBTG(Database Task Group)。网格数据结构可以通过数学方法转换成分层数据结构。
⑶关系结构模型
关系数据结构将一些复杂的数据结构简化为简单的二元关系(即二维表格形式)。比如某单位的员工关系就是二元关系。
由关系数据结构组成的数据库系统称为关系数据库系统。
在关系数据库中,几乎所有对数据的操作都是基于一个或多个关系表,通过对这些关系表进行分类、合并、连接或选择来实现数据管理。
DBASE是这类数据库管理系统的典型代表。对于一个实际应用问题(比如人事管理),有时需要多种关系才能实现。用dBASE建立的一个关系称为数据库(或数据库文件),对应多个关系建立的多个数据库称为数据库系统。dBASE的另一个重要功能是通过创建命令文件来使用和管理数据库。数据库系统对应的命令序列文件称为数据库的应用系统。
所以简单来说,一个关系叫做一个数据库,几个数据库可以组成一个数据库系统。数据库系统可以派生出各种类型的辅助文件,建立其应用系统。
数据库发展简史:1数据库的技术发展
使用计算机后,随着数据处理能力的增加,数据管理技术应运而生。数据管理技术的发展与计算机硬件(主要是外存)、系统软件和计算机应用范围密切相关。数据管理技术的发展经历了四个阶段:手工管理阶段、文件系统阶段、数据库阶段和高级数据库技术阶段。
2数据管理的诞生
数据库的历史可以追溯到五十年前,那时数据管理非常简单。通过大量的机器进行分类、比较和制表,运行数百万张穿孔卡处理数据,并将运行结果打印在纸上或制成新的穿孔卡。数据管理是所有这些穿孔卡片的物理存储和处理。然而,在1950年,雷明顿兰德公司一台名为Univac I的计算机推出了一种可以在一秒钟内输入数百条记录的磁带机,从而引发了一场数据管理的革命。1956 IBM生产了第一台磁盘驱动器——305型RAMAC。这个驱动器有50个磁盘,每个磁盘的直径为2英尺,可以存储5MB的数据。使用磁盘最大的优点是可以随机存取数据,而穿孔卡和磁带只能顺序存取数据。
1951: Univac系统使用磁带和穿孔卡片作为数据存储。
数据库系统的萌芽出现在20世纪60年代。当时计算机开始广泛应用于数据管理,对数据共享提出了越来越高的要求。传统的文件系统已经不能满足人们的需求,能够统一管理和共享数据的数据库管理系统(DBMS)应运而生。数据模型是数据库系统的核心和基础,各种DBMS软件都基于某种数据模型。因此,根据数据模型的特点,传统的数据库系统通常分为三类:网状数据库、层次数据库和关系数据库。
最早的mesh DBMS是美国通用电气公司的Bachman等人在1961年开发的IDS(集成数据存储)。1964年,美国通用电气公司的查尔斯·巴克曼(Charles Bachman)成功开发了世界上第一个mesh DBMS,即第一个数据库管理系统——集成数据存储IDS,奠定了mesh数据库的基础,并在当时得到了广泛的分布和应用。IDS具有数据模式和日志的特性,但只能在GE主机上运行,数据库只有一个文件,数据库中的所有表格都必须手工编码生成。后来,通用电气公司的一个客户BF古德里奇化学公司最终不得不重写整个系统,并将重写后的系统命名为综合数据管理系统(IDMS)。
网状数据库模型可以自然地模拟分层和非分层的事物。在关系数据库出现之前,网状DBMS比层次DBMS应用更广泛。在数据库发展史上,网状数据库占有重要的地位。
分层DBMS出现在网络数据库之后。最著名、最典型的层次数据库系统是IBM于1968年开发的IMS(信息管理系统),这是一种适合其主机的层次数据库。这是IBM开发的最早的大型数据库系统程序产品。它产生于60年代末,现在已经发展到IMSV6,提供了对集群、N路数据共享、消息队列共享等高级特性的支持。这个有30年历史的数据库产品在今天的WWW应用连接和商业智能应用中扮演着新的角色。
1973年,Cullinane公司(后来的Cullinet软件公司)开始销售古德里奇公司的IDMS改进版,逐渐成为当时世界上最大的软件公司。
数据库之间关系的由来:网状数据库和层次数据库很好地解决了数据集中和共享的问题,但是仍然非常缺乏数据的独立性和抽象性。用户在访问这两个数据库时,仍然需要明确数据的存储结构,指出访问路径。后来出现的关系数据库很好地解决了这些问题。
1970年,IBM的研究员E.F.Codd博士在ACM的《通讯》杂志上发表了题为《大型共享数据库的数据的关系模型》的论文,提出了关系模型的概念,奠定了关系模型的理论基础。尽管Childs在1968中提出了面向集合的模型,但这篇论文被普遍认为是数据库系统史上划时代的里程碑。Codd的愿望是为数据库建立一个漂亮的数据模型。后来Codd陆续发表了很多文章,讨论度量关系系统的范式理论和12标准,用数学理论奠定了关系数据库的基础。关系模型具有严格的数学基础,高度的抽象性,简单明了,易于理解和使用。但当时有人认为关系模型是一种理想化的数据模型,用它来实现DBMS是不现实的,尤其担心关系数据库的性能难以接受,甚至有人将其视为对正在进行的mesh数据库标准化的严重威胁。为了促进对问题的理解,1974 ACM牵头组织了一次研讨会,会上进行了一场支持和反对关系数据库两派的辩论,分别由Codd和Bachman牵头。这场著名的争论促进了关系数据库的发展,并最终使其成为现代数据库产品的主流。
1969埃德加·CODD发明了关系数据库。
1970的关系模型建立后,IBM在圣何塞实验室增加了更多的研究人员来研究这个项目,也就是著名的System R,它的目标是论证一个功能齐全的关系型DBMS的可行性。项目结束于1979,完成了第一个实现SQL的DBMS。但IBM对IMS的承诺阻止了System R的投产,直到1980,System R才作为产品正式投入市场。IBM产品化步伐缓慢的原因有三:IBM重视信誉,重视质量,尽量减少失败;IBM是一家拥有庞大官僚体系的大公司。IBM已经有了层次化的数据库产品,相关人员并不积极甚至反对。
但与此同时,在1973年,加州大学柏克莱分校的迈克尔·斯通布雷克和尤金·王(Eugene Wong)利用System R公布的资料开始开发自己的关系数据库系统Ingres,他们开发的Ingres项目最终被硅谷的Oracle、Ingres等厂商商业化。后来System R和Ingres都获得了ACM颁发的1988的“软件系统奖”。
从65438到0976,霍尼韦尔开发了第一个商用关系数据库系统——Multics关系数据存储。关系数据库系统是以关系代数为基础的。经过几十年的发展和实际应用,该技术日趋成熟和完善。其代表产品有Oracle、IBM的DB2、微软的MS SQL Server、Informix、ADABAS D等。
数据库开发阶段:数据库开发阶段大致可以分为以下几个阶段:手工管理阶段、文件系统阶段、数据库系统阶段、高级数据库阶段。
人工管理阶段
在50年代中期之前,计算机的软件和硬件都不完善。硬件存储设备只有磁带、卡片和纸带,软件上没有操作系统。那时,计算机主要用于科学计算。在这个阶段,由于没有管理数据的软件系统,程序员不仅要指定数据的逻辑结构,还要设计其物理结构,包括存储结构、存取方法、输入输出方法等。当数据的物理组织或存储设备改变时,用户程序必须重新编程。由于数据组织是面向应用的,不同的计算程序无法共享数据,因此不同应用之间存在大量重复数据,很难保持应用之间数据的一致性。
这一阶段的主要特征可以总结如下:
(1)电脑中没有支持数据管理的软件,电脑系统不提供管理用户数据的功能。应用程序只包含它需要的所有数据。用户在编写程序时,必须充分考虑相关数据,包括数据定义、存储结构和即时访问方法。程序和数据是一个不可分割的整体。没有程序,数据没有价值,数据没有独立性。
(2)数据无法共享。不同的程序都有自己的数据,通常不同的程序有不同的数据,无法共享;即使不同程序使用同一组数据,这些数据也无法共享,程序仍然需要单独添加这组数据,任何部分都不能省略。基于这种数据不能共享,必然会导致程序间大量重复数据的产生和存储空间的浪费。
(3)数据不能单独保存。数据的逻辑结构和物理结构要在程序中指定,数据和程序不是独立的。基于数据和程序是一个整体,数据只被这个程序使用,数据只有和相应的程序一起保存才有价值,否则毫无用处。因此,所有程序的数据都不会单独保存。数据处理的方式是批处理。
文件系统阶段:这个阶段的主要标志是计算机有了管理数据库的软件——操作系统(文件管理)。
50年代中期到60年代中期,由于硬盘、磁鼓等大容量直接存储设备的出现,
它促进了软件技术的发展,软件领域出现了操作系统和高级软件。操作系统中的文件系统是管理外部存储的数据管理软件,操作系统为用户使用文件提供了友好的界面。操作系统的出现标志着数据管理进入了一个新的阶段。在文件系统阶段,数据以文件为单位存储在外部存储器中,由操作系统管理。文件是操作系统管理的重要资源。
文件系统阶段的数据管理具有以下特点:
优势
(1)数据可以以“文件”的形式长期存储在外存的磁盘上。随着计算机应用转向信息管理,需要大量的操作,如查询、修改和插入文件。
(2)数据的逻辑结构不同于物理结构,程序与数据分离,使得数据和程序具有一定的独立性,但相对简单。数据的逻辑结构是指呈现给用户的数据结构的形式。数据的物理结构是指数据在计算机存储设备上的实际存储结构。度和数据之间存在“设备无关性”,即程序只使用文件名就可以处理数据,而不考虑数据的物理位置。访问方法(读/写)由操作系统的文件系统提供。
(3)文献组织多样化。有索引文件、链接文件和直接访问文件。但是文档之间相互独立,缺乏联系。数据之间的关系需要通过程序来构建。
(4)数据不再属于某个特定的程序,可以重用,即数据是面向应用的。但是文件结构的设计还是基于特定的用途,程序是基于特定的物理结构和访问方式,所以度和数据结构之间的依赖关系并没有发生根本的改变。
(5)用户的程序和数据可以分别存储在外部存储器中,每个应用程序可以共享一组数据,从而实现以文件为单位的数据共享的文件系统。
(6)数据的操作是以记录为基础的。这是因为文件只存储数据,不存储文件记录的结构描述信息。文件的建立、存取、查询、插入、删除和修改都必须通过程序来实现。
(7)数据处理方式包括批处理和在线实时处理。
劣势
虽然文件系统在提高计算机数据管理能力方面发挥了很大的作用,但随着数据管理规模的扩大,数据量急剧增加,文件价格体系也显现出一些缺陷。这些问题如下:
(1)数据文件是为了满足某个部门在特定业务领域的特殊需求而设计的。数据和程序是相互依赖的,数据缺乏足够的独立性。
(2)数据没有集中管理机制,无法保证其安全性和完整性,数据维护业务仍由应用承担;
(3)数据的组织仍然是面向程序的,数据高度依赖于程序。数据的逻辑结构不能轻易修改和扩展,数据逻辑结构的每一个细微变化都会影响到应用程序;而且文件之间缺乏联系,无法反映现实世界事物之间的联系。另外,操作系统不负责维护文件之间的连接,信息导致每个应用都有对应的文件。如果文件之间存在内容连接,只能由应用程序处理,有可能相同的数据在多个文件中重复存储。这两者都造成了大量的数据冗余。
(4)现有数据文件难以扩展和移植,增加或删除数据项难以适应新的应用需求。
数据库系统阶段:20世纪60年代末,随着计算机在数据管理领域的广泛应用,人们对数据管理技术提出了更高的要求:希望组织面向企业或部门的数据,减少数据冗余,提供更高的数据共享能力,同时要求程序和数据具有更高的独立性。当数据的逻辑结构发生变化时,不涉及数据的物理结构,也不影响应用程序,从而降低应用程序开发和维护的成本。数据库技术就是在这样的应用需求基础上发展起来的。
综上所述,数据库系统阶段的数据管理具有以下特点:
(1)用数据模型表示复杂的数据结构。数据模型不仅描述了数据本身的特征,还描述了数据之间的关系,数据通过所有的访问路径。通过所有存储路径表示自然的数据连接是数据库和传统文件的根本区别。这样,数据不再面向特定的一个或多个应用程序,而是面向整个应用系统。比如对于企业或者部门,以数据为中心组织数据,形成一个综合的数据库,共享给所有应用。
(2)面向整个应用系统,数据冗余小,易于修改和扩展,实现数据贡献。不同的应用根据处理需求从数据库中获取所需的数据,减少了数据的重复存储,便于添加新的数据结构和维护数据的一致性。
(3)数据的统一管理和控制提供了数据的安全性、完整性和并发控制。
(4)程序和数据高度独立。数据的逻辑结构和物理结构差别可以很大,用户可以用简单的逻辑结构操作数据,而不用考虑数据的物理结构。
(5)有了良好的用户界面,用户可以方便地开发和使用数据库。
从文件系统到数据库系统的发展是信息领域的一个里程碑。在文件系统阶段,人们在信息处理中关注的中心问题是系统功能的设计,所以程序设计占主导地位;在数据库模式下,数据开始占据中心位置,数据结构的设计成为信息系统首先关注的问题,而应用程序则是基于既定的数据结构来设计的。
数据库发展趋势:随着信息管理内容的不断扩展,各种数据模型(层次模型、网格模型、关系模型、面向对象模型、半结构化模型等。)已经出现,新技术(数据流、Web数据管理、数据挖掘等。)纷纷涌现。每隔几年,一些国际资深数据库专家会聚在一起讨论数据库研究的现状、存在的问题以及未来需要关注的新技术焦点。过去类似的几个报告有:1989 DBMS研究的未来方向-拉古纳海滩参与者;1990数据库系统:成就和机遇;1991 w . h . Inmon出版的《构建数据仓库》;1995数据库。
常见数据库厂商:1。SQL Server?
它只能在没有任何开放性的windows上运行,操作系统的稳定性对数据库至关重要。Windows9X系列产品以桌面应用为主,NT server只适合中小企业。而且windows平台的可靠性、安全性、可扩展性都非常有限。它不像unix那样经过测试,尤其是在处理大型数据库时。?
2.甲骨文?
可以在所有主流平台上运行(包括windows)。完全支持所有工业标准。采取完全开放的策略。允许客户选择最合适的解决方案。给予开发者全力支持。?
3.Sybase ASE?
可以在所有主流平台上运行(包括windows)。但由于早期Sybase与OS的集成度较低,11.9.2版以下的版本需要更多的OS和DB补丁。在多平台混合环境下,会出现一些问题。?
4.DB2?
可以在所有主流平台上运行(包括windows)。最适合海量数据。DB2是使用最广泛的企业。在世界500家最大的企业中,几乎85%使用DB2数据库服务器,而在中国,1997年这一数字仅为5%。