View a markdown version of this page

针对日志分析进行了优化 - 亚马逊 OpenSearch 服务

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

针对日志分析进行了优化

针对日志分析进行了优化的 Amazon Service 是一种新的引擎选项,它在单个托管 OpenSearch 服务中将列式分析存储与全文搜索相结合。借助优化的引擎,您可以显著提高日志分析工作负载的性价比。您还可以保留事件调查的全文搜索。

概述

优化引擎是 Amazon OpenSearch 服务中的一种全新引擎模式。您使用的控制台、API、安全模型和网络配置与通用引擎相同。

借助优化引擎,您可以对日志分析工作负载进行以下改进:

  • 提高性价比 — 列式压缩和高效的实例利用率降低了大规模运行日志分析的成本。

  • 减少存储空间 — 与传统的索引结构相比,Apache Parquet 列式格式可显著压缩日志数据。

  • 更快的摄取-矢量化的列式写入路径可提高摄取吞吐量。

  • 更快的分析查询 — 对列式数据的矢量化执行可加快聚合、筛选和趋势分析的速度。

  • 统一搜索和分析 — Full-text 搜索谓词在单一服务中针对相同数据的分析查询中运行。

下表比较了两种引擎模式。

引擎模式 适用于
通用 Search-heavy 以及具有频繁更新的混合工作负载(电子商务、内容发现、应用程序搜索)
已优化(建议用于日志分析) Append-only 多 TB 规模的日志和日志分析

何时使用每种引擎模式

当您的工作负载由聚合、筛选器和趋势分析而不是日志主导,并且在事件发生期间还需要进行全文搜索时,请使用优化引擎。示例包括每天多 TB 规模的应用程序、基础架构和安全日志分析。

当您的工作量取决于相关性排名、嵌套对象查询、Painless 脚本、地理查询、 vector/semantic 搜索或频繁的就地文档更新时,请使用通用引擎。示例包括电子商务搜索、内容发现和应用程序搜索。

工作原理

优化的引擎为每个操作使用最佳的数据结构。该引擎以列式格式存储日志数据以供分析。它保留了用于全文搜索的搜索索引,并将每个查询路由到最合适的组件。

下表描述了优化引擎的组件。

组件 角色
Apache Parquet 打开列式存储格式。日志数据的主存储。与传统的索引结构相比,可显著减少存储空间。
Lucene 倒置指数 保留用于对日志内容进行全文搜索(短语、模糊、通配符匹配)。
阿帕奇方解石 SQL 解析器、计划器和优化器。作为所有查询语言的单个前端在协调器节点上运行。
DataFusion 矢量化执行引擎 () Rust-based。对列式数据执行分析操作(聚合、筛选、范围扫描)。
Apache Arrow In-memory 分栏格式。启用零拷贝数据传输和矢量化处理。
Amazon S3 Parquet 文件和倒排索引段的耐用后备存储。
OpenSearch 用户界面 优化域名的查询和可视化界面(PPL 查询栏、自然语言查询帮助)。

数据通过现有的 REST API 和客户端库输入(无需新的代理或管道)。引擎将数据写入柱状的 Parquet 进行分析。对于配置为可搜索的字段,它还会写入 Lucene 倒排索引。PPL 和 SQL 通过矢量化引擎在本地执行。 Full-text 搜索谓词在倒排索引上执行,并且可以在单个语句中与分析结合使用。

查询流经协调器节点(计划和合并)和数据节点(执行和存储)。协调器解析并优化查询,然后将片段调度到数据节点。在每个数据节点上,分析操作在 DataFusion 引擎上运行,而搜索操作则在 Lucene 引擎上运行。两者可以在查询中途移交,因此搜索日志内容并汇总结果的查询无需额外的往返行程即可运行。

区域可用性

针对日志分析进行了优化的 Amazon OpenSearch 服务在以下版本中可用 AWS 区域:

  • 美国东部(弗吉尼亚州北部)– us-east-1

  • 美国东部(俄亥俄州)– us-east-2

  • 美国西部(俄勒冈州)– us-west-2

  • 加拿大(中部)– ca-central-1

  • 亚太地区(孟买)

  • 亚太地区(新加坡)

  • 亚太地区(悉尼)

  • 亚太地区(东京)

  • 欧洲地区(法兰克福)

  • 欧洲地区(爱尔兰)

  • 欧洲地区(伦敦)

  • 欧洲(西班牙)