这是我的情况。我有一个用户的字段,如姓名,电话,电子邮件,城市,国家/地区,其他用户属性。如果我通过姓名或电话或电子邮件进行搜索,我需要在很短的时间内获得满足这些条件的所有用户详细信息。据我所知,要在密钥值缓存中实现这一点,我需要具有不同的相同数据键。
我目前的实施计划如下
以下所有信息都存储在我的缓存中
用户级完整数据
unique_user_id(XXX):{name:abc,phone:12345,email:abc @ gmail.com..etc}
unique_user_id(YYY):{name:def,phone:67891,email:def @ gmail.com..etc}
电子邮件级别信息
abc@gmail.com:XXX
def @ gmail..com:YYY
名称等级信息
abc:XXX
def:YYY
电话级别信息
12345:XXX
67891:YYY
如果我使用电子邮件进行搜索,则会查询“电子邮件级别信息”并获取唯一的用户ID,并查询“用户级别信息”以获取用户详细信息。在这里,每种类型的可能密钥都有重复数据。我不想复制数据。我想为每个用户提供单个键值。 有没有比键值缓存更好的方法,其中存储的数据应该是最小的并且响应时间非常短。我可以使用数据库以及哈希索引类的东西。请为此建议一个合适的软件。
我从未使用过缓存。请坚持我的理解和语言