一、数据库的4个基本概念
1.数据(date):
定义:是数据库中存储的基本对象。描述事物的符号记录为数据,可以是文字、图 像、图形、视频、音频等多种表现形式。
含义:数据的含义称为数据的语义,数据与其语义是不可分的。例如,92是一个 数据,可以是某同学的课程成绩,也可以是某人的体重,还可以是打到人数。。。
2.数据库(DataBase,DB)
定义:是长期存储在计算机内、有组织的、可分享的大量数据的集合。数据库中的 数据按一定的数据模型组织、描述和储存,具有较小的冗余度、较高的数据 独立性和易扩展性,并可为各种用户共享。
特点:永久存储、有组织和可共享三个基本特点。
3.数据管理系统(DateBase Management System,DBMS)
定义:是位于用户与操作系统之间的一层数据管理软件。
功能:数据的定义(DDL),组织,存储,管理,以及数据操作(DML);
数据库建立,事务管理,运行管理,维护;
通信功能
(1)数据定义功能
数据库管理系统提供数据定义语言(Data Definition Language,DDL),用户通过它可以方便地对数据库中的数据对象的组成与结构进行定义。
(2)数据组织,存储和管理
数据库管理系统要分类组织,存储和管理各种数据,包括数据字典,用户数据,数据的存取路径等。要确定以何种文件结构和存取方式在存储级上组织这些数据,如何实现数据之间的联系。数据组织和储存的基本目标是提高储存空间利用率和方便存储,提供多种存取方法(如索引查找,hash查找,顺序查找等)来提高存取效率。
(3)数据操作功能
数据库管理系统还提供数据操作语言(Data Manipulation Language,DML),用户可以使用它操作数据,实现对数据库的基本操作,如查找,插入,删除和修改等。
(4)数据库的事务管理和运行管理
数据库在建立,运行和维护时由数据库管理系统统管理和控制,以保证事物的正确运行,保证数据的安全性,完整性,多用户对数据的并发使用及发生故障后的系统恢复。
(5)数据库的建立和维护功能
数据库的建立和维护功能包括数据库初始数据的输入,转换功能,数据库的转储,恢复功能,数据库的重组织功能和性能监视,分析功能等。这些功能通常是由一些实用程序或管理工具完成的。
(6)其他功能
其他功能包括数据库系统与网络中其他软件系统的通信功能,一个数据库管理系统与另一个数据库管理系统或文件系统的数据转换功能,异构数据库之间的互动和互操作功能等。
4.数据库系统(DataBase System,DBS)
定义:是由数据库,数据库管理系统,应用程序和数据库管理员(DBA)组成的存 储,管理,处理和维护数据的系统。
二、数据管理技术的发展
在应用需求的推动下,以及计算机硬件,软件发展的基础上,数据管理技术经历了人工管理,文件管理,数据库系统三个阶段。
1.三个阶段的比较
|
人工管理阶段 |
文件系统阶段 |
数据库系统阶段 |
|
背
景 |
应用背景 |
科学计算 |
科学计算,数据管理 |
大规模数据管理 |
硬件背景 |
无直接存取存储设备 |
磁盘,磁鼓 |
大容量磁盘,磁盘阵列 |
|
软件背景 |
无操作系统 |
有文件系统 |
有数据库管理系统 |
|
处理方式 |
批处理 |
联机实时处理,批处理 |
联机实时处理,分布处理,批处理 |
|
特
点 |
数据的管理者 |
用户(程序员) |
文件系统 |
数据库管理系统 |
数据面向的对象 |
某一应用程序 |
某一应用 |
现实世界(一个部门,企业,组织等) |
|
数据的共享程度 |
无共享,冗余度极大 |
共享性差,冗余度大 |
共享性高,冗余度小 |
|
数据的独立性 |
不独立,完全依赖程序 |
独立性差 |
具有高度的物理独立性和一定的逻辑独立性 |
|
数据的结构化 |
无结构 |
记录内有结构,整体无结构 |
整体结构化,用数据模型描述 |
|
数据控制能力 |
应用程序自己控制 |
应用程序自己控制 |
由数据库管理系统提供数据安全性,完整性,并发控制和恢复能力 |
2.人工管理阶段特点:无存储,无共享,无独立,程序管理数据。
(1)数据不保存
由于刚刚问世的计算机主要用于科学计算,一般不需要将数据长期保存,都是在计算某一课题时申请机房将数据输入计算,用完就撤走。不仅对于用户数据如此处置,就是系统软件也也是现输入现使用。
(2)应用程序管理数据
数据需要由应用程序自己设计,说明和管理,没有相应的软件系统负责数据的管理工作。应用程序中不仅要规定数据的逻辑结构,而且要设计物理结构,包括存储结构,存取方法,输入方式等。
(3)数据不共享
数据是面向应用程序的,一组数据只能对应一个程序。当多个应用程序涉及某些相同的数据时也必须各自每次独立重新定义,无法相互利用,相互参照,因此当时程序与程序之间有大量的冗余数据。
(4)数据不具备独立性
数据的逻辑结构或者物理结构发生变化后,必须对应用程序做出相应的修改,数据完全依赖应用程序。
3.文件系统阶段特点:可存储,共享差,独立差,冗余大,软件管理数据。
(1)数据可以长期保存
由于计算机技术的飞速发展,硬件方面已有磁盘,磁鼓等直接存取存储设备;软件方面,操作系统中有了专门的数据管理软件,一般称为文件系统。计算机开始大量运用于数据处理,数据需要长期保存在外存上反复进行查询,修改,插入和删除等操作。
(2)由文件系统管理数据
由专门的软件即文件系统进行数据管理,文件系统把数据组织成相互独立的数据文件,利用“按文件名访问,按记录进行存取”的管理技术,提供对文件进行打开与关闭,对记录读取和写入等存取方式。文件系统实现记录内的结构化。但是,文件系统仍然存在以下两个缺点。
(3)数据共享性差,冗余度大
例如,学习委员,班主任,教务处,后勤都需要某一个班同学的学生信息(学生姓名,性别,学习成绩,家庭住址,联系方式。。。)。但由于四个部门的计算机无法共享这一组数据,需要建立各自的文件来存储该班同学的信息,仅仅只是一组数据却浪费了四台计算机的储存空间,导致冗余度大。
假如数据的采集是由学习委员进行,然后共享给其他三台设备,之后学习委员发现数据错误进行修改,可其他三台设备仍然存储着错误数据。由于相同数据的重复存储,各自管理,容易造成造成了数据的不一致性,给数据的修改和维护带来了困难。
(4)数据独立性差
文件系统中的文件是为某一特定应用服务的,文件的逻辑结构是针对具体的应用来设计和优化的,因此要想对文件中的数据再增加一些新应用会很困难。当数据的逻辑结构改变时,应用程序中文件结构的定义必须修改,应用程序中对数据的使用也要改变,因此数据依赖应用程序,缺乏独立性。可见,文件系统仍然是一个不具备弹性的无整体结构的数据集合,即文件之间是孤立的,不能反映现实事物之间的内在联系。
4.数据可系统
(1)定义:数据库是长期存储在计算机内有组织,大量,共享的数据集。它可以供各种用户共享,具有最小冗余度和较高的数据独立性。数据库管理系统在数据库建立,运行和维护时对数据库进行统一控制,以保证数据的完整性和安全性,并在多用户同时使用数据库时进行并发控制,在发生故障后数据库进行恢复。使信息系统从以加工数据的程序为中心转向围绕共享的数据库为中心的新阶段。
(2)特点:
①数据结构化
数据库系统实现整体数据的结构化,这是数据库的主要特点之一,也是数据库系统与文件系统的本质区别。所谓“整体”结构化是指数据不再仅仅针对某一应用,而是面对整个组织或企业;不仅数据内部是结构化的,而且整体是结构化的,数据之间是具有联系的。
②数据的共享性高,冗余度低且易扩充
数据共享可以大大减少数据冗余,节约储存空间。数据共享还能避免数据之间的不相容性与不一致性。这使得数据库系统弹性大,易于扩充。
③数据独立性高
物理独立性:是指用户的应用程序与数据库中数据的物理储存数相互独立的。
逻辑独立性:是指用户的应用程序与数据库的逻辑结构是相互独立的。数据逻辑结构变化是用户应用程序也无需改变。
④数据由数据库管理系统统一管理和控制
数据库的共享将会带来数据库的安全隐患,而数据库的共享是并发的共享,即多个用户可以同时存取数据库中的数据,甚至可以同时存取数据库中同一个数据,这又会带来不同用户间相互干扰的隐患。另外,数据库中数据的正确与一致也必须得到保障。为此,数据库管理系统还必须提供以下几方面的数据控制功能:
数据安全性保护
数据安全性是指保护数据以防止不合法使用造成的数据泄密和破坏。
数据完整性检查
数据的完整性指数据的正确性,有效性和相容性。
并发控制
当多个用户的并发进程同时存取,修改数据库,可能会发生相互干扰而得到错误的结果或使得数据库的完整性遭到破坏,因此必须对多用户的并发操作加以控制和协 调。
数据库恢复
计算机系统的硬件故障,软件故障,操作人员的失误以及故意破坏也会影响数据库中数据的正确性,甚至造成数据的部分或全部数据的丢失。数据库管理系统必须具有 将数据库从错误状态恢复到某一已知的正确状态(也称完整状态或一致状态)的功能。