您好,登錄后才能下訂單哦!
怎樣刪除ES索引里面的數據?針對這個問題,今天小編總結這篇圖文詳解的文章,有需要的朋友可以參考一下,希望對大家有所幫助。
下面的腳本,我找了2天,按照網上的文檔,也修改了2天。正好最近第3次開始學習shell,發現結合shell知識,解決問題還是很有效果。
下面的腳本,就可以刪除200天前的ES數據。
[root@iZ23ejm6lkdZ ~]# cat /yqd/sh/Clean_Elasticsearch_Yqdlog.sh #!/bin/bash curl -X POST "10.253.40.87:9200/yqdlog/_delete_by_query?pretty" -H 'Content-Type:application/json' -d ' { "query": { "range": { "bank_interfacelog_createTime": { "gte": "now-200d", "lte": "now", "format": "epoch_millis" } } } }' # echo "已清除$index 索引內200天前數據~"
第三列的“10.253.40.87:9200”:ES地址
第三列的“yqdlog”:索引名稱
第七列的“bank_interfacelog_createTime”:指定刪除的時間字段
第八列的“now-200d”:刪除數據的時間范圍,“-200d”,就是刪除200天前的數據
第十列:默認,也可以自定義
執行腳本:
[root@iZ23ejm6lkdZ ~]# sh /yqd/sh/Clean_Elasticsearch_Yqdlog.sh { "took" : 2382512, "timed_out" : false, "total" : 8817667, "deleted" : 8817667, "batches" : 8818, "version_conflicts" : 0, "noops" : 0, "retries" : { "bulk" : 0, "search" : 0 }, "throttled_millis" : 0, "requests_per_second" : -1.0, "throttled_until_millis" : 0, "failures" : [ ] }
執行腳本過程中,ES的head插件顯示“yqdlog”索引數據有明顯下降趨勢,但是,zabbix監控的磁盤空間反而有更大的占用。
網上的文檔說,ES的刪除,不會立即生效,后期會自動刪除。這個問題,有待研究。
次日再看zabbix,磁盤空間好像是有下降了。
以上就是ES索引里面的刪除數據的方法介紹,詳細使用情況還得要大家自己使用過才能知道具體要領。如果想了解更多相關內容,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。