Analyer
Elasticsearch查询时指定分词器
Elasticsearch • luman 回复了问题 • 5 人关注 • 5 个回复 • 44907 次浏览 • 2018-08-03 18:22
elasticsearch查看Analyzer的组成
Elasticsearch • yayg2008 回复了问题 • 5 人关注 • 2 个回复 • 3035 次浏览 • 2018-04-11 13:37
有三种方式可以指定查询分析器:
1. 在mapping里指定search_analyzer,例如 PUT my_index
{
"mappings": {
"doc": {
"prope... 显示全部 »
1. 在mapping里指定search_analyzer,例如 PUT my_index
{
"mappings": {
"doc": {
"prope... 显示全部 »
有三种方式可以指定查询分析器:
1. 在mapping里指定search_analyzer,例如 PUT my_index
{
"mappings": {
"doc": {
"properties": {
"uid": {
"type": "keyword"
},
"name": {
"type": "text",
"analyzer": "english",
"search_analyzer": "standard"
}
}
}
}
}
2.使用URL Search的时候,指定analyzer参数 ,文档参考: https://www.elastic.co/guide/en/elasticsearch/reference/current/search-uri-request.html , 对应的python代码范例: >>> es.search(index="my_index", analyzer="standard", q='name:"mark AND johnson"') 要注意的是,这里的analyzer只能和q这个参数搭配使用。 你的代码报错,是因为用的body参数,这个参数是没有analyzer参数搭配的。
3.使用Request Body Search,文档参考: https://www.elastic.co/guide/en/elasticsearch/reference/current/search-request-body.html ,对应的python代码范例: >>> dsl='{"query": {"match": {"name": {"query": "mark","analyzer": "standard"}}}}'
>>> es.search(index="my_index", body=dsl) 注意这个时候,analyzer是写到dsl里面的match query。
1. 在mapping里指定search_analyzer,例如 PUT my_index
{
"mappings": {
"doc": {
"properties": {
"uid": {
"type": "keyword"
},
"name": {
"type": "text",
"analyzer": "english",
"search_analyzer": "standard"
}
}
}
}
}
2.使用URL Search的时候,指定analyzer参数 ,文档参考: https://www.elastic.co/guide/en/elasticsearch/reference/current/search-uri-request.html , 对应的python代码范例: >>> es.search(index="my_index", analyzer="standard", q='name:"mark AND johnson"') 要注意的是,这里的analyzer只能和q这个参数搭配使用。 你的代码报错,是因为用的body参数,这个参数是没有analyzer参数搭配的。
3.使用Request Body Search,文档参考: https://www.elastic.co/guide/en/elasticsearch/reference/current/search-request-body.html ,对应的python代码范例: >>> dsl='{"query": {"match": {"name": {"query": "mark","analyzer": "standard"}}}}'
>>> es.search(index="my_index", body=dsl) 注意这个时候,analyzer是写到dsl里面的match query。
elasticsearch查看Analyzer的组成
回复Elasticsearch • yayg2008 回复了问题 • 5 人关注 • 2 个回复 • 3035 次浏览 • 2018-04-11 13:37