ElasticSearch facet_filter для нескольких значений

Я пытаюсь отфильтровать свои аспекты по нескольким значениям, это работает с одним:

"facet_filter": {
    "term": {
      "function":"value_1"
    }
}

но то, что я пытаюсь сделать, это идеально фильтровать несколько значений с помощью логического управления (и/или)

"facet_filter": {
    "term": {
      "function": [
        "value_1",
        "value_2"
      ]
    }
}

Есть простой способ сделать это ? Я нашел аналогичный вопрос, но на самом деле он не объясняет, что такое список (id). Любые подсказки? фильтрация аспектов в elasticsearch


person Kris79    schedule 14.05.2014    source источник
comment
list(ids) вполне вероятно, что это метод, возвращающий список идентификаторов JSON (массив), который OP указанного вопроса хочет отфильтровать.   -  person Thorsten    schedule 14.05.2014
comment
Вы использовали термины?? вместо срока??   -  person BlackPOP    schedule 14.05.2014
comment
Благодаря терминам @BlackPOP вместо термина моя проблема решена. Итак, теперь мой запрос выглядит так, как показано ниже   -  person Kris79    schedule 15.05.2014


Ответы (1)


Решение моей проблемы заключалось в том, чтобы использовать термины вместо термина.

Ниже размещен полный запрос, так как я не смог найти его, поэтому он может быть полезен другим, кто ищет тот же ответ.

{
  "query": {
    "bool": {
      "must": [
        {
          "term": {
            "syslog.log_key": "time"
          }
        }
      ],
      "must_not": [],
      "should": []
    }
  },
  "size": 0,
  "facets": {
    "tag": {
      "terms_stats": {
        "key_field": "function",
        "value_field": "log_value"
      },
      "facet_filter": {
        "terms": {
          "function": [
            "query_parser",
            "term_highlighter"
          ]
        }
      }
    }
  }
}
person Kris79    schedule 15.05.2014