4.1 数据库系统的基本概念 3 Y$ R$ C! B2 `( n" P4 _
1、数据、数据库、数据管理系统
! b4 n2 n( z0 U+ H5 `- a$ G7 F (1)数据:实际上就是描述事物的符号记录。 # m/ E# J! X5 H' s, s
数据的特点:有一定的结构,有型与值之分。数据的型给出了数据表示的类型,如整型、实型、字符型等。而数据的值给出了符合给定型的值,如整型(INT)值15。
8 r' }7 v6 T. r, i; w (2)数据库(DB):是数据的集合,具有统一的结构形式并存放于统一的存储介质内,是多种应用数据的集成,并可被各个应用程序所共享。
4 `' F4 `5 a; j3 r) [ 数据库存放数据是按数据所提供的数据模式存放的,具有集成与共享的特点,亦即是数据库集中了各种应用的数据,进行统一的构造和存储,而使它们可被不同应用程序所使用。
5 c" o8 g8 x+ K. n+ f0 C (3)数据库管理系统(DBMS):一种系统软件,负责数据库中的数据组织、数据操纵、数据维护、控制及保护和数据服务等,是数据库的核心。
! L; B' A1 a- x( V# E1 ?( h [7 c 数据库管理系统功能: ) ^ M; U' J5 U/ y+ m
1)数据模式定义。数据库管理系统负责为数据库构建模式,也就是为数据库构建其数据框架。 9 r! B" _1 a( R" ], z( I# i
2)数据存取的物理构建。数据库管理系统负责为数据模式的物理存取与构建提供有效的存取方法与手段。
( x+ B/ T7 W* h8 O, r; A, H! h; _ 3)数据操纵。数据库管理系统为用户使用数据库中的数据提供方便,它一般提供如查询、插入、修改以及删除数据的功能。此外,它自身还具有做简单的算术运算及统计的能力,而且还可以与某些过程性语言结合,使其具有强大的过程性操作能力。 / j5 z3 C$ l( l7 \5 h
4)数据的完整性、安生性定义与检查。数据库中的数据具有内在语义上的关联性与一致性,它们构成了数据的完整性,数据的完整性是保证数据库中数据正确的必要条件,因此必须经常检查以维护数据正确。数据库中的数据具有共享性,而数据共享可能会引发数据的非法使用,因此必须要对数据正确使用做出必要的规定,并在使用时做检查,这就是数据的安全性。数据完整性与安全性的维护是数据库系统的基本功能。 : D; L8 j7 W9 I, U0 ?0 H, P. N
5)数据库的并发控制与故障恢复。数据库是一个集成、共享的数据集合体,它能为多个应用程序服务,所以就存在着多个应用程序对数据库的并发操作。在并发操作中如果不加控制和管理,多个应用程序间就会相互干扰,从而对数据库中的数据造成破坏。因此,数据库管理系统必须对多个应用程序的并发操作做必要的控制以保证数据不受破坏,这就是数据库的并发控制。数据库中的数据一旦遭到破坏,数据库管理系统必须有能力及时进行恢复,这就是数据库的故障恢复。
6 j. u& d d( @/ O 6)数据的服务。数据库管理系统提供对数据库中数据的多种服务功能,如数据拷贝、转存、重组、性能监测、分析等。 { N! m/ F! T0 j
(4)数据库管理员(DBA):对数据库进行规划、设计、维护、监视等的专业管理人员。
8 s% O; o a7 Y2 K! C( ` (5)数据库系统(DBS):由数据库(数据)、数据库管理系统(软件)、数据库管理员(人员)、硬件平台(硬件)、软件平台(软件)五个部分构成的运行实体。 5 d8 [4 _9 H* L
(6)数据库应用系统:由数据库系统、应用软件及应用界面三者组成。 ! z$ S* `5 [3 T U# A | r
*:数据库技术的根本目标是解决数据的共享问题。
0 k0 w% }% W7 p7 z 2、数据库系统的发展 : }$ n. F! C; ~3 T0 t8 h4 @$ ^2 ?
数据库管理发展至今已经历了三个阶段:人工管理阶段、文件系统阶段和数据库系统阶段。
5 Z5 e/ J$ ?, E' U8 ~2 K+ O; _ 下表是数据管理三个阶段的比较:
* h+ o2 j8 W6 c x3 C+ P; }
( c- v* E, h6 G* }8 L人工管理阶段
) t* L; x3 ~. ~6 {' n文件系统阶段 9 \% @8 _" q9 j1 V4 ?
数据库系统阶段
2 w- ]- j' w2 k" v& B: C F. s, C$ Z# v' Q9 g) ?) _3 Y; b
背 景
# q+ R( T/ W8 S" V. o6 K2 L5 O0 s应用背景
, E5 }, J) W/ g- B' b+ H' @9 J科学计算
, ^3 m" }6 U3 O科学计算、管理 - y) V7 `, ?1 e n) z% G, y
大规模管理 ! A3 j7 [; G' O0 T
硬件背景
) J# @' d+ K$ r5 c1 Z+ _/ j" N无直接存取存储设备
- X6 k9 S" M+ X* I磁盘、磁鼓
* h( G+ M0 y3 y大容量磁备盘
& V5 K: I2 J; Z) c4 c软件背景 + e1 R f! q* D: @% i
没有操作系统
. S9 z0 J) p: o) b6 b! I# w; g6 N有文件系统
5 T1 D1 Q5 F' ?- y$ G1 B- o有数据库管理系统
- n& d* ]6 Z2 Z& X, P4 @. M) w9 i& d处理方式 $ `2 e4 U. d) V/ ^6 ]$ D' Q
批处理 - [1 u% p/ |+ a
联机实时处理、批处理
2 F( q" @; `/ L8 X) m) g, \6 n, p联机实时处理、分布处理、批处理 8 \+ [' `! i+ F
特 点 5 j! {; H% c% r' M6 Z8 Q8 L1 r
数据的管理者
$ q4 O# h. Q: q* j用户(程序员)
S9 |" y: W `' l9 G. S6 j2 X文件系统 7 [# j' x B7 c3 ~
数据库管理系统
& E) D( e! e1 h, `4 r数据面向的对象
+ F' ^/ @0 A w' D8 Y! C: x! x- L9 O某一应用程序 7 O$ G! T7 c D# ?1 z/ N
某一应用 9 M0 P$ B1 \# K( X$ ~( H
现实世界 * M5 c d2 g, @4 l6 u$ p: {
数据的共享程度
1 P8 a4 a0 H' S: p& A* F无共享,冗余度极大 7 \# b1 e3 V0 g o5 l# C- S' n
共享性差,冗余度大
# y8 ^8 Z. m# a$ A共享性高,冗余度小
. X. x, _1 {. U% c数据的独立性
`- A8 ^+ u% x+ n不独立,完全依赖于程序
' a `2 X0 t8 J独立性差
& _9 j4 M3 n. A5 X4 I! b9 G具有高度的物理独立性和一定的逻辑独立性
6 _7 e: Z( f& V& O2 \# y8 @6 H数据的结构化
2 N* F! E O# R& K: K无结构 2 z5 I) d/ P- b! s' L+ g1 |
记录内有结构,整体无结构 . o! U# \6 H ]& N6 N4 K
整体结构化,用数据模型描述
# M/ W H) c% J2 e, U/ L+ c数据控制能力
: A0 P! ^6 Z! ^应用程序自己控制 4 J1 V4 g, D8 R# d
应用程序自己控制
) [ O) k! \8 W: ?由数据库管理系统提供数据安全性、完整性、并发控制和恢复能力 7 v! o8 G9 P: a: L" {
3 O/ M* i E7 u# X9 A D
3、数据库系统的基本特点
2 l( D& ?0 K; c$ P5 x* a
/ O& `0 W% m9 N (1)数据的高集成性。
2 m! K- R/ O% E( \: Q3 E (2)数据的高共享性与低冗余性。 8 g5 f# H3 W) h0 h
*:数据库系统可以减少数据冗余(注释1),但无法避免一切冗余。 4 l9 R0 Z, H; T" Z8 L, f
(3)数据独立性:数据独立性是数据与程序间的互不依赖性,即数据库中数据独立于应用程序而不依赖于应用程序。也就是说,数据的逻辑结构、存储结构与存取方式的改变不会影响应用程序。 8 O" M) N* [! h5 Y& G* b. G
数据独立性一般分为物理独立性与逻辑独立性两级。
5 h! u& |4 a3 M4 T 1)物理独立性:物理独立性即是数据的物理结构(包括存储结构,存取方式等)的改变,如存储设备的更换、物理存储的更换、存取方式改变等都不影响数据库的逻辑结构,从而不致引起应用程序的变化。 |