Elasticsearch快速入门 基础篇 (一)什么是Elasticsearch?

Elasticsearch快速入门 基础篇 什么是Elasticsearch?

前言

随着互联网的快速发展,日益增长的海量数据带来了存储、检索上的问题。Elasticsearch 作为一款非常欢迎的数据分析引擎,在数据检索和数据分析展示了它出色的性能,很多人都开启了学习 Elasticsearch,本文将带你认识 Elasticsearch。


一、Elasticsearch 概述

Elasticsearch 是一个分布式的免费开源搜索和分析引擎,适用于包括文本、数字、地理空间、结构化和非结构化数据等在内的所有类型的数据。Elasticsearch 在 Apache Lucene 的基础上开发而成,由 Elasticsearch N.V.(即现在的 Elastic)于 2010 年首次发布。Elasticsearch 以其简单的 REST 风格 API、分布式特性、速度和可扩展性而闻名,是 Elastic Stack 的核心组件;Elastic Stack 是一套适用于数据采集、扩充、存储、分析和可视化的免费开源工具。人们通常将 Elastic Stack 称为 ELK Stack(代指 Elasticsearch、Logstash 和 Kibana),目前 Elastic Stack 包括一系列丰富的轻量型数据采集代理,这些代理统称为 Beats,可用来向 Elasticsearch 发送数据。


二、Elasticsearch 的用途是什么?

Elasticsearch 在速度和可扩展性方面都表现出色,而且还能够索引多种类型的内容,这意味着其可用于多种用例:

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

三、Elasticsearch 的工作原理是什么?

原始数据会从多个来源(包括日志、系统指标和网络应用程序)输入到 Elasticsearch 中。数据采集指在 Elasticsearch 中进行索引之前解析、标准化并充实这些原始数据的过程。这些数据在 Elasticsearch 中索引完成之后,用户便可针对他们的数据运行复杂的查询,并使用聚合来检索自身数据的复杂汇总。在 Kibana 中,用户可以基于自己的数据创建强大的可视化,分享仪表板,并对 Elastic Stack 进行管理。


四、为何使用 Elasticsearch?

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

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

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

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


五、Elasticsearch 发展史

诞生

Elasticsearch 故事起源于伦敦的公寓内,Shay Banon 在空闲时间,为帮助妻子管理越来越丰富的菜谱,他开始编写搜索引擎。有点不敢相信,Shay Banon 还是一个模范丈夫。

版本混乱时期

早期,Elastic 开发和发布软件时采用的是工程师各自为战的方法:可在任何时候推出任何喜欢的版本,唯一要求就是产品要好。Kibana 有公测版, Logstash 采用里程碑,Elasticsearch 则采用数字编号。如果工程师高兴,还可以推出插件。尽管十分混乱,但是一切还算行得通……直到最后无法使用。

随着越来越多用户通过 Elasticsearch 来完成越来越多的任务,Elasticsearch 添加了更多功能,开发了新插件和扩展。Elasticsearch 发展势头正如日中天,但一系列问题随之而来,Elasticsearch 技术栈变得越来越混乱了。举个例子,如果您运行的 Elasticsearch 是 1.7 版本,而运行的其他插件是 2.3 版本,则软件不能自动检测二者是否兼容,也无法验证插件是否在没有预警的情况下已不能正常使用。

版本混乱解决

2015 年 10 月是一个重大转折点,Elastic 公司解决了产品版本编号问题,同时也降低了兼容性复杂程度。

这一发布版本又称为“发布宝藏”,那一天,Elastic 公司面向公众发布了全部的产品:Elasticsearch 2.0、Logstash 2.0、Watcher 2.0、Shield 2.0 和 Kibana 4.2。(Beats 1.0 仍在酝酿中,还要再过一个月才能发布。)

Elastic Cloud 隆重推出

几个月后,“发布宝藏”不再仅仅局限于供人们下载的产品。Elastic 公司通过 Elastic Cloud(即之前的 Found),在 AWS 上推出了 Elasticsearch 和 Kibana 服务。

BELK 5.0 Elastic Stack 5.0

Elastic 公司致力于推出更为成熟的产品系列,通过发布 Elasticsearch 2.0 来统一发布步调便是第一步。5.0 的发布则是第二步。与之前的所有版本相比,用户通过这一版本可以体验集成性能更强、经过更严格测试且更加易于入门的产品。

5.0 发行版本同时还将Elastic 公司的所有商用插件(当时称为 Shield、Marvel 和 Watcher)整合为单一扩展,即 X-Pack。其包括Elasticsearch 核心产品的诸如 security、monitoring 和 alerting 等功能。

Filebeat 正式引入了 “模块” 的概念

在 5.3 版本(于 2017 年 3 月发布)中,Filebeat 正式引入了 “模块” 的概念,可以将模块理解为用于在 Elastic Stack 中传输、解析、存储、分析常用日志格式(例如 Apache、Nginx 和 MySQL 等)并实现可视化的一组安全配置。模块简化了用户从数据集至仪表板的入门体验。

Metricbeat 和 Packetbeat 的模块都各具特色,在几个月之后,Logstash 也将针对 ArcSight 和 NetFlow 数据引入自身模块。

崭新领域:ECE 面世

Elastic 公司成立之初,就有一个愿景,即简化用户在他们的公司 / 组织部署 Elastic 的体验。Elastic 公司采纳了管理自身 Elastic Cloud 服务时所用的技术,并发布了 Elastic Cloud Enterprise(又称 ECE),让所有规模的公司均能下载我们全部的托管产品,并独自运行,享受其带来的益处。有了 ECE,无论是一个集群,还是数千个集群,用户都能够顺利地对其进行管理,而且其还可以简化在任何环境中对 Elastic 产品和解决方案的管理和编排工作。

Elastic 解决方案加速演进

随着模块数量的成倍增加,使用 Elastic Stack 来处理特定用例(例如日志或指标)开始变得越来越简单。几个月后,Elastic 公司并购了位于哥本哈根的应用程序性能监测 (APM) 公司 Opbeat 和位于旧金山的站点和企业搜索公司 Swiftype,由于这两家公司都加入了 Elastic 的大家庭与我们携手共进,因此我们业务发展的冲劲仍在继续酝酿。

至此,Elastic 公司的发展已经日趋成熟。

开放 X-Pack 代码

从开放源码到开放沟通,公开透明一直是Elastic 公司所有业务的核心。正因如此,Elastic 公司决定开放商用 X-Pack 功能的源码,从而加速开发周期,提高社区互动,并让每个人都能够贡献源码、对源码添加评论并对其进行检查。

因此,用户能够更加轻松地开始使用 Elastic Stack,所有的 X-Pack 功能现在都默认提供 Elasticsearch、Kibana、Beats 和 Logstash。然而,这一改变并未删除任何 Apache 2.0 源码。恰恰相反,Elastic 公司在开放源码的发展道路上加大了力度。

纽交所铃声响了

东部时间 10 月 5 日上午 9:30 整,纽约证券交易所的铃声响起,这标志着 Elastic 正式成为一家上市公司。交易大厅里有多达 230 名 Elastic 员工聚在这里(创下了纪录),而且在全球各地还有数百名员工也在密切关注着这一活动。作为一家分布式公司,各地员工共同庆祝这一重要时刻。


总结

以上就是本文的主要内容,本文内容从 Elasticsearch 的概念、用途、工作原理、为什么使用、发展史这几个方面来介绍,相信聪明的你都能轻松消化。本专栏后面的文章将带你由点到面全面掌握Elasticsearch,敬请期待哦()。


声明

以上内容均来源于网络,如有错误,请多多包含。


参考文献

Elasticsearch 权威指南

Elasticsearch 是什么?

Elasticsearch 发展历程

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值