SpringBoot --- 整合Elasticsearch

  • 1.elasticsearch install
    • 1.1 windows版本下载,解压
    • 1.2 启动
    • 1.3 访问
    • 1.4 关键字介绍
  • 2.elasticsearch ui
    • 2.1 elasticsearch-head
    • 2.2 elasticHD
    • 2.3 kibana
  • 3.Springboot整合Elasticsearch
    • 3.1 官方文档
    • 3.2 依赖
    • 3.3 properties
    • 3.4 代码
    • 3.5 报警
  • 4.集群搭建
    • 4.1 修改配置文件
    • 4.2 还可以修改密码(此步骤没什么用)
    • 4.3 启动三个节点,查看状态
    • 4.4 启动kibana,监控
  • 5.elasticsearch api
    • 5.1 CURD之Create
    • 5.2 CURD之Update
    • 5.3 CURD之Delete
    • 5.4 CURD之Retrieve
    • 5.5 match查询
    • 5.6 term查询
    • 5.6 排序查询
    • 5.7 分页查询
  • 6.Elasticsearch之布尔查询
    • 6.1 must关键字查询
    • 6.2 should关键字查询
    • 6.3 must_not关键字查询
    • 6.4 filter关键字查询
  • 7.Elasticsearch之查询结果过滤
  • 8.Elasticsearch之高亮查询
  • 9.Elasticsearch之聚合查询
    • 9.1 avg
    • 9.2 max
    • 9.3 min
    • 9.4 sum
    • 9.5 range分组查询
  • 10.Elasticsearch之Mapping & Dynamic Mapping
    • 10.1 mapping
    • 10.2 dynamic mapping
      • 1 dynamic mapping
      • 2 explicit mapping
      • 3 strict mapping
      • 4 小结
    • 10.3 对象属性
    • 10.4 控制当前字段是否被索引
    • 10.5 对Null值实现搜索
  • 11.elasticsearch之setting
  • 12.elasticsearch字段的数据类型
  • 13.cluster node
  • 13.Analyzer进行分词
    • 13.1 分析器
      • 1. 标准分析器:standard analyzer
      • 2. 简单分析器:simple analyzer
      • 3. 空白分析器:whitespace analyzer
      • 4. 停用词分析器:stop analyzer
      • 5. 关键词分析器:keyword analyzer
      • 6. 模式分析器:pattern analyzer
      • 7. 语言和多语言分析器:chinese
      • 8. 雪球分析器:snowball analyzer
    • 13.2 字符过滤器
      • 1. HTML字符过滤器
      • 2. 映射字符过滤器
      • 3. 模式替换过滤器
    • 13.3 分词器
      • 1.标准分词器:standard tokenizer
      • 2. 关键词分词器:keyword tokenizer
      • 3. 字母分词器:letter tokenizer
      • 4. 小写分词器:lowercase tokenizer
      • 5. 空白分词器:whitespace tokenizer
      • 6. 模式分词器:pattern tokenizer
      • 7. UAX URL电子邮件分词器:UAX RUL email tokenizer
      • 8. 路径层次分词器:path hierarchy tokenizer
    • 13.4 分词过滤器
      • 1. 自定义分词过滤器
      • 2. 自定义小写分词过滤器
      • 3. 多个分词过滤器
    • 13.5 IK分词器
      • 1. 下载
      • 2. 介绍
      • 3. 测试
  • 14.正排索引和倒排索引
  • 15.数据建模
  • 16.集群的内部安全通信

整理不易,不喜勿喷。谢谢

SpringBoot — 整合Ldap.
SpringBoot — 整合Spring Data JPA.
SpringBoot — 整合Elasticsearch.
SpringBoot — 整合spring-data-jpa和spring-data-elasticsearch.
SpringBoot — 整合thymeleaf.
SpringBoot — 注入第三方jar包.
SpringBoot — 整合Redis.
Springboot — 整合slf4j打印日志.
Springboot — 整合定时任务,自动执行方法.
Springboot — 配置多数据源,使用JdbcTemplate以及NamedParameterJdbcTemplate.
Sprignboot — 详解pom.xml中build和profile.
SpringBoot — 监控.
SpringBoot — 缓存Cache/Redis.
SpringBoot与Zookeeper.
Git的使用.

1.elasticsearch install

项目 Elasticsearch Solr
实时索引 不会产生线程阻塞,效能高于solr 会有io阻塞
动态添加数据 对效能没有影响 效能会变得低下
分布式 本身自带分布式 利用zookeeper进行分布式管理
数据格式 仅支持json xml,json,csv等等
地位 更适合新兴的实时搜索应用 传统应用的有力解决方案

官网地址:elasticsearch官网.最好下载一些低版本的,高版本整合会报警

  • https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-7.16.2-windows-x86_64.zip.
  • 9200 是ES对外部RESTFUL接口
  • 9300 是ES内部使用的端口

1.1 windows版本下载,解压

1.2 启动

1.3 访问

1.4 关键字介绍

Name Desc
index 相当于Mysql中的一个库
document 相当于Mysql中的一行数据
field 相当于Mysql中的column
shards 分片存储
replicas 进行备份

1.Doc中的元数据

{"_id": "1","_index": "lsp","_score": 1,-"_source": {"age": 30,"desc": "皮肤黑、武器长、性格直","from": "gu","name": "顾老二",-"tags": ["黑","长","直"]
}

各部分的含义:

  • _index: 文档所属的索引名
  • _type:文档所属的类型名
  • _id:文档唯一标识
  • _source:文档的原始JSON数据
  • @version:文档的版本信息(可用于并发搜索时,解决文档冲突)
  • _score:相关性打分(根据检索结果打分)

2.index索引

每个索引都有自己的Mapping定义,用于包含所有的文档字段名和字段类型。* Shard体现物理空间的概念* 索引中的数据分散在Shard上* Mapping定义文档字段的类型* Setting定义不同的数据分布

3.type

  • 5.x及以前版本一个index有一个或者多个type
  • 6.X版本一个index只有一个type
  • 7.X版本移除了type,type相关的所有内容全部变成Deprecated,为了兼容升级和过渡,所有的7.X版本es数据写入后type字段都默认被置为_doc
  • 8.X版本完全废弃type

2.elasticsearch ui

2.1 elasticsearch-head

下载

  • 安装node.js
    安装教程https://blog.csdn.net/weixin_43916074/article/details.
    npm -v
    node -v
  • 安装grunt
    npm install -g grunt-cli
    grunt -v
  • 下载elasticsearch-head,安装,启动
    下载地址:https://github.com/mobz/elasticsearch-head.
    安装:cd到此文件夹,然后 npm install

启动:npm run start/grunt server
界面比较老旧,不时尚

2.2 elasticHD

1.下载

下载地址:https://github.com/360EntSecGroup-Skylar/ElasticHD/releases.

2.启动
可以直接双击启动
也可以cd到安装目录,执行 ElasticHD -p 127.0.0.1:9800

2.3 kibana

下载地址:https://www.elastic.co/start.
切记:要和上面的Elasticsearch版本匹配

鼠标放在windows上,会显示下载地址,直接修改版本就好了

  • https://artifacts.elastic.co/downloads/kibana/kibana-7.15.2-linux-x86_64.tar.gz
  • https://artifacts.elastic.co/downloads/kibana/kibana-7.16.2-windows-x86_64.zip

1.双击Kibana.bat启动
默认对应elasticsearch:9200

2.访问 http://localhost:5601,输入前面的密码

如何进行监控:Kibana监控Es Cluster.

3.Springboot整合Elasticsearch

3.1 官方文档

链接: Spring Data Elasticsearch - Reference Documentation.

3.2 依赖

<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-data-elasticsearch</artifactId>
</dependency>

ElasticsearchRestTemplate封装了RestHighLevelClient,源码如下

SpringBoot --- 整合Elasticsearch相关推荐

  1. es springboot 不设置id_原创 | 一篇解决Springboot 整合 Elasticsearch

    ElasticSearch 结合业务的场景,在目前的商品体系需要构建搜索服务,主要是为了提供用户更丰富的检索场景以及高速,实时及性能稳定的搜索服务. ElasticSearch是一个基于Lucene的 ...

  2. 七、SpringBoot整合elasticsearch集群

    @Author : By Runsen @Date : 2020/6/12 作者介绍:Runsen目前大三下学期,专业化学工程与工艺,大学沉迷日语,Python, Java和一系列数据分析软件.导致翘 ...

  3. SpringBoot整合ElasticSearch实现多版本的兼容

    前言 在上一篇学习SpringBoot中,整合了Mybatis.Druid和PageHelper并实现了多数据源的操作.本篇主要是介绍和使用目前最火的搜索引擎ElastiSearch,并和Spring ...

  4. SpringBoot整合elasticsearch (java整合es)

    欢迎大家进群,一起探讨学习 微信公众号,每天给大家提供技术干货 博主技术笔记 博主网站地址1 博主网站地址2 博主开源微服架构前后端分离技术博客项目源码地址,欢迎各位star SpringBoot整合 ...

  5. SpringBoot 整合ElasticSearch全文检索

    ElasticSearch是一个基于Lucene的搜索服务器.它提供了一个分布式多用户能力的全文搜索引擎,基于RESTful web接口.Elasticsearch是用Java语言开发的,并作为Apa ...

  6. Springboot整合Elasticsearch(High-level-Client)

    前言 通过学习Elasticsearch一小段时间来稍微认识了一点ES的体系架构.发现ES最大的坑就是版本兼容性问题了-在整合Springboot也不例外,但是,有一种方式能较好的解决-通过restc ...

  7. Elasticsearch的安装,以及Springboot整合Elasticsearch

    *一.下载好elasticsearch并解压 我这里用的是elasticsearch-5.6.8,下面是下载地址 https://artifacts.elastic.co/downloads/elas ...

  8. SpringBoot整合Elasticsearch详细步骤以及代码示例(附源码)

    准备工作# 环境准备# JAVA版本 Copy java version "1.8.0_121" Java(TM) SE Runtime Environment (build 1. ...

  9. 【十九】springboot整合ElasticSearch实战(万字篇)

    本章开始学习springboot整合ElasticSearch 7.X版本并通过小demo实现基本的增删改查.实现如下案例: 1.当向数据新增一个商品信息时,同时向rabbitMQ发起消息(异步实现) ...

  10. Springboot 整合ElasticSearch 常用的插入查询,模糊查询,范围查询

    前言 本来该篇教程就应该写到 Springboot 整合 ElasticSearch 入门教学必看 https://blog.csdn.net/qq_35387940/article/details/ ...

最新文章

  1. 当你学了现在的忘了前面的
  2. [转]为什么我要用 Node.js? 案例逐一介绍
  3. 关于QVariant 的学习一点分享
  4. intellij2018使用2019的主题
  5. [转]Python 列表(List) 的三种遍历(序号和值)方法
  6. linux网络编程之inet_addr和inet_ntoa使用总结
  7. html中一张a4是多少pt,CSS设置A4纸张尺寸
  8. Android SurfaceView动画(一)
  9. 《CLR via C# 》第三版 英文原版电子书下载
  10. 服务器互相备份不同步_94爱分享拍了拍你,这款好用的数据同步备份软件千万不要错过!...
  11. 计算机操作系统第三章测试题及答案
  12. mv单位是什么意思_mv单位(mv是什么意思单位)
  13. ssh-keygen:you don't exist,go away
  14. Office Online Server 2016 安装部署笔记
  15. 联想小新air14和联想pro14哪个好
  16. [机器学习与数据分析] 数据分析常用方法
  17. SpringBoot微信小程序V3支付
  18. 保险保费基本计算规则
  19. 用户不在 sudoers 文件中此事将被报告
  20. v中国数字线卡行业发展动态与投资前景展望报告2022-2027

热门文章

  1. aliez歌词_aLIEz (中文版)歌词 aLIEz (中文版)Lrc歌词
  2. 联想笔记本卸载McAfee
  3. 技术交底书在专利申请文件撰写中的功用
  4. 关于CSS中 用“rem 在谷歌浏览器下的问题
  5. Workflow 规则大全 最新版
  6. Java中定时任务的6种实现方式,你知道几种?
  7. BP神经网络算法基本原理,bp神经网络的应用案例
  8. 文件版本转换( AutoCAD、3dMax、SketchUp高版本转低版本 )
  9. PyQt5多个GUI界面设计
  10. 次时代各制作插件使用方案以及技巧,包括UV,烘焙,减面等