

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

# 在 OpenSearch 控制面板中配置和查询 S3 数据源
<a name="direct-query-s3-configure"></a>

现在，您已创建数据来源，可以配置安全设置、定义 Amazon S3 表或设置加速数据索引。在查询数据之前，本节将引导您了解 OpenSearch 仪表板中数据源的各种用例。

要配置以下部分，必须先在 OpenSearch 仪表板中导航到您的数据源。在左侧导航的**管理**下，选择**数据来源**。在**管理数据来源**下，选择您在控制台中创建的数据来源的名称。

## 使用 Query Workbench 创建 Spark 表
<a name="direct-query-s3-configure-tables"></a>

从 OpenSearch 服务直接查询到 Amazon S3 使用中的 Spark 表 AWS Glue Data Catalog。您可以从查询工作台中创建表格，而不必离开 OpenSearch 控制面板。

要管理数据来源中现有的数据库和表，或创建要对其使用直接查询的新表，请选择左侧导航中的**查询工作台**，然后从数据来源下拉列表中选择该 Amazon S3 数据来源。

要设置以 Parquet 格式存储在 S3 中的 VPC 流日志表，请运行以下查询：

```
CREATE TABLE 
datasourcename.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 TABLE  datasourcename.databasename.vpclogstable
```

## 为常用 AWS 日志类型设置集成
<a name="direct-query-s3-setup-integration"></a>

您可以将存储在 Amazon S3 中的 AWS 日志类型与 OpenSearch 服务集成。使用 OpenSearch 仪表板安装用于创建 AWS Glue Data Catalog 表格、保存的查询和仪表板的集成。这些集成使用索引视图以保持控制面板的更新。

有关安装集成的说明，请参阅 OpenSearch文档中的[安装集成资产](https://opensearch.org/docs/latest/integrations/#installing-an-integration-asset)。

选择集成时，确保其包含 `S3 Glue` 标签。

设置集成时，请指定连接类型为 **S3 连接**。然后，选择集成的数据来源、数据的 Amazon S3 位置、管理加速索引的检查点以及使用案例所需的资产。

**注意**  
确保用于检查点的 S3 存储桶具有该检查点位置的写入权限。没有这些权限，集成的加速将失败。

## 设置访问控制
<a name="direct-query-s3-configure-ac"></a>

在数据来源的详细信息页面上，找到**访问控制**部分，然后选择**编辑**。如果该域已启用精细访问控制，请选择**受限**，并选择要授予访问新数据来源权限的角色。如果您只想让管理员访问数据来源，也可以选择**仅管理员**。

**重要**  
索引用于针对数据来源的任何查询。对给定数据来源的请求索引具有读取权限的用户可以读取针对该数据来源的*所有*查询。对结果索引具有读取权限的用户可以读取针对该数据来源的*所有*查询的结果。

## 在 “ OpenSearch 发现” 中查询 S3 数据
<a name="direct-querying-s3-query"></a>

设置表并配置所需的可选查询加速后，您现在可以开始分析数据。要查询数据，请从下拉菜单中选择数据来源。如果您使用的是 Amazon S3 和 OpenSearch 控制面板，请前往发现并选择数据源名称。

如果您使用跳过索引或尚未创建索引，则可以使用 SQL 或 PPL 查询数据。如果您已配置实体化视图或覆盖索引，则您已有索引，并可在整个控制面板中使用控制面板查询语言（DQL）。您也可以将 PPL 与可观测性插件结合使用，将 SQL 与查询工作台插件结合使用。目前，只有可观测性和查询工作台插件支持 PPL 和 SQL。要使用 OpenSearch 服务 API 查询数据，请参阅[异步 API 文档](https://github.com/opensearch-project/sql/blob/main/docs/user/interfaces/asyncqueryinterface.rst)。

**注意**  
并非所有的 SQL 和 PPL 语句、命令及功能都受支持。有关受支持命令的列表，请参阅 [支持的 SQL 和 PPL 命令](direct-query-supported-commands.md)。  
如果您已创建实体化视图或覆盖索引，则可使用 DQL 查询数据，前提是您已在其中建立索引。

## 问题排查
<a name="s3-troubleshooting"></a>

在某些情况下，返回的结果可能不合预期。如果遇到任何问题，请确保遵循 [建议](direct-query-s3-overview.md#direct-query-s3-recommendations)。