redis结构,性能
|
我是Redis的新手,我有一个包含数百万个会员ID,电子邮件和用户名的数据集,并且正在考虑将其存储在列表结构中。我认为
list
和sorted set
可能最适合我的情况。
现在,我正在使用用户名的第一个字母索引到列表中并将数据推入后退列表:list2ѭ。但是,由于未对列表进行排序,因此检索几百万个条目中的某个记录会很慢吗?
在这种情况下,排序集(因为已排序)会比列表好吗?或者,您还有其他建议来提高性能吗?
访问记录的密钥应该是用户名和电子邮件。
没有找到相关结果
已邀请:
1 个回复
枫湃揩乾纲
Redis的“键名”为“ user:42 \”。每个用户将获得一个密钥,类似于SQL数据库中的单个行,但更为灵活。然后,您可以更新两个辅助哈希:一个将用户名映射到member_id,另一个将电子邮件地址映射到member_id。假设您在member_id,用户名和电子邮件地址之间具有1:1的关系。
当您需要查找特定用户的电子邮件地址时,首先要从
哈希中查找member_id,然后从关键用户user_member_id的哈希中检索
字段。同样,您可以从用户名开始,在在“ 7”哈希中的member_id,然后到达存储在用户“ 8”哈希中的用户记录。 这是在给定电子邮件地址的情况下查找用户名的示例:
您可以通过向\“ user:\”哈希添加更多字段来向用户添加更多记录。如果您想增加一个登录计数器,那也很简单:
您可以在redis.io网站上找到有关哈希的更多信息。