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

我是缺少了什么,还是应该使用更强大的数据库,比如MongoDB?

推荐答案

为了理解Redis的概念和数据类型,我建议阅读this篇关于Redis的教程.我也很难理解为什么没有类似于其他(没有)SQL数据库的查询支持,直到我读了几篇文章,并try 将Redis与其他解决方案进行测试和比较.也许它不是适合您用例的数据库,尽管它速度非常快,支持高级数据 struct ,但缺少对您至关重要的查询.如果你正在寻找一个允许你查询数据的数据库,那么你应该试试mongodb或者riak.

Mongodb相关问答推荐

在MongoDB中是否可以按递增顺序更新多个文档?

Mongo DB-如果一个特定字段有多个文档匹配,则更新文档字段

如何从集合中移除所有匹配的数组项?

来自嵌套对象数组的 MongoDB 聚合

通过 docker 运行的 MongoDB 服务器无法互相看到(名称解析中的临时故障)

$lookup 的参数必须是字符串

从嵌套数组中 id 匹配的另一个集合中获取所有字段

Mongodb 仅在值唯一时插入,否则更新 - 在 node.js 中

看起来当我执行 fs.writeFile() 时,更改的文件会重新启动 nodemon.怎么让它不重启?

如何将查询结果(单个文档)存储到变量中?

MongoDB 是否重用已删除的空间?

oplog 在独立 mongod 上启用,不适用于副本集

在 MongoDB 中按条件分组

具有简单密码认证的 MongoDB 副本集

Mongoose.pre('save') 不会触发

MongoException: Index with name: code already exists with different options

mongoose字符串到 ObjectID

如何将转储文件夹导入 mongodb 数据库?

pre save和validate之间的mongoose区别?什么时候用哪一个?

MongoDb - 利用多 CPU 服务器进行写入繁重的应用程序