首页 / 世界杯吉祥物

盘点当前主流5类的NoSQL,附示例代码

2025-05-27 09:39:43世界杯吉祥物 7335

文章目录

1. 键值对存储

Redis (键值对存储)

2. 文档存储

MongoDB (文档存储)

3. 列族存储

Cassandra (列族存储)

4. 图数据库

Neo4j (图数据库)

5. 时间序列数据库

InfluxDB (时间序列数据库)

NoSQL(Not Only SQL)数据库是指一种非关系型、分布式的数据存储,它不同于传统的基于表的关系型数据库管理系统(RDBMS)。NoSQL数据库被设计用来处理大规模数据存储,并且提供更灵活的数据模型。以下是几种常见的NoSQL数据库类型及其代表性的实现:

1. 键值对存储

键值对数据库是最简单的NoSQL数据库形式,它们使用一个哈希表,这个表包含唯一的键和指向数据的指针。

Redis:除了作为缓存工具外,Redis还支持持久化到磁盘,具有丰富的数据类型如字符串、列表、集合等,适合用于会话管理、实时分析等领域。

Riak:提供高可用性和容错能力,适用于需要跨多个数据中心同步数据的应用场景。

DynamoDB (Amazon):亚马逊提供的全托管式NoSQL数据库服务,具备自动扩展和内置备份恢复功能,非常适合互联网应用和服务。

Redis (键值对存储)

# 创建/更新 (SET)

redis-cli SET key1 "value1"

# 读取 (GET)

redis-cli GET key1

# 更新 (通过重新SET实现)

redis-cli SET key1 "newValue1"

# 删除 (DEL)

redis-cli DEL key1

2. 文档存储

文档型数据库将数据存储为文档格式(通常是JSON/BSON),每个文档可以有不同的结构,因此非常灵活。

MongoDB:最流行的文档型数据库之一,支持复杂的查询操作、全文搜索以及地理空间索引等功能。广泛应用于内容管理系统、日志分析等。

CouchDB:强调数据同步特性,允许客户端离线工作并在重新连接后同步更新。非常适合移动应用程序开发。

ArangoDB:不仅支持文档模型,还集成了图数据库功能,提供了多模态的数据处理能力。

MongoDB (文档存储)

# 启动MongoDB shell

mongo

# 使用或创建一个数据库

use mydb

# 创建 (insertOne)

db.collection.insertOne({

name: "Alice", age: 30