2.09 - 为 Hive 到目标连接器配置非本机表 - Teradata QueryGrid

Teradata® QueryGrid™ 安装和用户指南

prodname
Teradata QueryGrid
vrm_release
2.09
created_date
2019 年 5 月
category
安装
用户指南
管理
配置
featnum
B035-5991-059K-CHS
Hive 存储处理程序框架用于 Teradata QueryGrid Hive 发起程序连接器。借助于存储处理程序,Hive 可访问存储在其他系统上的数据。使用存储处理程序创建的 Hive 表称为非本地表。

Hive 存储处理程序在表级别运行,因此必须为每个远程表创建一个非本机表,这与在数据库级别运行的 Teradata 外部服务器和 Presto 目录不同。

在以下步骤提供的示例中,将配置一个非本机表,使其能用于 Hive 到 TargetConnector(其中 TargetConnector 是任意类型的目标连接器)。

  1. QueryGrid 门户组件中配置 Hive 到 Teradata 链接的链接属性。请参阅Hive 连接器和链接属性
  2. 登录到 Hive 客户端(如 Beeline),并将 hive-loaderfactory JAR 添加到类路径中:
    add jar /opt/teradata/tdqg/connector/tdqg-hive-connector/version/lib/hive-loaderfactory-version.jar;

    还有其他方法可以将 JAR 添加到 Hive 类路径,其中一种方法是设置 HIVE_AUX_JARS_PATH

    最后一种方法通常要求重新启动 Hive。如果使用 Hadoop 的 Cloudera 实现并启用了 Sentry,该方法可能是唯一可供使用的选项,因为 Sentry 不允许使用 ADD JAR 命令。
  3. 使用 Hive 存储处理程序创建非本机表。例如:
    CREATE EXTERNAL TABLE cardata_remote
    ROW FORMAT SERDE 'com.teradata.querygrid.qgc.hive.QGSerDe'
    STORED BY'com.teradata.querygrid.qgc.hive.QGStorageHandler'
    TBLPROPERTIES (
    "link"="hive_to_td_link",
    "version"="active",
    "table"="ut1.cardata");
    CREATE TABLE 语句中没有列定义,因为列定义是由序列化程序和反序列化程序 (SerDe) 动态推断出来的。

    表属性子句包含远程表的完全限定名称;例如,database.schema.table、schema.table 以及 table。如果省略任一部分,将使用缺省值(在连接器属性中指定)。