gpt4 book ai didi

用于存储关注者/关注用户的 MySQL 与 Redis

转载 作者:可可西里 更新时间:2023-11-01 11:44:45 36 4
gpt4 key购买 nike

我正在尝试找到存储关注者/关注用户数据的最佳候选者,我最初想将它存储在 Redis 中用户 -> 用户 ID 集的集合中,但后来我想到了一个用户有超过 100 万甚至 1000 万关注者的场景,Redis 将如何处理如此庞大的集合?我也无法在 redis 中对集合进行分页,我必须检索整个集合,如果用户想浏览跟随他的人,这将不起作用。如果我将它存储在 MySQL 中,我肯定可以进行分页,但是每当我必须构建用户提要时,从数据库中获取 1000 万条记录可能需要很长时间,我可以以旧的批处理方式执行此操作,但每当拥有许多关注者的用户会发布一些内容,然后处理这 1000 万条记录将花费很长时间才能获取他的关注者。将它存储在 MySQL 中用于分页(主要是前端)和在 Redis 中用于构建事件提要的事件驱动消息传递是否值得?

最佳答案

是否使用redis 或mysql 来完成此任务是个人决定。对于那 1000 万条记录,两者都没有问题。

MySQL 具有 LIMIT x,y 命令,用于从数据库中获取关注者的子集。

对于 Redis,您可以使用排序集并使用关注者的用户 ID 或用户开始关注的时间作为排序集的分数。和 MySQL 一样,redis 支持获取大型排序集的子集。

关于用于存储关注者/关注用户的 MySQL 与 Redis,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15607084/

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