我想要的不是Redis和MongoDB之间的比较.我知道他们是不同的;性能和API完全不同.

Redis非常快,但API非常"原子化".MongoDB将消耗更多资源,但API非常易于使用,我对此非常满意.

它们都很棒,我想在部署中尽可能多地使用Redis,但很难编写代码.我想在开发中尽可能多地使用MongoDB,但它需要一台昂贵的机器.

那么,你觉得这两种方法都有什么用呢?何时 Select Redis?什么时候 Select MongoDB?

推荐答案

我想说,这取决于你的开发团队类型和你的应用需求.

例如,如果您需要大量的querying个,这主要意味着您的开发人员将需要更多的工作来使用Redis,在Redis中,您的数据可能存储在各种专门的数据 struct 中,并针对每种类型的对象进行定制以提高效率.在MongoDB中,同样的查询可能更容易,因为数据的 struct 更加一致.另一方面,在Redis中,对这些查询的响应中有sheer speed个是额外工作的回报,这些额外工作是处理可能存储数据的各种 struct .

MongoDB为具有传统数据库和SQL经验的开发人员提供了简单、短得多的学习曲线.然而,Redis的非传统方法需要更多努力学习,但需要更大的灵活性.

cache层可能在Redis中实现得更好.对于更多可用于模式的数据,MongoDB更好.[Note: both MongoDB and Redis are technically schemaless]

如果你问我,我个人 Select Redis来满足大多数需求.

最后,我希望到现在为止你已经看到了http://antirez.com/post/MongoDB-and-Redis.html

Mongodb相关问答推荐

为什么AllowDiskUse不能在$GROUP阶段的聚合管道中工作?

如何在Mongo Aggregate Query中创建集合的对象ID数组,并在列表中查找另一个集合中的ID

如何用Python和MongoDB找到单据字段的最大值?

无法通过管理邮箱/密码身份验证注册/登录新用户帐户(类型错误:加载失败)

MongoDB 按日期时间字段查询 1h 间隔

MongoDB shell:如何删除列表以外的所有集合

从 mongodb Golang 检索时判断零等效时间.时间

Mongoose $inc 枚举验证失败

mongoose中的 required是什么意思?

增加嵌套对象中的值?

MongoDB映射/减少多个集合?

Mongodb:查询嵌套在数组中的json对象

如何使用原子操作在一个文档中切换布尔字段?

Spring Mongo 条件查询两次相同的字段

MongoDB 查找精确的数组匹配,但顺序无关紧要

将 MongoCursor from ->find() 转换为数组

mongoose:按字母顺序排序

如何使用 mgo 从 golang 中的 mongodb 集合中 Select 所有记录

MongoTemplate upsert - 从 pojo 进行更新的简单方法(哪个用户已编辑)?

我可以只获取 Cursor 对象(pymongo)中的第一项吗?