数据库类型大致可以分为三种,即关系数据库、非关系型数据库和键值数据库。这三种类型数据库都有各自的优缺点以及各自的代表。
通过DB-Engine月排行榜便可以看出每种类型数据库的大哥级代表,而我所了解到的三大代表分别为MySQL、MongoDB和Redis。因此下文主要讲讲三者之间的简单区别以及各自的主要特点,以后再分别详细写写各自的用法。
1.MySQL
MySQL 是最流行的关系型数据库管理系统之一,以多张二维表的方式来存储数据,又给多张表建立了一定的关系,它具有关系型数据库所具有的的功能,与非关系型数据库功能的对比如下:
MySQL所使用的 SQL 语言是用于访问数据库的最常用标准化语言,使用比较简单,功能强大,一般中小型和大型网站的开发都选择 MySQL 作为网站数据库。
2.MongoDB
MongoDB属于非关系型数据库,是一个介于关系型数据库和非关系型数据库之间的产品,也非关系数据库当中功能最丰富、最像关系数据库的。Mongo最大的特点是它支持的查询语言非常强大,其语法有点类似于面向对象的查询语言,几乎可以实现类似关系数据库单表查询的绝大部分功能,而且和MySQL一样还支持对数据建立索引。
它的主要特点是高性能、易部署、易使用,而且存储数据非常方便。
3.Redis
Redis是一个Key-Value数据存储系统,它支持存储的value类型相对更多,包括string(字符串)、list(链表)、set(集合)、zset(sorted set –有序集合)和hash(哈希类型)。
Redis还提供了易扩展、高性能、具备数据持久性等功能,它在高并发、低延迟环境要求比较高的环境使用量非常广泛。