用Redis查询?

Kev*_*gue 15 mongodb nosql redis node.js

我一直在学习Node.js所以我决定建立一个简单的广告网络,但我似乎无法决定要使用的数据库.我一直在使用Redis,但我似乎找不到按特定条件查询数据库的方法,而是只能获取键或列表的值或设置在键内.

我错过了什么,或者我应该使用像MongoDB这样更强大的数据库?

yoj*_*o87 17

我建议阅读有关Redis的教程,以了解其概念和数据类型.我也有问题要理解为什么没有类似于其他(不)SQL数据库的查询支持,直到我阅读了一些文章并尝试测试和比较Redis与其他解决方案.也许它不是适合您的用例的数据库,虽然它非常快并且支持高级数据结构,但是缺少对您来说至关重要的查询.如果您正在寻找一个允许您查询数据的数据库,那么您应该尝试使用mongodb或者riak.


Alf*_*red 6

Redis通常被称为数据结构服务器,因为键可以包含字符串,散列,列表,集和排序集.

如果能够(易于实现),您应该使用这些原语(字符串,散列,列表,集和排序集).Redis的主要优点是闪电般快,但它是相当原始的键值存储(redis更先进一点).这也意味着它不能queried像例如SQL.

使用更高级的存储可能更容易,例如Mongodb,它是面向文档的数据库.在这种情况下你做出的权衡是性能,但我相信你应该只解决这个问题,如果这成为一个问题,它可能不会是因为Mongodb也很快并具有可能的优势queried.我认为为查询提供适当的索引(读取>写入)以使其快速进行是明智的.

  • 来自Riak:"Riak依靠MapReduce执行超出基本键/值存储模型限制的查询." Redis没有MapReduce来做这件事.说实话,我对Riak没有任何经验,但传统的Key-value商店无法查询数据库...... (2认同)