在之前的程序中我们发现分词不太准确,因此我们可以使用支持中文分词。 分析器的执行过程: 从一个reader字符流开始,创建一个基于reader的tokenizer分词器,经过三个tokenfilter(第一个大写变小写,第二个用回车替换空格,去掉不需要的a,the,and,逗号等)生成tokens。 ...
分类:
Web程序 时间:
2020-02-01 21:10:22
阅读次数:
99
创建完索引之后,我们需要查询。 百度的查询接口及结果如图所示: 具体步骤已经在上个博客中写到,直接上代码:(由于是一个完整的程序,我把创建索引的代码也post上) package come.me.lucene; import static org.junit.jupiter.api.Assertio ...
分类:
Web程序 时间:
2020-02-01 20:59:33
阅读次数:
95
【承接上文】1、问:Lucene优点?答:a、Lucene定义了一套以9字节为基础的索引文件格式,使得兼容系统或者不同平台的应用能够共享建立的索引文件。b、在传统倒排索引的基础上,实现了分块索引。【ps:这里说明一下什么是倒排索引】实际应用中需要根据属性值来查找记录,这种索引表中的每一项都包括一个属性值和对应的记录地址。由于是由属性值来确定记录位置,因而被称为倒排索引。c、用户无需编写代码即可使用
分类:
Web程序 时间:
2020-01-31 18:55:36
阅读次数:
80
【前言】从前年的时候,我都在心里有个想法。我想自己做一套搜索功能。在心里我是这么想的:1、有个资源信息库,供我查询,这个资源库可能包含各种途径生成的统一格式的数据库。2、查询时,我先整段匹配资源库找到资源。3、接下来就是分词了,这里我联想到了一些输入法的细胞词库。也就是说能不能按照细胞词库先匹配我们的搜索内容,然后将分词后的搜索条件进行匹配查询。4、按照匹配度的高低进行排序。直到昨天,在工作中刚刚
分类:
Web程序 时间:
2020-01-31 16:09:51
阅读次数:
101
1. ES 1.1 ES定义 ES=elaticsearch简写, Elasticsearch是一个开源的高扩展的分布式全文检索引擎,它可以近乎实时的存储、检索数据;本身扩展性很好,可以扩展到上百台服务器,处理PB级别的数据。 Elasticsearch也使用Java开发并使用Lucene作为其核心 ...
分类:
其他好文 时间:
2020-01-30 17:13:38
阅读次数:
71
curl -XPOST "http://localhost:9200/_bulk?pretty" --data-binary @books.json 这句话在书中是以crul的命令启动的,而不是使用Kibana. 其次,他说使用了books.json,在P183页说保存为books.json这个文件 ...
分类:
Web程序 时间:
2020-01-29 21:31:31
阅读次数:
92
Elasticsearch 是一个兼有搜索引擎和NoSQL数据库功能的开源系统,基于Java/Lucene构建,可以用于全文搜索,结构化搜索以及近实时分析。可以说Lucene是当今最先进,最高效的全功能开源搜索引擎框架。 说明: Lucene:只是一个框架,要充分利用它的功能,需要使用JAVA,并且 ...
分类:
其他好文 时间:
2020-01-21 22:00:12
阅读次数:
87
bana是一个基于浏览器页面的Elasticsearch前端展示工具。Kibana全部使用HTML语言和Javascript编写的,查询语法是基于Lucene的查询语法。允许布尔运算符、通配符和字段筛选。注意关键字要大写 全文搜索 在搜索栏输入login,会返回所有字段值中包含login的文档 使用 ...
分类:
其他好文 时间:
2020-01-21 21:36:53
阅读次数:
101
一、准备环境 1、下载solr最新版本,我的是8.4.0 https://lucene.apache.org/solr/downloads.html 2、下载安装tomcat,我的是9.0版本,用来做启动运行solr服务,因为solr内嵌的是netty,不稳定 3、下载安装jdk1.8以上版本 二、 ...
分类:
系统相关 时间:
2020-01-17 09:18:53
阅读次数:
331
Solr 相关链接: Solr 各版本下载地址:http://archive.apache.org/dist/lucene/solr/ 本手册翻译自 Solr 官方网站:http://lucene.apache.org/solr/resources.html 详细的solr中文手册链接:https: ...