ElasticSearch经典入门(一) 全文索引&ES概述&ES安装&Kibana安装

本文涉及的产品
检索分析服务 Elasticsearch 版,2核4GB开发者规格 1个月
简介: 全文索引&ES概述&ES安装&Kibana安装

前言

为什么要写这个系列的文章呢,基于两个原因,一是在为企业招人的时候发现很多是工作多年的求职者都还没有接触过全文检索引擎,二是应朋友请求希望我写一写ElasticSearch(简称ES)的技术文章,该系列文章将分为如下几个部分:1.ES原理与安装;2.ES的基础用法 ;3.Java代码进行ES实战 ;4.ES的面试题讲解,喜欢的话请给个好评。

全文检索概述

我们在网络上的大部分搜索服务都用到了全文检索技术,全文检索的应用场景随处可见,招聘网站的职位搜索,电商网站的商品搜索,百度搜搜等等,这种业务场景往往意味需要对海量数据进行高效搜索。

那什么是全文检索呢?我们可以简单的理解为是从文本数据的搜索,比如:从百万千万级数据中搜索商品标题包含“鼠标”的商品,这一定是需要用到全文搜索,如果我们使用like来进行模糊匹配那简直是一场灾难,性能是极其的差。

全文搜索引擎可以做到传统关系型数据库无法做到的功能如:

  • 搜索效率高,是like无法比拟的
  • 相关度最高的排在最前面
  • 关键词的高亮

需要注意的是:全文检索只处理文本,不处理语义。 比如在输入框中输入“中国的首都在哪里”,搜索引擎不会以对话的形式告诉你“在北京”,而仅仅是列出包含了搜索关键字的网页。

常见的全文检索引擎有

  • 全文搜索工具包-Lucene(核心)
  • 全文搜索服务器 ,Elastic Search(ES) 基于Lucene封装,上手快
  • Solr基于lucene封装,上手较为麻烦

ElasticSearch认识

ElasticSearch是一个非常热门使用广泛的分布式的全文搜索引擎,它基于Apache Lucene进行封装,解决了Lucene使用复杂,不支持分布式/集群且只支持Java语言等问题。ES也使用Java开发并使用Lucene作为其核心来实现所有索引和搜索的功能,但是它的目的是通过简单的 RESTful API来隐Lucene的复杂性,从而让全文搜索变得简单。

总的来说ElasticSearch简化了全文检索lucene的使用,同时增加了分布式的特性,使得构建大规模分布式全文检索变得非常容易。它具备如下特点

  • 分布式的实时文件存储,分布式全文搜索引擎,每个字段都被索引并可被搜索
  • 本身支持集群扩展,可以扩展到上百台服务器
  • 处理PB级结构化或非结构化数据
  • 简单的 RESTful API通信方式
  • 支持各种语言的客户端
  • 基于Lucene封装,使操作简单

ElasticSearch的安装

ES的安装比较简单,只需要官方下载ES的运行包,然后启动ES服务即可。ES的使用主要是通过能够发起HTTP请求的终端来接入,比如Poster插件、CURL、kibana等。ES服务只依赖于JDK,推荐使用JDK1.8+。本课程以在window环境下,ES 6.8.6版本为例,下载对应的ZIP文件

7.x以上的版本变化挺大的,企业用的比较多的还是7.x以下的版本,我这里以6.8.6为例,下载地址:https://www.elastic.co/cn/downloads/past-releases/elasticsearch-6-8-6
image.png

解压即可,目录如下
image.png

  • bin 是ES的执行命令
  • config是配置文件目录,里面有一个 elasticsearch.yml是es配置文件,暂时不需要动它
  • data是数据存储目录
  • lib 是所依赖的jar包
  • plugins是插件安装目录,比如分词器就在该目录安装

ES启动占用的内存比较大,可以通过修改config/jvm.options 文件来修改内存,该文件在es的安装目录中
image.png

比如修改为:-Xms512m -Xmx512m

双击安装目录 bin/elasticsearch.bat即可启动
image.png

使用浏览器访问:http://localhost:9200
image.png

看到上图信息,恭喜你,你的ES集群已经启动并且正常运行。

Kibana可视化工具安装

操作ES的方式有很多:比如基于rest api 方式的可以使用Postman 这一类的工具;在项目中使用ES当然是需要Java客户端来操作ES,官方推荐使用Kibana可视化工具,下载地址如下:https://www.elastic.co/cn/downloads/past-releases/kibana-6-8-6
image.png

下载好Kibana后解压即可,目录如下
image.png

默认情况下,Kibana会链接本地的默认ES http://localhost:9200 ,如果需要修改链接的ES服务器,通过修改安装目录下 config/kibana.yml 将配置项 #elasticsearch.hosts: ["http://localhost:9200"] 取消注释即可修改连接的ES服务器地址。

双击/bin/kibana.bat 即可启动Kibana ,它会自己去连接已经启动的ES
image.png

启动成功后访问 http://localhost:5601,功能很多我们暂时用不到,我们找到 Dev Tools 菜单,界面如下
image.png

进去之后界面效果如下
image.png

左边我们使用rest 请求进行操作,右边是结果显示面板。

相关实践学习
使用阿里云Elasticsearch体验信息检索加速
通过创建登录阿里云Elasticsearch集群,使用DataWorks将MySQL数据同步至Elasticsearch,体验多条件检索效果,简单展示数据同步和信息检索加速的过程和操作。
ElasticSearch 入门精讲
ElasticSearch是一个开源的、基于Lucene的、分布式、高扩展、高实时的搜索与数据分析引擎。根据DB-Engines的排名显示,Elasticsearch是最受欢迎的企业搜索引擎,其次是Apache Solr(也是基于Lucene)。 ElasticSearch的实现原理主要分为以下几个步骤: 用户将数据提交到Elastic Search 数据库中 通过分词控制器去将对应的语句分词,将其权重和分词结果一并存入数据 当用户搜索数据时候,再根据权重将结果排名、打分 将返回结果呈现给用户 Elasticsearch可以用于搜索各种文档。它提供可扩展的搜索,具有接近实时的搜索,并支持多租户。
目录
相关文章
|
17天前
|
Java Maven 开发工具
【ElasticSearch 】IK 分词器安装
【ElasticSearch 】IK 分词器安装
23 1
|
17天前
|
存储 数据可视化 数据挖掘
【ElasticSearch】ElasticSearch安装
【ElasticSearch】ElasticSearch安装
27 2
|
21天前
Elasticsearch【问题记录 02】【不能以root运行es + max virtual memory areas vm.max_map_count [65530] is too low处理】
【4月更文挑战第12天】Elasticsearch【问题记录 02】【不能以root运行es + max virtual memory areas vm.max_map_count [65530] is too low处理】
21 3
|
2天前
|
JavaScript Windows
window安装配置ElasticSearch
window安装配置ElasticSearch
|
4天前
|
SQL 缓存 Linux
干货 | Elasticsearch 8.11 ES|QL 初体验
干货 | Elasticsearch 8.11 ES|QL 初体验
15 0
|
5天前
|
安全 Linux 数据安全/隐私保护
Windows 部署 Elasticsearch + kibana 8.0 指南
Windows 部署 Elasticsearch + kibana 8.0 指南
12 0
|
5天前
|
存储 安全 网络协议
云服务器 Centos7 部署 Elasticsearch 8.0 + Kibana 8.0 指南
云服务器 Centos7 部署 Elasticsearch 8.0 + Kibana 8.0 指南
15 0
|
5天前
|
监控 数据可视化 关系型数据库
MetricBeat + Elasticsearch + Kibana 实现监控指标可视化
MetricBeat + Elasticsearch + Kibana 实现监控指标可视化
13 0
|
12天前
|
SQL JSON DataWorks
DataWorks产品使用合集之DataWorks 数据集成任务中,将数据同步到 Elasticsearch(ES)中,并指定 NESTED 字段中的 properties 类型如何解决
DataWorks作为一站式的数据开发与治理平台,提供了从数据采集、清洗、开发、调度、服务化、质量监控到安全管理的全套解决方案,帮助企业构建高效、规范、安全的大数据处理体系。以下是对DataWorks产品使用合集的概述,涵盖数据处理的各个环节。
21 0
|
13天前
|
存储 安全 数据管理
【专栏】指导在Rocky Linux 8上安装配置Elasticsearch,包括添加仓库等
【4月更文挑战第28天】本文指导在Rocky Linux 8上安装配置Elasticsearch,包括添加仓库,运行`yum install elasticsearch`进行安装,修改配置文件如`cluster.name`和`network.host`,启动服务并验证其正常运行。同时,文章提及了内存、文件描述符设置及安全配置,并列出常见问题及解决方法,帮助用户成功搭建Elasticsearch。

热门文章

最新文章