Поиск по сайту:

Как удалить данные индекса Elasticsearch с помощью Curl |


В Elasticsearch индекс аналогичен базе данных в мире реляционных баз данных. Это выглядит примерно так:

MySQL => Databases => Tables => Columns/Rows
Elasticsearch => Indices => Types => Documents with Properties

Индекс — это логическое пространство имен, которое сопоставляется с одним или несколькими первичными сегментами и может иметь ноль или более сегментов-реплик. Сопоставление Elasticsearch похоже на схему базы данных и описывает поля или свойства, которые должны иметь документы аналогичного класса.

При работе с огромным объемом данных ваши индексы Elasticsearch могут быстро расти и исчерпать ваше локальное хранилище. Это может потребовать удаления старых индексов, которые больше не нужны. В этом руководстве я покажу вам процесс удаления данных индекса Elasticsearch.

Как удалить данные индекса Elasticsearch

Сначала получите список индексов Elasticsearch, доступных в вашем кластере, с помощью curl:

$ curl http://<node-ip|hostname>:9200/_cat/indices

 может быть localhost, IP-адресом узла Elasticsearch или именем хоста одного из узлов кластера. См. пример ниже

$ curl http://10.1.1.18:9200/_cat/indices
green open graylog_309 dJr9peVJT5Kr4_nnzinzrw 4 0 20024903 0 3.3gb 3.3gb
green open graylog_325 cD9PeVslRTSNA_PlDAPZng 4 0   905913 0 175mb 175mb
green open graylog_324 4RpR8isyQBqu_h_ifnLpJA 4 0 20025091 0 3.3gb 3.3gb
green open graylog_322 F6TN9vCPQEaYcZlNhmMokQ 4 0 20018746 0 3.3gb 3.3gb
green open graylog_311 DccOlotNR9GKmusIhRGi1w 4 0 20012500 0 3.3gb 3.3gb
green open graylog_318 -SqQ5oEcRtSlZvqaZ_L1jg 4 0 20032700 0 3.3gb 3.3gb
green open graylog_307 DLoFntfVRY-91FyasXoCUg 4 0 20026500 0 3.3gb 3.3gb
green open graylog_308 Vygbzx-WR4WGkOWTM1ptmw 4 0 20027535 0 3.3gb 3.3gb

Как только вы определите индекс, который нужно удалить, используйте следующую команду, чтобы удалить его вместе с его данными.

$ curl -XDELETE http://<node-ip|hostname>:9200/<index-name>

См. пример:

$ curl -XDELETE http://10.1.1.18:9200/graylog_308
{"acknowledged":true}

Вы можете использовать простой цикл bash для удаления нескольких индексов.

for i in graylog_307 graylog_308 graylog_309 graylog_311; do
 curl -XDELETE http://10.1.1.18:9200/${i}
done

Вы можете подтвердить удаление индекса, перепроверив доступный список.

$ curl http://10.1.1.18:9200/_cat/indices

У нас есть несколько статей по настройке Elasticsearch, вот ссылки.

Как развернуть кластер Elasticsearch из трех узлов в Ubuntu

Как установить Elasticsearch 7.x на Ubuntu 18.04

Как установить Elasticsearch 6.x в Ubuntu 18.04

Как установить Elasticsearch на CentOS 7

Статьи по данной тематике: