亚马逊AWS官方博客

宣布推出 Amazon OpenSearch Service 与 Amazon S3 的零 ETL 集成(预览版)



今天,我们宣布推出 Amazon OpenSearch Service 与 Amazon S3 的零 ETL 集成预览版,这是一种无需在服务之间切换即可在 Amazon S3 和基于 S3 的数据湖中查询运营日志的新方法。现在,您可以分析云对象存储中不经常查询的数据,同时使用 OpenSearch Service 的运营分析和可视化功能。

Amazon OpenSearch Service 与 Amazon S3 的直接查询提供了零 ETL 集成,使客户能够直接查询其运营数据,从而降低复制数据或管理多种分析工具的操作复杂性,最终减少成本和操作时间。这种零 ETL 集成会在 OpenSearch Service 中进行配置,您可以在其中利用各种日志类型模板(包括预定义的控制面板)并配置针对该日志类型定制的数据加速。模板包括 VPC 流日志弹性负载平衡日志和 NGINX 日志,而加速则包括跳过索引、实体化视图和覆盖索引。

通过直接查询 Amazon S3,您可以执行对安全取证和威胁分析至关重要的复杂查询,这些查询可将多个数据来源中的数据关联起来,从而帮助团队调查服务停机和安全事件。创建集成后,您可以直接通过 OpenSearch 控制面板或 OpenSearch API 开始查询它们的数据。您可以轻松审核连接,确保它们以可扩展、经济高效的安全方式进行设置。

开始使用 Amazon S3 直接查询
您首先可以通过 AWS 管理控制台或 API 为 OpenSearch Service 创建新的 Amazon S3 直接查询数据来源。每个新数据来源均使用 AWS Glue Data Catalog 来管理代表 S3 桶的表。创建数据来源后,您可以配置 Amazon S3 表和数据索引,并在 OpenSearch 控制面板中查询数据。

1.在 OpenSearch Service 中创建数据来源
在创建数据来源之前,您应该拥有一个版本 2.11 或更高版本的 OpenSearch Service 域,并在 AWS Glue Data Catalog 中拥有一个具有相应 IAM 权限的目标 Amazon S3 表。IAM 需要具有访问所需的 S3 桶的权限以及对 AWS Glue Data Catalog 的读写权限。要了解有关 IAM 先决条件的更多信息,请参阅 AWS 文档中的“创建数据来源”。

转到 OpenSearch Service 控制台,然后选择要为其设置新数据来源的域。在域名详细信息页面中,选择“一般信息”下方的连接选项卡,然后查看直接查询部分。

要创建新的数据来源,请选择创建,输入新数据来源的名称,将数据来源类型选择为使用 AWS Glue Data Catalog 的 Amazon S3,然后为您的数据来源选择 IAM 角色。

创建数据来源后,您可以访问该域的 OpenSearch 控制面板。借助此控制面板,您可以配置访问控制、定义表、为常用日志类型设置基于日志类型的控制面板以及查询数据。

2.在 OpenSearch 控制面板中配置数据来源
要在 OpenSearch 控制面板中配置数据来源,请在控制台中选择配置,然后转到 OpenSearch 控制面板。在 OpenSearch 控制面板的左侧导航栏中,在管理下选择数据来源。在管理数据来源下,选择您在控制台中创建的数据来源的名称。

从 OpenSearch Service 到 Amazon S3 的直接查询使用 AWS Glue Data Catalog 内的 Spark 表。要创建想要直接查询的新表,请转到“打开搜索插件”菜单中的查询 Workbench

现在,按照以下 SQL 语句运行,创建 http_logs 表并运行 MSCK REPAIR TABLE mys3.default.http_logs 命令来更新目录中的元数据

CREATE EXTERNAL TABLE IF NOT EXISTS mys3.default.http_logs (
   `@timestamp` TIMESTAMP,
    clientip STRING,
    request STRING,
    status INT,
    size INT,
    year INT,
    month INT,
    day INT) 
USING json PARTITIONED BY(year, month, day) OPTIONS (path 's3://mys3/data/http_log/http_logs_partitioned_json_bz2/', compression 'bzip2')

为了确保快速体验 Amazon S3 中的数据,您可以设置三种不同类型的加速(例如跳过索引、实体化视图和覆盖索引),将数据索引到 OpenSearch Service 中。要从外部数据连接创建 OpenSearch 索引来提高性能,请选择加速表

  • 跳过索引允许您仅索引存储在 Amazon S3 中的数据的元数据。跳过索引通过缩小存储数据的特定位置范围来帮助快速识别存储的数据。
  • 实体化视图使您能够使用聚合等复杂查询,这些复杂查询可用于查询或为控制面板可视化提供支持。实体化视图将数据提取到 OpenSearch Service 中,以进行异常检测或实施地理空间功能。
  • 覆盖索引将从指定表列中提取所有数据。覆盖索引是三种索引类型中性能最高的一种。

3.在 OpenSearch 控制面板中查询数据来源
设置表后,您可以使用发现查询数据。您可以对在 AWS Glue Data Catalog 表中创建的 http_logs 表运行示例 SQL 查询。

要了解更多信息,请参阅 AWS 文档中的“通过 Amazon S3 使用 Amazon OpenSearch Service 直接查询”。

申请试用预览版
Amazon OpenSearch Service 与 Amazon S3 的零 ETL 集成的预览版现已在 AWS 美国东部(俄亥俄州)、美国东部(弗吉尼亚州北部)、美国西部(俄勒冈州)、亚太地区(东京)、欧洲地区(法兰克福)和欧洲地区(爱尔兰)区域发布。

OpenSearch Service 仅以 OpenSearch 计算单位的形式对查询外部数据以及在 OpenSearch Service 中维护索引所需的计算单独收费。有关更多信息,请参阅 Amazon OpenSearch Service 定价页面。

立即试用,并将反馈发送至 AWS re:Post for Amazon OpenSearch Service 或通过您通常的 AWS Support 联系方式发送反馈。

Channy