提问人:Aswanth vp 提问时间:10/3/2023 更新时间:10/3/2023 访问量:49
弹性搜索 API 方面
Elastic search API facets
问:
我想使用弹性搜索 API 分面实现分面。我试过了,但收到错误
我有以下格式的数据
{
field1:"data",
field2 :{
innerField1 : "data2",
innerField2: "data3"
}
}
我想使用搜索 API 实现分面,以获取不同的 innerField2 及其计数。
{
"query": {
"bool": {
"must": [
{
// query
}
]
}
},
"facets": {
"innerField2": [
{
"type": "value",
"name": "innerField2",
"sort": { "count": "desc" },
"size": 10
}
]
}
}
我想知道如何正确传递分面以获取分面信息。
因为我收到错误
"error": {
"root_cause": [
{
"type": "parsing_exception",
"reason": "Unknown key for a START_OBJECT in [facets].",
"line": 1,
"col": 133
}
],
"type": "parsing_exception",
"reason": "Unknown key for a START_OBJECT in [facets].",
"line": 1,
"col": 133
},
"status": 4
文件如下:https://www.elastic.co/guide/en/app-search/current/facets.html
答:
0赞
Val
10/3/2023
#1
您引用的文档适用于 App Search API。App Search 在 Elasticsearch 上运行,并具有不同的 API。
您可能正在寻找 Elasticsearch Aggregations API,更具体地说,是术语
聚合。
POST your-index/_search
{
"query": {
"bool": {
"must": [
{
// query
}
]
}
},
"aggs": {
"innerField2": {
"terms": {
"field": "field.innerField2"
}
}
}
}
评论
0赞
Aswanth vp
10/3/2023
这是否也会返回结果和分面信息?我想要一个与这个例子类似的结果。elastic.co/guide/en/app-search/current/facets-guide.html。他们能够使用上述 API 获得分面和结果
0赞
Aswanth vp
10/3/2023
我的字段是文本字段,而不是关键字,所以我不能在关键字字段上使用鸡蛋
0赞
Val
10/3/2023
您可以创建一个关键字子字段以使其正常工作。
评论