这是我参与「第五届青训营 」伴学笔记创作活动的第 16 天
前言
这是小白初接触到消息队列的内容,本课程MySQL - 深入理解 RDBMS。主要讲述RDBMS的经典案例,发展历史,关键技术,企业实践。
存储系统:块存储、文件存储、对象存储、key-value存储
数据库系统:关系型数据库、非关系型数据库
分布式架构:数据分布策略、数据复制协议、分布式事务算法
01.经典案例
1.2 RDBMS事务ACID
RDBMS事务(Transaction):是由一组SQL语句组成的一个程序执行单元(Unit),它需要满足ACID特性。
ACID : 原子性(A tomicity):事务是一个不可再分制的工作单元,事务中的操作要么都发生,要么都不发生。
一致性( onsistency):数据库事务不能破坏关系数据的完整性以及业务逻辑上的一致性。
隔离性( solation):多个事务并发访问时,事务之间是隔离的,一个事务不应该影响其它事务运行效果。
持久性(D urability):在事务完成以后,该事务所对数据库所作的更改便持久的保存在数据库之中,并不会被回滚。
02.发展历史
DBMS数据模型:1960s,传统的文件系统已经不能满足人们的需要,数据库管理系统(DBMS)应运而生。
DBMS:按照某种数据模型来组织、存储和管理数据的仓库。
所以通常按照数据模型的特点将传统数据库系统分成网状数据库、层次数据库和关系数据库三类。
2.1 DBMS数据模型-网状模型
网状数据库所基于的网状数据模型建立的数据之间的联系,能反映现实世界中信息的关联,是许多空间对象的自然表达形式。
1964年,世界上第一个数据库系统
集成数据存储(Integrated Data Storage, IDS) 诞生于通用电气公司。IDS是世界上第一个
网状数据库,莫定了数据库发展的基础,在当时得到了广泛的应用。在1970s网状数据库系统十 分流行,在数据库系统产品中占据主
导地位。
2.2 DBMS数据模型-层次模型
1968年,世界上第一个层次数据库-信 息管理系统(Information Management System, IMS)诞生于IBM公司,这也是世界上第
一个大型商用的数据库系统。层次数据模型,即使用树形结构来描述实体及其之间关系的数据模型。
网状模型:
优势:能直接描述现实世界,存取效率较高
劣势:结构复杂, 用户不易使用,访问程序设计复杂
层次模型:
优势:结构简单,查询效率高,可以提供较好的完整性支持
劣势:无法表示M:N的关系,插入、删除限制多,遍历子节点必须经过父节点,访问程序设计复杂
关系模型:
优势:实体及实体间的的联系都通过二维表结构表示,可以方便的表示M:N关系,数据访问路径对用户透明
劣势:关联查询效率不够高,关系必须规范化
03.关键技术
原子性:一个事务(transaction) 中的所有操作,要么全部完成,要么全部不完成,不会结束在中间某个环节。事务在执行过程中发生错误,
会被恢复(Rollback) 到事务开始前的状态,就像这个事务从来没有执行过一样。
lsolation (隔离性) :数据库允许多个并发事务同时对其数据进行读写和修改的能力,隔离性可以防止多个事务并发执行时由于交叉执行而导
致数据的不一致。
小结
本课程MySQL - 深入理解 RDBMS。由浅到深讲述RDBMS的经典案例,发展历史,关键技术,企业实践。