一、知识点思维导图
ES常用网站
ES中文社区:https://elasticsearch.cn/explore/category-2
二、简介
1.用途广泛
● 搜索引擎:如百度、搜狗、谷歌、必应等
● 垂直领域:各大电商平台、OA系统、站内搜索
● 商业智能:数据分析、数据挖掘、用户画像
● Github: 千亿+行代码秒查
● 日志系统:ELK
使用门槛低,易扩展,对于小微企业友好
可以在笔记本电脑上运行,也可以在承载了PB级数据的上千台服务器的集群上运行
DB-Engines搜索引擎类数据库排名常年霸榜:https://db-engines.com/en/ranking/search+engine
2.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社区