我试图理解,如何使用伏地魔?说,我有这个场景:
因为,伏地魔是一个键值对。
我需要根据 3 个参数获取一个值(比如一些文本)。
那么,在这种情况下,关键是什么?我不能将 3 个键用于 1 个值,但该值应该可以根据这 3 个参数进行搜索。
我说的有道理吗?
谢谢
编辑1
例如:一个博客系统。用户发布博客:存储的用户数据:姓名、年龄和性别
存储博客内容(文本)。
现在,我需要在这里使用伏地魔,如果用户从前端搜索性别:男性的所有博客文章
然后,我的代码应该查询 voldemort 并返回所有性别为男性的“博客内容(文本)”。
所以,根据我的理解:
Key = Name, Age and Sex
Value = Text
我正在使用 Java。
最佳答案
编辑答案以适合添加到问题的示例:
关于伏地魔的理解是它是一个非常简单的键值存储。据我所知,你唯一能做的就是在一个键下存储一个值,然后通过键获取这些值。所以对于你的例子,如果你真的想使用伏地魔,你有几个选择。
因此,例如,您说过要为用户存储数据。所以,你可能有这样的事情:
Key = user-Chad
Value = Name:Chad Birch, Age:26, Sex:Male
现在,如果我想发布新的博客文章,您还需要将其存储在一个 key 下。所以你可以做这样的事情:
Key = blog-Chad1
Value = Here is my very first blog post.
现在,您的问题是您需要某种方法来查找用户使用 Sex:Male 发表的所有博客文章,但无法直接获取该数据。此时,您必须:
要实现#2,您可以添加另一对,如下所示:
Key = search-Sex:Male
Value = Chad1 Chad2 Steve1 ...
然后,当有人搜索 Sex:Male 时,您会提取此值,将其拆分,然后获取所有这些博客文章。
那有意义吗?使用 k-v 存储与数据库有很大不同,因为您失去了所有这些关系能力。
关于voldemort - 正确使用伏地魔作为键值对?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2563246/