suggest根据关键字从指定的索引中推进和关键词拼写相近的词
GET kibana_sample_data_ecommerce/_search
{
"suggest": {
"term-suggestion": {
"text": "ddie",
"term": {
"field": "customer_first_name",
"prefix_length":0,
"suggest_mode":"always"
}
}
}
}
phrase suggest
GET suggest_index/_search
{
"suggest": {
"term-suggestion": {
"text": "love this",
"phrase": {
"field": "region_name",
"max_errors":10,
"confidence":0
}
}
}
}
自动补全,仅支持前缀补全
自动补全的要在mapping中设置。
PUT complete_index/
{
"mappings": {
"properties": {
"title":{
"type": "completion"
}
}
}
}
PUT complete_index/_doc/1
{
"title":"testgood"
}
GET complete_index/_search
{
"suggest": {
"YOUR_SUGGESTION": {
"text": "te",
"completion": {
"field": "title"
}
}
}
}
上下文自动补全,仅支持前缀补全
PUT complete_index2/
{
"mappings": {
"properties": {
"title":{
"type": "completion",
"contexts":[
{
"type":"category",
"name":"title_cate"
}
]
}
}
}
}
POST complete_index2/_doc/
{
"rel_title":"i love this moive",
"title":{
"input":"love this movie",
"contexts":{
"title_cate":"moive"
}
}
}
POST complete_index2/_doc/
{
"rel_title":"i love this coffie",
"title":{
"input":"love this coffie",
"contexts":{
"title_cate":"coffie"
}
}
}
GET complete_index2/_search
{
"suggest": {
"YOUR_SUGGESTION": {
"prefix": "lov",
"completion": {
"field": "title",
"contexts":{
"title_cate":"coffie"
}
}
}
}
}