寻找云数据存储持久性问题的解决方案

时间:2015-02-10 11:11:38

标签: cloud persistence datastore redundancy data-recovery

我正在寻找提供以下功能的云数据存储服务:

  • 数据存档重复(或更多)
  • 原始数据和副本之间的数据始终相同 (即同步原始 - >重复是即时或数据存储请求 在所有实例都成功返回之前不要返回)
  • 如果原件失败,我们应该能够使用副本作为 如果它是原来的

所以我的具体问题是:

  • 这样的存储解决方案是否存在?如果是这样,我们在哪里可以找到它?
  • 如果没有,是否有处理复制品的最佳做法 实例在代码中缺少原始数据?

许多云服务提供某种形式的持久性和复制,但实例之间通常存在延迟或同步时刻,这在很多情况下会导致副本不包含原始数据的所有数据。这通常在几秒到几分钟的数量级,但即使这么小的时间范围也可能非常重要。我们正在寻求完全消除这种延迟。

背景:
目前,我正在为在线游戏制作配对系统。该系统必须非常可靠,并且必须尽可能少地停机。到目前为止,我们的设置是使用任意数量的服务器,并将它们全部连接到同一个存储单元,这样它们就可以使用相同的数据集。具体来说,目前我们的服务器是Azure Webroles,我们的存储单元是Azure Redis缓存。但是,Redis遇到了与上述相同的问题(延迟~1s),因此我们正在寻找任何替代方案。

1 个答案:

答案 0 :(得分:1)

Redis网站上有一篇非常广泛的文章:

Redis Persistence

我们个人在我们的服务器上使用RDB和AOF的组合,这样做的好处是任何写入操作都会随着写入磁盘的小型快照一起记录,这对于备份数据非常有用,缺点是存储更多空间是必需的,并且根据您实施AOF的方式,性能会受到很小影响。有一个“everysec”选项可以每秒冲洗缓冲区,并且在速度和完整性之间取得了很好的平衡。