Elastic Stack 是一系列开源产品的合集,包括 Elasticsearch、Kibana、Logstash 以及 Beats 等等,可以安全可靠地获取任何来源、任何格式的数据,而且可以实时地对数据进行搜索、分析和可视化。
1、Elasticsearch、Splunk、Solr、Lucene
Elasticsearch是一款基于Lucene的开源分布式搜索分析引擎的产品。它提供了一个分布式多用户能力的全文搜索引擎,基于RESTful web接口。Elasticsearch是用Java开发的,并做为Apache许可条款下的开放源码发布,是当前流行的企业级搜索引擎。设计用于云计算中,可以达到实时搜索,稳定,可靠,快速,安装使用方便。
-
近实时(Near Real Time);
-
分布式存储、搜索和分析引擎;
大数据的搜索平台已经成为了众多企业的标配,Elasticsearch、Splunk(商业上市公司)、Solr(Apache开源项目)是其中最为优秀和流行的选择。
Splunk 是大数据领域第一家在纳斯达克上市公司,Splunk提供一个机器数据的引擎。使用 Splunk 可收集、索引和利用全部应用程序、服务器和设备(物理、虚拟和云中)生成的快速移动型计算机数据 。从一个位置搜索并分析全部实时和历史数据。 使用 Splunk 处理计算机数据,可以让您在几分钟内(而不是几个小时或几天)解决问题和调查安全事件。监视您的端对端基础结构,避免服务性能下降或中断。以较低成本知足合规性要求。关联并分析跨越多个系统的复琐事件。获取新层次的运营可见性以及 IT 和业务智能。
Solr是Apache Lucene项目的开源企业搜索平台。其主要功能包括全文检索、命中标示、动态聚类、数据库集成,以及富文本(如Word、PDF)的处理。Solr是高度可扩展的,并提供了分布式搜索和索引复制。Solr是用Java编写、运行在Servlet容器(如 Apache Tomcat 或Jetty)的一个独立的全文搜索服务器。 Solr采用了 Lucene Java 搜索库为核心的全文索引和搜索,并具备相似REST的HTTP/XML和JSON的API。
根据最新的数据库引擎排名显示,Elasticsearch、Splunk、Solr分别占据了搜索引擎(Search engine)的前三位。
在搜索引擎领域,上述3个产品的流行趋势图,以下所示。Elasticsearch 一直向上,超出Splunk和Solr。
从趋势上来看,Elasticsearch和Splunk上升明显,Elasticsearch更是表现出了很是强劲的势头。
Lucene 搜索引擎库
Elasticsearch和Solr都使用Lucene做为内部引擎,可是在使用Elasticsearch或Solr作全文搜索时,只须要使用统一开发好的API便可,而不须要了解其背后复杂的Lucene的运行原理。
下面简要了解一下Lucene:
2、Elasticsearch分布式架构
Elasticsearch为分布式设计的,有很好的扩展性,在一个典型的分布式配置中,每个节点(node)能够配制成不一样的角色,以下图所示。
每一种角色能够经过Elasticsearch的配置文件或者环境变量来配置。每一种角色均可以很方便的扩展,由于Elasticsearch采用了对等性的设计,也就是全部的角色是平等的。Master Node会进行Leader Election,其中有一个是领导者。这样的设计使得集群环境的伸缩性很是好,尤为是在容器环境中,例如Docker Swarm或者Kubernetes中使用。
集群规模能够从单个节点扩展到数百个节点,具备高可用和水平扩展的特性。
Elasticsearch 支持多种方式集成接入
3、Logstash 数据处理管道
Logstash 是 Elastic Stack 的中央数据流引擎,用于收集、丰富和统一全部数据,而无论格式或模式。当Logstash与Elasticsearch,Kibana,及 Beats 共同使用的时候便会拥有特别强大的实时处理能力。
-
开源的服务器端数据处理管道,支持从不一样来源采集数据,转换数据,并将数据发送到不一样的存储库中。
-
Logstash 建立于 2009年,最初用来作日志的采集与处理。
-
2013年,Logstash被Elasticsearch 收购。
Logstash 可以动态地转换和解析数据,Logstash 特性以下:
4、Kibana 数据可视化分析
Kibana是一个开源的分析和可视化平台,设计用于和Elasticsearch一块儿工做。
5、Elastic的发展历程
2015年3月收购Elastic Cloud,提供Cloud服务。
2015年3月收购PacketBeat。
2016年9月收购PreAlert - Machine Learning异常检测。
2017年6月收购Opbeat进军APM。
2017年11月收购Saas厂商Swiftype,提供网站和App搜索。
2018年X-Pack开源。