1.1 基本概念
1. 数据
-
什么是数据:数据是现实世界中客体在计算机中的抽象表示,具体的说,它是一种存储于计算机内的符号串。
-
数据的特性:
(1) 数据表现形式的多样性
(2) 数据的可构造性:数据分为结构化数据、半结构化数据和非结构化数据。结构化数据有型(type)和值(value)之分。结构化数据的型又包含了数据结构、数据类型、数据模式。
(3) 数据的挥发性与持久性:挥发性数据存储在内存中,程序结束时消亡;持久性数据存储在磁盘中。
(4) 数据的私有性与共享性:为特定应用(程序)服务的数据称为私有(private)数据,而为多个应用(程序)服务的数据则称为共享(share)数据。
(5) 数据的海量性:少量\(\to\)大量\(\to\)海量
数据特性的变化:量由小量到大量进而到海量,组织由非结构化到结构化,服务范围由私有到共享,存储周期由挥发到持久。
-
数据与软件
软件由数据和程序两部分组成。
在过去,软件以程序为中心,数据以私有形式从属于程序。这导致数据分散、凌乱。现在,软件以数据为主体地位,对数据进行统一、集中的管理。
-
数据与信息
数据和信息实际上是对同一事物的不同理解。
2.数据库
数据库是数据的集合,它具有统一的结构形式,存放于统一的存贮介质内,并由统一
机构管理,它由多种应用数据集成,并可被应用所共享。
3.数据库管理系统
数据库管理系统是统一管理数据库的一种软件,它负责:
-
数据库中的数据组织。
-
数据库中的数据操纵。
-
数据库中的数据维护。
-
控制及保护数据不受破坏。
-
数据库中的数据交换。
-
数据库中的数据服务。
-
数据字典
数据库主要有如下几个方面的功能:
-
数据模式定义
-
数据存取的物理操作
-
数据操纵
-
数据的完整性、安全性定义与检查
-
数据的并发控制与故障恢复
-
数据交换
-
数据的服务
-
数据字典
为了完成以上八个功能,数据管理系统一般提供相应的数据语言:
- 数据定义语言:负责数据模式的定义与数据的物理存取操作。
- 数据操纵语言:负责数据模式的操纵(查询、增删改)。
- 数据控制语言:负责数据完整性、安全性的定义与检查。
4.数据库管理员
数据库管理员的主要工作:
- 数据库的建立与调整
- 数据库维护
- 改善系统性能,提高系统效率
5.数据库系统
数据库系统有五个部分组成:
- 数据库(数据)
- 数据库管理系统(软件)
- 数据库管理员(人员)
- 系统平台之一——硬件平台(硬件)
- 系统平台之一——软件平台(软件)
这五个部分构成了一个以数据库为核心的完整的运行实体,称为数据库系统。
硬件平台包括两类:
- 计算机
- 网络
软件平台分为三类:
- 操作系统
- 数据库系统开发工具
- 中间件
6.数据库应用系统(DBAS)
数据库应用系统加上应用软件、应用界面以及用户这四个部分组成,包括:
- 数据库
- 数据库管理系统
- 数据库管理员
- 系统平台之一——硬件平台(硬件)
- 系统平台之一——软件平台(软件)
- 应用软件
- 应用界面
- 用户
层次结构如图所示:
1.2 数据库系统的发展与当前主流
发展历史如图所示:
数据库系统发展的几个阶段:
- 文件系统阶段
- 层次数据库与网状数据库系统阶段
- 关系数据库系统阶段
- 新一代数据库系统阶段,主要表现在:对象关系数据库系统、数据仓库、Web数据库、安全数据库。
1.3 数据库系统的特点
1.数据的集成性
- 在数据库系统中采用统一的数据结构方式。
- 在数据库系统中按照多个应用的需要组织全局的统一的数据结构,称为数据模式。
- 全局与局部的结构模式。
2.数据的高共享性与低冗余性
3.数据独立性
- 物理独立性:数据的物理结构的改变不影响数据库的逻辑结构;
- 逻辑独立性:数据库总体逻辑结构的改变,不需要修改应用程序。
4.数据统一管理与控制
- 数据查询、增删改;
- 数据完整性检查;
- 数据的安全性保护;
- 并发控制;
- 数据库故障恢复。
1.4 数据库内部结构体系
1.4.1 数据库三级模式
- 概念模式:数据库中数据结构的具体表示和描述,不涉及软件/硬件环境。
- 外模式:用户的数据试图,由概念模式推导而出。
- 内模式:数据库物理结构与物理存取方法。
1.4.2 数据库两级映射
-
从概念模式到内模式的映射
-
从外模式到概念模式的映射