数据库

数据库(Database)是按照一定结构组织和存储数据的系统,配合数据库管理系统(DBMS)对数据进行增删改查。按数据模型划分,主流数据库分为关系型非关系型两大类。

关系型数据库

关系型数据库(Relational Database)以(Table)为基本单位,行表示记录,列表示字段,表与表之间通过外键建立关联。使用 SQL(结构化查询语言)进行数据操作,具备 ACID 特性(原子性、一致性、隔离性、持久性),保证数据强一致。

适合场景: 业务逻辑复杂、需要事务支持、数据结构固定的场景,如订单系统、用户系统、财务系统。

常见代表:MySQL、PostgreSQL、Oracle、SQLite。

非关系型数据库

非关系型数据库(NoSQL,Not Only SQL)不强制使用表结构,根据数据模型又分为多个子类:

类型 特点 代表
键值存储(Key-Value) 结构最简单,读写性能极高 Redis、Memcached
文档数据库 以 JSON/BSON 文档存储,结构灵活 MongoDB、CouchDB
列式数据库 按列存储,适合大规模分析查询 HBase、Cassandra
图数据库 以节点和边表示关系,适合社交网络等 Neo4j

适合场景: 数据结构多变、需要水平扩展、高并发读写、海量数据存储的场景,如缓存、日志、推荐系统。

如何选型

  • 数据结构固定 + 强事务需求 → 关系型
  • 高并发缓存 / 会话存储 → Redis
  • 灵活文档结构 / 快速迭代 → 文档数据库
  • 日志 / 时序 / 分析型大数据 → 列式数据库