ElasticSearch 7.x with Springboot 2.3.x - 基础准备

需要补充一些基础知识的小伙伴可前往 -> ElasticSearch 7.x with Springboot 2.3.x - 前言

ES应用场景

ES有很多应用场景,大家最熟悉也最有可能用到的就是搜索引擎、电商商品搜索、用户标签、消息中心、日志查看。下面我们来简单讲讲如何应用:

  • 搜索引擎:好像不用讲什么?因为这背后更多的是算法的差异,有两个特别的点就是停用词与高亮词的使用,停用词就是敏感词,放入敏感词你就搜不到了;

  • 电商商品搜索:电商搜索栏上有一些固定选项用于缩小筛选范围,如手机,可以先选操作系统,选品牌,选屏幕尺寸,价格区间等,通过filter缩小了选择范围,如果要进一步准确,则通过在搜索框输入的关键字搜索想要的商品,然后还能选择根据什么进行排序,如价格、购买最多;

  • 用户标签:一个标签就是一个关键词,我们要通过一个或一组关键词找到一组(个)用户,但是打标签是另一个过程与课题了;

  • 消息中心:从消息检索的角度,与搜索引擎、日志查看差不多;

  • 日志查看:ELK,graylog,这里讲一下graylog,它通过ES检索到消息的ID,再通过ID到mongo中找到原始数据,有一次和某位CTO聊天,说到我们用的graylog进行的日志搜集与查看,他说他知道的,graylog就是一个简化版的ELK嘛,我只能露出一个尴尬而不失礼貌的微笑。

ES的安装

这里的安装主要是为了方便本地开发,所以使用了docker,我们不讲解过多生产级关于ES的运维事务,甚至如果你在生产购买云服务都不需要关注其如何安装。

配置Docker环境(基于win10)

  • 安装Docker Desktop Windows

    • 如果遇到启动时提示未开启Hyper-V,在小娜输入Hyper-V;(点击开始输入Hyper-V也可以)
    • 选中启动或关闭windows功能;
    • 找到Hyper-V相关组件开启,重启电脑即可;
  • 配置国内docker hub仓库,否则速度慢还可能拉取失败

    • 在docker/daemon.json中添加内容(也可以直接在Docker dashboard -> Settings -> Docker Engine中修改参数):

    {
    “registry-mirrors”: [“https://registry.docker-cn.com”,“http://hub-mirror.c.163.com”]
    }

  • 重启docker, 可通过 docker info 命令查看刚才配置的镜像地址是否已添加成功。

ES我来了

  • 找到ES的镜像,这里我使用的官方镜像

    • 官方支持很多安装方式,感兴趣的自己 -> 前往选择

    • 在命令行中拉取ES的docker镜像,你能看到拉取的过程
      docker pull docker.elastic.co/elasticsearch/elasticsearch:7.7.1

    • 镜像拉取完以后我们简单的试试镜像能否跑起来(这是一个简单的单节点模式,我们也没有修改其暴露端口及参数)
      docker run -p 9200:9200 -p 9300:9300 -e "discovery.type=single-node" docker.elastic.co/elasticsearch/elasticsearch:7.7.1

    • 打开浏览器输入 localhost:9200 访问看看,如果是一个如下的json说明你成功了,之所以这里可以使用localhost可以访问是因为虚拟网络为我们做了到容器的映射;

    {
    “name”: “59871db95f53”,
    “cluster_name”: “docker-cluster”,
    “cluster_uuid”: “lyaf9jAYRWCETndmKRPiVw”,
    “version”: {
    “number”: “7.7.1”,
    “build_flavor”: “default”,
    “build_type”: “docker”,
    “build_hash”: “ad56dce891c901a492bb1ee393f12dfff473a423”,
    “build_date”: “2020-05-28T16:30:01.040088Z”,
    “build_snapshot”: false,
    “lucene_version”: “8.5.1”,
    “minimum_wire_compatibility_version”: “6.8.0”,
    “minimum_index_compatibility_version”: “6.0.0-beta1”
    },
    “tagline”: “You Know, for Search”
    }

  • 当然你可能会需要进入容器修改一些参数,可以在容器启动后通过下面命令进入容器,进去以后与你在linux操作没有太多区别,进去后你就可以做一些你爱做的事了,注意安全就好。
    docker exec -i -t {你的容器名} bash

Kibana的安装

  • 在命令行中拉取Kibana的docker 镜像
    docker pull docker.elastic.co/kibana/kibana:7.7.1

  • 启动kibana的镜像(启动的镜像需要找到我们刚才启动的ES镜像)
    docker run --link eager_kare:elasticsearch -p 5601:5601 docker.elastic.co/kibana/kibana:7.7.1
    这里简单讲一下 --link参数,–link :alias,eager_kare 是我刚才启动的ES容器的名字,冒号后的elasticsearch是kibana容器中配置文件中使用的别名

  • 打开浏览器访问: http://localhost:5601/
    这是你应该可以看到Kibana的页面了,就是这么简单。

到这里,我们的基础准备都已经就绪了,你们最喜欢的实操就要到来了。但是是不是有点累了,想走了?

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Elasticsearch 简介 ElasticSearch是一个基于Lucene的搜索服务器。它提供了一个分布式多用户能力的全文搜索引擎,基于RESTful web接口。Elasticsearch是用Java开发的,并作为Apache许可条款下的开放源码发布,是当前流行的企业级搜索引擎。设计用于云计算中,能够达到实时搜索,稳定,可靠,快速,安装使用方便。elasticSearch 的使用场景 1、在海量数据前提下,对数据进行检索。比如:京东,淘宝等电商项目课程目标: 1. 了解企业级搜索引擎2. 安装elasticsearch 课程目录: 01 课程介绍02 elasticsearch 简介03 elasticsearch 使用场景04 安装elasticsearch 之前先安装jdk05 安装elasticsearch06 测试elasticsearch是否安装成功 07 安装kibana08 elasticsearch 基本认识 以及添加索引和删除索引09 elasticsearch 添加查询数据10 elasticsearch 修改删除数据11 elasticsearch 有条件的查询12 分词子属性fuzzy查询13 elasticsearch 过滤使用14 elasticsearch 排序与分页15 elasticsearch 如何查询指定的字段16 elasticsearch 高亮显示17 elasticsearch 聚合18 elasticsearch mapping 概念19 elasticsearch 的中文词库20 elasticsearch 中文词库安装测试21 elasticsearch 中文词库的使用案例22 elasticsearch 自定义词库配置23 安装nginx 配置中文词库24 测试elasticsearch 自定义中文词库25 搭建项目父工程26 搭建项目bean-interface-common27 搭建search 的service web 项目28 测试项目是否能与elasticsearch联通29 创建数据库并搭建首页30 数据上传功能的实现类完成31 数据上传控制器完成32 dubbo 介绍以及安装zookeeper33 将数据从mysql 上传到elasticsearch 中34 elasticsearch查询功能分析35 编写业务需求的dsl 语句36 编写输入参数返回结果集的实体类37 实现类编写38 编写实现类中dsl 语句39 返回集结果转换40 结果测试41 测试通过输入查询条件并将数据显示到页面

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值