Skip to main content

2. NoSQL 数据库概览

NoSQL(Not Only SQL)是一类非关系型数据库,适用于灵活的数据模型、高并发和高可扩展性的场景。


📌 NoSQL 类型与主流产品

类型特点主流数据库应用场景
文档型(Document)JSON/BSON 结构,灵活字段MongoDB、CouchDB内容管理、CMS、产品目录
键值型(Key-Value)高速读写,简单结构Redis、Riak、DynamoDB缓存、会话、排行榜
列族型(Column Family)按列存储,适合宽表结构Cassandra、HBase日志、物联网、大数据分析
图型(Graph)节点+边结构,关系高效查询Neo4j、ArangoDB社交网络、推荐系统

🔄 主流 NoSQL 数据库对比

数据库类型特性最佳使用场景
MongoDB文档型强查询能力、聚合管道、索引丰富内容管理、用户资料
Redis键值型内存数据库、支持过期时间、数据结构丰富缓存、实时统计、排行榜
Cassandra列族型高可用、支持海量数据写密集型大数据应用
Neo4j图型专注图遍历查询社交图谱、网络分析
DynamoDB键值/文档型托管服务,自动扩展电商、移动应用
CouchDB文档型同步友好、RESTful 接口分布式离线应用
HBase列族型Hadoop 集成,强一致性海量日志数据存储
ArangoDB多模型同时支持文档、图、键值多种结构混合查询场景

🧠 如何选择 NoSQL 数据库?

tip

Redis 提供毫秒级响应,适用于极致性能要求的缓存系统。


💻 示例:使用 MongoDB 存储 JSON 文档

// 插入一条用户文档
db.users.insertOne({
name: "Alice",
age: 30,
email: "alice@example.com",
interests: ["reading", "traveling"]
});

💻 示例:使用 Redis 设置缓存数据

# 设置 key
SET session:1234 "user_id=5678"

# 设置带过期时间的 key(单位秒)
SETEX page:home 60 "cached content"

📚 延伸阅读