我有一个我正在设置的redis商店。我希望每个插入的值都是一个有序集。在该排序集中,我希望值为哈希值。这可能吗?这是我想要作为json表示的数据:
{
"siliconvalley": {
"search-list": [
{
"id": "1234",
"content-type": "VIDEO"
},
{
"id": "456",
"content-type": "SHOW"
}
]
}
}
要在redis cli中进行快速测试,我尝试这样做:
//首先创建一个哈希键值
HSET searchResult id "123"
//接下来创建我的排序集
ZADD siliconvalley 1 searchResult
然而,看起来它只在我的集合中存储一个字符串为“searchResult”,并且实际上并没有使用我创建的HSET
答案 0 :(得分:0)
Redis是一个普通的键值存储,它不处理结构化数据。您不能在集合中存储哈希。您需要使用基于文档的数据库,例如mongo或couchdb。
你在Redis中可以做的是使用密钥为siliconvalley:[searchIndexId]
的散列和仅包含id作为索引的有序集searchIndex
。
HSET searchResult:123 id "123"
HSET searchResult:123 content-type "VIDEO"
ZADD searchIndex 123
HSET searchResult:456 id "456"
HSET searchResult:456 content-type "SHOW"
ZADD searchIndex 456
现在您可以从searchIndex
获取id并使用此id来获取相应哈希的值。