Elasticsearch生命周期

项目中需要对Elasticsearch 中的数据进行定时清理,经过网上资料搜索和部分实践,对于ES的生命周期发展历程,进行了大致整理,仅供参考。

        1、ES5.0以前的版本可以通过设置ttl处理:

        https://www.elastic.co/guide/en/elasticsearch/reference/1.7/mapping-ttl-field.html

        移除ttl原因:https://discuss.elastic.co/t/ttl-gone-in-5-0-omg/93028/2        

        2、网上目前提供常用解决办法(手动在ES6.2.3上实践了下是可行的):

        1)基于delete-by-query方法删除特定时间范围的数据

        https://www.elastic.co/guide/en/elasticsearch/reference/5.0/breaking_50_mapping_changes.html#_literal__timestamp_literal_and_literal__ttl_literal        https://www.elastic.co/guide/en/elasticsearch/reference/5.0/breaking_50_mapping_changes.html#_literal__ttl_literal_and_literal__timestamp_literal_cannot_be_created        

        2)使用基于时间的索引,如logstash-2019-01-02,可以使用官方的Curator工具,注意Curator是无法实现删除索中的某一段数据的。

        https://blog.csdn.net/laoyang360/article/details/85882832        

        3、Index LifeCycle Management(有说在ES6.3就有,但是官网正式发布是在ES6.6版本,暂未实践)

        https://www.elastic.co/guide/en/elasticsearch/reference/master/index-lifecycle-management-api.html

        https://elasticsearch.cn/article/6358        

        4、执行删除操作,但磁盘空间不减少问题,确认是删除文档还是删除索引

        https://blog.csdn.net/hellozhxy/article/details/81382567

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章