반응형
Elasticsearch에서 원하는 데이터 삭제하기
POST 인덱스명/타입명/_delete_by_query
e.g. 인덱스: test, 타입: _doc인 document 내용(json 데이터)를 모두 삭제
POST test/_doc/_delete_by_query
{
"query": {
"match_all": {}
}
}
e.g. 인덱스: test, 타입: _doc인 document 내용(json 데이터) 중 "data"라는 필드가 없는 데이터를 삭제
POST test/_doc/_delete_by_query
{
"query": {
"bool": {
"must_not": [
{
"exists": {
"field": "data"
}
}
]
}
}
}
+ 특정 필드가 존재하는 인덱스를 추출하는 쿼리
GET test/_search
{
"query": {
"bool": {
"must": [
{
"exists": {
"field": "data"
}
}
]
}
}
}
참고
- Elasticsearch에서 원하는 데이터 삭제하기: https://kangmyounghun.blogspot.com/2017/11/elasticsearch.html
- [ElasticSearch] Exists query:
https://www.elastic.co/guide/en/elasticsearch/reference/current/query-dsl-exists-query.html - [elasticsearch] 필드 존재 여부 확인하기: https://knight76.tistory.com/entry/elasticsearch-%ED%95%84%EB%93%9C-%EC%A1%B4%EC%9E%AC-%EC%97%AC%EB%B6%80-%ED%99%95%EC%9D%B8%ED%95%98%EA%B8%B0
반응형