数据库的学习与进阶(一)

数据库的入门知识

感谢阿里李飞飞老师的公开课程,得以对数据库的发展有个总体认知,以下是对该课程的整理。

课程内容比较多,而我属于入门菜鸟,就根据自己的学习进度,一点点更新吧。本次主要是对数据库的演进过程、数据库业务视角分类、数据库系统的核心模块的内容整理。

1、数据库的演进流程、各阶段的代表数据库。

(1)商业起步阶段,结构化的数据RDBMS以SQL+OLTP联机事务处理,代表数据库有Oracle、DB2、sybase、SQLServer;

(2)开源阶段,代表数据库有Postgres、MySQL;

(3)分析阶段,海量数据以ETL+OLAP联机分析处理为主,代表数据库有TeraData、Sybase IQ、Greenplum;

(4)异构NoSQL,数据种类丰富多样,代表数据库有Hadoop、Hbase、SAP Hana、MongoDB、Redis;

(5)云原生、一体化分布式阶段,代表数据库有AWS Aurora、Redshift、Azure SQL、Google Spanner、PolarDB、AnalyticDB。

2、从业务的角度,看数据库的应用挑战。

(1)事业型数据库的应用,结构化的数据库,主要应用于银行转账,淘宝下单订单商品库存管理,应用挑战为高并发、高可用、高性能下的正确性和数据的一致性;

(2)NoSQl数据库及专用型数据库,处理的是结构化或半结构化的数据,不强制数据一致性。

(3)分析型数据库,处理海量数据,数据类型复杂,分析条件复杂,需要进行深度智能化分析,其主要挑战是高性能、分析深度要求,及与TP(thinkphp)数据库的联动;

(4)数据库服务+管理类工具,主要侧重数据传输、数据备份、数据库管理等;

(5)数据库管控平台,实例管理、资源管理和调度、高可用、备份、安全等。

3、数据库系统核心模块构成。

数据库系统主要分为应用接口、SQL接口、查询执行引擎、数据访问模块、存储引擎。查询执行引擎主要是对SQL进行优化处理,从逻辑代码转换为物理代码;数据访问模块主要是事务管理(崩溃恢复、并发控制)、内存处理、安全管理、文件和索引管理;存储引擎主要是进行数据文件、索引文件、系统及元数据文件管理。

 

你可能感兴趣的:(数据库的深入学习,学习笔记,数据库)