

# 创建工作组
<a name="creating-workgroups"></a>

创建工作组需要具有执行 `CreateWorkgroup` API 操作的权限。请参阅[配置对工作组和标签的访问](workgroups-access.md)和[使用 IAM 策略控制工作组访问](workgroups-iam-policy.md)。如果要添加标签，您还需要添加对 `TagResource` 的权限。请参阅[工作组的标签策略示例](tags-access-control.md#tag-policy-examples-workgroups)。

以下过程介绍了如何使用 Athena 控制台创建工作组。要使用 Athena API 创建工作组，请参阅[创建工作组](https://docs.aws.amazon.com/athena/latest/APIReference/API_CreateWorkGroup.html)。

**在 Athena 控制台中创建工作组**

1.  确定要创建的工作组。需要考虑的几项因素包括：
   + 哪些用户可以运行每个工作组中的查询，以及哪些用户拥有工作组配置。使用 IAM 策略强制执行工作组权限。有关更多信息，请参阅 [使用 IAM 策略控制工作组访问](workgroups-iam-policy.md)。
   + 在 Amazon S3 中用于工作组查询结果的位置。工作组的所有用户必须能够访问此位置。
   + 是否必须对工作组查询结果进行加密。由于加密按工作组进行（而非按查询进行），因此您应该为加密和非加密的查询结果创建单独的工作组。有关更多信息，请参阅 [加密在 Amazon S3 中存储的 Athena 查询结果](encrypting-query-results-stored-in-s3.md)。

1. 如果控制台导航窗格不可见，请选择左侧的扩展菜单。  
![\[选择扩展菜单。\]](http://docs.aws.amazon.com/zh_cn/athena/latest/ug/images/nav-pane-expansion.png)

1. 在 Athena 控制台导航窗格中，选择 **Workgroups**（工作组）。

1. 在 **Workgroups**（工作组）页面中，选择 **Create workgroup**（创建工作组）。

1. 在 **Create workgroup**（创建工作组）页面中，如下所示填写各字段：    
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/zh_cn/athena/latest/ug/creating-workgroups.html)

1. 选择 **Create workgroup (创建工作组)**。工作组显示在 **Workgroups **（工作组）页面上的列表中。

   在查询编辑器中，Athena 将在控制台右上角的**工作组**选项中显示当前工作组。您可以使用此选项切换工作组。运行查询时，其会在该工作组中运行。

1. 为您的用户、组或角色创建 IAM policy，使他们能够访问工作组。这些策略建立工作组成员资格，以及对`workgroup`资源相关操作的访问权限。有关更多信息，请参阅 [使用 IAM 策略控制工作组访问](workgroups-iam-policy.md)。有关示例 JSON 策略，请参阅[配置对工作组和标签的访问](workgroups-access.md)。

1. （可选）当未针对覆盖客户端设置选项强制设置工作组范围加密时，可在 Amazon S3 中为工作组的所有查询结果配置最低级别的加密。您可以使用此功能确保查询结果永远不会以未加密状态存储在 Amazon S3 存储桶中。有关更多信息，请参阅 [为工作组配置最低加密](workgroups-minimum-encryption.md)。

1. （可选）使用 Amazon CloudWatch 和 Amazon EventBridge 监控工作组的查询并控制成本。有关更多信息，请参阅 [使用 CloudWatch 和 EventBridge 监控查询并控制成本](workgroups-control-limits.md)。

1. （可选）使用账单和成本管理控制台，以成本分配标签标记工作组。有关更多信息，请参阅《AWS Billing User Guide》**中的 [Using user-defined cost allocation tags](https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/custom-tags.html)。

1. （可选）要获得工作组中查询的专用处理容量，请将该工作组添加到容量预留中。您可以将一个或多个工作组分配给预留。有关更多信息，请参阅 [管理查询处理容量](capacity-management.md)。

# Override client-side settings (覆盖客户端设置)
<a name="workgroups-settings-override"></a>

创建或编辑工作组时，您可以选择**覆盖客户端设置**选项。此选项非默认选定。根据您是否选择它，Athena 会执行以下操作：
+ 如果**覆盖客户端设置**未被选中，则不会在客户端级别强制实施工作组设置。当未为工作组选择覆盖客户端设置选项时，Athena 会将客户端设置用于工作组中运行的所有查询，包括查询结果位置、预期存储桶所有者、加密和写入查询结果存储桶的对象控制的设置。每个用户都可以在控制台的**设置**菜单中指定自己的设置。如果未设置客户端设置，则会应用工作组范围设置。如果您使用 AWS CLI、API 操作或 JDBC 和 ODBC 驱动程序在不覆盖客户端设置的工作组中运行查询，则您的查询将使用您在查询中指定的设置。
+ 如果**覆盖客户端设置**被选中，则会在工作组级别对工作组中的所有客户端强制实施工作组设置。当为工作组选择覆盖客户端设置选项时，Athena 会将工作组设置用于工作组中运行的所有查询，包括查询结果位置、预期存储桶所有者、加密和写入查询结果存储桶的对象控制的设置。工作组设置会覆盖您在使用控制台、API 操作或 JDBC 或 ODBC 驱动程序时为查询指定的任何客户端设置。在完成工作组设置以覆盖客户端设置后，可以省略在驱动程序或 API 中指定客户端设置的操作。

  如果您覆盖客户端设置，则您或任何工作组用户下一次打开 Athena 控制台时，Athena 会通知您该工作组中的查询使用工作组设置，并提示您确认此更改。
**注意**  
由于覆盖客户端设置可能会破坏基于任意 Amazon S3 存储桶中结果可用性的自定义自动化，因此我们建议您在覆盖之前通知用户。
**重要**  
如果您使用 API 操作、AWS CLI 或 JDBC 和 ODBC 驱动程序在覆盖客户端设置的工作组中运行查询，请确保在查询中省略客户端设置或更新它们以匹配工作组的设置。  
如果您在查询中指定了客户端设置，但在覆盖设置的工作组中运行这些设置，则查询将运行，但将使用工作组设置。有关查看工作组设置的信息，请参阅 [查看工作组详细信息](viewing-details-workgroups.md)。