【发布时间】:2015-09-04 13:31:53
【问题描述】:
我们有以下用例示例:
我们有用户、商店、朋友(用户之间的关系)和点赞。我们将这些表存储在 MySQL 中并作为键值存储在 Redis 中,以便从 Redis 缓存中读取而不命中数据库。对两个数据存储都进行了写入。 因此,我们的应用程序非常快速且可扩展,因为我们很少访问数据库进行读取。我们将 AWS 用于可扩展的 Redis。 但是,当用户登录时我们遇到了问题,我们必须显示商店列表,以及他的哪些朋友喜欢该商店。这是一个join,Redis不支持直接join。我们想知道存储和显示这些数据的最佳方式是什么。例如:如果这应该存储在一个 Redis 表中,其中键值为“store/user_who likes”并在每次写入时保持不变,或者可能有一个每小时的 cron 来构建它。然后我们可以读取已经存储的数据还是应该按需构建这个连接? 我们注意到,即使是 Facebook 也不会实时更新此信息,而是需要几分钟才能让朋友看到我的哪些朋友喜欢我们共同拥有的页面。 提前感谢您的任何回复。
【问题讨论】: