Apache Hive 插件 - Amazon EMR
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

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

Apache Hive 插件

Apache Hive 是 Hadoop 生态系统中流行的执行引擎。Amazon EMR 提供了一个 Apache Ranger 插件,能够为 Hive 提供精细访问控制。该插件与开源 Apache Ranger Admin 服务器版本 2.0 及更高版本兼容。

支持的特征

EMR 上 Hive 的 Apache Ranger 插件支持开源插件的所有功能,包括数据库、表、列级访问控制以及行筛选和数据掩码。有关 Hive 命令和关联 Ranger 权限的表,请参阅 Hive 命令到 Ranger 权限映射

安装服务配置

Apache Hive 插件与 Apache Hive Hadoop SQL 中现有的 Hive 服务定义兼容。

用于 Hadoop SQL 的 Hive 配置单元服务定义。

如果您没有 Hadoop SQL 下的服务实例(如上所示),则可以创建一个实例。点击 Hadoop SQL 旁边的 +

  1. Service Name (服务名称)(如果显示):输入服务名称。建议的值为 amazonemrhive。记下此服务名称,创建 EMR 安全配置时将要用到。

  2. Display Name (显示名称):输入要为服务显示的名称。建议的值为 amazonemrhive

Hadoop SQL 的 Apache Hive 服务详细信息。

Apache Hive Config 属性用于建立与 Apache Ranger 管理服务器的连接,并在创建策略 HiveServer时使用 2 实现自动完成。如果您没有持续 HiveServer 2 进程,并且可以填充任何信息,则无需保证以下属性准确。

  • 用户名:输入与 HiveServer 2 实例实例的 JDBC 连接的用户名。

  • Password (密码):输入上述用户名所对应的密码。

  • jdbc.driver。 ClassName:输入 Apache Hive 连接的 JDBC 类的类名。可以使用默认值。

  • jdbc.url:输入连接到 2 时要使用的 JDBC 连接字符串。 HiveServer

  • Common Name For Certificate (凭证的公用名称):凭证中的 CN 字段,用于从客户端插件连接到管理服务器。此值必须与为插件创建的 TLS 凭证中的 CN 字段匹配。

Apache Hive 服务配置属性。

测试连接” 按钮用于测试是否可以使用上述值成功连接到 HiveServer 2 实例。成功创建服务后,服务管理器应如下所示:

已连接到 HiveServer 2 实例

注意事项

Hive 元数据服务器

Hive 元数据服务器只能由受信任的引擎访问,特别是 Hive 和 emr_record_server,以防未经授权的访问。Hive 元数据服务器也可以通过集群上的所有节点访问。所需的端口 9083 为所有节点提供了主节点的访问权限。

身份验证

默认情况下,Apache Hive 配置为使用 EMR 安全配置中所配置的 Kerberos 进行身份验证。 HiveServer2 也可以配置为使用 LDAP 对用户进行身份验证。有关信息,请参阅在多租户 Amazon EMR 集群上为 Hive 实施 LDAP 身份验证

限制

以下是当前针对 Amazon EMR 5.x 上的 Apache Hive 插件的限制:

  • 当前不支持 Hive 角色。不支持 Grant、Revoke 语句。

  • 不支持 Hive CLI。JDBC/Beeline 是连接 Hive 的唯一授权方式。

  • hive.server2.builtin.udf.blacklist 配置中应填充您认为不安全的 UDF。