
搜索引擎
搜索引擎技术在Java Web中使用广泛,除了用于搜索外,还可被应用于冷数据的查询、归档操作。本专栏将介绍包括Lucene、Solr、Elasticsearch等搜索引擎技术。
Jitwxs
关注 https://jitwxs.cn,看最新首发文章
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
Lucene初探——基于Lucene 6.6.2
一、Lucene简介 顺序扫描法 全文检索 二、全文检索流程 2.1 索引过程 2.1.1 获得原始文档 2.1.2 创建文档对象 2.1.3 分析文档 2.1.4 创建索引 2.2 搜索过程 2.2.1 用户搜索 2.2.2 创建查询 2.2.3执行查询 2.2.4 渲染结果 三、代码实现 3.1 环境配置 3.2 Query对象 3.2.1 TermQuery 3...原创 2018-03-06 00:59:17 · 2069 阅读 · 1 评论 -
Elasticsearch初探(5)——与SpringBoot整合
一、环境搭建 采用SpringBoot 2.0 + Elasticsearch 6.4.1. 源码地址: 本文只列举了其中一些API,更多API请参考官方文档:https://www.elastic.co/guide/en/elasticsearch/client/java-rest/master/java-rest-high-supported-apis.html 1.1 导入依赖 注意Spri...原创 2018-10-09 17:05:19 · 912 阅读 · 0 评论 -
Elasticsearch初探(4)——集群
Elasticsearch的一大优势就是能够十分轻松的进行分布式部署,本文将主要讲解Elastic的集群搭建。 一、基础概念 1. 1 节点类型 node.master node.data 节点类型 true(default) true(default) 候选主节点 && 数据节点 true false 候选主节点 false true 数据节点 fal...原创 2018-10-09 10:16:56 · 645 阅读 · 2 评论 -
Elasticsearch初探(2)——相关概念与索引、数据操作
一、基本概念 由于Elasticsearch也是基于Lucene实现,因此它的许多概念和Luncene相似,关于Lucene的知识,可以参考文章: Lucene初探——基于Lucene 6.6.2。 1.1 Node、Cluster Elasticsearch本质上是一个分布式数据库,允许多台服务器协同工作,每台服务器可以运行多个 Elastic 实例。单个 Elastic 实例称为一个节点(no...原创 2018-10-08 18:12:43 · 656 阅读 · 0 评论 -
Elasticsearch初探(1)——基本介绍与环境搭建
一、Elasticsearch简介 1.1 什么是Elasticsearch Elasticsearch是一个实时的分布式搜索和分析引擎。它可以用于全文搜索,结构化搜索以及分析,当然你也可以将这三者进行组合。 Elasticsearch是一个建立在全文搜索引擎 Apache Lucene™ 基础上的搜索引擎,可以说Lucene是当今最先进,最高效的全功能开源搜索引擎框架。 Elasticsearc...原创 2018-10-08 11:56:23 · 1100 阅读 · 0 评论 -
Solr初探(6)——SolrCloud
一、系统架构 二、搭建环境 2.1 搭建Zookeeper集群 2.2 搭建Tomcat集群 2.3 部署Solr 2.4 关联solr和zookeeper 2.5 将solr配置文件上传至zookeeper 2.6 验证 三、分片 3.1 新建分片 3.2 删除分片 四、Solrj 4.1 CloudSolrClient 4.2 Spring配置 Solr集群...原创 2018-04-12 23:35:22 · 847 阅读 · 0 评论 -
Solr初探(5)——Solrj的基本使用
导入依赖 添加/更新数据 删除数据 查询数据 导入依赖 导入Solr源码包dist文件夹下的solr-solrj-6.6.2.jar以及solrj-lib文件夹下的所有包到项目中。除此之外,还要加上log4j包和junit测试包。 添加/更新数据 Solrj的使用十分简单,下面是一个添加数据的例子: @Test public void testA...原创 2018-04-10 20:27:26 · 593 阅读 · 0 评论 -
Solr初探(4)——后台数据导入及Document的增删改查
一、添加Document 二、更新Document 三、删除Document 四、导入数据 五、查询Document 进入Solr后台页面,选择一个核,点击Documents,进入Document管理标签: 一、添加Document 在Solr初探(2)——域管理中我们已经说过了,id是一个Document必须要包含的field,让我们新建一个Document,类型为...原创 2018-04-10 19:14:04 · 6074 阅读 · 0 评论 -
Solr初探(3)——配置IK分词器
Solr配置第三方分词器也是十分简单,这里以IK分词器为例。点击下载我自编译的IK分词器,支持到 JDK 1.8 + Lucene 6.6.2。 Step1: 将IK分词器的jar包放到D:\apache-tomcat-8.5.16\webapps\solr\WEB-INF\lib目录下。 Step2:将IK分词器的配置文件放到D:\apache-tomcat-8.5.16\webapps...原创 2018-04-10 16:03:14 · 1033 阅读 · 0 评论 -
Solr初探(2)——域管理
field和fieldType dynamicField copyField 在上一节中,我们已经成功搭建了Solr后台,并且在后台中新建了一个核(core),本节将介绍Solr配置域。 我们在后台系统中选择core1,点击Documents,在里面添加一个Document(文档),内容如下: {"id":"1","name":"jitwxs&a原创 2018-04-10 15:31:29 · 1242 阅读 · 0 评论 -
Solr初探(1)——Solr介绍(基于Solr 6.6.2)
一、Solr简介 1.1 Solr简介 1.2 Solr与Lucene区别 二、Solr安装与配置 2.1 下载Solr 2.2 搭建Solr后台 2.3 创建一个核(core) 三、后台介绍 一、Solr简介 1.1 Solr简介 Solr是Apache下的一个顶级开源项目,采用Java开发,它是基于Lucene的全文搜索服务器。Solr提供了比Luc...原创 2018-03-07 00:30:12 · 1873 阅读 · 0 评论 -
Lucene5.5.4入门以及基于Lucene实现博客搜索功能
转载于:https://www.cnblogs.com/liuxianan/p/lucene-hello-world.html 前言 一直以来个人博客的搜索功能很蹩脚,只是自己简单用数据库的like %keyword%来实现的,所以导致经常搜不到想要找的内容,而且高亮显示、摘要截取等也不好实现,所以决定采用Lucene改写博客的搜索功能。先来看一下最终效果: 本文demo地址:h...转载 2018-01-25 01:07:37 · 543 阅读 · 0 评论 -
Elasticsearch初探(3)——简单查询与中文分词
一、简单查询 1.1 查询全部 请求方式: GET 请求路径: ES服务的IP:端口/索引名/{分组,可省略}/_search 以上篇文章建立的索引为例,搜索结果如下: { "took": 0, "timed_out": false, "_shards": { "total": 5, "successful": 5, "sk.原创 2018-10-10 19:36:23 · 1983 阅读 · 0 评论