在我的应用程序中使用node.js和redis数据库。如何在redis中保存许多json对象。
db.save({
description:'sdsd',userId:'324324',url:'http://www.abc.com/abc.html',appId:'123456'
}, function (err, res) {
if(err){
console.log(err);
return;
}
else{
console.log(res);
}
});
在沙发数据库中,我们可以使用上面的代码一次又一次地将json对象保存为文档。如何在redis中执行此操作。从他们的文档我开始知道下面的代码保存json对象
client.hmset("hosts", "mjr", "1", "another", "23", "home", "1234");
我想再次将其他json对象保存在同一个" hosts"如下所示
client.hmset("hosts", "mjr", "2", "another", "33", "home", "1235");
我该怎么做。
答案 0 :(得分:4)
Redis存储模型与CouchDB不同。在Redis中,一切都可以通过密钥访问,所以这一切都取决于您计划如何检索数据。
因此,如果您希望能够通过userId
检索数据,请将其用作关键字。
redis.set('324324', {
description:'sdsd',
url:'http://www.abc.com/abc.html',
appId:'123456'
});
但是如果你需要使用多个数据来检索一段数据,那么redis可能不合适。
在某些情况下,您可以使用一些技巧,以便能够在userId
和appId
上进行查询,您可以使用324324:123456
作为键,并且查询使用
GET 324324:*
获取一位用户的所有应用
或
GET *:123456
获取给定应用的所有用户。