Elasticsearch 介绍

什么是Elasticsearch?

Elasticsearch是一个基于Lucene的免费开源的全文搜索引擎和分析引擎,于 2010 年首次发布。随后以其简单的 REST 风格 API、分布式特性、速度和可扩展性而闻名,是 Elastic Stack 的核心组件;Elastic Stack 是一套适用于数据采集、扩充、存储、分析和可视化的免费开源工具。人们通常将 Elastic Stack 称为 ELK Stack(代指 Elasticsearch、Logstash 和 Kibana)。

Elasticsearch 的功能有哪些?

全文检索、结构化检索、部分匹配、自动完成、搜索纠错、搜索推荐、数据分析等。

Elasticsearch 的特点是什么?

分布式、高性能、高可用、可伸缩、开箱即用等。

Elasticsearch 的应用场景有哪些?

适用于包括文本、数字、地理位置、结构化和非结构化数据等在内的所有类型数据的各种搜索场景,如:

  • 应用程序搜索
  • 网站搜索
  • 企业搜索
  • 日志处理和分析
  • 基础设施指标和容器监测
  • 应用程序性能监测
  • 地理空间数据分析和可视化
  • 安全分析
  • 业务分析

为什么不使用数据库查询?

如果使用数据库(如:MySQL)查询数据的话,我们大概率使用 like 做模糊查询,那这个结果就是全表扫描。例如我们想查询库里有没有包含 “生化危机” 的文本,那么 MySQL 会扫描库里所有的数据行,然后再比对该字段里的每一个字符来查看是否包含我们想要查询的文本。这样的方式,查询效率显然非常低。而且,只会硬性的匹配包含 “生化危机” 的文本,而不会匹配到包含 “生化” 或者 “危机” 的文本。

当然我们可以选择使用 MySQL 等数据库的全文索引来解决这个问题,但是数据库全文索引的效率以及提供的功能相对于 Elasticsearch 来说还是有很大差别。

为什么要使用 Elasticsearch?

Elasticsearch 很快

由于 Elasticsearch 是在 Lucene 基础上构建而成的,所以在全文本搜索方面表现十分出色。Elasticsearch 同时还是一个近实时的搜索平台,这意味着从文档索引操作到文档变为可搜索状态之间的延时很短,一般只有一秒。因此,Elasticsearch 非常适用于对时间有严苛要求的用例,例如安全分析和基础设施监测。

Elasticsearch 具有分布式的本质特征

Elasticsearch 中存储的文档分布在不同的容器中,这些容器称为分片,可以进行复制以提供数据冗余副本,以防发生硬件故障。Elasticsearch 的分布式特性使得它可以扩展至数百台(甚至数千台)服务器,并处理 PB 量级的数据。

Elasticsearch 包含一系列广泛的功能

除了速度、可扩展性和弹性等优势以外,Elasticsearch 还有大量强大的内置功能(例如数据汇总和索引生命周期管理),可以方便用户更加高效地存储和搜索数据。

Elastic Stack 简化了数据采集、可视化和报告过程

通过与 Beats 和 Logstash 进行集成,用户能够在向 Elasticsearch 中索引数据之前轻松地处理数据。同时,Kibana 不仅可针对 Elasticsearch 数据提供实时可视化,同时还提供 UI 以便用户快速访问应用程序性能监测 (APM)、日志和基础设施指标等数据。

Elasticsearch 支持哪些编程语言?

Elasticsearch 支持多种编程语言,目前提供针对下列编程语言的官方客户端:

  • Java
  • JavaScript (Node.js)
  • Go
  • .NET (C#)
  • PHP
  • Perl
  • Python
  • Ruby

Elasticsearch 支持哪些文本语言?

Elasticsearch 支持 34 种文本语言,从阿拉伯语到泰语,十分全面,同时还针对每种语言提供了分析工具。完整列表详见 Elasticsearch Language Analyzer 文档。通过定制插件可以新增对其他语言的支持。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值