数据库系统理论讲解(doc 32页)
数据库系统概论(第五版)()演示文稿
删除模式(续)
[例3.4] DROP SCHEMA ZHANG CASCADE; 删除模式ZHANG 同时该模式中定义的表TAB1也被删除
第31页,共95页。
3.3 数据定义
3.3.1 模式的定义与删除 3.3.2 基本表的定义、删除与修改
3.3.3 索引的建立与删除
第32页,共95页。
/* 表级完整性约束条件,Sno是外码,被参照表是Student */
FOREIGN KEY (Cno)REFERENCES Course(Cno)
/* 表级完整性约束条件, Cno是外码,被参照表是Course*/
);
第36页,共95页。
2. 数据类型
❖ SQL中域的概念用数据类型来实现 ❖ 定义表的属性时需要指明其数据类型及长度 ❖ 选用哪种数据类型
课程号 Cno 1 2 3 2 3
成绩 Grade 92 85 88 90 80
第22页,共95页。
第三章 关系数据库标准语言SQL
3.1 SQL概述 3.2 学生-课程数据库 3.3 数据定义 3.4 数据查询 3.5 数据更新 3.6 空值的处理 3.7 视图 3.8 小结
第23页,共95页。
[例3.2] CREATE SCHEMA AUTHORIZATION WANG; 该语句没有指定<模式名>,<模式名>隐含为<用户名>
第27页,共95页。
定义模式(续)
❖ 定义模式实际上定义了一个命名空间。 ❖ 在这个空间中可以定义该模式包含的数据库对象,
例如基本表、视图、索引等。 ❖在CREATE SCHEMA中可以接受CREATE
❖ SQL采用集合操作方式
大数据技术导论(PPT 32页)_7473
英国著名政经杂志《经济学 人》认为:克强指数比官方GDP 数字更能反映中国经济的现实状 况。花旗银行在编制时将各自权 重分别设定为40%、25%和35% 。
大数据涉及诸多不同的领域
天文
气象
基因
医学
经济
物理
其他领域
用户生成数据
Deep Web数据
多模态内容数据
网络与关系数据
16
美国的大数据规划-大数据上升为国家意志
• 2012年3月29日,美国联邦政府整合6个部门宣布2亿美元的 “Big Data Research and Development Initiative”
– 促进采集、存储、维护、管理、分析和共享海量数据的核心技术;
– 利用以上技术来加速科学与工程发现的步伐,强化国家安全,改变教 育和学习;
• 社会价值
– 例如:2009年淘宝网推出淘宝CPI来反映网络购物的消费趋势和价格 动态
• 其他价值…
13
大数据的战略意义
• 大数据的深度资源挖掘与价值利用是国家战略
• 从 深空 + 深海 深网
深空探索
2012年我国神州 九号进入太空
深海探测
2012年我国蛟龙号 探测水下7000米
深网挖掘
实现大数据价值的 深度挖据和高度利用!
12
• 科研价值
大数据的价值 Data is the next Intel Inside. The future belongs to the companies and people that turn data into products. ----著名出版公司O‘Reilly的创始人Tim O‘Reilly
SQLServer数据库基础教材(ppt 32页)
Alicia Ruth Alicia Ruth Mary Beth
Address
12, Temple Street 123, Sunset Blvd. 32, Golden Avenue
12, Temple Street 12, Tmple Street 33, Golden Avenue
主文件组
26
用户定义文件组
日志文件
ACCP V4.0
创建数据库 3-3
演示创建数据库……
27
ACCP V4.0
管理和维护:收缩数据库
演示收缩数据库……
28
ACCP V4.0
管理和维护:移动数据库
演示分离和附加数据库……
29
ACCP V4.0
管理和维护:配置选项
演示配置数据库的选项……
30
ACCP V4.0
8
ACCP V4.0
数据库的发展史
萌芽阶段——文件系统
使用磁盘文件来存储数据
初级阶段——第一代数据库
出现了网状模型、层次模型的数据库
中级阶段——第二代数据库
关系型数据库和结构化查询语言
高级阶段——新一代数据库
“关系-对象”型数据库
9
ACCP V4.0
时下流行的数据库
Oracle
ACCP V4.0
数据库的基本概念 6-2
行(记录)
列
12
ACCP V4.0
数据库的基本概念 6-3
数据库就是“数据”的“仓库” 数据库由表、关系以及操作对象组成 数据存放在表中
… 订单 客户 产品
表
数据表 存储过程 视图
….
产品数据库
ORACLE体系结构18557共32页
6 23.05.2020
上一页
下一页
返回本章首页
第二部分 系统管理 第1章 Oracle体系结构
1.2.1 共享池
1. 库高速缓存(Library Cache) ➢作用:存放最近执行的SQL语句信息,
包括语句文本及其执行计划。 执行计划:SQL语句的内部执行步骤。
作用:存放最近访问的数据块。 组成:由许多小缓冲区(缓冲区尺寸=数据块尺寸)组成。 符号:DB_BLOCK_SIZE 定义标准块的尺寸;
DB_CACHE_SIZE 定义标准数据高速缓存尺寸。 使用非标准块的规则:
必须使用初始化参数DB_Nk_CACHE_SIZE(n为2、4、8、16或32)定义非标准数据高速 缓存。 例:假定参数DB_BLOCK_SIZE的值为4096,则:
上一页
下一页
返回本章首页
第二部分 系统管理 第1章 Oracle体系结构
1.2 系统全局区(SGA)
1.2.1 共享池 1.2.2 数据高速缓存 1.2.3 重做日志缓冲区
5 23.05.2020
Байду номын сангаас上一页
下一页
返回本章首页
第二部分 系统管理 第1章 Oracle体系结构
1.2.1 共享池
共享池(shared pool) ➢作用:存放最近执行的SQL语句和数据字典信息; ➢大小:尺寸由初始化参数SHARED_POOL_SIZE定义。 ➢组成:由库高速缓存、数据字典高速缓存两部分组成。
例:select ename,sal from where empno=7788; 如果在empno列上无索引,则采用全表扫描;
否则采用索引和ROWID定位数据。
数据库基础知识ppt课件
素。 (4)用外部关键字保证有关联的表之间的联系。
42
2、设计步骤 利用Visual FoxPro来开发数据库应用系统,
可以按照以下步骤来设计。 (1)需求分析。 (2)确定需求表C (3)确定需求字段。 (4)确定联系。 (5)设计精确
2、考试内容:查询和表单(重点) 3、课程特点,分两方面:
基本命令和函数等(砖瓦) 程序设计(盖楼房)
2
序
教学方式:
课堂教学+实验 课堂教学:“多媒体演示文稿+实际操作演
示”,解决“能够做什么”的问题 上机实验:解决“如何做”的问题
3
Visual FoxPro基础知识
36
A
37
练习:
(12)在教师表中,如果要找出职称为“教 授”的教师,所采用的关系运算是A A.选择 B.投影 C.联接 D.自然联接
38
(10)有三个关系R、S和T如下:
则由关系R和S得到关系T的操作是 A
A)自然连接 B)交 C)投影 D)并
39
1、关系数据库系统实现的专门关系运算包
(1)数据库
数据库是存储数据的仓库,数据库首先将数据进行分类,然后强 调数据之间的存储联系,使数据存储结构化。
一般而言,数据库由若干数据表构成, 各个表之间有联系。
班级管理数据库
学 学号 生 姓名 情 况 性别 表…
学号 学
姓名 生 成
性别 绩 …表
数据库减少了数据存储的冗余,加强了数据控制功能,使数据与 程序相对独立。
(5)关键字:属性或属性的组合,其值能够唯一地标识 一个元组。在Visual FoxPro中,主关键字和候选关键 字就起唯一标志一个元组的作用。
数据仓库建设方案(DOC32页)
第1章数据仓库建设1.1 数据仓库总体架构专家系统接收增购工程车辆TCMS或其他子系统通过车地通信传输的实时或离线数据,颠末一系列综合诊断阐发,以各种报表图形或信息推送的形式向用户展示阐发成果。
针对诊断出的车辆故障将给出专家建议处置办法,为车辆的故障根因修复提供必要的撑持。
按照专家系统数据仓库建设目标,结合系统数据业务尺度,包罗数据采集频率、数据采集量等相关因素,设计专家系统数据仓库架构如下:数据仓库架构从层次布局上分为数据采集、数据存、数据阐发、数据效劳等几个方面的内容:数据采集:负责从各业务自系统中堆积信息数据,系统支撑Kafka、Storm、Flume及传统的ETL采集东西。
数据存储:本系统提供Hdfs、Hbase及RDBMS相结合的存储模式,撑持海量数据的分布式存储。
数据阐发:数据仓库体系撑持传统的OLAP阐发及基于Spark常规机器学习算法。
数据效劳总线:数据系统提供数据效劳总线效劳,实现对数据资源的统一打点和调剂,并对外提供数据效劳。
1.2 数据采集专家系统数据仓库数据采集包罗两个局部内容:外部数据堆积、内部各层数据的提取与加载。
外部数据堆积是指从TCMS、车载子系统等外部信息系统堆积数据到专家数据仓库的操作型存储层〔ODS〕;内部各层数据的提取与加载是指数据仓库各存储层间的数据提取、转换与加载。
1.2.1外部数据堆积专家数据仓库数据源包罗列车监控与检测系统〔TCMS〕、车载子系统等相关子系统,数据采集的内容分为实时数据采集和按时数据采集两大类,实时数据采集主要对于各项检测指标数据;非实时采集包罗日检修数据等。
按照工程信息堆积要求,列车指标信息采集具有采集数据量大,采集频率高的特点,考虑到系统后期的扩展,因此在数据数据采集方面,要求采集体系撑持高吞吐量、高频率、海量数据采集,同时系统应该灵活可配置,可按照业务的需要进行灵活配置横向扩展。
本方案在数据采集架构采用Flume+Kafka+Storm的组合架构,采用Flume和ETL 东西作为Kafka的Producer,采用Storm作为Kafka的Consumer,Storm可实现对海量数据的实时处置,及时对问题指标进行预警。
数据库的逻辑结构
6
第6页/共48页
常用段的类型
❖数据段:用于存放表的数据,表与数据段是一 一 对应的关系,并且段名与表名完全相同。
❖索引段:用于存放索引的数据,索引段与索引也 是一 一对应的关系,并且名称相同。
❖回滚段:用于存放事务所修改数据的旧值。
7
第7页/共48页
区(extent)
❖是Oracle空间分配的逻辑单位,由相邻的数 据块组成,一个区只能唯一地属于一个数据 文件。 ❖当建立数据对象时,Oracle会为数据对象以 区为单位分配存储空间。 ❖当建立段时,Oracle至少要为其分配一个区, 当段不足以容纳数据对象时,该段会自动扩 展一个区。
5)屏蔽参数可以使用“#”。 在构造Oracle Server之前,首先需要完成的
任务就是建立参数文件。Oracle建议将参数文 件放到Oracle主路径的database子目录下,并 将参数文件名称设置为: init<SID>.ora 其中 SID为实例标识符。
12
第12页/共48页
管理实例和数据库
❖ 建立参数文件
1)复制参数文件 将文件 d:\oracle\admin\oracle\pfile\init.ora复制
到 d:\oracle\ora92\database\inittest.ora 2)编辑初始化参数
db_name = test instance_name = test control_files = e:\test\test01.ctl db_block_size = 8192
安装此包必须以SYSTEM用户运行该脚本。
SQL>CONN system/manager SQL>@%oracle_home%\sqlplus\admin\pupbld.sql
演示文稿数据库系统概论第五版
❖ 连接字段:连接谓词中的列名称
连接条件中的各连接字段类型必须是可比的,但名字不 必相同
第4页,共81页。
连接查询(续)
1.等值与非等值连接查询 2.自身连接 3.外连接 4.多表连接
第5页,共81页。
1. 等值与非等值连接查询
❖ 等值连接:连接运算符为=
[例 3.49] 查询每个学生及其选修课程的情况
Sdept CS CS CS CS CS MA IS
Cno 1 2 3 2 3
NULL NULL
Grade 92 85 88 90 80
NULL NULL
第21页,共81页。
连接查询(续)
1.等值与非等值连接查询
2.自身连接 3.外连接
4.多表连接
第22页,共81页。
4. 多表连接
❖ 多表连接:两个以上的表进行连接
连接条件的元组,找到后就将表1中的第一个元组与该 元组拼接起来,形成结果表中一个元组。当遇到表2中 第一条大于表1连接字段值的元组时,对表2的查询不再 继续
第9页,共81页。
连接操作的执行过程(续)
(2)排序合并法(续)
找到表1的第二条元组,然后从刚才的中断点处继续顺序扫描表2,查 找满足连接条件的元组,找到后就将表1中的第一个元组与该元组拼
此查询为不相关子查询。
第32页,共81页。
带有IN谓词的子查询(续)
用自身连接完成[例 3.55]查询要求
SELECT S1.Sno, S1.Sname,S1.Sdept FROM Student S1,Student S2 WHERE S1.Sdept = S2.Sdept AND
S2.Sname = '刘晨';
Access数据库基本原理
第32页/共38页
返回章 32
1.3 .1 实体完整性
实体完整性规则:
若属性A是基本关系R的主属性,则属性 A不能取空值。
例1:学生(学号,姓名,性别,专业号,年龄) 专业(专业号,专业名)
第33页/共38页
返回节 33
1.3 .2 参照完整性
例1:学生(学号,姓名,性别,专业号,年龄) 专业(专业号,专业名)
1、现实世界 每一个事物至少有一个特征
2、信息世界 信息(Information):各种事物在人脑中形
成的抽象概念。 信息世界:现实世界的事物在人脑中的抽象。
3、数据世界 就是信息世界中信息的数据化。
第5页/共38页
返回节 5
1.1.3 数据库基本概念
1、数据(Data): 是描述信息的符号,是数据库 中存储的基本对象。如,数字、文字、图像、 声音等形式的信息。 数据处理(Data Processing):是将原始数据转换 成信息的过程,包括对数据的收集、整理、分 类、存储、统计、加工和分析等,分人工处理 和计算机处理两种。
6、实体集(Entity set) :同型实体的集合称为 实体集。
如,某个班级的全体学生就是一个实体集。
16
第16页/共38页
7、联系(Relationship):信息世界的不 同实体集间和同一实体集内部都可 能存在一定的联系。
第17页/共38页
返回节 17
1.2.2 实体的联系
信息世界存在的联系有两种: 一是同一实体集内部的联系 二是不同实体集之间的联系
4、域(Domain):属性的允许取值的集合称为属 性的域。 如,性别的域是{男、女}
15
第15页/共38页
5、实体型(Entity type):具有相同属性的实 体必然具有共同的特征。用实体名及其 所有属性名集合来抽象和描述同类实体 称为实体型。
MySQL基础教程演示文稿
1.1.3 结构化查询语言SQL
结构化查询语言(Structured Query Language或简称为SQL)是一种应用最为广泛的关 系数据库语言,该语言定义了操作关系数据库的 标准语法,几乎所有的关系数据库管理系统都支 持SQL。
第17页,共715页。
学习重点
第18页,共715页。
course(course_no,course_name,up_limit,description,status) teacher(teacher_no,teacher_name,teacher_contact)
classes(class_no,class_name,department_name)
个字段的组合(这种情况称为复合主键)。 (2)表中主键的值具有唯一性且不能取空值
(NULL);当表中的主键由多个字段构成时,每 个字段的值都不能取NULL。
主键设计技巧,请参看本书内容。
第36页,共715页。
1.4.2 为每张表定义一个主键
student(student_no,student_name,student_contact)
王五 马六 田七
17000000000 18000000000 19000000000
NULL 2 2
班级classes表
reference class_no class_name department_name
reference
1 2012自动化1班 机电工程
reference
2 2012自动化2班 机电工程
关系数据库设计技术
第21页,共715页。
1.2.3 “选课系统”概述
退课
调课
限于篇幅,在不 影响“选课系统”核
数据库知识点整理
数据库ppt整理:1.数据库(DataBase,DB)是指长期存储在计算机内、有组织的、可共享的大量数据的集合。
数据库中的数据按一定的数据模型组织、描述和存储,具有较小的冗余度、较高的数据独立性和易扩展性,并为各种用户共享。
概括而言,数据库具有永久存储和易扩展性,并为各种用户共享.2.数据(data)是承载或记录信息的按一定规律排列组合的物理符号,是形成信息的源泉,是计算机程序加工的“原料”。
简单地说,数据是对客观事物描述与记载的物理符号记录。
数据有多种表现形式,可以是文字、图形、图像、声音、语言等.3.信息(information)泛指人类社会传播的一切内容.一般而言,信息是一种被加工成为特定形式的数据,是数据的集合、含义与解释,是事物变化、相互作用、特征的反映。
当前,信息已成为人类社会活动的一种重要资源,与能源、物质并称人类社会活动的三大要素。
4.信息资源与能源、物质资源相比(1)能够重复使用,能在使用中体现自身价值并产生增值;(2)具有极强的目标导向,即使是相同的信息在不同的用户中也体现出不同的价值;(3)具有整合性,信息资源的检索和利用,不受时间、空间、语言、地域和行业的制约;(4)是社会财富,任何人无权全部或永久购买信息的使用权;同时信息资源是商品,可以被销售、贸易和交换;(5)具有流动性。
5。
信息与其它相关概念★ 信息与消息比较,消息是信息的外壳,信息是消息的内核;★ 信息与信号相比,信号是信息的载体;★ 信息与数据比较,数据是信息存在的一种形态或记录形式,数据经过解释并赋予一定意义之后,便成为信息。
★ 信息与知识相比,知识是事物运动状态和方式在人们头脑中一种有序的、规律性的表达,是信息加工的产物。
6. 数据与信息的关系◎ 数据是信息的符号表示,也称载体;◎ 信息是数据的内涵,是数据的语义解释;◎ 数据是符号化信息;◎ 信息是语义化数据。
7。
数据处理数据处理是指对各种形式的数据进行收集、存储、加工和传播的一系列活动的总和.信息处理的目的:一是从大量的、原始的数据中抽取、整理出对人们有价值的信息,以作为行动和决策的依据;二是借助计算机科学地保存和管理复杂、大量的数据,以便方便利用这些资源.8。
DB数据库基本概念
数据库系统的组成
• 支持数据库运行的软、硬件环境 • 每种数据库管理系统都有它自己所要求的软、硬件环境。一般对硬件要说明所需的基本配置,对软件 则要说明其适用于哪些底层软件,与哪些软件兼容等。
第23页/共52页
数据库系统的组成
• 数据库应用程序 • 数据库应用程序是一个允许用户插入、修改、删除并报告数据库中数据的计算机程序。是由程序员用 某种程序设计语言编写的。
多个列组成。 • 关系模式:指对关系的描述,其格式为:关系名(属性1,属性2,…,属
性N)。在数据库中通常称为表结构。
第28页/共52页
关系型数据库的优点
• 容易理解:二维表结构是非常贴近逻辑世界的一个概念,关系模型相对网状、层次等其他模型来说更容易 理解。
• 使用方便:通用的SQL语言使得操作关系型数据库非常方便,程序员甚至于数据管理员可以方便地在逻辑 层面操作数据库,而完全不必理解其底层实现。
第5页/共52页
程序管理方式
• 程序与数据库的对应关系
第6页/共52页
文件系统方式方式
• 时期 • 50年代末--60年代中
• 产生的背景 • 应用需求 科学计算、管理 • 硬件水平 磁盘、磁鼓 • 软件水平 有文件系统 • 处理方式 联机实时处理、批处理
第7页/共52页
文件系统方式
• 特点 • 数据的管理者:文件系统,数据可长期保存 • 数据面向的对象:某一应用程序 • 数据的共享程度:共享性差、冗余度大 • 数据的结构化:记录内有结构,整体无结构 • 数据的独立性:独立性差,数据的逻辑结构改变必须修改应用程序 • 数据控制能力:应用程序自己控制
数据库基本概念
• 数据管理技术的发展 • 数据库系统的组成 • 关系型数据库 • 关系数据库标准语言SQL
数据库名词解释
1.数据:数据库中存储的基本对象,描述事物的符号记录数据库:数据库(Database,简称DB)是长期储存在计算机内、有组织的、可共享的大量数据集合。
数据库管理系统(Database Management System,简称DBMS)是位于用户与操作系统之间的一层数据管理软件。
数据库系统(Database System,简称DBS)是指在计算机系统中引入数据库后的系统构成。
2.数据模型就是现实世界数据特征的抽象,即.数据模型是用来描述数据、组织数据和对数据进行操作的。
通俗的讲,数据模型就是现实世界的模拟。
包括概念模型、逻辑模型、物理模型。
逻辑模型包括网状模型、层次模型、关系模型等。
3.逻辑独立性是指用户的应用程序与数据库的逻辑结构是相互独立的,即,当数据的逻辑结构改变时,用户程序也可以不变。
物理独立性是指用户的应用程序与存储在磁盘上的数据库中数据是相互独立的。
即,数据在磁盘上怎样存储由DBMS管理,用户程序不需要了解,应用程序要处理的只是数据的逻辑结构,这样当数据的物理存储改变了,应用程序不用改变。
下面的了解:数据库系统中的DBMS为三级模式结构提供了两层映像机制:外模式/模式映像和模式内模式映像。
这两层映像机制保证了数据库系统中数据的逻辑独立性和物理独立性。
外模式/模式映像定义了数据库中不同用户的外模式与数据库逻辑模式之间的对应关系。
当数据库模式发生变化时,例如关系数据库系统中增加新的关系、改变关系的属性数据类型等,可以调整外模式/模式间的映像关系,保证面向用户的各个外模式不变。
应用程序是依据数据的外模式编写的,从而应用程序不必修改,保证了数据与应用程序的逻辑独立性,简称数据的逻辑独立性。
模式/内模式映像定义了数据库中数据全局逻辑结构与这些数据在系统中的物理存储组织结构之间的对应关系。
当数据库中数据物理存储结构改变时,即内模式发生变化,例如定义和选用了另一种存储结构,可以调整模式/内模式映像关系,保持数据库模式不变,从而使数据库系统的外模式和各个应用程序不必随之改变。
数据库复习基本知识
数据库复习基本知识1、数据库的4个基本概念:数据(描述事物的符号记录)、数据库(长期存储在计算机内、有组织的、可共享的大量数据的集合。
数据库中的数据按一定的数据模型组织、描述和存储,具有较小的冗余度、较高的数据独立性和易扩展性,并可为各种用户共享概括的讲,数据库数据具有永久存储、有组织和可共享三个基本特点)、数据管理系统(DBMS)和数据库系统(DBS)2、数据库系统的特点:数据结构化(数据库系统实现整体数据的结构化,这是数据库的主要特征这一,也是数据库系统与文件系统的本质区别)、数据的共享性高、冗余度低且易扩充(数据共享可以大大减少数据冗余,节约存储空间,数据共享还能够避免数据之间的不相容性与不一致性)、数据的独立性高(物理独立性和逻辑独立性)、数据由数据库管理系统统一管理和控制(必须具备的4各控制功能1、数据的安全性保护2、数据的完整性检查3、并发控制4、数据库恢复)3、数据库的定义:数据库是长期存储在计算机内有组织、大量、共享的数据集合。
它可以提供各种用户共享,具有最小冗余度和较高的数据独立性。
数据库管理系统在数据库建立、运用和维护时对数据库进行统一控制,以保证数据的完整性和安全性,并在多用户同时使用数据库时进行并发控制,在发生故障后对数据库进行恢复。
4、两大数据模型:1、概念模型(也称信息模型,主要用于数据库设计)2、数据模型(包括逻辑模型和物理模型逻辑模型主要用于数据库管理系统的实现)数据模型应满足三方面的要求:1、能比较真实的模拟现实世界2、容易为人所理解3、便于在计算机上实现5、概念模型:它是按用户的观点来对数据和信息建模,主要用于数据库设计,从现实世界到概念模型的转换是由数据库设计人员完成的。
6、数据模型:它是对现实世界数据特征的抽象。
是用来描述数据、组织数据和对数据进行操作的。
数据模型是数据库系统的核心和基础。
包括逻辑模型(主要包括层次模型、网状模型、关系模型等。
它是按计算机系统的观点对数据建模,主要用于数据库管理系统的实现)和物理模型(对数据最底层的抽象,它描述数据在系统内部的表示方式和存取方方法是面向计算机系统的)从概念模型到逻辑模型的转换可以有数据可设计人员完成,也可以用数据可设计工具协助设计人员完成;从逻辑模型到物理模型的转换主要由数据库管理系统完成。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
数据库系统理论讲解(doc 32页)数据库系统概论本章目的在于使读者对数据库系统的基本知识能有一个较为全面的了解,为今后的学习和工作打下基础。
本章重点介绍了有关数据库结构和数据库系统组织的基本知识和基本概念,以及常见的三种类型的数据库系统的特点。
重点介绍关系数据库的有关知识。
1.1 数据管理技术发展史随着生产力的不断发展,社会的不断进步,人类对信息的依赖程度也在不断地增加。
数据作为表达信息的一种量化符号,正在成为人们处理信息时重要的操作对象。
所谓数据处理就是对数据的收集、整理、存储、分类、排序、检索、维护、加工、统计和传输等一系列工作全部过程的概述。
数据处理的目的就是使我们能够从浩瀚的信息数据海洋中,提取出有用的数据信息,作为我们工作、生活等各方面的决策依据。
数据管理则是指对数据的组织、编码、分类、存储、检索和维护,它是数据处理的一个重要内容中心。
数据处理工作由来以久,早在1880年美国进行人口普查统计时,就已采用穿孔卡片来存储人口普查数据,并采用机械设备来完成对这些普查数据所进行的处理工作。
电子计算机的出现以及其后其硬件、软件的迅速发展,加之数据库理论和技术的发展,为数据管理进入一个革命性阶段提供有力的支持。
根据数据和应用程序相互依赖关系、数据共享以及数据的操作方式,数据管理的发展可以分为三个具有代表性的阶段,即人工管理阶段、文件管理阶段和数据库管理阶段。
【1】人工管理阶段这一阶段发生于六十年代以前,由于当时计算机硬件和软件发展才刚刚起步,数据管理中全部工作,都必须要由应用程序员自己设计程序完成去完成。
由于需要与计算机硬件以及各外部存储设备和输入输出设备直接打交道,程序员们常常需要编制大量重复的数据管理基本程序。
数据的逻辑组织与它的物理组织基本上是相同的,因此当数据的逻辑组织、物理组织或存储设备发生变化时,进行数据管理工作的许多应用程序就必须要进行重新编制。
这样就给数据管理的维护工作带来许多困难。
并且由于一组数据常常只对应于一种应用程序,因此很难实现多个不同应用程序间的数据资源共享。
存在着大量重复数据,信息资源浪费严重。
【2】文件管理阶段这一阶段发生于六十年代,由于当时计算机硬件的发展,以及系统软件尤其是文件系统的出现和发展,人们开始利用文件系统来帮助完成数据管理工作,具体讲就是:数据以多种组织结构(如顺序文件组织、索引文件文件组织和直接存取文件组织等)的文件形式保存在外部存储设备上,用户通过文件系统而无需直接与外部设备打交道,以此来完成数据的修改、插入、删除、检索等管理操作;使用这种管理方式,不仅减轻进行数据管理的应用程序工作量,更重要地是,当数据的物理组织或存储设备发生变化时,数据的逻辑组织可以不受任何影响,从而保证了基于数据逻辑组织所编制的应用程序也可以不受硬件设备变化的影响。
这样就使得程序和数据之间具有了一定的相互独立性。
但由于数据文件的逻辑结构完全是根据应用程序的具体要求而设计,它的管理与维护完全是由应用程序本身来完成,因此数据文件的逻辑结构与应用程序密切相关,当数据的逻辑结构需要修改时,应用程序也就不可避免地需要进行修改;同样当应用程序需要进行变动时,常常又会要求数据的逻辑结构进行相应的变动。
在这种情况下,数据管理中的维护工作量也是较大的。
更主要的是由于采用文件的形式来进行数据管理工作,常常需要将一个完整的、相互关联的数据集合,人为地分割成若干相互独立的文件,以便通过基于文件系统的编程来实现来对它们的管理操作。
这样做同样会导致数据的过多冗余和增加数据维护工作的复杂性。
例如人事部门、教务部门和医务部门对学生数据信息的管理,这三个部门中有许多数据是相同的,如姓名、年龄、性别等,由于是各部门均是根据自己的要求,建立各自的数据文件和应用程序,这样不仅造成了大量的相同数据重复存储,而且在修改时,常常需要同时修改三个文件中的数据项,如修改学生年龄,此外若需要增加一个描述学生的数据项,如通讯地址,那么所有的应用程序就必须都要进行相应的修改。
除此之外,采用文件系统来帮助进行数据管理工作,在数据的安全和保密等方面,也难以采取有效的措施加以控制。
【3】数据库管理阶段1在不断改进和完善文件系统的过程中,从六十年代后期开始,人们逐步研究和发展了以数据的统一管理和数据共享为主要特征的数据库系统。
即在数据在统一控制之下,为尽可能多的应用和用户服务,数据库中的数据组织结构与数据库的应用程序相互间有较大的相对独立性等。
与以往前数据管理方法和技术相比,利用数据库系统来进行数据管理工作具有以下三个显著特点:(1)从整体角度组织数据数据库系统与文件系统的最大差别就在于前者在描述数据时,不仅仅是对数据本身进行描述,而且对数据之间的相互联系也进行了描述。
因此在组织数据时是从一个相对较高的整体角度进行的,而不是仅仅局限于个别的数据管理应用场合。
如前面提到的人事部门、教务部门和医务部门对学生数据的管理工作,在利用数据库系统来进行管理时,若从整体考虑,其数据的组织结构如图1.1所示。
学生信息数据公用部分人事部门学生数据专用部分教务部门学生数据专用部分医务部门学生数据专用部分图1.1 学生信息数据组织结构采用这种数据组织不仅可以有效地解决了文件系统的数据组织中所存在的数据冗余以及数据一致性维护的问题。
更主要的是它可以使人们从更高的全局角度出发,合理地组织数据,从而有利于更大范围内的数据资源的共享,提高信息的使用效率。
(2)数据可为多个应用服务正因为数据库中的数据是从整体角度进行组织的,因此,数据库中所存储的数据往往就不仅局限于只为一二个应用提供服务,而是在更大范围内为仅可能多的应用提供服务,如图1.1所示的一个数据库中所存储的数据,就至少可以为三个部门的应用提供服务。
而实际上如图1.1所示的数据组织结构仅仅只是一个学校数据管理数据库中的一小部分。
与此同时由于数据库系统是以多级(层)组织模式对数据进行组织的,各级(层)模式之间的映射是由数据库系统自己完成的,这就使得数据与程序之间可以具有较高的物理和逻辑相对独立性。
正是这一点,给数据库中的数据为多个应用提供服务奠定了基础。
事实上数据库的规模越大,所能够提供的应用服务就可以越多,也就越能体现出数据库在数据管理中的优势。
当然这只是相对而言,随着数据库中数据规模的扩大,数据库应用系统的制作和维护的工作也在迅速增加。
(3)有一个数据库系统的管理软件任何数据库系统都包含一个管理软件,即数据库系统的管理软件,通常又称为数据库管理系统,它负责统一管理数据库系统中所有数据资源,是数据库系统与用户应用之间的接口,通过它,用户可以不必要了解过多的计算机硬件、软件和数据库本身许多专业知识,更不用去了解数据库系统是如何完成数据管理工作的具体细节,如文件如何打开、关闭、读、写等等,就可以通过编写一些较为简单数据库应用程序,很方便地完成在较高级别逻辑组织基础上的数据管理工作。
除此之外,数据库管理系统还负责完成在对数据库进行并发访问时,保证数据一致性的并发控制工作;保证数据安全性的访问控制工作;以及在数据库系统出现故障时,提供保证数据一致性和完整性的恢复机制等诸多数据库系统本身的各种管理控制工作。
因此这里也可以看出,数据库管理系统功能的强弱及其各项性能指标的好坏,是衡量数据库系统质量的一个极其重要的因素。
利用数据库系统进行数据管理工作,不仅可以保证数据的物理组织结构和存储设备与数据库应用程序之间保持相互独立性;同时也可以保证数据的逻辑组织结构与数据库应用程序之间保持最大可能的相互独立性,即当数据的逻辑组织结构发生变化时,数据库应用程序的变动被限制在最小的范围内。
由此可大大地减少数据库应用程序的开发与维护的工作量。
在数据库管理阶段,根据数据库系统本身所支持的数据模型的特点及所采用的相应数据库系统技术,可以认为数据库管理到目前为止已发展经历了三代,即层次网状模型代、关系模型代和面向对象模型代。
(1)层次网状模型代:流行于六十至七十年代,在这一代中的数据库系统所支持的数据模型均是层次模型或网状模型。
世界上第一个数据库系统是于1964年由美国通用电气公司开发成功的IDS(Integrated Data Store),它就是基于网状模型的数据库系统。
IBM公司于六十年代末推出了第一个商品化的层次数据库系统IMS (Information Management Sytem),它们的出现与应用为数据库技术的发展奠定了基础。
(2)关系模型代:流行于七十至八十年代,在这一代中的数据库系统所支持的数据的数据模型均是关系模型。
以关系(表)形式组织数据。
1970年Codd提出了关系数据模型,由于其具有严格的数学基础,抽象级别较高,且简单清晰,便于理解应用。
到了七十年代末,出现了不少关系数据库系统,其中具有代表性应首推IBM公司推出的SQL/DS和DB2两个商品化关系数据库系统。
进行八十年代以后,关系数据库系统已成为数据库系统发展的主流,几乎所有新推出的数据库系统产品都是关系型的,它们中不仅有用于大型机和小型机数据库产品,而且有可用于微机的数据库产品。
市场上开始出现关系数据库的系列产品,这其中发行量较大且在我国用得较多的有Oracle、Sybase、Sysbase、Informix、FoxPro 等。
随着微机和计算机网络的广泛普及和应用,分布式数据库系统在八十年代后期,开始得到很大发展。
其理论和技术日趋成熟。
目前几乎所有分布式数据库系统均是关系型的,而且几乎所有主要关系数据库系统均已被扩充为分布式数据库系统。
(3)面向对象代:开始九十年代,在这一代中的数据库系统支持面向对象的数据模型。
它是数据库技术与面向对象程序设计方法相结合的产物。
作为新一代数据库系统,现在已有了一些商品化系统。
但其具体应用尚不多。
1.2 数据库系统本节主要介绍有关数据库结构和数据库系统组织的一些基本知识和概念,使读者对数据库系统的内涵有一个较为清楚的认识。
1.2.1 数据库系统概念由于数据库系统是一个由许多基本概念、技术方法和其应用对象所组成的复杂的有机整体。
很难用一两句话将其描述清楚。
但为了使读者对它有一个总体的了解,首先这里我们试着给出一个关于数据库系统的定义,即数据库系统中的数据库是一个已被规格化和结构化且相互关联的数据集合,这些数据中不存在有害的或无意义的冗余;数据的组织与存储结构与使用这些数据的程序相互独立;数据库中的数据可同时为多个应用服务;数据库中的数据定义、输入、修改和检索等所有操作均是按一种公用的且可控的方式进行。
根据这一数据库定义以及实际应用的具体数据库系统的情况,我们可以认为一个数据库系统实际上是由三部分内容组成,它们是数据库、多种应用和数据库管理系统。
这三部分之间的相互关系如图1.2所示。