第六章、数据库体系构建(DBA)

1.1.  简介

何为数据库?

顾名思义数据库(DataBase)就是一个存放数据的仓库,这个仓库按照一定的数据结构(数据结构是指数据的组织形式或数据之间的联系)来组织存储的,我们可以通过数据库提供的多种方法来管理数据库里的数据。

我们的程序都是在内存中运行的,一旦程序运行结束或者计算机断电,程序运行中的数据都会丢失,所以我们就需要将一些程序运行的数据持久化到硬盘之中,以确保数据的安全性。

DBMS:是管理数据库的系统软件,它实现数据库系统的各种功能。是数据库系统的核心。

DBA:负责数据库的规划、设计、协调、维护和管理等工作。

数据库和传统的文件管理数据有什么区别呢?

文件管理系统的特点 数据库管理系统的特点
1.编写应用程序不方便 1.相互关联的数据的集合
2.数据冗余不可避免 2.较少的数据冗余
3.应用程序依赖性 3.程序与数据相互独立
4.不支持对文件的并发访问 4.保证数据的安全、可靠
5.数据间联系弱 5.最大限度地保证数据的正确性
6.难以按用户视图表示数据 6.数据可以并发使用并能同时保证一致性
7.无安全控制功能

1.2.  数据库选型

根据数据库的数据存储结构区别,可以把数据库类型分为关系型数据库和非关系型数据库,怎么选择合适自己的数据库场景?

  关系型数据库(SQL 数据库 ) 非关系型数据库(NOSQL)
数据存储结构 有固定的表结构,并且需要通过DDL语句来修改表结构 存储机制多,比如基于文档的,K-V键值对的,还有基于图的等
可扩展性 不容易进行扩展 易水平扩展
数据一致性 更多偏向于OLTP场景 更多的偏向于OLAP场景
实质 功能完善 功能阉割版本,通过减少用不到或很少用的功能来大幅度提高产品性能
价格 Oracle、DB2、MSSQL是收费的,许可昂贵,Mysql是免费的,但是需要一些定制化才能使用 主流的非关系型数据库都是免费的
功能 功能强大、完善 性能更好,成本更低

下面介绍几款主流的关系型与非关系型数据库

关系型数据库 特点
Mysql 由瑞典MySQL AB公司开发,目前属于 Oracle旗下产品。是最流行的关系型数据库管理系统,在WEB应用方面MySQL是最好的RDBMS应用软件之一。主要应用领域;互联网领域,大中小型网站,游戏公司,电商平台等等。
SQL Server Microsoft公司推出的关系型数据库管理系统。具有使用方便可伸缩性好与相关软件集成程度高等优点。主要应用领域:部分企业电商(央视购物),使用weindows服务器平台的企业
ORACLE 数据库系统是美国ORACLE公司提供的以分布式数据库为核心的一组软件产品,是目前最流行的C/S或B/S体系结构的数据库之一。

主要应用领域:传统大企业,大公司,政府,金融,证券等等,互联网公司一般不用。

PostgreSQL
非关系型数据库
redis 是键值对数据库,数据一般存在内存中,读写速度快(10W/s),适合作为缓存服务
MongoDB 是文档型数据库,数据结构要求不严格,适合存储结构不确定或者价值较低的数据
HBASE 是列存储数据库,查找速度快,更容易进行分布式扩展,适合作为文件存储服务
Neo4j 是图形数据库,使用”图结构”存储,适合做社交网络计算

数据库的排名情况,参考:https://db-engines.com/

第六章、数据库体系构建(DBA)

发表回复

滚动到顶部