热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

分布式搜索(elasticsearch)

一、初始elasticsearch1、了解ES(1)什么是elasticsearch?一个开源的分布式搜索引擎,可以用

一、初始elasticsearch

1、了解ES
(1)什么是elasticsearch?
  一个开源的分布式搜索引擎,可以用来实现搜索日志统计分析系统监控等功能。
  
(2)什么是elastic stack(ELK)?
  是以elasticsearch为核心的技术栈,包括beats、Logstash、kibana、elasticsearch。
beats、Logstash:数据收集
kibana:图形展示
elasticsearch:数据存储、搜索的核心功能

(3)什么是Lucene?
  是Apache的开源搜索引擎类库,提供了搜索引擎的核心API。
elasticsearch采用倒排索引:
文档(document):每条数据就是一个文档
词条(term):文档按照语义分成的词语(词条不能重复)
2、倒排索引
正向索引和倒排索引

正向索引:根据文档找词条
倒排索引:根据词条找文档,更擅长于基于文档的部分内容进行搜索。
在这里插入图片描述

3、es的一些概念
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

4、安装es、kibana
5、分词器
默认分词器:standard
中文分词器:chinese

中文分词推荐使用IK分词器:https://github.com/medcl/elasticsearch-analysis-ik/release
ik_smartik_max_word
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述


二、索引库操作

1、mapping映射属性
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
2、索引库的CRUD
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述


三、文档操作

1、新增文档
在这里插入图片描述

2、查询文档
在这里插入图片描述

3、删除文档
在这里插入图片描述
4、修改文档
在这里插入图片描述
在这里插入图片描述


四、RestClient操作索引库

什么是RestClient?
  ES官方提供了各种不同语言的客户端,用来操作ES。这些客户端的本质就是组装DSL语句,通过http请求发送给ES。
官网地址:https://www.elastic.co/guide/en/elasticsearch/client/index.html
在这里插入图片描述
步骤一:导入课前资料
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
总结:
在这里插入图片描述


五、RestClient操作文档

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
批量操作
在这里插入图片描述
在这里插入图片描述
思考:
MySQL与Elasticsearch有什么差别呢?
Elasticsearch的文档操作API有什么样的规律?


六、DSL查询文档

官方文档:
https://www.elastic.co/guide/en/elasticsearch/reference/current/query-dsl.html
1、DSL查询分类
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
2、全文检索查询
回对用户输入的内容分词,常用于搜索框搜索。
在这里插入图片描述
在这里插入图片描述
3、精准查询
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
4、地理坐标查询
在这里插入图片描述
在这里插入图片描述
5、组合查询
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
6、FunctionScoreQuery
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
7、BooleanQuery
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述


七、搜索结果处理

1、排序
在这里插入图片描述
**注意:**指定排序字段后,打分机制会失效。

2、分页
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

3、高亮
在这里插入图片描述
在这里插入图片描述


八、RestClient查询文档

private RestHighLevelClient client;

要构建查询条件,只要记住一个类:QueryBuilders
1、快速入门
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
2、match查询
在这里插入图片描述
3、精确查询
在这里插入图片描述
4、复合查询
在这里插入图片描述
5、排序、分页、高亮
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
本文图片来自视频学习过程中所截,主要用于个人复习,视频来源:https://www.bilibili.com/video/BV1LQ4y127n4


推荐阅读
author-avatar
文voci_820
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有