2.16 - Hive-Teradata間の非ネイティブ テーブルの構成 - Teradata QueryGrid

Teradata® QueryGrid™ インストールとユーザー ガイド

Product
Teradata QueryGrid
Release Number
2.16
Release Date
2021年6月
Content Type
インストール
ユーザー ガイド
構成
管理
Publication ID
B035-5991-061K-JPN
Language
日本語 (日本)
Hiveストレージ ハンドラ フレームワークは、Teradata QueryGrid Hiveイニシエーター コネクタに使用されます。ストレージ ハンドラを使用すると、Hiveは他のシステムに格納されているデータにアクセスできるようになります。ストレージ ハンドラーを使用して作成されたHiveテーブルは、非ネイティブ テーブルと呼ばれます。

Hiveストレージ ハンドラはテーブル レベルで動作するため、データベース レベルで動作するTeradata外部サーバーやPrestoカタログとは異なり、リモート テーブルごとに1つの非ネイティブ テーブルを作成する必要があります。

次のステップでは、非ネイティブ テーブルをHive-Teradata間のリンクで使用できるように構成する例を示します。

  1. QueryGridポートレットでHiveからTeradataへのリンクのリンク プロパティを設定します。
  2. BeelineなどのHiveクライアントにログオンします。
  3. hive-loaderfactory JARをクラス パスに追加します。
    add jar /opt/teradata/tdqg/connector/tdqg-hive-connector/version/lib/hive-loaderfactory-version.jar;

    JARをHiveクラス パスに追加する方法は他にもありますが、そのうちの1つではHIVE_AUX_JARS_PATHを設定します。

    最後の方法では通常、Hiveを再起動する必要があります。HadoopのCloudera実装を使用していて、Sentryが有効になっている場合、SentryではADD JARコマンドの使用が許可されていないため、これが使用できる唯一のオプションである可能性があります。
  4. 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");
    列定義がSerializer/Deserializer(SerDe)によって動的に推論されるため、CREATE TABLE文に列定義はありません。

    テーブル プロパティ句にはリモート テーブルの完全修飾名が含まれています(例: database.schema.table、schema.table、table)。一部が省略されている場合は、デフォルト値(コネクタ プロパティで指定)が使用されます。