前言
数据库技能是盘算机科学技能中发展最快,应用最广的技能之一,它是专门研究如何科学的组织和存储数据,如何高效地获取和处理数据的技能。它已成为各行各业存储数据、管理信息、共享资源和决策支持的最先辈,最常用的技能。
当前互联网+与大数据,一切都建立在数据库之上,以数据说话,首先需要聚集数据、分析数据和管理数据,数据库技能已成为各种盘算机体系的焦点技能。数据库相干知识也已成为每个人必须把握的知识。
一、数据库4个基本概念
1.1 数据(Data)
数据(Data)是信息的详细变现形式。在实际中的数据与其语义是不可分的。如93是一个数据,在不同语义下代表不同的意义:
语义1: 学生某门课的结果
语义2: 某人的体重
语义3: 公司员工的人数
数据是大量存在的,在特定的语义(背景)下,就成为信息。
例如:
记录(张三,女,1996,苏州)就是数据。文字、图形、图像、声音等都是数据,各类数据必须数字化后才气加工处理。
1.2 数据库(DataBase,DB)
数据库(DataBase,简称DB)是一个存储数据的仓库。是数据和数据对象的集合。这种集合可以长期储存,具有确定的数据存储布局,同时能以安全可靠的方法举行数据的存储和检索。
当今天下,数据库非常广泛的应用在生存的方方面面。
例如:
12306保存了车次,售票等数据等等
1.3 数据库管理体系(DataBase Managemet System,DBMS)
数据库中数据量巨大,如何界说,利用和管理 ?我们就需要用到数据库管理体系(DataBase Management System,简称DBMS),它是位于用户应用程序与操作体系之间的一层体系软件,用来利用和管理数据库的软件,用于建立、使用和维护数据库。
在数据库管理体系中,他有如下功能:
- 数据界说功能:DBMS提供数据界说(DDL)语言,来界说数据库布局,并被保存在数据字典中。
- 数据存取功能:DBMS提供数据利用语言(DML),实现对数据库数据的基本存取操作(查询,插入,修改和删除)
- 数据库运行管理功能:DBMS提供数据控制功能,通过保证数据的安全性、完整性和并发控制等,实现对数据库的有效控制和管理,以确保数据正确有效
- 数据库的建立和维护功能:包罗数据库初始数据的装入,数据库的转储、恢复、体系性能监视、分析等功能。
- 数据库的传输:DBMS提供处理数据的传输,实现用户程序与DBMS之间的通讯,通常与操作体系协调完成。
常用的DBMS有Oracle、MySQL、Microsoft SQL Server等
1.4 数据库体系(DataBase System,DBS)
数据库体系(DataBase System,简称DBS)是指引入数据库技能后的整个盘算机体系。可以或许实现有组织地、动态地存储大量相干数据,提供数据处理和信息资源共享的焦点体系。
数据库体系主要包罗3个部分:
盘算机体系(软件、硬件和人)、数据库、数据库管理体系。
即DBS = 盘算机体系 + DB + DBMS
二、数据库技能的历史
2.1 数据库管理技能的历史
人工管理阶段
- 数据不保存
- 数据由程序各自管理
- 一组数据只能对应一个程序
- 数据不具备独立性
文件体系阶段
- 数据可以长期的保存
- 数据由文件体系管理
- 数据可以布局化(记录内部是有布局的,团体无布局)
- 数据共享差,冗余度大
- 有了一定的独立性
- 数据面对的对象是某一个程序
数据库管理体系
- 数据库由DBMS管理
- 数据团体布局化
- 数据共享性高
- 高度的物理独立性和一定的逻辑独立性
- 数据控制能力由DBMS统一管理和控制
数据库管理技能各阶段比较分析:
2.2 数据库的发展
数据库最早的劈头是由于美国政府要管理巨大的火箭构件数据,要求IBM举行数据库的开辟。
1968年诞生了条理数据库
1969年诞生了网状数据库
1970年诞生了关系数据库
2.3 未来已来
新型数据库由普通数据库到与各种先辈技能结合所形成的新型数据库:
- OA⇐DB + Management Information System
- Database Machine ⇐DB + Computer Architecture
- Intelligent Database ⇐ DB + Artificial Intelligence
- Distributed Database(DDB) ⇐ DB + Computer Network
- Image Database / Multimedia Database ⇐ DB + Image
- processing/ Multimedia processing
- Temporal Database ⇐ DB + 时态技能处理
- 传感器数据库 RFID(Radio Frequency IDentification)射频辨认技能,可以薄如纸张,小如豆粒。可以无线存储、发送数据。
三、数据模型
实际生存中一张舆图、一组构筑沙盘、一架航模飞机都是的模型。
而我们在数据库中,要把实际天下中存在的数据举行建模。比如我们把一个学校转化成数学模型,然后存储在盘算机中。就需要颠末一些数据抽象的步骤:
- 在数据库的开辟过程中,我们把学校中的数据,通过概念布局的设计,转化成概念数据模型
- 然后对概念数据模型举行抽象,转化成数据模型(逻辑模型)
- 终极通过盘算机物理模型的实现,有效的表达在盘算机。
3.1 条理模型
条理模型的数据布局是树型布局。满足下面两个条件的基本条理的集合为条理模型
- 有且只有一个结点没有双亲结点,该节点称为根结点
- 根结点以外的其他结点有且只有一个双亲结点
根节点:最顶上的唯一的一个,所以A就是根结点
双亲节点:子节点的父节点就叫做双亲节点,如A是B、C的双亲节点
以下是教员学生条理数据模型
以下是教员学生条理数据的值
通过条理数据模型的数据布局可以清楚的了解到逻辑上对数据是怎么储存的(1对N)
条理模型的数据布局的优点 :
- 布局比较简单清楚
- 查询服从高
- 提供了精良的完整性支持
条理模型的数据布局的缺点
- 结点之间的多对多联系表现不自然
- 对插入和删除操作的限制多,应用程序的编写比较复杂
- 查询孩子结点必须通过双亲结点
- 条理命令趋于程序化
3.2 网状模型
网状模型的数据布局是是图型布局,任一结点都可以无双亲或有一个以上的双亲(N对N)。
例如:
学生举行选修课程的时间可以选择多门课程,一门课程也可以被多名学生选择
网状模型的优点:
- 可以或许更为直接地描述实际天下,如一个结点可以有多个双亲,具有精良的性能,存取服从较高
网状模型的缺点:
- 布局比较复杂,而且随着应用环境的扩大,数据库的布局就变得越来越复杂,不利于终极用户把握
- DDL、DML语言复杂,用户不轻易使用
- 记录之间联系是通过存取路径实现的,用户必须了解体系布局的细节。
3.3 关系模型
条理、网状模型基本上是面向专业人员的,与物理层关系密切。我们需要一种面向用户的数据模型,因此我们用二维表(关系)来描述实体及实体间联系的模型。
例如,在实际生存中,有两张表,一个是班级信息表,一个是学生信息表。一名学生只能对应一个班级,班级中可以包含多名学生,这在实际生存中是一对多的联系,我们通过设置两个雷同的属性列,就可以把这两个关系联接在一起,我们通过学生的ClaID就可以查询到班级相干的信息。
- CREATE TABLE Student
- (StuID char(13),
- StuName varchar(8),
- StuBir smalldatetime,
- StuSex char(2),
- StuAddr varchar(30),
- Cla_ID char(10) ,
- CONSTRAINT class_Cla_ID FOREIGN key(Cla_ID) REFERENCES class(Cla_ID)
- );
复制代码 关系模型的优点:
- 建立在严酷的数学概念的基础上
- 概念单一
- 关系模型的存取路径对用户透明
关系模型的缺点 :
- 存取路径对用户透明,查询服从往往不如格式化数据模型
- 为进步性能,必须对用户的查询哀求举行优化,增加了开辟数据库管理体系的难度
数据模型是对实际天下存在的客观对象举行抽象认识。
按照抽象的条理可分为:概念模型->数据模型(逻辑模型)->物理模型。
数据模型(逻辑模型):条理模型,网状模型,关系模型,面向对象模型等,关系模型是我们最常用的一种数据模型
四、模式与映像
在上面我们了解了数据库的工作坏境,应用程序是通过DBMS来访问数据库里的数据。
例如,图书借阅体系。图书采买管理体系中有图书采买管理程序、图书借阅程序管理程序等很多程序,他们是怎么DBMS举行数据库的访问的?
4.1 数据库的体系布局
从数据库应用开辟人员角度看,数据库体系通常接纳三级模式布局,是数据库体系内部的体系布局
从数据库终极用户角度看,数据库体系的布局分为:
4.2 模式(Schema)
模式(Schema)是数据库逻辑布局和特性的描述,是型的描述,不涉及详细值, 反映的是数据的布局及其联系。
4.3 三级模式
4.3.1 模式(逻辑模式)
模式也称逻辑模式,是数据库中全体数据的逻辑布局和特性的描述,所有用户的公共数据视图,一个数据库只有一个模式 。简单点理解就是所有用户的公共视图(全局视图),可以用数据界说语言DDL来界说。
模式是数据库体系模式布局的中央层 ,与数据的物理存储细节和硬件环境、应用程序、开辟工具及高级程序设计无关。
模式的界说 :
- 数据的逻辑布局(数据项的名字、范例、取值范围等)
- 数据之间的联系
- 数据有关的安全性、完整性要求
4.3.2 外模式(子模式或用户模式)
数据库用户(包罗应用程序员和终极用户)使用的局部数据的逻辑布局和特性的描述。
数据库用户的数据视图,是与某一应用有关的数据的逻辑表现,
用户能看到的数据库和视图跟详细的程序或项目有关,可用DML来操作。
外模式的作用: 保证数据库的安全性
模式与外模式的关系: 一对多
- 外模式通常是模式的子集
- 一个数据库可以有多个外模式
- 对模式中同一数据,在外模式中的布局、范例、长度、保密级别等都可以不同。
4.3.3 内模式(也称存储模式)
内模式是数据物理布局和存储方式的描述
是数据在数据库内部的表现方式
- 记录的存储方式(如顺序存储,按照B+树布局存储,按hash方法存储等)
- 索引的组织方式
- 数据是否压缩存储
- 数据是否加密
- 数据存储记录布局的规定。
简单而言内模式对应物理级,数据在物理介质的存储方式和存储布局。
4.4 二级映象
三级模式是对数据的三个抽象级别
二级映象在数据库管理体系内部实现这三个抽象条理的联系和转换
主要保证数据的逻辑独立性
当模式改变时,数据库管理员对外模式/模式映象作相应改变,使外模式保持稳定
应用程序是依据数据的外模式编写的,应用程序不必修改,保证了数据与程序的逻辑独立性,简称数据的逻辑独立性
保证数据的物理独立性
当数据库的存储布局改变了(例如选用了另一种存储布局),数据库管理员修改模式/内模式映象,使模式保持稳定。
应用程序不受影响。保证了数据与程序的物理独立性,简称数据的物理独立性
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。 |