在 OpenSearch 控制面板中配置和查询 S3 数据来源
现在,您已创建数据来源,可以配置安全设置、定义 Amazon S3 表或设置加速数据索引。在查询数据之前,本节将引导您了解在 OpenSearch 控制面板中使用数据来源的各种用例。
要配置以下各部分,必须先在 OpenSearch 控制面板中导航到您的数据来源。在左侧导航的管理下,选择数据来源。在管理数据来源下,选择您在控制台中创建的数据来源的名称。
使用 Query Workbench 创建 Spark 表
从 OpenSearch Service 到 Amazon S3 的直接查询使用 AWS Glue Data Catalog 内的 Spark 表。您无需离开 OpenSearch 控制面板即可在 Query Workbench 中创建表。
要管理数据来源中现有的数据库和表,或创建要对其使用直接查询的新表,请选择左侧导航中的查询工作台,然后从数据来源下拉列表中选择该 Amazon S3 数据来源。
要设置以 Parquet 格式存储在 S3 中的 VPC 流日志表,请运行以下查询:
CREATE TABLEdatasourcename.gluedatabasename.vpclogstable(version INT, account_id STRING, interface_id STRING, srcaddr STRING, dstaddr STRING, srcport INT, dstport INT, protocol INT, packets BIGINT, bytes BIGINT, start BIGINT, end BIGINT, action STRING, log_status STRING, `aws-account-id` STRING, `aws-service` STRING, `aws-region` STRING, year STRING, month STRING, day STRING, hour STRING) USING parquet PARTITIONED BY (aws-account-id, aws-service, aws-region, year, month, day, hour) LOCATION "s3://accountnum-vpcflow/AWSLogs"
创建该表后,运行以下查询以确保其与直接查询兼容:
MSCK REPAIR TABLEdatasourcename.databasename.vpclogstable
为常用 AWS 日志类型设置集成
您可以将存储在 Amazon S3 中的 AWS 日志类型与 OpenSearch Service 集成。使用 OpenSearch 控制面板,以安装创建 AWS Glue Data Catalog 表、已保存查询和控制面板的集成。这些集成使用索引视图以保持控制面板的更新。
有关安装集成的说明,请参阅 OpenSearch 文档中的安装集成资产
选择集成时,确保其包含 S3 Glue 标签。
设置集成时,请指定连接类型为 S3 连接。然后,选择集成的数据来源、数据的 Amazon S3 位置、管理加速索引的检查点以及使用案例所需的资产。
注意
确保用于检查点的 S3 存储桶具有该检查点位置的写入权限。没有这些权限,集成的加速将失败。
设置访问控制
在数据来源的详细信息页面上,找到访问控制部分,然后选择编辑。如果该域已启用精细访问控制,请选择受限,并选择要授予访问新数据来源权限的角色。如果您只想让管理员访问数据来源,也可以选择仅管理员。
重要
索引用于针对数据来源的任何查询。对给定数据来源的请求索引具有读取权限的用户可以读取针对该数据来源的所有查询。对结果索引具有读取权限的用户可以读取针对该数据来源的所有查询的结果。
在 OpenSearch Discover 中查询 S3 数据
设置表并配置所需的可选查询加速后,您现在可以开始分析数据。要查询数据,请从下拉菜单中选择数据来源。如果您使用的是 Amazon S3 和 OpenSearch 控制面板,请转至 Discover 并选择数据来源名称。
如果您使用跳过索引或尚未创建索引,则可以使用 SQL 或 PPL 查询数据。如果您已配置实体化视图或覆盖索引,则您已有索引,并可在整个控制面板中使用控制面板查询语言(DQL)。您也可以将 PPL 与可观测性插件结合使用,将 SQL 与查询工作台插件结合使用。目前,只有可观测性和查询工作台插件支持 PPL 和 SQL。要使用 OpenSearch Service API 查询数据,请参阅 async API 文档
注意
并非所有的 SQL 和 PPL 语句、命令及功能都受支持。有关受支持命令的列表,请参阅 支持的 SQL 和 PPL 命令。
如果您已创建实体化视图或覆盖索引,则可使用 DQL 查询数据,前提是您已在其中建立索引。
故障排除
在某些情况下,返回的结果可能不合预期。如果遇到任何问题,请确保遵循 在 Amazon OpenSearch Service 中使用直接查询的建议。