重新加载后Aerospike 3.7.4数据丢失,一些已删除的数据自动恢复

时间:2017-01-06 11:45:06

标签: aerospike

我们有一个来自3个节点的集群。我有一个名称空间用于存储操作历史记录,我在其中一个集合上执行了大量 删除 操作,之后从头开始迁移数据。 出于某种原因,一段时间后一个节点出现故障,我们需要重新加载集群,后来我们遇到大部分新数据丢​​失,一些已删除的数据被恢复。
您能帮助我们避免这种行为,因为我们需要保持一致性。

Aerospike版本为3.7.4
以下是命名空间的配置:

namespace dar_history {
   replication-factor 2
   memory-size 4G
   default-ttl 0 # 30 days, use 0 to never expire/evict.

   storage-engine device {
           file ../dar_history.dat
           filesize 32G
           data-in-memory true # Store data in memory in addition to file.
    }
}

2 个答案:

答案 0 :(得分:3)

Aerospike 3.10.0为Aerospike Enterprise引入durable deletes。详细了解他们如何在此工作:https://www.aerospike.com/docs/guide/durable_deletes.html

此处讨论了社区版的一些替代解决方案:https://discuss.aerospike.com/t/expired-deleted-data-reappears-after-server-is-restarted/470/22

答案 1 :(得分:0)

我们通过备份数据,然后重新启动群集,从备份导入数据,重新创建我们拥有的所有索引以及删除旧的不必要数据来解决问题。 谢谢大家的回复。