Elasticsearch
Elasticsearch 的工作原理是什么?
-
原始数据会从从多个来源(包括日志、系统指标和网络应用程序)输入到 Elasticsearch 中,数据采集指在 ElastIcsearch 中进行索引之前解析、标准化并充实这些原始数据的过程,这些数据在 ElasticSearch 中索引完成之后,用户便可针对数据运行复杂的查询,并使用聚合来检索自身数据的复杂汇总,在 Kibana 中,用户可以基于自己的数据创建强大的可视化,分享仪表板,并对 Elastic Stack 进行管理
-
Elasticsearch 的用途是什么?
- Elasticsearch 索引指相互关联的文档集合。Elasticsearch 会以 JSON 文档的形式存储数据。每个文档都会在一个组键(字段或属性的名称)和他们对应的值(字符串、数字、布尔值、日期、数值组、地理位置或其他类型的数据)之间建立联系
- Elasticsearch 使用的是一种名为 倒排索引 的数据结构,这一结构的设计可以允许十分快速的进行全文本搜索。倒排索引会列出在所有文档中出现的每个特有词汇,并且可以找到包含每个词汇的全部文档
- 在搜索过程中,Elasticsearch 会存储文档并构建倒排索引,这样用户便可以近实时地对文档数据进行搜索。索引过程是在索引 API 中启动的,通过此 API 您即可享特定索引中添加 JSON 文档,也可更改特定索引中的 JSON 文档
-
为何使用 Elasticsearch ?
- Elasticsearch 很快。
- 由于 Elasticsearch 是在 Lucene 基础上构建而成,所以在全文搜索方面表现十分出色。Elasticsearch 同时还是一个近实时的搜索平台,这意味着从文档索引操作到文档变为可索引状态之间的延时很快。一般只有一秒。因此,Elasticsearch 非常适用于对时间有严苛要求的用例,例如安全分析和基础设施检测
- Elasticsearch 具有分布式的本质特征
- Elasticsearch 中存储的文档分布在不同的容器中,这些容器称为分片,可以进行复制以提供数据冗余副本。以防发生硬件故障,Elasticsearch 的分布式特性使得它可以扩展至数百台(甚至数千台)服务器,并处理 PB 级的数据
- Elasticsearch 包含一系列的广泛的功能
- 除了速度,可扩展性的弹性优势以外,Elasticsearch 还有大量强大的内置功能(例如数据汇总和索引生命周期管理),可以方便用户更加高效的存储和搜索数据
- Elastic Stack 简化了数据采集、可视化和报告过程
- 通过与 Beats 和 Logstash 进行集成,用户能够在向 Elasticsearch 中索引数据之前轻松的处理数据。同时。Kibana 不仅可针对 Elasticsearch 数据提供实时可视化,同时还提供 UI 以便用户快速访问应用程序性能检测(APM)、日志和基础设施指标等数据
- Elasticsearch 很快。