elk之简介

写在前面

本文看下es的简介。

1:简介

背后公司,elastic,08年纽交所上市,与腾讯,阿里等云厂商有合作,推出云产品,类似功能的产品由solr,splunk,但使用量es当前遥遥领先,下图是es与solr的对比图,可看到在03年左右es已经一骑绝尘了,如下图:
elk之简介_第1张图片
elk之简介_第2张图片
可看到,使用很大,并且使用的非常广泛,分布全球。

2:为什么会有es

es是基于lucene开发的一款分布式的搜索产品,但是已经有了lucene,为什么还需要es呢?为了了解这个问题,我们先来看下lucene,lucene是Doug Cutting开发的,其也是hodoop的作者,就是下图的哥们:
elk之简介_第3张图片
lucene是99基于Java语言开发,05年成为apache的顶级开源项目,优点是性能高,搜索能力强,但是也有如下的缺点:

1:只能基于Java语言开发,局限性比较大
2:学习曲线异常陡峭,本人就学过,已经世上无难事,只要肯放弃了
3:不支持水平扩展,想要支持大数据量的话,必须自己二次开发

基于以上的不足,就有大牛站出来带领像我这种小菜鸟走出困境了,这位大哥就是shaybanon:
elk之简介_第4张图片
04年基于Java语言开发,取名为compass,10重构comapass,取名为elasticsearch,优点如下:

1:支持水平扩展(此处应有掌声)
2:提供rest接口,可以跨语言使用
3:2降级了学习的门槛
4:支持jdbc(Java),odbc(微软)

3:es介绍

核心功能,搜索,聚合。10年正式发布,12年创立公司,半年时间就达到160万的下载量,并拿到1000万的风险投资,具体版本历史如下:
elk之简介_第5张图片
任何一个产品都离不开良好的生态系统,es也一样,其生态圈我们叫做elastic stack,如下图:
elk之简介_第6张图片
各个组件作用如下:

1:logstash,beat
    数据收集,支持从不同的数据源收集数据,并做数据的处理,脱敏等
2:elasticsearch
    数据存储,搜索,聚合
3:kibana
    数据各种形式的展现,表格,报表等
4:X-pack
    扩展数据包,安全,告警,监控,机器学习等
5:云服务
    提供产品的云服务

其中beat有多种,如下图:
elk之简介_第7张图片

3.1:与数据库集成

因为es本身无法提供事务性的消息处理,所以这种场景还是需要依赖于MySQL ,但我们又想利用es高效的数据查询功能,该怎么办呢,这时就需要将mysql的数据同步到es中,此时一般采用如下的架构:
elk之简介_第8张图片

3.2:数据采集与展现

为了将各种数据源的数据,存储在es,并最终使用kibana进行展现,一般采用如下的流程:
elk之简介_第9张图片

写在后面

参考文章列表

你可能感兴趣的:(elk,elk)