数据库入门之3张表对比关系型与非关系型数据库
本期使用3张表将关系型与非关系型数据库进行比对,让大家了解主流数据库引擎的特征和适用场景:
[if !supportLists]1. [endif]SQL与NoSQL的典型引擎和区别
数据库类型SQLNoSQL
举例Oracle、SqlServer、MySQL、PostgreSQL等MongoDB、Redis、HBase等
存储结构采用结构化表来存储数据采用半结构化数据集存储数据
存储规范化&存储代价通过更加规范化逻辑表来避免重复,获得最精简的空间,但数据操作往往涉及多个表,数据管理复杂。将数据存储在数据集中,数据经常可能存储重复,但数据更容易读写。
横向扩容能力较弱较强
事务性&纯扩展性非常好的支持事务性不支持或半支持
[if !supportLists]2. [endif]关系型数据库特征及适用场景
数据库特征适用场景
MySQL最广泛、流行的开源数据库,支持多插件式存储引擎、灵活、多平台,支持水平拆分。支持高并发,简单的绝大部分OLTP场景,单实例数量级不易过大,非常适合大规模数据库场景相对简单的互联网行业。
SQL Server与微软体系紧密结合的商业关系型数据库,大多数操作通过图形界面完成,支持共享存储方式的数据库集群,可通过硬件进行垂直升级。适用于应用端采用微软体系的大多数OLTP场景。
Oracle目前市面上功能最强大、最复杂的商业数据库,有一套完整监控管理体系,支持多种高可用方案。适用于稳定性、安全性要求非常高的OLTP场景,如银行、金融行业。
PostgreSQL目前功能最强大的开源数据库,支持多平台、多种高可用方案,但国内社区活跃度有待进一步增强。易用性介于mysql与oracle中间。支持绝大多数高并发OLTP场景,国内大规模应用的案例相对较少,适合作为oracle与mysql之间的折中方案。
[if !supportLists]3. [endif]关系型数据库特征及适用场景
数据库特征适用场景
MongoDB主流的文档型NoSQL数据库,开源,多平台。适用于更新迭代快、需求变更多、以对象为主的网站应用、小文件系统、日志分析系统等。
Redis主流的内存数据库,性能高,稳定性好。适用于对命令响应速度要求高,热点数据规模小、读取频繁的场景。
Hbase主流的海量列式存储型NoSQL数据库。适用于简单数据写入和海量、简单数据查询的业务场景,多用于OLAP场景。
更多数据库学习内容请访问华为云学院(https://edu.huaweicloud.com/courses/)报名学习数据库相关课程。
网友评论