Springboot2.x整合ElasticSearch7.x实战(一)

学习一个新技术,最快的掌握方式就是先学会使用,让我们有了很强的满足感,在研究底层代码。

本篇幅是继上一篇Springboot2.x整合ElasticSearch7.x实战目录,适合初学 Elasticsearch 的小白,可以跟着整个教程做一个练习。

编者荐语:在大数据搜索中,Elasticsearch 使用频率非常高。学习 Java 了解大数据那是我们 Java 攻城狮很好的选择。

[toc]

第一章 课程介绍

自我介绍

大家好,我是pub哥

ElasticSearch SpringBoot 介绍

ElasticSearch

ElasticSearch 是一个开源的搜索引擎,建立在一个全文搜索引擎库 Apache Lucene™ 基础之上。 Lucene 可以说是当下最先进、高性能、全功能的搜索引擎库——无论是开源还是私有。

ElasticSearch 使用 Java 编写的,它的内部使用的是 Lucene 做索引与搜索,它的目的是使全文检索变得简单,通过隐藏 Lucene 的复杂性,取而代之提供了一套简单一致的 RESTful API。

然而,ElasticSearch 不仅仅是 Lucene,并且也不仅仅只是一个全文搜索引擎,它可以被下面这样准确地形容:

  1. 一个分布式的实时文档存储,每个字段可以被索引与搜索
  2. 一个分布式近实时分析搜索引擎
  3. 能胜任上百个服务节点的扩展,并支持 PB 级别的结构化或者非结构化数据

Elasticsearch 是与名为 Logstash 的数据收集和日志解析引擎以及名为 Kibana 的分析和可视化平台一起开发的。这三个产品被设计成一个集成解决方案,称为 “Elastic Stack” (以前称为“ELK stack”)。

SpringBoot

Spring Boot 是由 Pivotal 团队提供的全新框架,其设计目的是用来简化新 Spring 应用的初始搭建以及开发过程。该框架使用了特定的方式来进行配置,从而使开发人员不再需要定义样板化的配置。用我的话来理解,就是 Spring Boot 其实不是什么新的框架,它默认配置了很多框架的使用方式,就像 Maven 整合了所有的 Jar 包,Spring Boot 整合了所有的框架。

简单来说,使用 Spring Boot 可以非常方便、快速搭建项目,使我们不用关心框架之间的兼容性,适用版本等各种问题,我们想使用任何东西,仅仅添加一个配置就可以,所以使用 Spring Boot 非常适合构建微服务。

环境介绍

centOS 7.3 JDK1.8 及以上 ElasticSearch 7.*

<!------->

第二章 软件安装

服务器环境

确保你的服务器安装了 jdk1.8 或以上版本环境

Elasticsearch通过文件映射(mmap)来读取磁盘中的文件,这样可以比read系统调用少一次内存拷贝,也被称为0拷贝技术。ES映射的文件会很多,所以需要修改最大映射文件的数量,通过修改vm.max_map_count配置项可实现。设置方式

文件最后添加一行 vim /etc/sysctl.conf vm.max_map_count=262144

以上几点是环境搭建的基础

Linux安装JDK

es 最小支持 jdk 版本是 jdk8

Linux安装es,方法和要点

国内版本镜像页:https://mirrors.huaweicloud.com/elasticsearch/

下载:

wget https://mirrors.huaweicloud.com/elasticsearch/7.7.0/elasticsearch-7.7.0-linux-x86_64.tar.gz

解压:

tar -zxvf elasticsearch-7.7.0-linux-x86_64.tar.gz

es集群、初步配置和使用

设置堆内存,修改 jvm.options ,学习阶段初学者 200m 即可,示例如下。 -Xms200m -Xmx200m

在启动前,先修改配置文件, config/elasticsearch.yml

贴一下全部配置(ip地址是服务器对外访问地址):

1cluster.name: my-application 2node.name: node01 3node.master: true 4node.data: true 5#bootstrap.memory_lock: false 6#bootstrap.system_call_filter: false 7network.host: 0.0.0.0 8http.port: 9200 9transport.tcp.port: 9300 10http.cors.enabled: true 11http.cors.allow-origin: "*" 12# 集群发现:配置该节点会与哪些候选地址进行通信,默认端口9300,可填ip;ip+port;域名 13discovery.seed_hosts: ["39.12.1.1"] 14# 15cluster.initial_master_nodes: ["39.12.1.1"] 16discovery.zen.minimum_master_nodes: 1 17#http.cors.allow-headers: Authorization 18#xpack.security.enabled: true 19#xpack.security.transport.ssl.enabled: true

启动:

./bin/elasticsearch

到此为止,单机版本已搭建完成。访问下面地址,可以看到我们的es版本信息。 http://ip+9200/

安装使用可视化工具插件head,Cerebro

这里只介绍 cerebro 安装

下载:

wget https://github.com/lmenezes/cerebro/releases/download/v0.6.5/cerebro-0.6.5.tgz 

解压:

tar zxvf cerebro-0.6.5.tgz 

启动:

cd cerebro-0.6.5 bin/cerebro

cerebro

在看和分享是对我最大的鼓励,我是王哥,我们下期再见

JavaPub 官网: http://javapub.net.cn/

《最少必要面试题》

点赞
收藏

评论区

加载中...

相关推荐

Oracle 分组与拼接字符串同时使用

SELECTT.,ROWNUMIDFROM(SELECTT.EMPLID,T.NAME,T.BU,T.REALDEPART,T.FORMATDATE,SUM(T.S0)S0,MAX(UPDATETIME)CREATETIME,LISTAGG(TOCHAR(

MySQL部分从库上面因为大量的临时表tmp_table造成慢查询

背景描述Time:20190124T00:08:14.70572408:00User@Host:@Id:Schema:sentrymetaLast_errno:0Killed:0Query_time:0.315758Lock_

手把手教你使用Flask搭建ES搜索引擎(预备篇)

/1前言/Elasticsearch是一个开源的搜索引擎,建立在一个全文搜索引擎库ApacheLucene™基础之上。那么如何实现Elasticsearch和Python的对接成为我们所关心的问题了(怎么什么都要和Python关联啊)。/2 Python交互/所以,Python也就提供了可以对接Elasti

ElasticSearch(增put、删delete、改(本质是先删除后添加)post、查get、post)

一、ElasticSearch简介1.1什么是ElasticSearchElasticSearch,简称es,es是一个开源的高扩展的分布式全文搜索引擎,可以近乎实时的存储、检索数据;本身扩展性很好,可以扩展到上百台服务器,处理pb级别的数据。es也使用java开发并使用Lucene作为其核心来实现所有索

Elasticsearch与Solr优缺点比较

Elasticsearch简介Elasticsearch是一个实时的分布式搜索和分析引擎。它可以帮助你用前所未有的速度去处理大规模数据。它可以用于全文搜索,结构化搜索以及分析,也可以将这三者进行组合。Elasticsearch是一个建立在全文搜索引擎ApacheLucene™基础上的搜索引擎,可以说Lucen

FLV文件格式

1.        FLV文件对齐方式FLV文件以大端对齐方式存放多字节整型。如存放数字无符号16位的数字300(0x012C),那么在FLV文件中存放的顺序是:|0x01|0x2C|。如果是无符号32位数字300(0x0000012C),那么在FLV文件中的存放顺序是:|0x00|0x00|0x00|0x01|0x2C。2.