gpt4 book ai didi

xml - 索引 JSON 或 XML

转载 作者:可可西里 更新时间:2023-11-01 11:02:21 25 4
gpt4 key购买 nike

当将 JSONXML 字符串存储在 Redis 等 NoSQL 数据库中时,广泛使用的索引技术是什么?

我知道像 MongoDB 这样的数据库已经提供了这个,但是我想了解当我将使用键值存储时如何实现这个,比如 Redis伏地魔

这样:

  • 它将允许顺利搜索或查询节点实体键或值

最佳答案

对于纯键/值存储,您应该维护一组额外的键来模拟二级索引。

例如你可以存储:

user:1   ->   { id:1, firstname:Bilbo, lastname:Baggins, race:hobbit }
user:2 -> { id:2, firstname:Peregrin, lastname:Took, race:hobbit }

然后:

firstname:Bilbo   -   > [1]
lastname:Baggins -> [1]
firstname:Peregrin -> [2]
lastname:Took -> [2]
race:hobbit -> [1,2]

要查找 hobbit 用户,请获取 race:hobbit 的值,然后针对每个返回的 id,获取 user:id。

当然,对于纯键/值存储(例如 memcached),很难管理基数较低的索引(即给定值有很多条目)。

使用 Redis,由于它支持集合和散列数据类型,因此更容易。此外,redis 集的交集/并集是使用逻辑 AND/OR 表达式实现查询的便捷方式。

另请参阅以下问题:

how to have relations many to many in redis

Porting from SQLite to Redis

Project Voldemort 还支持可用于类似目的的列表存储(前提是每个值的条目不太多)。

关于xml - 索引 JSON 或 XML,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15833006/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com