배경 : 내 ElasticSearch 지수에서ElasticSearch에서 누락 된 문서를 어떻게 확인할 수 있습니까?
, 나는 'bvi_ship'와 'bvi_notify'으로 식별 할 수있는 문서의 두 가지 유형이있다. 'bvi_ship'으로 식별 된 각 문서에는 'bvi_notify'로 식별 된 해당 문서가 있어야합니다.
질문 :
는 'bvi_notify'문서가없는 'bvi_ship'문서를 식별하는 적절한 방법은 무엇입니까?
{
"size":0,
"query":{
"filtered":{
"query":{
"query_string":{
"default_operator":"OR",
"default_field":"_all",
"query":"@fields.action:\"bv_ship\" OR @fields.action:\"bvi_notify\""
}
}
}
},
"facets":{
"terms":{
"terms":{
"field":[
"@fields.object"
],
"size":1000
}
}
}
}
다음과 같이 결과를 반환합니다 :
{
"took" : 147,
...
},
"hits" : {
...
},
"facets" : {
"terms" : {
...
"terms" : [ {
"term" : "xml",
"count" : 1443
}, {
"term" : "content_ff47d2d096ea4510ac0895941666e507",
"count" : 2
}, {
"term" : "content_fa525becb2724b7682df278c02fed308",
"count" : 2
},
... THOUSANDS OF RECORDS WITH COUNT of 2
}, {
"term" : "content_f1ff2f7440534a08bad4c62b92165949",
"count" : 1
} ]
}
}
}
을 나는 다음과 같은 측면 코드를 사용하여 필요한 문서를 식별 할 수있었습니다
: 패싯를 사용
이 은 일 수 있지만 분명히 t를 반환하고 싶지 않습니다. 카운트가 1 인 레코드에만 관심이있을 때 2의 카운트를 가진 레코드의 housands.
카운트가 1 인 레코드 만 반환하도록면 처리 된 검색을 제한하는 방법이 있습니까? ? 내가 내 쿼리에 구체적 할 수 있어야하고, 내 ElasticSearch 쿵푸가되고 있지만 단순히, 쿼리 및 필터의 조합을 사용하여 해당 레코드를 선택해야 같은데요
: 필터를 사용
내 Relational Database Karate에서 장애가 있습니다.
부모/자식 관계에 대해 생각해 보았지만 불행히도 기본 매개 변수를 제공하는 것 이상의 문서 인덱싱 방법을 직접 제어 할 수는 없습니다. reverse_count에 대한 아이디어를 주셔서 감사합니다. –