目录

Search

  1. 前言
  2. Informatica Developer
  3. 模型存储库
  4. Informatica Developer 中的搜索
  5. 连接
  6. 物理数据对象
  7. 平面文件数据对象
  8. 数据的逻辑视图
  9. 查看数据
  10. 应用程序部署
  11. 对象导入和导出
  12. 数据类型引用
  13. 键盘快捷方式
  14. 连接属性

Developer tool 指南

Developer tool 指南

Hive 连接属性

Hive 连接属性

使用 Hive 连接可访问 Hive 数据。Hive 连接属于数据库类型连接。您可以在 Administrator 工具、Analyst 工具或 Developer tool 中创建和管理 Hive 连接。Hive 连接属性区分大小写,另有说明除外。
连接属性的顺序可能会因查看属性所用的工具而异。
下表介绍了 Hive 连接属性:
属性
说明
名称
连接的名称。名称不区分大小写,但在域中必须唯一。可以在创建连接后更改此属性。名称不能超出 128 个字符,也不能包含空格或以下特殊字符:
~ ` ! $ % ^ & * ( ) - + = { [ } ] | \ : ; " ' < , > . ? /
ID
数据集成服务用来标识连接的字符串。ID 不区分大小写。不得超过 255 个字符,并且在域中必须唯一。不能在创建连接后更改此属性。默认值是连接名称。
说明
连接的说明。说明不得超过 4000 个字符。
位置
要在其中创建连接的域。对 Analyst 工具不适用。
类型
连接类型。选择 Hive。
连接模式
Hive 连接模式。请至少选择以下选项之一:
  • 访问作为源或目标的 Hive。如果要将 Hive 用作源或目标,请选择此选项。
  • 使用 Hive 在 Hadoop 群集中运行映射。如果要使用 Hive 驱动程序在 Hadoop 群集中运行映射,请选择此选项。
用户名
数据集成服务用于模拟在 Hadoop 群集中运行映射的用户的用户名。该用户名取决于在元数据连接字符串或数据访问连接字符串中为本机环境指定的 JDBC 连接字符串。
如果 Hadoop 群集运行 Hortonworks HDP,则必须提供用户名。如果使用 Tez 运行映射,则必须提供数据集成服务的用户帐户。如果不使用 Tez 运行映射,则可以使用模拟用户帐户。
如果 Hadoop 群集使用 Kerberos 身份验证,则 JDBC 连接字符串的主体名称必须与用户名相同。否则,用户名将取决于 JDBC 驱动程序的行为。使用 Hive JDBC 驱动程序时,您可以通过多种方法指定用户名,而且用户名可以成为 JDBC URL 的一部分。
如果 Hadoop 群集不使用 Kerberos 身份验证,则用户名将取决于 JDBC 驱动程序的行为。
如果不指定用户名,则 Hadoop 群集会根据以下条件对作业进行身份验证:
  • Hadoop 群集不使用 Kerberos 身份验证。它根据运行数据集成服务的计算机的操作系统配置文件用户名对作业进行身份验证。
  • Hadoop 群集 Kerberos 身份验证。它根据数据集成服务的 SPN 对作业进行身份验证。
这两种模式的共同属性:环境 SQL
用于设置 Hadoop 环境的 SQL 命令。在本机环境类型中,数据集成服务会在每次创建与 Hive 元存储的连接时执行环境 SQL。如果使用 Hive 连接在 Hadoop 群集中运行配置文件,则数据集成服务会在每个 Hive 会话开始时执行环境 SQL。
在两种连接模式下使用环境 SQL 时适用以下规则和准则:
  • 使用环境 SQL 指定 Hive 查询。
  • 使用环境 SQL 设置 Hive 用户定义的函数的类路径,然后使用环境 SQL 或 PreSQL 指定 Hive 用户定义的函数。不能在数据对象属性中使用 PreSQL 来指定类路径。路径必须为指向 JAR 文件(用于用户定义的函数)的完全限定路径。使用 infapdo.aux.jars.path 中的所有条目以及指向 JAR 文件(用于用户定义的函数)的路径来设置参数 hive.aux.jars.path。
  • 可以使用环境 SQL 来定义要在 PreSQL 命令或自定义查询中使用的 Hadoop 或 Hive 参数。
  • 如果为环境 SQL 属性使用多个值,请确保这些值之间没有空格。以下示例文本显示了可用于环境 SQL 的两个值:
    set hive.execution.engine='tez';set hive.exec.dynamic.partition.mode='nonstrict';
如果使用 Hive 连接在 Hadoop 群集中运行配置文件,则数据集成服务只会执行 Hive 连接的环境 SQL。如果 Hive 源和目标位于不同的群集上,则数据集成服务不会为 Hive 源或目标的连接执行不同的环境 SQL 命令。

用于访问作为源或目标的 Hive 的属性

下表介绍了配置为访问作为源或目标的 Hive 的连接属性:
属性
说明
元数据连接字符串
JDBC 连接 URI 用于访问 Hadoop 服务器中的元数据。
可以使用 PowerExchange for Hive 与 HiveServer 服务或 HiveServer2 服务进行通信。
要连接到 HiveServer,请使用以下格式指定连接字符串:
jdbc:hive2://<主机名>:<端口>/<db>
其中
  • <hostname> 表示运行 HiveServer2 的计算机的名称或 IP 地址。
  • <port> 表示 HiveServer2 用来执行侦听的端口号。
  • <db> 表示要连接到的数据库的名称。如果未提供数据库名称,数据集成服务会使用默认的数据库详细信息。
要连接到 HiveServer 2,请使用 Apache Hive 为该特定 Hadoop 分发实施的连接字符串格式。有关 Apache Hive 连接字符串格式的详细信息,请参见 Apache Hive 文档。
如果 Hadoop 群集使用 SSL 或 TLS 身份验证,您必须将
ssl=true
添加到 JDBC 连接 URI。例如:
jdbc:hive2://<主机名>:<端口>/<db>;ssl=true
如果对 SSL 或 TLS 身份验证使用自签名证书,请确保证书文件在客户端计算机和数据集成服务计算机上可用。有关详细信息,请参阅
《Big Data Management 安装和配置指南》
绕过 Hive JDBC 服务器
JDBC 驱动程序模式。要使用 JDBC 驱动程序嵌入模式,请选中此复选框。
要使用 JDBC 嵌入模式,请执行以下任务:
  • 验证 Hive 客户端与 Informatica 服务是否安装在同一台计算机上。
  • 将 Hive 连接属性配置为在 Hadoop 群集中运行映射。
如果选择非嵌入模式,则必须配置数据访问连接字符串。
Informatica 建议使用 JDBC 嵌入模式。
遵守细粒度 SQL 授权
选择在 Hive 源中遵守细粒度 SQL 身份验证的选项时,映射会遵守行级别和列级别数据访问限制。如果没有选择此选项,Blaze 运行时引擎会忽略限制,并且结果将包括限制数据。
数据访问连接字符串
用于访问 Hadoop 数据存储中的数据的连接字符串。
要连接到 HiveServer,请使用以下格式指定非嵌入 JDBC 模式连接字符串:
jdbc:hive2://<主机名>:<端口>/<db>
其中
  • <hostname> 表示运行 HiveServer2 的计算机的名称或 IP 地址。
  • <port> 表示 HiveServer2 用来执行侦听的端口号。
  • <db> 表示要连接到的数据库。如果未提供数据库名称,数据集成服务会使用默认的数据库详细信息。
要连接到 HiveServer 2,请使用 Apache Hive 为特定 Hadoop 分发实施的连接字符串格式。有关 Apache Hive 连接字符串格式的详细信息,请参见 Apache Hive 文档。
如果 Hadoop 群集使用 SSL 或 TLS 身份验证,您必须将
ssl=true
添加到 JDBC 连接 URI。例如:
jdbc:hive2://<主机名>:<端口>/<db>;ssl=true
如果对 SSL 或 TLS 身份验证使用自签名证书,请确保证书文件在客户端计算机和数据集成服务计算机上可用。有关详细信息,请参阅
《Big Data Management 安装和配置指南》

用于在 Hadoop 群集中运行映射的属性

下表介绍了要使用 Hive 连接在 Hadoop 群集中运行 Informatica 映射时配置的 Hive 连接属性:
属性
说明
数据库名称
表的命名空间。对于未指定数据库名称的表,请使用名称
default
默认 FS URI
用于访问默认的 Hadoop 分布式文件系统的 URI。
使用以下连接 URI:
hdfs://<主机名>:<端口>
其中
  • <node name> 表示 NameNode 的主机名或 IP 地址。
  • <port> 表示 NameNode 用来侦听远程过程调用 (RPC) 的端口。
如果 Hadoop 群集运行 MapR,则使用以下 URI 访问 MapR 文件系统:
maprfs:///
JobTracker/Yarn 资源管理器 URI
Hadoop 中将 MapReduce 任务提交到群集中特定节点的服务。
使用以下格式:
<主机名>:<端口>
其中
  • <hostname> 表示 JobTracker 或 Yarn 资源管理器的主机名或 IP 地址。
  • <port> 表示 JobTracker 或 Yarn 资源管理器用来侦听远程过程调用 (RPC) 的端口。
如果群集使用 MapR with YARN,则使用 yarn-site.xml 上
yarn.resourcemanager.address
属性中指定的值。可以在群集 NameNode 上的以下目录中找到
yarn-site.xml
/opt/mapr/hadoop/hadoop-2.5.1/etc/hadoop
MapR with MapReduce 1 支持高度可用的 JobTracker。如果要使用 MapR 分布,请使用以下格式定义 JobTracker URI:
maprfs:///
HDFS 上的 Hive 仓库目录
仓库(此仓库对群集来说属于本地仓库)的默认数据库的绝对 HDFS 文件路径。例如,以下文件路径指定了本地仓库:
/user/hive/warehouse
对于 Cloudera CDH,如果“元存储执行模式”为远程,则文件路径必须与 Hive 元存储服务在 Hadoop 群集上指定的文件路径匹配。
对于 MapR,使用在
hive-site.xml
中为
hive.metastore.warehouse.dir
属性指定的值。可以在运行 HiveServer2 的节点上的以下目录中找到
hive-site.xml
/opt/mapr/hive/hive-0.13/conf
高级 Hive/Hadoop 属性
配置或替代运行数据集成服务的计算机上 hive-site.xml 中的 Hive 或 Hadoop 群集属性。可以指定多个属性。
选择
编辑
,指定属性的名称和值。将按以下格式显示属性:
<属性 1>=<值>
其中
  • <属性 1> 表示 hive-site.xml 中的 Hive 或 Hadoop 属性。
  • <值> 表示 Hive 或 Hadoop 属性的值。
指定多个属性时,
&:
将显示为分隔符。
该格式的最大长度为 1 MB。
如果为 Hive 连接输入必需属性,则该属性会替代在“高级 Hive/Hadoop 属性”中配置的属性。
数据集成服务会为每个 map-reduce 作业添加或设置这些属性。您可以在每个映射程序和缩减程序作业的 JobConf 中验证这些属性。从每个 map-reduce 作业下的 Jobtracker URL 中访问每个作业的 JobConf。
数据集成服务可将这些属性的消息写入数据集成服务日志。数据集成服务必须将日志跟踪级别设置为记录每一行,或者将日志跟踪级别设置为详细初始化跟踪。
例如,指定以下属性可控制并限制缩减程序的数量以运行映射作业:
mapred.reduce.tasks=2&:hive.exec.reducers.max=10
临时表压缩编解码器
压缩编解码器类名的 Hadoop 压缩库。
编解码器类名
可在临时暂存表上启用数据压缩并提升性能的编解码器类名。
元存储执行模式
连接到远程元存储还是本地元存储的控制机制。默认情况下,将选择本地元存储。连接到本地元存储时,必须指定元存储数据库 URI、驱动程序、用户名和密码。连接到远程元存储时,只需指定
远程元存储 URI
元存储数据库 URI
用于在本地元存储设置下访问数据存储的 JDBC 连接 URI。使用以下连接 URI:
jdbc:<数据存储类型>://<主机名>:<端口>/<数据存储名称>
其中
  • <节点名称> 表示数据存储的主机名或 IP 地址。
  • <数据存储类型> 表示数据存储的类型。
  • <端口> 表示数据存储用来侦听远程过程调用 (RPC) 的端口。
  • <数据库名称> 表示数据库的名称。
例如,以下 URI 将使用 MySQL 的本地元存储指定为数据存储:
jdbc:mysql://hostname23:3306/metastore
对于 MapR,使用
hive-site.xml
中为
javax.jdo.option.ConnectionURL
属性指定的值。可以在运行 HiveServer 2 的节点上的以下目录中找到 hive-site.xml:/opt/mapr/hive/hive-0.13/conf。
元存储数据库驱动程序
JDBC 数据存储的驱动程序类名称。例如,以下类名称指定了 MySQL 驱动程序:
com.mysql.jdbc.Driver
对于 MapR,使用
hive-site.xml
中为
javax.jdo.option.ConnectionDriverName
属性指定的值。可以在运行 HiveServer 2 的节点上的以下目录中找到
hive-site.xml
/opt/mapr/hive/hive-0.13/conf
元存储数据库用户名
元存储数据库用户名。
对于 MapR,使用
hive-site.xml
中为
javax.jdo.option.ConnectionUserName
属性指定的值。可以在运行 HiveServer 2 的节点上的以下目录中找到
hive-site.xml
/opt/mapr/hive/hive-0.13/conf
元存储数据库密码
元存储用户名的密码。
对于 MapR,使用
hive-site.xml
中为
javax.jdo.option.ConnectionPassword
属性指定的值。可以在运行 HiveServer 2 的节点上的以下目录中找到
hive-site.xml
/opt/mapr/hive/hive-0.13/conf
远程元存储 URI
用于在远程元存储设置下访问元数据的元存储 URI。对于远程元存储,必须指定 Thrift 服务器详细信息。
使用以下连接 URI:
thrift://<主机名>:<端口>
其中
  • <hostname> 表示 Thrift 元存储服务器的名称或 IP 地址。
  • <port> 表示 Thrift 服务器用来执行侦听的端口。
对于 MapR,使用
hive-site.xml
中为
hive.metastore.uris
属性指定的值。可以在运行 HiveServer 2 的节点上的以下目录中找到
hive-site.xml
/opt/mapr/hive/hive-0.13/conf