

# 启用 S3 表类数据存储服务与 Data Catalog 的集成
<a name="enable-s3-tables-catalog-integration"></a>

您可以使用 Amazon S3 管理控制台或 AWS CLI 启用 S3 表类数据存储服务与 AWS Glue Data Catalog 的集成。使用控制台启用集成时，AWS 会创建名为 `s3tablescatalog` 的联合目录，其会自动发现并挂载您的 AWS 账户和区域中的所有 S3 表存储桶。

## 使用 Amazon S3 管理控制台启用 S3 表类数据存储服务集成
<a name="enable-s3-tables-console"></a>

1. 通过以下网址打开 Amazon S3 控制台：[https://console.aws.amazon.com/s3/](https://console.aws.amazon.com/s3/)。

1. 在左侧导航窗格中，选择**表存储桶**。

1. 选择**创建表存储桶**。

1. 输入**表存储桶名称**，并确保选中**启用集成**复选框。

1. 选择**创建表存储桶**。

Amazon S3 会自动在该区域中集成您的表存储桶。首次在任何区域中集成表存储桶时，Amazon S3 都会在该区域的 Data Catalog 中创建 `s3tablescatalog`。

创建目录后，您的账户和区域中的所有 S3 表存储桶都会自动作为子目录挂载。您可以通过导航到 Data Catalog 中的目录来查看数据库（命名空间）和表。

## 使用 AWS CLI 启用 S3 表类数据存储服务集成
<a name="enable-s3-tables-cli"></a>

使用 `s3tablescatalog` 命令创建 `glue create-catalog` 目录。

```
aws glue create-catalog \
  --name "s3tablescatalog" \
  --catalog-input '{
    "Description": "Federated catalog for S3 Tables",
    "FederatedCatalog": {
      "Identifier": "arn:aws:s3tables:region:account-id:bucket/*",
      "ConnectionName": "aws:s3tables"
    },
    "CreateDatabaseDefaultPermissions": [{
      "Principal": {
        "DataLakePrincipalIdentifier": "IAM_ALLOWED_PRINCIPALS"
      },
      "Permissions": ["ALL"]
    }],
    "CreateTableDefaultPermissions": [{
      "Principal": {
        "DataLakePrincipalIdentifier": "IAM_ALLOWED_PRINCIPALS"
      },
      "Permissions": ["ALL"]
    }]
  }'
```

将 *region* 替换为您的 AWS 区域，并将 *account-id* 替换为您的 AWS 账户 ID。

## 验证集成
<a name="verify-s3-tables-integration"></a>

创建目录后，您可以通过列出子目录来验证是否已挂载 S3 表存储桶：

```
aws glue get-catalogs \
  --parent-catalog-id s3tablescatalog
```