将 Athena 连接到 Apache Hive 元数据仓 - Amazon Athena
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 AWS 服务入门

如果我们为英文版本指南提供翻译,那么如果存在任何冲突,将以英文版本指南为准。在提供翻译时使用机器翻译。

将 Athena 连接到 Apache Hive 元数据仓

要将 Athena 连接到 Apache Hive 元存储,您必须创建和配置 Lambda 函数。对于基本实现,您可以从 Athena 管理控制台执行所有必需步骤。

将 Athena 连接到 Hive 元数据仓

  1. https://console.amazonaws.cn/athena/ 打开 Athena 控制台。

  2. 选择 Connect data source (连接数据源)

    
                        选择连接数据源。
  3. Connect data source (连接数据源) 页面上的 Choose a metadata catalog (择元数据目录) 中,选择 Apache Hive metastore (Apache Hive 元数据仓)

    
                        选择 Apache Hive 元存储。
  4. 选择 Next (下一步)

  5. 连接详细信息页面上,对于 Lambda 函数,选择创建 Lambda 函数

    
                        选择创建 Lambda 函数。
  6. Lambda 函数对话框中,输入 Lambda 函数的信息。要使用默认实现,请接受 Amazon S3 中的函数代码位置和 Lambda 处理程序的默认值。

    
                        在“Lambda 函数”对话框中输入信息。
    • Lambda function name (Lambda 函数名称):提供函数的名称。例如,myHiveMetastore

    • Lambda execution role (Lambda 执行角色) – 选择 IAM 角色或单击 Create a new role (创建新角色) 以创建角色。

    • Function code (函数代码) – Lambda 函数 JAR 文件在 Amazon S3 中的位置。使用默认值或输入自定义 JAR 文件的位置。

    • Lambda handler (Lambda 处理程序) – 实现 Hive 连接器的 JAR 文件中的方法。使用默认值,或将其替换为自定义代码中的处理程序。

    • Hive metastore (HMS) URI (Hive 元数据仓 (HMS) URI) – 输入您的 Hive 元数据仓主机的名称,该主机在端口 9083 使用 Thrift 协议,语法为 thrift://<host_name>:9083

    • Spill location in S3 (S3 中的溢出位置) – 在此账户中指定 Amazon S3 位置,以便在 Lambda 函数响应大小超过 4MB 时保存溢出元数据。

    • Virtual Private Cloud (VPC) – 选择包含您的 Hive 元存储的 VPC。

    • Subnets (子网) – 选择 Lambda 用于设置 VPC 配置的 VPC 子网。

    • Security Groups (安全组) – 选择 Lambda 用于设置 VPC 配置的 VPC 安全组。

    • Memory (内存) – 指定从 128MB 到 3008MB 的值。Lambda 函数分配与您配置的内存量成比例的 CPU 周期。

    • Timeout (超时) – 指定从 1 秒到 15 分钟 59 秒的值。默认值为 3 秒。

  7. 单击 CreateConnection details (连接详细信息) 页面通知您函数已创建。操作完成后,您的函数名称在 Choose a function name (选择函数名称) 框中可用,并且会显示您的 Lambda 函数 ARN。

    
                        已创建 Lambda 函数。
  8. 对于 Catalog name (目录名称),请输入 SQL 查询中的数据源要使用的唯一名称。名称的长度最多可包含 127 个字符,且在您的账户中必须是唯一的。它在创建后即无法更改。有效字符包括 a-z、A-Z、0-9、_(下划线)、@ 符号和 -(连字符)。名称 awsdatacataloghivejmxsystem 是 Athena 预留的,无法用于自定义目录名称。

  9. 单击 Connect (连接) 以将 Athena 连接到您的数据源。

    数据源页面显示已连接的目录的列表。所有已注册的目录对同一 AWS 账户中的所有用户可见。

    
                        数据源页面显示已连接的目录。
  10. 您现在可以使用指定的 Catalog name (目录名称) 以在 SQL 查询中引用 Hive 元数据仓。在 SQL 查询中,使用以下示例语法,并将 hms-catalog-1 替换为您之前指定的目录名称。

    SELECT * FROM hms-catalog-1.CustomerData.customers;
  11. 要查看、编辑或删除您创建的数据源,请参阅管理数据源