database

database

# 一、DB-Engines

DB-Engines (opens new window)

数据库引擎,一个关系型和NoSQL数据库管理系统的知识库。是一项收集和呈现数据库管理系统信息的计划。除了已建立的关系型DBMS之外,还强调了不断增长的NoSQL领域的系统和概念。

数据库引擎排名是根据当前流行程度排名的DBMS列表。该列表每月更新一次。

# 二、数据库分类

分类 分类别名 数据模型 主流代表 优势 劣势
关系型数据库 RDBMS 行式数据存储 Oracle (opens new window)MySQL (opens new window)Microsoft SQL Server (opens new window)PostgreSQL (opens new window) 事务的ACID; 查询、插入、修改的性能一般;
键值数据库 Key-Value Stores 哈希表 Redis (opens new window) 存储简单;读写性能极高 数据无结构化,通常只被当作字符串或者二进制数据;
不适合海量数据存储;
文档型数据库 Document Stores MongoDB (opens new window) 数据结构灵活; 查询性能不高,缺乏统一的查询语法;
搜索引擎数据库 Search Engines Elasticsearch (opens new window) 全文检索;复杂查询; 硬件资源消耗严重;
时序数据库 TSDB InfluxDB (opens new window)
图数据库 Graph DBMS 节点和关系组成的图 Neo4j (opens new window) 利用图结构相关算法(最短路径、节点度关系查找等) 可能需要对整个图做计算,不利于图数据分布存储;
列存储数据库 Column Stores 列式数据存储 Cassandra (opens new window)HBase (opens new window) 查找速度快;支持分布横向扩展;数据压缩率高 功能相对受限;
空间数据库 Spatial DBMS PostGIS (opens new window)

# 三、数据库

数据库管理系统DBMS

# 1、关系型数据库

RDBMS (Relational DBMS)

DB-Engines Ranking——RDBMS (opens new window)

主流数据库有:Oracle (opens new window)MySQL (opens new window)Microsoft SQL Server (opens new window)PostgreSQL (opens new window)Hive (opens new window)Spark SQL (opens new window)H2 (opens new window)TiDB (opens new window)

优点是具有ACID的特性。

# 2、KV数据库

Key-Value Stores

DB-Engines Ranking——Key-Value (opens new window)

主流数据库有:Redis (opens new window)etcd (opens new window)

# 3、文档型数据库

Document Stores

DB-Engines Ranking——Document (opens new window)

主流数据库有:MongoDB (opens new window)

# 4、搜索引擎数据库

Search Engines

DB-Engines Ranking——Search Engines (opens new window)

主流数据库有:Elasticsearch (opens new window)Solr (opens new window)

# 5、时序数据库

TSDB (time series DBMS)

DB-Engines Ranking——TSDB (opens new window)

主流数据库有:InfluxDB (opens new window)

# 6、图数据库

Graph DBMS

DB-Engines Ranking——Graph DBMS (opens new window)

主流数据库有:Neo4j (opens new window)

# 7、列存储数据库

Column Stores

DB-Engines Ranking——Column Stores (opens new window)

主流数据库有:Cassandra (opens new window)HBase (opens new window)

# 8、空间数据库

Spatial DBMS

DB-Engines Ranking——Spatial DBMS (opens new window)

主流数据库有:PostGIS (opens new window)

# 四、国产数据库

  • 人大金仓
  • 达梦
  • 瀚高
  • 南大通用

# 五、选择数据库

如何选择哪个数据库,从以下五个维度去权衡。

  1. 低响应时间(Low Response Time)
  2. 高可用性(High Availability)
  3. 高并发(Hign Concurrency)
  4. 海量数据(Big Data)
  5. 可承担成本(Affordabie Cost)