将数据保存到内存中,并在一段时间后将其保存到数据库

时间:2014-02-27 11:44:10

标签: nosql redis cassandra key-value

请提前接受我的道歉,因为这可能是一个愚蠢的问题。但...

我正在做一些关于实时推荐系统的工作。存储有概率,奖励及其历史的数据(通过某些时间戳或类似的东西)。我需要先将它们存储在内存中,并在一段时间后(每隔一小时定期一次)存储到数据库中(如果发生某些服务器错误,则可以轻松恢复)所以我试图找到一些技术来使用,我找到了Redis和Cassandra。但我现在有点困惑。

我认为可能有这个解决方案:

将数据存储在RAM中(由Redis ...更精确地通过一些Redis客户端库),然后运行一些crone,它将从内存中获取这些数据并将它们存储到某个数据库(可能是NoSQL?哪一个?)..因为我认为我不能直接用Redis做这件事。

这种方法可以吗?或者你有其他解决方案吗?

1 个答案:

答案 0 :(得分:1)

Redis do 提供了两个持久性选项。我强烈建议您阅读documentation about them

如果您想将其他数据库用作备份存储,也许您最好只使用Redis提供的功能,而不是在堆栈中添加其他技术。在任何情况下,你都应该分析两者,找出哪一个更适合你。

那就是说,如果你需要更多的耐久性,你可能应该更好地使用 AOF