在 elasticsearch 中使用聚合时出错

问题描述

我正在使用 elasticsearch java Api 并且我正在尝试运行此查询来检索结果。但我正在解析异常。 你能帮我找出问题出在哪里吗? 我会很感激

{
    "size": 0,"query": {
        "bool": {
            "must": [{
                    "query_string": {
                        "query": "data~ AND gaps~","default_field": "all_muses","fields": [],"type": "best_fields","default_operator": "or","max_determinized_states": 10000,"enable_position_increments": true,"fuzziness": "AUTO","fuzzy_prefix_length": 0,"fuzzy_max_expansions": 50,"phrase_slop": 0,"escape": false,"auto_generate_synonyms_phrase_query": true,"fuzzy_transpositions": true,"boost": 1.0
                    }
                }
            ],"adjust_pure_negative": true,"boost": 1.0
        }
    },"aggregations": {
        "groupBySerie": {
            "terms": {
                "field": "titreSerie","size": 6,"min_doc_count": 1,"shard_min_doc_count": 0,"show_term_doc_count_error": false,"order": [{
                        "_count": "desc"
                    },{
                        "_key": "asc"
                    }
                ]
            },"aggregations": {
                "groupBySf": {
                    "terms": {
                        "field": "sousFamille","size": 10,"execution_hint": "global_ordinals_low_cardinality","order": [{
                                "_count": "desc"
                            },{
                                "_key": "asc"
                            }
                        ]
                    }
                }
            }
        }
    }
}

这是我得到的例外

ElasticsearchStatusException[Elasticsearch exception [type=search_phase_execution_exception,reason=all shards Failed]]; nested: ElasticsearchException[Elasticsearch exception 
[type=parse_exception,reason=parse_exception: Encountered " ":" ": "" at line 1,column 36.
20:55:55,464 INFO  [stdout] (http-localhost/127.0.0.1:8080-3) Was expecting one of:
20:55:55,464 INFO  [stdout] (http-localhost/127.0.0.1:8080-3)     <NOT> ...
20:55:55,464 INFO  [stdout] (http-localhost/127.0.0.1:8080-3)     "+" ...
20:55:55,464 INFO  [stdout] (http-localhost/127.0.0.1:8080-3)     "-" ...
20:55:55,465 INFO  [stdout] (http-localhost/127.0.0.1:8080-3)     <BAREOPER> ...
20:55:55,465 INFO  [stdout] (http-localhost/127.0.0.1:8080-3)     "(" ...
20:55:55,465 INFO  [stdout] (http-localhost/127.0.0.1:8080-3)     "*" ...
20:55:55,465 INFO  [stdout] (http-localhost/127.0.0.1:8080-3)     <QUOTED> ...
20:55:55,465 INFO  [stdout] (http-localhost/127.0.0.1:8080-3)     <TERM> ...
20:55:55,465 INFO  [stdout] (http-localhost/127.0.0.1:8080-3)     <PREFIXTERM> ...
20:55:55,465 INFO  [stdout] (http-localhost/127.0.0.1:8080-3)     <WILDTERM> ...
20:55:55,465 INFO  [stdout] (http-localhost/127.0.0.1:8080-3)     <REGEXPTERM> ...
20:55:55,465 INFO  [stdout] (http-localhost/127.0.0.1:8080-3)     "[" ...
20:55:55,465 INFO  [stdout] (http-localhost/127.0.0.1:8080-3)     "{" ...
20:55:55,465 INFO  [stdout] (http-localhost/127.0.0.1:8080-3)     <NUMBER> ...
20:55:55,466 INFO  [stdout] (http-localhost/127.0.0.1:8080-3)     "*" ...
20:55:55,466 INFO  [stdout] (http-localhost/127.0.0.1:8080-3)     ]];

“我正在使用 elasticsearch java Api 并且我正在尝试运行此查询以检索结果。但我正在解析异常。 你能帮我找出问题出在哪里吗? 我将不胜感激”

解决方法

execution_hint 参数不接受 global_ordinals_low_cardinality 值,而只接受 mapglobal_ordinals

您需要确保客户端 Java API 的版本与 ES 集群的版本同步,因为您似乎使用的是旧客户端 Java API。

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...