elasticsearch中文分词+全文搜索demo
本文假设你已经搭建好elasticsearch服务器,并在上面装了kibana和IK中文分词组件
elasticsearch+kibana+ik的安装,之前的文章有介绍,可参考。
mapping介绍:定义索引(index)类型(type)的元数据,包括:数据类型、分词行为、建立倒排索引行为、搜索行为等。在搜索的时候会根据这个mapping定义的分词行为、搜索行为进行搜索。
1、创建索引
PUT news
2、创建mapping
POST news/new/_mapping
{
"new":
{
"properties":
{
"title":
{
"type": "text",
"fields": {
"keyword":
{
"type": "keyword",
"ignore_above": 256
}
}
},
"content":
{
"type": "text",
"analyzer": "ik_max_word",
"search_analyzer": "ik_max_word"
}
}
}
}
有两个字段:title和content
3、插入数据
PUT news/new/1
{
"title":"印度将因4大矛盾惨败中国 1项曾使印度国母被杀",
"content":"一大堆最近中国和阿三闹矛盾词语,此处省略N字。。。"
}
PUT news/new/2
{
"title":"印度不要敬酒不吃吃罚酒满嘴跑火车 想想1962年",
"content":"一大堆最近中国和阿三闹矛盾词语,此处省略N字。。。"
}
PUT news/new/3
{
"title":"莫迪就中印对峙发声:靠“亚洲古老传统”解决问题",
"content":"一大堆最近中国和阿三闹矛盾词语,此处省略N字。。。"
}
4、全文检索+高亮显示
全文检索:
GET news/new/_search
{
"query" :
{
"match" :
{
"content" : "中国 印度 "
}
}
}
高亮显示
GET news/new/_search
{
"query" :
{
"match" :
{
"content" : "中国 印度 "
}
}
,
"highlight":
{
"pre_tags" : ["<tag1>", "<tag2>"],
"post_tags" : ["</tag1>", "</tag2>"],
"fields" : {
"content" : {}
}
}
}
elasticsearch中文分词+全文搜索demo的更多相关文章
- elasticsearch 中文分词(elasticsearch-analysis-ik)安装
elasticsearch 中文分词(elasticsearch-analysis-ik)安装 下载最新的发布版本 https://github.com/medcl/elasticsearch-ana ...
- Elasticsearch 中文分词(elasticsearch-analysis-ik) 安装
由于elasticsearch基于lucene,所以天然地就多了许多lucene上的中文分词的支持,比如 IK, Paoding, MMSEG4J等lucene中文分词原理上都能在elasticsea ...
- ElasticSearch 中文分词搜索环境搭建
ElasticSearch 是强大的搜索工具,并且是ELK套件的重要组成部分 好记性不如乱笔头,这次是在windows环境下搭建es中文分词搜索测试环境,步骤如下 1.安装jdk1.8,配置好环境变量 ...
- ElasticSearch中文分词(IK)
ElasticSearch常用的很受欢迎的是IK,这里稍微介绍下安装过程及测试过程. 1.ElasticSearch官方分词 自带的中文分词器很弱,可以体检下: [zsz@VS-zsz ~]$ c ...
- elasticsearch 中文分词、插件的安装和使用(一)
1. 安装elasticsearch.kibana.x-pack #安装elasticsearch wget https://artifacts.elastic.co/downloads/elasti ...
- Elasticsearch系列---深入全文搜索
概要 本篇介绍怎样在全文字段中搜索到最相关的文档,包含手动控制搜索的精准度,搜索条件权重控制. 手动控制搜索的精准度 搜索的两个重要维度:相关性(Relevance)和分析(Analysis). 相关 ...
- elasticsearch中文分词器ik-analyzer安装
前面我们介绍了Centos安装elasticsearch 6.4.2 教程,elasticsearch内置的分词器对中文不友好,只会一个字一个字的分,无法形成词语,别急,已经有大拿把中文分词器做好了, ...
- Windows ElasticSearch中文分词配置
elasticsearch官方只提供smartcn这个中文分词插件,效果不是很好,好在国内有medcl大神(国内最早研究es的人之一)写的两个中文分词插件,一个是ik的,一个是mmseg的,下面分别介 ...
- 【分词器及自定义】Elasticsearch中文分词器及自定义分词器
中文分词器 在lunix下执行下列命令,可以看到本来应该按照中文”北京大学”来查询结果es将其分拆为”北”,”京”,”大”,”学”四个汉字,这显然不符合我的预期.这是因为Es默认的是英文分词器我需要为 ...
随机推荐
- 使用Cache缓存
存放位置:服务器内存,用于频繁访问且不轻易更改的内容缓存. string CacheKey = "CT1"; //检索指定项, object objModel = Cache.Ge ...
- linux系统iostat命令详解
iostat -k 3 5 (以KB为单位,每3秒统计一次,共统计5次) • avg-cpu: 总体cpu使用情况统计信息,对于多核cpu,这里为所有cpu的平均值 %user 用户空 ...
- shell用户管理->
用户的添加与删除练习 -> 脚本1(if then) 思路:1.条件测试, 脚本使用案例, 创建用户[交互式创建] 1.怎么交互式 read -p 2.接收到对应字符串怎么创建用户 userad ...
- bootstrap-fileinput上传文件的插件使用总结----编辑已成功上传过的图片
http://plugins.krajee.com/file-plugin-methods-demo 具体操作 http://plugins.krajee.com/file-preview-manag ...
- Elasticsearch 邻近查询示例
Elasticsearch 邻近查询示例(全切分分词) JAVA API方式: SpanNearQueryBuilder span = QueryBuilders.spanNearQuery(); s ...
- IPC对象的持续性
转载:http://book.51cto.com/art/201006/207275.htm <UNIX网络编程:第2版.第2卷,进程间通信>本书全面深入地讲解了各种进程间通信形式,包括消 ...
- Maven使用—拷贝Maven依赖jar包到指定目录
https://blog.csdn.net/u013514928/article/details/77930183
- python学习day4之路
装饰器(http://egon09.blog.51cto.com/9161406/1836763) 1.装饰器:本质是函数: 装饰器(装饰其他函数),就是为其他函数添加附加功能: 原则:1.不能修改被 ...
- 简单实现textview文本每隔两秒就改变一次
//这个方法可以实现文本每隔两秒就改变一次, public void textTask(){ final android.os.Handler handler=new android.os.Handl ...
- string类总结
头文件: <string> 初始化: string str(s1); string str("value"); , 'c'); 读写 //输入未知数目的string对象 ...