【数据库原理】DB基本概念、发展、研究领域
写在前面
- 关于文章
在现代社会里,
数据库和数据库系统
已经成为计算机信息系统的核心技术和重要基础,也是人们社会生活中不可缺少的一部分。从某种意义来讲,数据库的建设规模、数据库信息量的大小,使用频度和使用效果已成为衡量一个国家信息化程度的重要标志。本篇文章学习数据库原理的概述部分,主要包括数据库技术领域内的基本术语的定义、数据库管理技术的发展、数据库管理技术的方法以及数据库技术研究领域。此系列文章可以作为全国计算机等级考试四级数据库原理的参考学习资料!
- 我的站点
- 联系我
🐧:
2410685763
WeChat:
Super_Baby_00
公众号:
编程那点事儿
基本概念
信息
信息是具有特定语义的数据,也是对现实世界事物的存在方式或运动状态的反映
,而且具有可感知、可存储、可加工、可传递和可再生等自然属性,信息又是社会上各行各业不可缺少的具有社会属性的资源
。
数据
数据是反映事物的存在方式或运动状态的原始数字和事实,是描述现实世界事物的物理符号记录,是一种可以鉴别的信息
。物理符号可以是:数字、文字、图形、图像,声音及其他特殊符号。数据的各种表现形式,都可以经过数字化
后存入计算机。
数据是信息的符号表示,或称载体
;信息与数据是密切相关的。因此,构成一定含义的一组数据称为信息,信息是数据的内涵,信息通过数据进行描述,又是数据的语义解释
。
数据处理
表示原始信息的数据,称为源数据
。对这些源数据进行汇集、存储、综合、推导,从这些原始、杂乱,难以理解的数据中抽取或推导出新的数据,这些新的数据称为结果数据
,它们表示了新的信息,是有价值、有意义的。提供给某些特定的人使用,可以作为某种决策的依据或用于新的推导。这一过程通常称为数据处理或信息处理
。
信息是有价值的,信息的价值与它的准确性、及时性、完整性和可靠性有关
。因为信息的价值必须通过使用信息的决策者的行为结果来体现
。
为了提高信息的价值,就要用科学的方法来管理用于表示信息的数据,这种科学的方法就是数据库技术
。
数据库
数据库是按一定结构组织并可以长期存储在计算机内的、在逻辑上保持一致的、可共享的大量相关联数据的集合,是存放数据的仓库
。也就是说数据库中的数据:
按一定的数据模型组织、描述和储存
具有较小的冗余度
较高的数据独立性和易扩展性
并可为在一定组织范围内的各种用户所共享
数据库的规模可以是任意的,而且它的复杂程度也是有高有低的。
数据字典
数据库中的数据通常可以分为用户数据
和系统数据
两个部分。
用户数据是用户使用的数据;系统数据
也称数据字典,包括对数据库的描述信息数据库的存储管理信息﹑数据库的控制信息,用户管理信息和系统事务管理信息
等。所以,数据字典也称系统目录或元数据
。
数据库管理系统
数据库管理系统是位于用户与操作系统之间
的一个定义( Defining)、操纵(Manipulating )、管理(Managementing)、构建(Constructing)和维护(Maintaining)数据库的系统软件
。
数据库管理系统是数据库和用户之间
的一个接口,并为不同用户和应用程序共享( Sharing)数据库提供便利
。
在 DBMS的支持下:
- 用户可以方便地
定义数据库中的数据
; - 可以对数据库的数据
执行查询,插入,删除,更新等基本操作
; 统一管理和控制数据库的建立,运行和维护
,以保证数据库中数据的安全性、完整性;多用户对数据的并发使用、发生故障后的系统恢复、事务支持
;数据库的重组织和性能监视、分析
;- 等等。
数据库系统
数据库系统是指在计算机系统中引入数据库后的系统
,一般由用户数据库、操作系统、数据库管理系统、应用开发工具,应用系统,数据库管理员和数据库用户
构成。
应当指出的是,数据库的建立、使用和维护等工作只靠一个DBMS远远不够,还要有专门的人员来完成,这些人被称为数据库管理员(Database Administrator , DBA )
。
- 数据库系统中的硬件平台
包括计算机和网络设备
。计算机是硬件的基础平台,常用的有微型机、小型机、中型机、大型机和巨型机;网络设备也已成为目前数据库系统的硬件平台,其结构形式主要有单机集中方式、客户机/服务器方式,浏览器/服务器方式及分布方式。由于数据库系统数据量都很大,加之DBMS丰富的功能使得自身的规模也很大,因此整个数据库系统对硬件资源提出了较高的要求,这些要求是:1.
有足够大的内存
存放操作系统、DBMS的核心模块、数据缓冲区和应用程序。2.
有足够大的磁盘等直接存取设备
存放数据库,有足够的进行数据备份的设备。3.
系统有较高的通信能力
,以提高数据传送率。 - 数据库系统中的软件平台数据库系统的软件平台主要包括:
DBMS
:为数据库的建立、使用和维护而配置的软件。- 支持DBMS运行的
操作系统(OS)
或网络操作系统(NOS )。 - 与数据库有接口的
高级语言及其编译系统
,便于开发应用程序。以DBMS为核心的应用开发工具。 - 为特定应用环境开发的
数据库应用系统
。
数据库系统人员
数据库系统中的人员包括数据库管理员,系统分析员和数据库设计人员、应用程序员和最终用户。不同的人员涉及不同的数据抽象级别,具有不同的数据视图
。
数据库管理员
数据库管理员的职责包括:
- ①
确定数据库中的信息内容和结构。
- ②
确定数据库的存储结构和存取策略(选择索引)。
- ③
定义数据的安全性要求和完整性约束。
- ④
监控数据库的使用和运行。
- ⑤
数据库的性能改进。
选择创建及维护哪些索引,这个工作属于物理数据库设计与调优
的范畴,而这也是DBA 的职责之一。 - ⑥
定期对数据库进行重组或重构,以提高系统的性能。
系统分析员
系统分析员的职责包括:
- ①
负责应用系统的需求分析和规范说明。
- ②
确定系统的硬软件配置并参与数据库系统的概要设计。
数据库设计员
数据库设计人员具体的职责包括:
- ①
参加用户需求调查和系统分析。
- ②
负责数据库中数据的确定数据库各级模式的设计。
在一般情况下,这两种工作可都由数据库管理员担任。
应用程序员
应用程序员负责设计和编写应用系统的程序模块,并进行调试和安装
。
用户
这里用户是指最终用户(End User),他们通过应用系统的用户接口使用数据库
。常用的接口方式有浏览器、菜单驱动、表格操作、图形显示,报表书写等。
DB管理技术发展
数据管理技术发展的三个阶段
数据管理技术
是指对数据的分类、组织、编码、存储、检索和维护的技术。数据管理技术的发展和计算机技术及其应用的发展联系在一起,经历了人工管理、文件系统和数据库系统
三个阶段。
数据管理的3个阶段 |
人工管理(20 世纪 50 年代中期)
|
文件系统(50 年代末至 60 年代中期) | 数据库系统(60 年代后期) |
---|---|---|---|
应用背景 | 科学计算 | 科学计算、管理 | 大规模数据、分布数据的管理 |
硬件背景 | 无直接存取存储设备 | 磁带、磁盘、磁鼓 | 大容量磁盘、可擦写光盘、按需增容磁带机等 |
软件背景 | 无专门管理的软件 | 利用操作系统的文件系统 | 由 DBMS 支撑 |
数据处理方式 | 批处理 | 联机实时处理、批处理 | 联机实时处理、批处理、分布处理 |
数据的管理者 | 用户/程序管理 | 文件系统代理 | DBMS 管理 |
数据应用及其扩充 | 面向某一应用程序难以扩充 | 面向某一应用系统、不易扩充 | 面向多种应用系统、容易扩充 |
数据的共享性 | 无共享、冗余度极大 | 共享性差、冗余度大 | 共享性好、冗余度小 |
数据的独立性 | 数据的独立性差 | 物理独立性好、逻辑独立性差 | 具有高度的物理独立性、具有较好的逻辑独立性 |
数据的结构化 | 数据无结构 | 记录内有结构、整体无结构 | 统一数据模型、整体结构化 |
数据的安全性 | 应用程序保护 | 文件系统保护 | 由 DBMS 提供完善的安全保护 |
数据库系统的发展
数据库技术从20世纪60年代开始萌芽,到20世纪60年代末和70年代初,发生了对数据库技术有着奠基作用的三件大事,标志着数据库技术已发展到成熟阶段:
- (1) 1968年美国的IBM公司推出了第一个数据库管理系统IMS( Information ManagementSystems),它是基于
层次模型
的数据库管理系统,是首例成功的数据库管理系统的商品软件。 - (2)1969年美国数据库系统语言协会CODASYL ( Conference On Data System Language)的数据库任务组DBTG( DataBase Task Group)发表了若干报告,确立并建立了数据库系统的许多概念、方法和技术。DBTG所提议的方法是基于
网状结构
的,它是数据库网状模型
的基础和典型代表。 - (3)1970年美国IBM公司的高级研究员E.F.Codd提出了
关系数据模型
及其相关概念,开创了数据库关系方法和关系数据库理论的研究领域,奠定了关系数据库的理论基础。
早期数据库系统
早期数据库应用系统也称为格式化数据库系统
,主要基于三种类型:层次、网状模型的数据库系统和倒排( Inverted)文件系统
。这一时期数据库系统的特点是:
- (1)采用“记录”为基本的数据结构。在不同的“记录型”之间,允许存在相互联系;
- (2)一次查询只能访问数据库中的一个记录,存取效率不高,操作也比较麻烦。
关系型数据库系统
关系模型是一种数学化
的模型,它将数据的概念表示与其物理存储分离开来。数据的关系表示类似于一张二维表
。关系数据模型还引入了高级查询语言,可以作为编程语言界面的一种替代,这样就可以快速编写新的查询。
与第一代数据库系统相比较,关系数据库系统具有如下优点:
- (1)采用了人们习惯使用的表格作为基本的数据库结构,简单明了,使用和学习都很方便;
- (2)一次查询仅使用一条命令或语句,即可访问整个“关系”(或二维表),效率远高于第一代数据库系统。通过多表联合操作,还能对互有联系的若干二维表实现“关联”查询。
对象-关系型数据库系统
关系数据库系统管理的信息,包括字符型、数值型、日期型等多种类型,但本质上都属于单一的文本信息。随着多媒体应用的扩大,人们对数据库提出了新的需求,希望数据库系统能存储图形、声音等复杂对象,并能实现复杂对象的复杂行为。将数据库技术与面向对象技术相结合,便成为研究数据库技术的新方向。
对象-关系数据库系统是建立在关系数据库系统技术之上的,可以直接继承关系数据库系统原有的技术和用户基础,已成为新一代数据库系统的主流。
大数据时代存储系统和NOSQL 数据库
大数据,又称巨量资料
,指的是所涉及的数据资料量规模巨大到无法通过人脑甚至主流软件工具,在合理时间内达到选取、管理、处理、并整理成为对企业经营决策有用的信息。
大数据主要特点有:
- 第一,数据库巨大,其数据量从TB级别跃升到ZB级别,同时伴随着数据规模的剧增,数据的价值密度在减小,从大数据中挖掘有价值的知识正在变得越来越困难;
- 第二,数据多元化,结构化、半结构化以及非结构化数据融合,且数据来源多样,质量参差不齐,对海量异构内容数据(如网页,社交网络、网络日志,视频﹑图片、地理位置信息等)的处理难度变得更大;
- 第三,实时数据处理,由于采用静态的处理架构,已经无法应对大数据稍纵即逝的特点了。
这就需要一种新型的数据库来管理这些巨量数据,这种数据库可以提供快速的数据搜索和检索,以及对非传统数据可靠和安全的存储
。
这些新系统在某些方面并不能与现今的SQL关系数据库兼容,因此NOSQL数据库出现了。NOSQL通常解释为Not Only SQL,意指对于管理大量数据的系统,有些数据可以使用SQL系统存储,另外的数据可使用NOSQL存储
。
DB数据管理方法
与人工管理方法和文件系统方法相比较,数据库方法具有如下的优势。
1.数据库系统自描述特点
数据库方法的一个基本特征是数据库系统不仅包括数据库本身,还包括对数据库的结构和约束条件的完整定义或描述
。这些定义被存储在DBMS系统目录中,该目录中的信息包括:每个文件的结构信息、每个数据项的类型和存储格式,以及加在数据上的各种约束条件。存储在系统目录中的这些信息描述了主数据库的结构。2.程序与数据是分离的
存储在DBMS数据字典中的数据文件结构与访问它的程序之间是相互分离的
。当程序访问数据库数据时,由 DBMS通过查询数据字典确定被访问的数据。通常把这种性质称为程序-数据独立性
。操作(也称为函数或方法)就可以分为两部分指定:操作的接口(或签名)部分包括该操作的名称和它所需要的变量(或参数)的数据类型。操作的实现(或方法)部分可独立地指定,从而也可独立地进行改变,不会影响接口部分。用户的应用程序可以操作数据,通过操作的名称和参数调用这些操作即可,无须理会这些操作是如何实现的
。这种特征称为程序-操作独立性
。3.数据结构化
DBMS提供给用户的是数据的概念表示 ,不包含数据存储和操作实现的细节
。数据库使用数据模型来描述整个组织的数据结构,在描述数据时不仅描述数据本身,还要描述数据之间的联系,但却隐藏了大多数数据库用户并不关心的数据存储和实现的细节。4.由DBMS进行统一的数据管理和控制
数据库对用户来说是可以同时存取(并发),共享的资源,它由 DBMS进行统一的数据管理和控制。为此, DBMS还必须提供以下各方面数据控制功能:- (1)支持数据的多视图
- (2)支持数据共享和多用户事务处理
- (3)具有可控的冗余
- (4)提供数据库数据的安全性( Security)保护,限制非授权的访问
- (5)为程序对象提供持久性存储
- (6)提供高效查询处理的存储结构,支持高效的数据查询处理与优化
- (7)提供数据库的备份(Backup)和恢复(Recovery)功能
- (8)提供定义和确保数据库完整性(Integrity)检查
- (9)提供多用户界面
- (10)可缩短程序开发时间
尽管数据库方法有很多优点,但是在某些情况下,使用数据库系统反而会导致不必要的开销,而使用传统的文件处理方式却不会蒙受这种损失。导致使用DBMS而增加额外开销的主要原因有:
1初期对硬件、软件和培训的高额投资;
2 DBMS为了定义和处理数据而提供的普遍性功能导致的额外开销;
3为了提供安全性、并发控制﹑恢复和完整性功能而导致的额外开销。
如果数据库设计者和DBA没能正确地设计数据库,或是没能正确地实现数据库系统应用,还可能会出现另外的一些问题。因此,在下述情况下使用传统的文件方式处理数据可能会更加合适:
1数据库应用比较简单,易于定义并且一般不会发生变化;
2某些应用程序存在严格的实时性和专用性要求,而通用的 DBMS对处理这样的应用开销过高,不合适;
3不需要多个用户访问数据。
数据库技术研究领域
DBMS软件的研究
数据库管理系统软件的研究,包括研究和实现DBMS本身以及以 DBMS为核心的一组相互联系的软件系统
。
DBMS是数据库系统的基础,为了适应不断发展的、特定应用的需要,研究和实现新型的 DBMS,它们应具有分布性、开放性,异构系统的互连性、可扩充性和国际标准化。
研究和实现以DBMS为核心的一组支持软件,开发全过程的系统工具软件和中间件,如数据库分析设计工具,数据库运行维护工具,以及支持多种语言、多种数据库互联等。
研究的目标是提高系统的性能和提高用户的生产率
。
数据库设计技术和方法的研究
数据库设计的主要任务是在DBMS的支持下,按照应用的要求,为某一部门或组织设计一个结构合理.使用方便、效率较高的数据库及其应用系统
。
主要的研究方向是数据库设计方法学和设计工具,包括数据库设计方法、设计工具和设计理论的研究,数据模型和数据建模的研究,计算机辅助数据库设计方法及其软件系统的研究,数据库设计规范和标准的研究等。
数据模型是数据库系统的基础
。
数据库理论的研究
数据库理论的研究主要集中于关系的规范化理论、关系数据理论等
。
近年来,随着计算机网络技术,人工智能技术、并行计算技术、分布式计算技术和多媒体技术等计算机领域中其他新兴技术的发展对数据库技术产生了重大影响,数据库技术与其他计算机技术互相结合、互相渗透,使数据库中新的技术内容层出不穷。
微信关注