2014-11-21 8 views
0

index-> ​​index_type-> text 검색 데이터로이 순서로 ES에서 데이터를 검색하고 싶습니다.
"_index"에서 아래의 쿼리를 사용할 때 특정 _index 및 관련 데이터에서 index_types 목록을 가져올 것으로 예상했지만 아무 것도 반환하지 않았습니다. 반면 _type로 검색 할 때 index_type에 관련된 데이터를 얻었습니다. 내가 어디로 잘못 갔니?
탄성 검색 패싯 : _index에서 검색 결과가 없습니다.

curl -XGET 'http://localhost:9200/_all/_search?pretty' -d '{ 
     "facets": { 
     "terms": { 
      "terms": { 
      "field": "_index", 
      "size": 10, 
      "order": "count", 
      "exclude": [] 
      }, 
      "facet_filter": { 
      "fquery": { 
       "query": { 
       "filtered": { 
        "query": { 
        "bool": { 
         "should": [ 
         { 
          "query_string": { 
          "query": "*" 
          } 
         } 
         ] 
        } 
        }, 
        "filter": { 
        "bool": { 
         "must": [ 
         { 
          "terms": { 
          "_index": [ 
           "<index_name>" 
          ] 
          } 
         } 
         ] 
        } 
        } 
       } 
       } 
      } 
      } 
     } 
     }, 
     "size": 0 
    }' 

참고 : 나는 필터 "_index"사용 키바에 처음이 문제를 직면 : "name_of_index를"; "_type": "name_of_index_type"이 예상 된 결과를 반환했습니다. Kibana가 위의 쿼리를 사용하여 필터의 결과를 얻은 것을 발견했습니다.

+0

왜 색인에 색인을 지정하지 않으십니까? 패싯이 감가 상각되기 때문에 "aggs"(집계)를 사용하십시오. – AlainIb

답변

0

이 필터는 사전 필터 ("query": "*")를 사용한 쿼리 예이며 &은 쿼리가 없어야합니다. resutlt를 사용하여 집계를 만듭니다.

curl -XGET 'http://localhost:9200/YOUR_INDEX_NAME/_search?size=10' -d '{ 
    "query" : { 
     "filtered" : { 
      "query" : { 
       "query_string" : { 
        "query" : "*" 
       } 
      }, 
      "filter" : { 
       "bool" : { 
        "must" : [ 
         { "term" : { "E_RECORDEDBY" : "malençon, g."} }, 
         { "term" : { "T_SCIENTIFICNAME" : "peniophora incarnata" } } 
        ], 
        "must_not" : [ 
        {"term" : { "L_CONTINENT" : "africa" } }, 
        {"term" : { "L_CONTINENT" : "europe" } } 
        ] 
      } 
      } 
     } 
    }, 
    "aggs" : { 
     "L_CONTINENT" : { 
      "terms" : { 
       "field" : "L_CONTINENT", 
       "size" : 20 
      } 
     } 
    }, 
    "sort" : "_score" 
}'