2019 年 2 月 18 日 - Amazon Athena
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 Amazon Web Services 服务入门

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

2019 年 2 月 18 日

发布时间:2019 年 02 月 18 日

添加了通过在工作组中运行查询来控制成本的功能。有关信息,请参阅使用工作组控制查询访问和成本。改进了 Athena 中使用的 JSON OpenX SerDe,修复了 Athena 不忽略转换为GLACIER存储类,并添加了查询 Network Load Balancer 日志的示例。

进行了以下更改:

  • 添加对工作组的支持。可使用工作组分隔用户、团队、应用程序或工作负载,并对每个查询或整个工作组可处理的数据量设置限制。由于工作组可作为 IAM 资源,因此您可以使用资源级别的权限来控制对特定工作组的访问。您还可以在 Amazon CloudWatch 中查看与查询有关的指标,通过对扫描的数据量配置限制来控制查询成本,创建阈值,并且在突破这些阈值时触发操作,例如 Amazon SNS 警报。有关更多信息,请参阅 使用工作组运行查询使用 CloudWatch 指标与事件控制成本和监控查询

    工作组是 IAM 资源。要查看 IAM 中与工作组相关的操作、资源和条件的完整列表,请参阅。Amazon Athena 的操作、资源和条件键中的服务授权参考。创建新的工作组之前,请确保使用工作组 IAM 策略,以及AmazonAthenaFullAccess托管策略

    您可以在控制台中、通过工作组 API 操作或通过 JDBC 驱动程序开始使用工作组。有关高级过程,请参阅设置工作组。要下载具有工作组支持的 JDBC 驱动程序,请参阅将 Athena 与 JDBC 驱动程序结合使用

    如果您将工作组与 JDBC 驱动程序结合使用,则必须使用 Workgroup 配置参数在连接字符串中设置工作组名称,如下面的示例所示:

    jdbc:awsathena://AwsRegion=<AWSREGION>;UID=<ACCESSKEY>; PWD=<SECRETKEY>;S3OutputLocation=s3://<athena-output>-<AWSREGION>/; Workgroup=<WORKGROUPNAME>;

    您运行 SQL 语句或者对驱动程序进行 JDBC API 调用的方式没有更改。驱动程序将工作组名称传递到 Athena。

    有关工作组引入的区别的信息,请参阅。Athena 工作组 API工作组故障排除

  • 改进了 Athena 中使用的 JSON OpenX SerDe。这些改进包括但不限于以下内容:

    • 支持 ConvertDotsInJsonKeysToUnderscores 属性。设置为 TRUE 时,它允许 SerDe 使用下划线替换键名称中的点。例如,如果 JSON 数据集包含名为"a.b",您可以使用此属性将列名定义为"a_b"在 Athena. 默认为 FALSE。默认情况下,Athena 不允许在列名中使用点。

    • 支持 case.insensitive 属性。默认情况下,Athena 要求 JSON 数据集中的所有键使用小写。使用 WITH SERDE PROPERTIES ("case.insensitive"= FALSE;) 允许您在数据中使用区分大小写的键名。默认为 TRUE。设置为 TRUE 时,SerDe 将所有大写列转换为小写。

    有关更多信息,请参阅 OpenX JSON SerDe

  • 修复了 Athena 返回的问题"access denied"错误消息,当它处理 Amazon S3 生命周期策略存档到 Glacier 中的 Amazon S3 对象时,错误消息。作为修复此问题的结果,Athena 忽略转换为GLACIER存储类别。Athena 不支持查询GLACIER存储类别。

    有关更多信息,请参阅 。针对 Athena 中的表和 Amazon S3 中的数据的要求转换为 GLACIER 存储类别(对象存档)中的Amazon Simple Storage Service 开发人员指南

  • 添加了查询 Network Load Balancer 访问日志的示例,该日志接收有关传输层安全性 (TLS) 请求的信息。有关更多信息,请参阅 查询 Network Load Balancer 日志