redis 和 MongoDB都可以存储键值对,并且值可以是复杂json,用完备例子分别 ...

打印 上一主题 下一主题

主题 1826|帖子 1826|积分 5478

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?立即注册

x
Redis 存储 JSON 键值对示例

存储操作:

  1. // 存储用户信息(键:user:1001,值:JSON对象)
  2. SET user:1001 '{"name":"Alice", "age":30, "address":"New York"}'
复制代码
查询操作:

  1. // 获取用户信息
  2. GET user:101
  3. // 输出结果:{"name":"Alice", "age":30, "address":"New York"}
复制代码

MongoDB 存储 JSON 键值对示例

存储操作:

  1. // 直接插入 JSON 文档到 users 集合
  2. db.users.insertOne({
  3.   _id: 1001,
  4.   name: "Alice",
  5.   age: 30,
  6.   address: "New York"
  7. });
复制代码
查询操作:

  1. // 根据_id查询文档
  2. db.users.findOne({ _id: 1001 });
  3. // 输出结果:{ "_id": 1001, "name": "Alice", "age": 30, "address": "New York" }
复制代码

焦点对比分析

对比维度RedisMongoDB存储结构值为纯字符串化的 JSON,需客户端剖析/序列化原生支持 JSON-like BSON 格式,支持字段级查询和索引性能内存级操作(毫秒级相应),适合高频读写磁盘/内存混淆存储(通常为 10-100ms),适合高吞吐场景查询能力仅支持键级操作,无法直接查询 JSON 内部字段支持复杂查询(如 db.users.find({ age: { $gt: 25 } }))和索引优化持久化需通过 RDB/AOF 机制实现,存在数据丢失风险(默认非实时持久化)默认持久化到磁盘,支持副本集和分片集群保证高可用性实用场景缓存、计数器、实时统计等需要极致性能的场景需要复杂查询、事务、持久化存储的业务数据(如用户资料、订单体系)
关键差异总结


  • 数据模型
    Redis 需要手动处理 JSON 序列化,MongoDB 原生支持文档结构
  • 查询机动性
    Redis 仅支持键匹配,MongoDB 支持多条件组合查询
  • 持久化能力
    Redis 更适合临时数据缓存,MongoDB 适合恒久业务数据存储

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

愛在花開的季節

论坛元老
这个人很懒什么都没写!
快速回复 返回顶部 返回列表