ES-01-简介
ES中文社区:https://elasticsearch.cn/explore/category-2
一、简介
DB-Engines搜索引擎类数据库排名常年霸榜:https://db-engines.com/en/ranking/search+engine

性能强悍,超快无比,快到不可思议:PB级数据,秒级!!!,近实时搜索
免费 开源

1.用途广泛
- 搜索引擎:如百度、搜狗、谷歌、必应等
- 垂直领域:各大电商平台、OA系统、站内搜索
- 商业智能:数据分析、数据挖掘、用户画像
- Github: 千亿+行代码秒查
- 日志系统:ELK
2.上手简单
使用门槛低,易扩展,对于小微企业友好
可以在笔记本电脑上运行,也可以在承载了PB级数据的上千台服务器的集群上运行
如何学习
- 初学者不推荐把看书作为首选方式,最好是作为辅助或者工具
- 官网:权威,但是不系统,知识体系庞大而分散,作为主要工具
- Elastic Club:开源免费、系统化学习,文档,视频,社区和资源下载。持续构建中,尚不完善。
- 资料查阅:合理的利用百度、Google这些搜索引擎以及博客资源,提高学习效率
- 动手能力:写博客,不要去复制别人的博客,写项目,没有条件创造条件
- 主动学习:吃人鱼,不如学以渔。要主动提出问题,尝试解决问题,自身无法解决再向老师咨询问题。要学会学习的方式,而不是老师走一步,你跟一步。
二、Elastic Stack 四大金刚

- Elasticsearch:基于Json的分布式搜索和分析引擎
- Logstash:动态数据收集管道,生态丰富
- Kibana:提供数据的可视化界面
- Beats:轻量级的数据采集器
2.1 ElasticSearch
- Elastic Stack的核心

- 搜索、聚合分析、大数据存储
- 分布式、高性能、高可用、可伸缩、易维护
- 支持文本搜索、结构化数据、非结构化数据、地理位置搜索等
- 全文本搜索只是全球众多公司利用 Elasticsearch 解决各种挑战的冰山一角
2.2 Logstash
采集
数据往往以各种各样的形式,或分散或集中地存在于很多系统中。
Logstash 支持各种输入选择,可以同时从众多常用来源捕捉事件。
能够以连续的流式传输方式,轻松地从您的日志、指标、Web 应用、数据存储以及各种 AWS 服务采集数据。

过滤
Logstash 能够动态地转换和解析数据,不受格式或复杂度的影响:
- 利用 Grok(基于正则的插件) 从非结构化数据中派生出结构
- 从 IP 地址破译出地理坐标
- 将 PII 数据匿名化,完全排除敏感字段
- 简化整体处理,不受数据源、格式或架构的影响

输出
Elasticsearch 是官方首选输出方式,但并非唯一选择。Logstash 提供多种输出选择,目前官方支持200 多个插件

2.3 Kibana~Elastic Stack的窗户
可视化
图表:柱状图、线状图、饼图、旭日图等
位置分析:位置搜索、形状搜索、地图检测等
时序分析:可以方便的从各种不同时间维度查看
管理和监控
- 机器学习:非监督型异常和隐患检测
- 安全监控:堆栈检测、异常报警、策略可配置
- 柱状图、线状图、饼图、旭日图等

2.4 Beats 轻量级数据采集器
- 开源:Beats 是一个免费且开放的平台,集合了多种单一用途数据采集器。它们从成百上千或成千上万台机器和系统向 Logstash 或 Elasticsearch 发送数据。
- 轻量级:Beats使用go语言开发,对服务器资源占用极低。Beats 可以采集符合 Elastic Common Schema (ECS) 要求的数据,可以将数据转发至 Logstash 进行转换和解析。
- 即插即用:Filebeat 和 Metricbeat 中包含的一些模块能够简化从关键数据源(例如云平台、容器和系统,以及网络技术)采集、解析和可视化信息的过程。只需运行一行命令,即可开始探索。
- 可扩展:由于Beats开源的特性,如果现有Beats不能满足开发需要,我们可以自行构建,并且完善Beats社区
