Поддерживает ли delete_by_query строку запроса? - PullRequest
0 голосов
/ 07 сентября 2018

В старой версии Elasticsearch я просто делаю следующее, чтобы удалить данные:

curl -XDELETE 127.0.0.1:9200/what/ever/_search?q=keyword

Теперь в Elasticsearch 6.X он больше не поддерживается. Мне пришлось использовать функцию delete_by_query.

Согласно документу кажется, что я больше не могу использовать строку запросов, какие-либо идеи?

P.S

Мне нужно сопоставить любые поля, но пример запроса, предоставленного онлайн, соответствует определенному полю, например,

{
  "query": { 
    "match": {
      "message": "some message"
    }
  }
}

1 Ответ

0 голосов
/ 07 сентября 2018

API-интерфейс Delete by Query по-прежнему поддерживает запрос в строке запроса, вам просто нужно использовать POST вместо DELETE и конечную точку _delete_by_query:

curl -XPOST 127.0.0.1:9200/what/ever/_delete_by_query?q=keyword

В противном случае вы также можетевы query_string в теле, как это:

curl -XPOST 127.0.0.1:9200/what/ever/_delete_by_query -d '{
  "query": { 
    "query_string": {
      "query": "keyword"
    }
  }
}'
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...