我在Redis中使用包含有关用户,帖子,兴趣,评论,消息,喜欢,块,标志等信息的集合和哈希构建了社交图。以下是一些示例:
设置:(user:1:followers "3","5","9"
),(post:11:likes "2","5","8"
)
哈希:(user:1 first_name "John" last_name "Smith" age "25"
),(message:5 body "Hi"
)
我的计划是最终将所有这些信息保存到磁盘。我一点一点地开始意识到我手上有多少潜在的数据。如果一个帖子被喜欢一万次怎么办? post:85:likes
集合是否真的有10,000个用户ID?将大量数据保存到磁盘会大量杀死Redis的性能吗?
我知道Pinterest做了类似(source)的事情,但我的应用程序和图形可能包含比Pinterest更多的数据关系。这对Redis来说太过分了吗?我是否应该考虑切换到另一个可以处理更多数据的Dynamo之类的键值存储?
如果我对任何事情都有误,我道歉。我还是Redis的新手。我最初被Redis吸引到它的表现,但是这个图表会消除这种优势吗?我很感激任何意见,谢谢!更新:我意识到在我的情况下序列化集并将它们存储为字符串会非常有效。我仍然面临着很多潜在的数据。什么其他方法,如序列化,将有助于减少我的内存使用,而不是我的表现?