Elasticsearch --- 简介、安装

这篇具有很好参考价值的文章主要介绍了Elasticsearch --- 简介、安装。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

一、简介

1.1、elasticsearch的作用

elasticsearch是一款非常强大的开源搜索引擎,具备非常多强大功能,可以帮助我们从海量数据中快速找到需要的内容

例如:

  • 在GitHub搜索代码

Elasticsearch --- 简介、安装

  • 在电商网站搜索商品  

Elasticsearch --- 简介、安装

  • 在百度搜索答案  

Elasticsearch --- 简介、安装

 

1.2、ELK技术栈

elasticsearch结合kibana、Logstash、Beats,也就是elastic stack(ELK)。被广泛应用在日志数据分析、实时监控等领域:Elasticsearch --- 简介、安装

而elasticsearch是elastic stack的核心,负责存储、搜索、分析数据。  

Elasticsearch --- 简介、安装

 

1.3、elasticsearch和lucene

elasticsearch底层是基于lucene来实现的。

Lucene是一个Java语言的搜索引擎类库,是Apache公司的顶级项目,由DougCutting于1999年研发。官网地址:Apache Lucene - Welcome to Apache Lucene 。

Elasticsearch --- 简介、安装

elasticsearch的发展历史:

  • 2004年Shay Banon基于Lucene开发了Compass

  • 2010年Shay Banon 重写了Compass,取名为Elasticsearch。

Elasticsearch --- 简介、安装 

1.4、为什么不是其他搜索技术?

目前比较知名的搜索引擎技术排名:

Elasticsearch --- 简介、安装

虽然在早期,Apache Solr是最主要的搜索引擎技术,但随着发展elasticsearch已经渐渐超越了Solr,独占鳌头:

Elasticsearch --- 简介、安装 

 

1.5、总结

什么是elasticsearch?

  • 一个开源的分布式搜索引擎,可以用来实现搜索、日志统计、分析、系统监控等功能

什么是elastic stack(ELK)?

  • 是以elasticsearch为核心的技术栈,包括beats、Logstash、kibana、elasticsearch

什么是Lucene?

  • 是Apache的开源搜索引擎类库,提供了搜索引擎的核心API

  

 

二、倒排索引

倒排索引的概念是基于MySQL这样的正向索引而言的。

 

2.1、正向索引

那么什么是正向索引呢?例如给下表(tb_goods)中的id创建索引:

Elasticsearch --- 简介、安装

如果是根据id查询,那么直接走索引,查询速度非常快。

但如果是基于title做模糊查询,只能是逐行扫描数据,流程如下:

  1. 用户搜索数据,条件是title符合"%手机%"
  2. 逐行获取数据,比如id为1的数据
  3. 判断数据中的title是否符合用户搜索条件
  4. 如果符合则放入结果集,不符合则丢弃。回到步骤1

逐行扫描,也就是全表扫描,随着数据量增加,其查询效率也会越来越低。当数据量达到数百万时,就是一场灾难。

 

2.2、倒排索引

倒排索引中有两个非常重要的概念:

  • 文档(Document):用来搜索的数据,其中的每一条数据就是一个文档。例如一个网页、一个商品信息

  • 词条(Term):对文档数据或用户搜索数据,利用某种算法分词,得到的具备含义的词语就是词条。例如:我是中国人,就可以分为:我、是、中国人、中国、国人这样的几个词条

创建倒排索引是对正向索引的一种特殊处理,流程如下:

  • 将每一个文档的数据利用算法分词,得到一个个词条

  • 创建表,每行数据包括词条、词条所在文档id、位置等信息

  • 因为词条唯一性,可以给词条创建索引,例如hash表结构索引

如图:文章来源地址https://www.toymoban.com/news/detail-453213.html

到了这里,关于Elasticsearch --- 简介、安装的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【ElasticSearch】ELK简介

    本文目录 一、什么是ELK? 二、ELK简介 2.1 E -- ElasticSearch 2.2 L -- Logstash 2.3 K -- Kibana 三、ELK优点 ELK 是 Elasticsearch 、 Logstash 、 Kibana 三大开源框架的首字母大写简称。市面上也被称为 Elastic Stack 。其中 Elasticsearch 是一个基于 Lucene 、 分布式 、 通过Restful方式 进行交互的 近实时搜

    2024年02月01日
    浏览(62)
  • ElasticSearch简介之倒排索引

    第二点必须准确吧,假如我搜索电脑,结果搜索出来的结果是一些奇奇怪怪的东西,要是在这时候投屏怕不是会陷入社死的尴尬吧。 第三点对于我这种比较粗心的人还是需要有一点的容忍度,哪怕输错其中一个字,也可以给出相关的搜索结果。 第四点对于大部分人而

    2024年04月15日
    浏览(32)
  • Elasticsearch的倒排索引简介

    Elasticsearch的倒排索引(Inverted Index)是其能够快速执行全文搜索查询的关键技术。为了理解倒排索引的工作原理,我们可以将其与传统的正向索引进行比较。 正向索引(Forward Index) 在正向索引中,索引是以文档为中心构建的。每个文档ID映射到它包含的一系列词汇上。例如

    2024年03月16日
    浏览(51)
  • 第三章 Elasticsearch简介

    Elasticsearch (后称为 ES )是一个天生支持分布式的搜索、聚合分析和存储引擎。 搜索引擎 全文检索引擎 分布式文档系统 分布式数据库 OLAP系统 分布式搜索中间件 不要去死背概念,概念应该作为一种辅助的手段帮助我们去理解一项技术或知识,总之,等你真正会用了,你就

    2024年02月06日
    浏览(40)
  • ElasticSearch(一)【简介】

    1.1 概述 什么是ElasticSearch ElasticSearch 简称ES,是基于 Apache Lucene 构建的 开源搜索引擎 ,是当前最流行的企业级搜索引擎。Lucene本身就可以被认为迄今为止性能最好的一款开源所搜引擎工具包,但是Lucene的API相对复杂,需要深厚的搜索理论。很难集成到实际应用当中去。 ES采用

    2024年02月08日
    浏览(32)
  • ElasticSearch(二)简介

    Elasticsearch 是一个分布式、高扩展、高实时的搜索与数据分析引擎。 它能很方便的使大量数据具有搜索、分析和探索的能力。充分利用Elasticsearch的水平伸缩性,能使数据在生产环境变得更有价值。 Elasticsearch 的实现原理主要分为以下几个步骤,首先用户将数据提交到Elastics

    2024年02月05日
    浏览(30)
  • ElasticSearch简介及常见用法

    Elasticsearch 是 Elastic Stack 核心的分布式搜索和分析引擎。 Logstash 和 Beats 有助于收集、聚合和丰富您的数据并将其存储在 Elasticsearch 中。 Kibana 使您能够以交互方式探索、可视化和分享对数据的见解,并管理和监控堆栈。 Elasticsearch 可以快速 索引、搜索和分析 海量数据。 Ela

    2024年03月20日
    浏览(42)
  • Elasticsearch 简介(太棒了)

    掌握它才说明你真正懂 Elasticsearch - ES(三) | Elasticsearch 技术论坛 Elasticsearch 是使用 Java 编写的一种开源搜索引擎,它在内部使用 Luence 做索引与搜索,通过对 Lucene 的封装,提供了一套简单一致的 RESTful API。 Elasticsearch 也是一种分布式的搜索引擎架构,可以很简单地扩展到上

    2024年02月07日
    浏览(33)
  • Elasticsearch简介

    Elasticsearch 是一个开源的、基于 Lucene 的分布式搜索和分析引擎,设计用于云计算环境中,能够实现实时的、可扩展的搜索、分析和探索全文和结构化数据。它具有高度的可扩展性,可以在短时间内搜索和分析大量数据。 Elasticsearch 不仅仅是一个全文搜索引擎,它还提供了分布

    2024年02月08日
    浏览(33)
  • 引言:ElasticSearch简介和目标

    ElasticSearch是一个开源的搜索和分析引擎,基于Lucene库构建,具有高性能、可扩展性和实时性等优势。它广泛应用于企业级搜索、日志分析、监控等场景。本文将深入探讨ElasticSearch的背景、核心概念、算法原理、最佳实践、应用场景、工具推荐等方面,为读者提供一个全面的

    2024年02月20日
    浏览(35)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包