【发布时间】:2023-03-30 15:35:01
【问题描述】:
我在关键字字段上收到“默认情况下在文本字段上禁用字段数据”。下面是代码。
{
"aggs": {
"agg_terms_user": {
"terms": {
"field": "user"
}
}
}
}
user字段的映射如下
user: { type: "keyword" }
由于用户字段的类型设置为关键字,我不应该得到错误。但是,仍然会抛出错误。
[illegal_argument_exception] 默认情况下禁用文本字段上的字段数据。在 [user] 上设置 fielddata=true,以便通过反转倒排索引将 fielddata 加载到内存中。请注意,这可能会占用大量内存。或者使用关键字字段。
我不知道现在该尝试什么。
【问题讨论】:
-
在聚合中使用这个
"field": "user.keyword" -
那行不通。用户字段已设置为关键字。如果我将其映射为 user: {type: "text",fields: { keyword: { type: "keyword" } 那么使用 "user.keyword" 是有意义的
-
哦,对不起..误解了。这是哪个ES版本?
-
现在是 6.3 版
-
这就是我的意思,这个错误是意料之外的。它是我代码中的关键字,我没有任何子字段。此外,它在一个应用程序实例中运行良好,而在另一个实例中引发错误。
标签: elasticsearch aws-elasticsearch