关于数据库系统的概念有很多,作为初学者或者应用开发者,从实用性的角度来说,我们简单了解一下常见的概念即可,更多可以理论结合实践,边学边体会。
db、dbms、sql的关系
- 数据库(db):是存储在计算机内的一些数据的集合,相当于存储数据的仓库。
- 数据库管理系统(dbms):是对数据库中数据进行进行管理的软件系统。
- sql:结构化查询语言(structure query language),是通过数据库管理系统dbms与数据库(db)进行通讯的语言。
三者的关系,简单理解如下:
数据库管理系统的主要功能
- 数据定义
对数据库中数据对象组织、存储方式等进行规范定义。
- 数据操纵
提供对数据的基本存取操作,如:增、删、改、查等。
- 数据库运行管理
提供数据安全性控制、完整性控制、并发控制、备份恢复等。
- 数据库建立和维护
提供数据的装入、转换、转储、备份恢复、性能监控分析等。
当下流行的数据库管理系统
从下图数据库引擎流行度排行榜可以看到,较为流行的有:
- 关系型数据库:oracle、mysql、microsoft sql server、postgresql、ibm db2、sqlite、mircosoft acess等
- 文档存储数据库:mongodb等
- key-value存储数据库:redis
- 搜索引擎数据库:elastic search
数据库引擎流行度排行
常用数据管理系统特点
每个数据库管理系统都有自己的特点,以下简单说明常用数据库管理系统的特点。
oracle数据库系统是美国oracle公司(甲骨文)提供的以分布式数据库为核心的一组软件产品,产品特点:
- 处理速度快
- 支持多用户
- 安全级别高
- 可移植性好
mysql是一个小型关系型数据库管理系统,瑞典mysql ab公司开发,后来被sun公司收购,sun公司后来⼜被oracle公司收购,所以也算是oracle公司旗下的产品,产品特点:
- 开发源码,采⽤了gpl协议,可以自行定制
- ⽀持多种存储引擎
- 跨平台⽀持性好,提供了多种语⾔的调⽤api
microsoft sql server是美国微软公司发布的一款rmdbs数据库,也是关系型数据库系统,产品特点:
- 图形化用户界面,直观、简单
- 丰富的编程接口工具
- sqlserver和服务器集成配合良好,性价比高