Я новичок в ElasticSearch . Я пытаюсь выяснить, как удалить данные из ElasticSearch. Я удалил свои индексы. Тем не менее, похоже, что это на самом деле не удаляет сами данные. Другие вещи, которые я видел, указывают на функцию удаления по запросу . Тем не менее, я даже не уверен, что запросить. Я знаю свои показатели. По сути, я хотел бы выяснить, как сделать
DELETE FROM [Index]
Из PostMan в Chrome. Однако мне не повезло. Кажется, что независимо от того, что я делаю, данные зависают. До сих пор я успешно удалил индексы, используя HTTP-глагол DELETE в PostMan и используя URL-адрес:
http://localhost:9200/[indexName]
Тем не менее, это, по-видимому, фактически не удаляет сами данные (или документы).
elasticsearch
user687554
источник
источник
Ответы:
Вы можете удалить, используя
cURL
или визуально используя один из многих инструментов, которые энтузиасты с открытым исходным кодом создали для Elasticsearch.Использование cURL
например
Затем вы получите ответ о том, было ли это успешно или нет. Вы можете также удалить весь индекс или типы с индексом, вы можете удалить тип, оставив идентификатор документа, например, так:
Если вы хотите удалить индекс -
Если вы хотите удалить более одного индекса, соответствующего определенному соглашению об именах (обратите внимание
*
, подстановочный знак), -зрительно
Существуют различные инструменты, как упомянуто выше, я не буду перечислять их здесь, но я свяжу вас с одним из них, который позволяет сразу приступить к работе, расположен здесь . Этот инструмент называется KOPF, чтобы подключиться к вашему хосту, нажмите на логотип в верхнем левом углу и введите URL вашего кластера.
После подключения вы сможете управлять всем кластером, удалять, оптимизировать и настраивать его.
источник
Если вам когда-нибудь понадобится удалить все индексы, это может пригодиться:
Powershell:
источник
В документации (или The Definitive Guide ) говорится, что вы также можете использовать следующий запрос для удаления всех индексов:
И есть важное замечание:
источник
Вы должны отправить
DELETE
запрос наВы также можете удалить один документ:
Я предлагаю вам использовать эластичный молоток .
После удаления вы можете посмотреть, существует ли индекс со следующим URL:
http://[your_host]:9200/_stats/
Удачи!
источник
Удаление индекса приведет к удалению сопоставления и вводу. Вы можете удалить все строки по следующему запросу
Однако для вышеупомянутого запроса вам нужно установить плагин delete-by-query, поскольку Elasticsearch 2.0.0-beta1 delete-by-query был удален из основного API
Для большего
http://blog.appliedinformaticsinc.com/how-to-delete-elasticsearch-data-records-by-dsl-query/
источник
источник
Измените
http
на,https
если вы используете сертификат SSL в своем приложенииисточник
Вы можете удалить индекс в Python следующим образом
источник
самый простой способ!
где
twitter
индекс в упругом поискеref; https://www.elastic.co/guide/en/elasticsearch/reference/current/docs-delete-by-query.html
источник
Для массового удаления по запросу вы можете использовать специальный API удаления по запросу :
В истории этот API был удален, а затем снова введен
Кому интересно это имеет давнюю историю.
источник
Я хотел удалить индекс logstash и много искал в отношении различных инструментов, таких как curl. Но нашел решение в конце. Войдите в Kibana. Перейдите на вкладку Dev Tools, введите
DELETE /logstash-*
в поле запроса и нажмите зеленую кнопку со стрелкой. если вы получили «подтверждено»: true в ответ означает, что данные были очищены.источник
Чтобы перечислить индексы
curl -L localhost:9200/_cat/indices
9200
порт по умолчанию [изменить порт при использовании другого порта]Скорее всего, вы найдете все индексы, начинающиеся с
logstash-yyyy-mm-dd
формата (logstash- *)Вы можете увидеть все индексы и использовать
Для удаления индексов и данных запускаем следующую команду.
curl -XDELETE localhost:9200/index_name
(Который удалит данные и индексы оба).источник
Здесь есть много хороших ответов, но я хотел бы добавить еще кое-что:
источник
Вы можете удалить либо весь индекс, либо тип документа, либо данные о перкулярном идентификаторе. это три способа:
curl -XDELETE localhost: 9200 / index_name
curl -XDELETE localhost: 9200 / index_name / doc-type
curl -XDELETE localhost: 9200 / имя_индекса / тип документа / идентификатор документа
и если вы хотите удалить весь индекс, перейдите на подстановочный знак.
источник
Вы также можете удалить указатель, используя действие DELETE в «asticsearch head »( плагин Chrome ). Добавьте его в Chrome и подключите к хосту. Там вы найдете все свои индексы, и если вы нажмете кнопку действий под индексом, который хотите удалить, вы найдете опцию УДАЛИТЬ в выпадающем списке. щелкните по нему и введите УДАЛИТЬ во всплывающем окне. Ваш индекс будет удален. Расширение Elasticsearch head - это простой способ просмотра и управления вашими индексами и данными.
источник
Вы можете использовать chrome extensionasticsearch-head для удаления индекса
источник
Вы можете удалить индекс с помощью Kibana Console:
Чтобы получить весь индекс:
Чтобы удалить определенный индекс:
источник
Вы можете удалить один или несколько индексов, которые действительно удаляют их файлы с диска . Например:
Где
$INDEXNAME
может быть имя индекса (напримерusers_v2
), N индексов, разделенных запятой (напримерusers_v2,users_v3
). Шаблон индекса (напримерusers_*
) или_all
также работает, если он не заблокирован в конфигурации черезaction.destructive_requires_name: true
.Удаление отдельных документов возможно, но это не приведет к немедленной очистке . Удаление - это только мягкое удаление, и документы действительно удаляются при объединении сегментов . Вы найдете много деталей о сегментах и слияниях в этой презентации . Речь идет о Solr, но слияния происходят из Lucene, поэтому у вас есть те же параметры в Elasticsearch.
Возвращаясь к API, вы можете удалить отдельные документы по идентификатору (укажите значение маршрутизации, если вы индексировали с помощью маршрутизации):
Или по запросу:
источник
Скажем, мне нужно удалить индекс,
filebeat-7.6.2-2020.04.30-000001
и я выполнил его с помощью опции curl DELETE (curl -X DELETE "localhost:9200/filebeat-7.6.2-2020.04.30-000001?pretty"
), что привело к проблеме аутентификации, как показано ниже;Здесь вы должны аутентифицировать запрос curl, используя имя пользователя и пароль, которые вы указали для Elasticsearch. Попробуй тогда
curl -X DELETE -u myelasticuser:myelasticpassword "localhost:9200/filebeat-7.6.2-2020.04.30-000001?pretty"
приведет к {"подтверждено": правда} .
источник