前言
本文主要介绍了数据库系统的一些简单概述,并且介绍了一些术语,可以帮助大家去了解数据库系统
一、数据库系统的应用
数据库系统在软件应用架构中属于偏向底层的部分:
它运行在操作系统上但又是基础的软件支持平台,因此它的应用场景相当丰富:
1.大学学籍管理系统
2.警务系统
3.银行,证券系统
4.图书馆系统
5.企业仓库管理系统
二、数据库系统的相关概念
1.数据(Data)
数据很好理解,它是我们对于现实世界信息的一种抽象,众多的数据构成了信息,众多的信息将我们的世界数字化。
虽然数据很常见且普遍,但是它是数据库系统的基础材料,也是相当重要。
2.数据库(Database)
(1)功能:
1.存放数据的仓库
2.是互相关联的数据集合,在该集合中完全或部分地消除了数据的冗余。
这里消除数据的冗余相当的重要,不仅仅是节约资源,更是避免数据错误的发生,造成更加严重的后果。
(2)基本特点:
永久存储、有组织、可共享
3.数据库管理系统(DBMS)
Database Management System-----DBMS
DBMS负责数据库的建立、操作、管理和维护的软件系统,可以理解为用户与数据库的操作接口
(1)功能:
1.数据定义
(1)提供数据定义语言(DDL)
(2)定义数据库中的数据对象
2.数据组织、存储和管理
(1)分类组织、存储和管理各种数据
(2)确定组织数据的文件结构和存取方式
(3)实现数据之间的联系
(4)提供多种存取方法提高存取效率
3.数据操纵
(1)提供数据操纵语言(DML)
(2)实现对数据库的基本操作 (查、插、删、改)
4.数据库的事务管理和运行管理
(1)数据库在建立、运行和维护时由DBMS统一管理和控制
(2)保证数据的安全性、完整性、多用户对数据的并发使用
(3)发生故障后的系统恢复
5.数据库的建立和维护功能(实用程序)
(1)数据库初始数据装载转换
(2)数据库转储
(3)介质故障恢复
(4)数据库的重组织
(5)性能监视分析等
6.其它功能
(1)DBMS与网络中其它软件系统的通信
(2)两个DBMS系统的数据转换
(3)异构数据库之间的互访和互操作
(2)特点:
1.DBMS能对数据库进行有效的管理。包括存储管理、安全性管理、完整性管理和数据恢复等。
2.DBMS提供了一个软件环境,使用户能方便快速的建立、维护、检索、存取和处理数据库中的信息
4.数据库系统(DBS)
数据库系统 ----Database System----DBS
(1)组成:
1.数据库
2.数据库管理系统(开发工具)
3.应用程序
4.数据库管理员
(2)分类:
决策支持Decision Support(DSS)/OLAP
基本特点:
1.通常并发请求数较低
2.系统会进行大量的数据分析、数据挖掘
应用场景:
数据库系统针对现有或历史性数据给出预见性的增长趋势或概率,对于管理层提供决策的数据支持。通常此类系统用于气象、金融业或零售行业
在线交易Online Transaction Processing (OLTP)
基本特点:
1.时效性要求非常高
2.系统会出现瞬时性的大量用户访问,并发请求数非常高
应用场景:
数据库系统针对当前交易请求实时处理,通常应用于在线交易网站,在线订票系统、银行和股市的电子交易,零售业的终端POS
(3)数据库系统的结构:
(4)数据库系统软件运行环境:
三、数据模型
数据模型是数据库系统的核心和基础
1.层次划分
(1)概念模型
也称信息模型,它是按用户的观点来对数据和信息建模,用于数据库设计。
(2)逻辑模型
主要包括网状模型、层次模型、关系模型、面向对象数据模型、对象关系数据模型、半结构化数据模型等。按计算机系统的观点对数据建模,用于DBMS实现。
(3)物理模型
是对数据最底层的抽象,描述数据在系统内部的表示方式和存取方法,在磁盘或磁带上的存储方式和存取方法。
2.模型的建立
3.概念数据模型(E-R模型)
(1)实体 Entity
客观存在并可互相区分的事物叫实体
例:博主“牛同志”,《数据库系统概述》
(2)属性 Attribute
实体所具有的某一特性。一个实体可以由若干属性来描述
例:“牛同志”由姓名、性别、年龄、等属性来组成。
(3)域(Domain)
属性的取值范围。
例:性别的取值范围为(男、女),月份的取值范围是1-12之间的整数
(4)实体型(Entity Type)
实体名与其属性名集合共同构成实体型。
例:学生(学号、姓名、年龄、性别、班级)是一个实体型
(5)码(Key)
1.能唯一标识实体的属性或属性的组合称为超码。
2.超码的任意组合也是超码。
3.关系中的一个属性(组),其值能唯一标识一个实体。若从属性属性(组)中去掉任何一个属性,它就不具有这一性质了,这样的属性组称作候选码。
例如:邮寄快递的地址
4.从所有的候选码中选定一个用来区别同一实体集中的不同实体,称为主码(Primary Key)。
例如:一个大学里的学生可以用学号来区分,学号就是主键
5.一个实体集中任意两个实体在主码上的取值不能相同。
例如:一个人的身份证号
(6)主键(Primary Key)
主码是中国计算机学派在80年代兴起的叫法,事实上更多的人使用香港和台湾地区的翻译名称——主键。在E-R图中,通常使用(PK)作为主键的简称。
例:
学号是学生实体集合的主键。
通讯录(姓名、邮编、地址、电话、Email、手机号码)这一实体集中,手机号码因为其实际表述的唯一性,也可以作为主键。
四、数据库用户和管理员
1.数据库用户
1.应用程序员 – 通过DML调用与系统交互
2.富有经验的用户(Sophisticated users) – 用数据库查询语言表达请求
3.专业用户– 编写不适合于传统的数据处理框架的专业数据库应用
4.初级用户 –通过调用先前已经写好的一个应用程序与系统交互。
2.数据库管理员
1.决定数据库中的信息内容和结构
2.决定数据库的存储结构和存取策略
3.定义数据的安全性要求和完整性约束条件
4.监控数据库的使用和运行
5.数据库的改进和重组
五、数据库体系结构
1.并行数据库系统
并行系统通过并行地使用多个处理器和磁盘来提高处理速度和I/O速度。目前并行计算机正变得越来越普及,因此使用并行数据库的研究变得越来越重要。
在并行处理中,许多操作是同时执行的,而不是串行处理。粗粒度并行机由少量能力强大的处理器组成;而大规模并行机或细粒度并行机使用数千个更小的处理器。目前所有的高端计算机都提供了一定程度的粗粒度并行性,它们至少具有两个或4个处理器。
2.分布式数据库系统
分布式数据库系统是将数据库存储在几台计算机中。它们不共享主存储器或磁盘。
建立分布式数据库系统有几个原因:
1.数据共享:使一个站点上的用户可以访问存放在其它站点上的数据。
2.自治性:每个站点可以对本地存储的数据保持一定程度的控制。
3.可用性:如果一个站点发生故障,其它站点还能继续运行。
总结
本文介绍停留于表面,仅仅为小的概述。不妥之处希望大家能够包容指正