[elasticsearch] ElasticSearch에서 데이터 제거

ElasticSearch처음 사용 합니다. ElasticSearch에서 데이터를 제거하는 방법을 알아 내려고 노력 중입니다. 색인을 삭제했습니다. 그러나 실제로 데이터 자체를 제거하지는 않습니다. 내가 본 다른 것들은 쿼리로 삭제 기능을 가리 킵니다 . 그러나 무엇을 쿼리 해야할지 잘 모르겠습니다. 인덱스를 알고 있습니다. 본질적으로, 나는 방법을 알아 내고 싶습니다

DELETE FROM [Index]

Chrome의 PostMan에서. 그러나 나는 운이 없다. 내가 무엇을하든 데이터가 멈추는 것처럼 보입니다. 지금까지 PostMan에서 DELETE HTTP 동사를 사용하고 다음과 같은 URL을 사용하여 색인을 성공적으로 삭제했습니다.

   http://localhost:9200/[indexName]

그러나 데이터 (일명 문서) 자체를 실제로 제거하지는 않습니다.



답변

cURLElasticsearch를 위해 오픈 소스 애호가가 만든 많은 도구 중 하나를 사용 하여 또는 시각적으로 삭제할 수 있습니다 .

cURL 사용

curl -XDELETE localhost:9200/index/type/documentID

예 :

curl -XDELETE localhost:9200/shop/product/1

그런 다음 이것이 성공했는지 여부에 대한 회신을받습니다. 색인을 사용하여 전체 색인 또는 유형을 삭제할 수도 있습니다. 문서 ID를 생략하여 유형을 삭제할 수도 있습니다.

curl -XDELETE localhost:9200/shop/product

색인을 삭제하려는 경우-

curl -XDELETE localhost:9200/shop

특정 명명 규칙 ( *와일드 카드 참고)을 따르는 인덱스를 둘 이상 삭제하려면 –

curl -XDELETE localhost:9200/.mar*

시각적으로

이 위에서 언급 한 바와 같이 다양한 도구 내가 여기에 목록을 실 거예요,하지만 난 당신이있는 바로 시작 할 수 있습니다 하나로 연결됩니다 여기에 . 이 도구를 KOPF라고합니다. 호스트에 연결하려면 왼쪽 상단의 로고를 클릭하고 클러스터의 URL을 입력하십시오.

연결되면 전체 클러스터를 관리하고 클러스터를 삭제, 최적화 및 조정할 수 있습니다.


답변

모든 인덱스를 삭제해야 할 경우 유용 할 수 있습니다.

curl -X DELETE 'http://localhost:9200/_all'

파워 쉘 :

Invoke-WebRequest -method DELETE http://localhost:9200/_all


답변

문서 (또는 확실한 가이드 ) 당신은 또한 삭제하려면 다음 쿼리를 사용할 수 있다는 것을 말한다 모든 인덱스를 :

curl -XDELETE 'http://localhost:9200/*'

그리고 중요한 메모가 있습니다.

일부의 경우 단일 명령으로 모든 데이터를 삭제하는 기능은 매우 무서운 전망입니다. 실수로 대량 삭제 될 가능성을 없애려면 다음에서 다음을 설정할 수 true있습니다 elasticsearch.yml.

action.destructive_requires_name: true


답변

DELETE요청을 보내야합니다

http://[your_host]:9200/[your_index_name_here]

단일 문서를 삭제할 수도 있습니다.

http://[your_host]:9200/[your_index_name_here]/[your_type_here]/[your_doc_id]

elastichammer 를 사용하는 것이 좋습니다 .

삭제 후 색인이 다음 URL에 여전히 존재하는지 찾아 볼 수 있습니다. http://[your_host]:9200/_stats/

행운을 빕니다!


답변

색인을 삭제하면 매핑과 유형이 함께 삭제됩니다. 다음 쿼리로 모든 행을 삭제할 수 있습니다

curl -XDELETE 'localhost:9200/twitter/tweet/_query?pretty' -d'
{
   "query": {
      "match_all":
   }
}'

그러나 위 쿼리의 경우 Elasticsearch의 2.0.0-beta1 쿼리별로 삭제가 기본 API에서 제거 된 것처럼 쿼리별로 삭제 플러그인을 설치해야합니다

Install delete-by-query plugin

sudo bin/plugin install delete-by-query

이상

http://blog.appliedinformaticsinc.com/how-to-delete-elasticsearch-data-records-by-dsl-query/


답변

#list all index:       curl -XGET http://localhost:9200/_cat/indices?v

여기에 이미지 설명을 입력하십시오

#delete index:         curl -XDELETE 'localhost:9200/index_name'
#delete all indices:   curl -XDELETE 'localhost:9200/_all'
#delete document   :   curl -XDELETE 'localhost:9200/index_name/type_name/document_id'

kibana를 설치 하십시오 . Kibana에는 쿼리를 쉽게 작성하는 데 도움이되는보다 스마트 한 개발 도구가 있습니다.

여기에 이미지 설명을 입력하십시오


답변

curl -X DELETE 'https://localhost:9200/_all'

변경 httphttps당신이 응용 프로그램에서 SSL 인증서를 사용하는 경우