参考书籍 : Elasticsearch 服务器开发(第 2 版).pdf
全文检索: 针对文本中每个词,创建词条建立索引,进行搜索。
ElasticSearch 操作服务器上的数据,通过 Rest API
如果操作 Elasticsearch 上数据,访问提供 Rest API 的 URL 地址,传递 json 数据给服务器
5.1. ElasticSearch 基础 数据架构的主要概念
图解
file:///C:\Users\ADMINI~1\AppData\Local\Temp\ksohtml6956\wps19.png 索引对象: 存储数据的表结构 ,任何搜索数据,存放在索引对象上
映射: 数据如何存放到索引对象上,需要有一个映射配置, 数据类型、是否存储、是否分词 …
文档: 一条数据记录, 存在索引对象上
文档类型: 一个索引对象 存放多种类型数据, 数据用文档类型进行标识
编程: 建立索引对象 --- 建立映射 --- 存储数据【文档】 --- 指定文档类型进行搜索数据【文档】
5.2. 新建文档(自动创建索引和映射 )
1、 需要新建 maven 项目
2、 基于 maven 的 pom 导入坐标依赖
ElasticSearch2.4.0 依赖 lucene5.5.2 版本
当直接在 ElasticSearch 建立文档对象时,如果索引不存在的,默认会自动创建,映射采用默认方式
ElasticSearch 服务默认端口 9300
Web 管理平台端口 9200
3、 建立文档, 自动创建索引
自动创建索引
自动创建索引映射
文档数据 (type 文档类型 )
5.3. 搜索文档数据
查询数据 主要依赖 QueryBuilder 对象 ,可以通过 QueryBuilders 获取
boolQuery() 布尔查询,可以用来组合多个查询条件
fuzzyQuery() 相似度查询 matchAllQuery() 查询所有数据 regexpQuery() 正则表达式查询 termQuery() 词条查询 wildcardQuery() 模糊查询