elastisearch搜索书名和作者
这篇文章有点水,北京干燥,放点水湿润空气
大致步骤
i. 找几个书名和作者名
ii. 创建索引和mapping
iii. 导入信息
iv. 提供搜索接口
书名和作者的样本
薄凉宫婢深宫劫:一丝恩宠 于墨
千年干尸邪气逼人:诡境秘踪 七星棠
王小波李银河两地情书 王小波 李银河
揭秘曾国藩功过得失 张云
征婚女人 青青翠竹
创建索引和mapping
我使用的是sense工具 http://127.0.0.1:5601/app/sense
创建索引
PUT book
创建ampping
POST book/fulltext/_mapping
{
"fulltext": {
"_all": {
"analyzer": "ik_max_word",
"search_analyzer": "ik_max_word",
"term_vector": "no",
"store": "false"
},
"properties": {
"title": {
"type": "string",
"analyzer": "ik_max_word",
"search_analyzer": "ik_max_word",
"include_in_all": "true",
"boost": 8
},
"author": {
"type": "string",
"analyzer": "ik_max_word",
"search_analyzer": "ik_max_word",
"include_in_all": "true",
"boost": 8
}
}
}
}
插入测试数据
简单插入五条数据,格式如下
POST /book/fulltext/5
{
"title" : "征婚女人",
"author" : "青青翠竹"
}
查询
书名和作者名都含有青青的数据
POST /book/fulltext/_search
{
"query": {
"bool": {
"should": [
{ "match": { "title": "青青" }},
{ "match": { "author": "青青" }}
]
}
}
}
搜索接口,就是上面的啊