是否可以使用'truncate'在带有asinfo的Aerospike中发出持久删除?

t

我想避免使用Aerospike客户端(例如,对于Python),并使用本机asinfo命令“ truncate”从集中删除记录,因为它允许快速执行此操作。但是在我重新启动Aerospike之后,所有删除的记录都恢复了。我看到了这句话:删除集合中的所有记录,但是没有回答我的问题。AS文档中的此页面也没有它说,一个逻辑删除应在持久删除后写入,我是否必须手动创建它还是有其他方法?

UPD:感谢@kporter在下面提供了可接受的答案,因此我能够查看Aerospike社区版和企业版之间的区别,并找到了有关该问题的更多信息,有些人可能也会发现它也有所帮助:

如果我正确理解所有内容,最好在CE中完全删除记录的最佳方法是确保它们具有正确的TTL并可以自然过期。并且,如果由于某种原因(如本例)您有很多没有TTL的旧记录,则可以通过asinfo发出truncate命令,并且在重新覆盖SSD上的数据之前不要重新启动AS服务器。或者只是在每次重新启动时使用旧记录截断集。

另外我想知道是否有可能彻底擦除AS存储,然后从已经被截断的数据备份中恢复它,以作为紧急措施?

UPD1:因此,我能够使用Aerospike存储擦除SSD,并仅从备份中还原所需的记录。这是我的做法:

  • 首先,您需要通过asinfo和truncate命令从集中删除旧记录,文档链接位于上方
  • 然后备份要使用asbackup保存的名称空间
  • 停止您的AS服务器,因为我是在Docker容器中,所以我刚刚停止了所说的容器
  • 将用作AS存储的磁盘清零,我的磁盘为/ dev / sdb
  • 在此磁盘上创建必要的分区
  • 启动AS服务器
  • 使用arestore从备份还原数据

有用的链接:如何删除和清理aerospike服务器安装关于SSD设置的AS文档

我不确定这对于大型生产设置是否是一个好的解决方案,但是在我的情况下,它仅按一个AS节点就可以正常工作,并且有机会停止它一段时间。通过这种方式,我可以将AS中的数据大小从160Gb减少到11Gb,因为我的服务器现在仅在半小时内即可完全重启,而之前的时间约为8个小时。

克波特

您可以在此处找到有关截断集合的更多信息:https : //www.aerospike.com/docs/operations/manage/sets/

如此处所述,截断在Aerospike社区中并不持久。

在企业版中,截断是持久的,并通过冷重启来保留记录删除。在Community Edition中,类似于记录删除,以前截断的集中的记录不是持久的,删除可以通过冷启动返回。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

是否可以使用if语句删除整数?

来自分类Dev

是否有可以使用的“ GenerateJwt”方法?

来自分类Dev

是否可以使用带有多个JSON标签的结构?

来自分类Dev

是否可以使用带有sitecore标签的层次结构

来自分类Dev

在Aerospike中,是否可以使用UDF“获取链条”?

来自分类Dev

打开文件以使用truncate进行读写

来自分类Dev

是否可以使用NVENC删除开始代码?

来自分类Dev

是否可以使用存储过程执行删除阶段?

来自分类Dev

是否可以使用Kibana生成的查询从Elasticsearch中删除?

来自分类Dev

是否可以使用Git删除代码注释

来自分类Dev

Python不会使用truncate删除文件的内容

来自分类Dev

是否可以使用einsum转置所有内容?

来自分类Dev

SQLite:没有mmap()函数,是否可以使用WAL?

来自分类Dev

是否可以使用没有SPDY的HTTP / 2?

来自分类Dev

是否可以使用Python定义没有值的枚举?

来自分类Dev

是否有可以使用的组合枚举器?

来自分类Dev

是否可以使用没有tpl文件的smarty模板?

来自分类Dev

您可以使用的.animate()数量是否有限制

来自分类Dev

是否可以使用私有快速协议?

来自分类Dev

是否可以使用有效负载调用AWS Lambda函数以使Alexa说话?

来自分类Dev

是否可以使用Ruby或Python禁用锚/引用来发出有效的YAML?

来自分类Dev

TRUNCATE和TRUNCATE TABLE有什么区别?

来自分类Dev

如何知道我是否可以使用oracle用户删除?没有实际删除任何内容?

来自分类Dev

是否可以使所有GUI linux应用程序都可以使用X服务器工作?

来自分类Dev

是否可以使用MimeKit创建带有不透明签名的签名电子邮件?

来自分类Dev

发送带有Express的响应后,是否可以使用某种“中间件”?

来自分类Dev

Angular2是否可以使用带有复选框的双向绑定?

来自分类Dev

是否可以使用带有独立声音的单独X屏幕?

来自分类Dev

映射的find()是否可以使用带有参数的比较器?

Related 相关文章

  1. 1

    是否可以使用if语句删除整数?

  2. 2

    是否有可以使用的“ GenerateJwt”方法?

  3. 3

    是否可以使用带有多个JSON标签的结构?

  4. 4

    是否可以使用带有sitecore标签的层次结构

  5. 5

    在Aerospike中,是否可以使用UDF“获取链条”?

  6. 6

    打开文件以使用truncate进行读写

  7. 7

    是否可以使用NVENC删除开始代码?

  8. 8

    是否可以使用存储过程执行删除阶段?

  9. 9

    是否可以使用Kibana生成的查询从Elasticsearch中删除?

  10. 10

    是否可以使用Git删除代码注释

  11. 11

    Python不会使用truncate删除文件的内容

  12. 12

    是否可以使用einsum转置所有内容?

  13. 13

    SQLite:没有mmap()函数,是否可以使用WAL?

  14. 14

    是否可以使用没有SPDY的HTTP / 2?

  15. 15

    是否可以使用Python定义没有值的枚举?

  16. 16

    是否有可以使用的组合枚举器?

  17. 17

    是否可以使用没有tpl文件的smarty模板?

  18. 18

    您可以使用的.animate()数量是否有限制

  19. 19

    是否可以使用私有快速协议?

  20. 20

    是否可以使用有效负载调用AWS Lambda函数以使Alexa说话?

  21. 21

    是否可以使用Ruby或Python禁用锚/引用来发出有效的YAML?

  22. 22

    TRUNCATE和TRUNCATE TABLE有什么区别?

  23. 23

    如何知道我是否可以使用oracle用户删除?没有实际删除任何内容?

  24. 24

    是否可以使所有GUI linux应用程序都可以使用X服务器工作?

  25. 25

    是否可以使用MimeKit创建带有不透明签名的签名电子邮件?

  26. 26

    发送带有Express的响应后,是否可以使用某种“中间件”?

  27. 27

    Angular2是否可以使用带有复选框的双向绑定?

  28. 28

    是否可以使用带有独立声音的单独X屏幕?

  29. 29

    映射的find()是否可以使用带有参数的比较器?

热门标签

归档