【问题标题】:Why we take snap shots in Cassandra?为什么我们在 Cassandra 中拍摄快照?
【发布时间】:2019-01-09 23:18:33
【问题描述】:

为什么我们在 Cassandra 中拍摄快照?例如,在一个 4 节点集群中,复制因子为 3,假设 1 个节点出现故障,即使数据被复制保留在 2 个节点中,对吗?

【问题讨论】:

  • 这是一个很难回答的问题,您是在询问存储硬链接到 sstables 的 C* 快照过程吗?或者关于数据复制以及节点故障期间会发生什么?
  • 副本不能防止有人丢弃密钥空间。

标签: cassandra


【解决方案1】:

分布式/复制系统中的备份主要是为了处理以下问题:

  • 灾难性故障 - 想象您只有一个 DC,并且由于一场席卷所有服务器的灾难而丢失了所有服务器
  • 应用程序代码中的错误,如果您部署了新版本的软件,并且出现更改数据的错误,并且您无法恢复更改,该怎么办
  • 人为错误也是如此 - 如果您的工程师发出命令删除错误的分区 - 更改将被复制到所有服务器
  • ...

【讨论】:

    【解决方案2】:

    您还需要在升级 Cassandra 时拍摄快照。我做了很多时间,无法想象没有它我的生活会怎样。

    【讨论】:

      【解决方案3】:

      当一个节点在 sstables 上出现问题(sstbale 损坏)时,快照也有帮助。您可以在更短的时间内从快照中恢复该节点。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2013-02-14
        • 2014-12-03
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多