Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/redis/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Nosql 将数据保存到内存中,并在一段时间后将其保存到数据库中_Nosql_Redis_Cassandra_Key Value - Fatal编程技术网

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

Nosql 将数据保存到内存中,并在一段时间后将其保存到数据库中,nosql,redis,cassandra,key-value,Nosql,Redis,Cassandra,Key Value,请提前接受我的道歉,因为这可能是一个愚蠢的问题。但是 我正在一个实时推荐系统上做一些工作。要存储的数据包括概率、奖励及其历史记录(通过一些时间戳或类似的方式)。我需要先将它们存储在内存中,然后在一段时间后(每隔一小时定期)将它们存储到数据库中(以便在出现服务器错误时轻松恢复),因此我试图找到一些可以使用的技术,我找到了Redis和Cassandra。但我现在有点困惑 我认为可能有这样的解决方案: 将数据存储在RAM中(通过Redis…更确切地说是通过某些Redis客户端库),然后运行一些cron

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

我正在一个实时推荐系统上做一些工作。要存储的数据包括概率、奖励及其历史记录(通过一些时间戳或类似的方式)。我需要先将它们存储在内存中,然后在一段时间后(每隔一小时定期)将它们存储到数据库中(以便在出现服务器错误时轻松恢复),因此我试图找到一些可以使用的技术,我找到了Redis和Cassandra。但我现在有点困惑

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

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

这个方法行吗?或者你有别的解决办法吗

redisdo提供了两个持久性选项。我强烈建议你阅读这本书

如果您想将其他数据库用作备份存储,那么最好只使用Redis提供的内容,而不向堆栈中添加其他技术。无论如何,你应该分析两者,找出哪一个更适合你


也就是说,如果您需要更高的耐用性,您可能会更好地使用AOF。

您确定要使用其他数据库吗?你查过了吗?我以前没有查过你的链接。。。但它看起来很有趣。我的目标也是时间的可视化(概率的演化),所以我需要有一些时间戳的历史。。。我不确定这是否可以通过Redis持久化(通过一些快照或AOF)实现。如果您将时间戳转换为整数并在一个特定的环境中使用它们,则可以使用时间戳。然后,你可以按日期等进行排序。好坏取决于你的情况。如果redis足够的话,我宁愿不添加其他技术。如果是你的,那么是的,听起来不错。同意@Agis,你应该看到REDIS持久化,以及用于数据管理的主从设计模型。