5
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

Informatica Intelligent Cloud Services(IICS)でETL テーブル結合編

Last updated at Posted at 2022-12-11

本記事は、
ジャンルなしオンラインもくもく会 Advent Calendar 2022
12日目の投稿です。

製品
・Informatica Intelligent Cloud Services(IICS)
のCloud Data Integration(CDI)
ライセンスはトライアルです。
IICSのトライアルはこちらから開始できます。

・Snowflake
こちらも無料トライアル版です
Snowflakeのトライアルはこちらから開始できます。

環境
InformaticaのSecure Agent
・プラットフォーム:Windows64
・バージョン:64.25

目標
CDI上で2つのテーブルを結合し、
データウェアハウスのSnowflakeにロードします。

素材
Azure DataLake Storage gen2のサンプルデータ
IICS内で用意されていたので、それを使用します。

テーブルその1
stageCuratedCustomerOrdersテーブル(10列)
中身は、顧客の注文情報のようです。
image.png

テーブルその2
stageCustomersテーブル(3列)
中身は、顧客情報のようです。
image.png

実行手順
1マッピングを作成

1-1.ソーストランスフォーメーション を設定
一番左端の2つのADLSgen2が2つのテーブルに対応しています。
image.png

1-2. ジョイナトランスフォーメーション を設定 (テーブル結合をする部分)

MasterとDetailの2つの対応づけ先があります。
どちらのテーブルをどちらに対応づけるか?
公式ドキュメントによると、

ジョブのパフォーマンスを高めるには、
小さいデータセットを表すトランスフォーメーションを
マスタグループに接続します。

そのため、顧客情報であるstageCustomersをMasterに対応付けしました。

続いて設定。
ジョイナトランスフォーメーション > 受信フィールド
image.png

2テーブルの間で、カラム名の重複がありますと怒られました。
なので、カラム名を変えてあげます。
image.png

どう変えるか。
stageCuratedCustomerOrdersテーブルの方のカラム名に
全て冒頭に"Orders_"を付加しました。
image.png

怒られなくなったので、
次に結合の方法を設定します。
ジョイナトランスフォーメーション > 結合条件
image.png

とりあえずノーマル&簡易にしましたが、
オプションは以下の通りです。
image.png

image.png

CustID(このカラムの中身は顧客ID)のカラム同士を結合します。
image.png

1-3.ターゲットトランスフォーメーション を設定

image.png

ターゲットトランスフォーメーション > ターゲット > オブジェクト
テーブルが新たに生成されるようにします。→実行時に新規作成
結合後のテーブル名は、JoinerTestTableとしました。
パスは、Snowflakeのデータベース名/スキーマ名 です。

image.png

Snowflake側の画面。このPUBLICスキーマの下にテーブルが生成される予定です。
image.png

これで完成です。

マッピングを実行
マッピングキャンバスから、マイジョブに遷移して実行結果を確認します。
成功したようです。326行が処理されました。
image.png

Snowflake側でもJoinerTestTableの生成が確認されました。
image.png

Snowflake側でテーブルをSELECTする権限を付与しました。
image.png

SELECT文を発行。
image.png

表示されました。
3列+10列=13列なので、結合は成功していました。
(顧客IDを表すカラムが2列もありますが…)
image.png

※比較できるよう元テーブルはこちらでした。
image.png

image.png

以上です。
拙い記事を読んでくださりありがとうございました!
よいデータ基盤に向けて勉強に励みたいです。

参考にした情報
ジョイナトランスフォーメーション※公式ドキュメント

Informatica Cloud Data Integration Tutorialのyoutube動画 Joiner Transformation※非公式

SnowflakeとIICSの接続方法※公式ドキュメント

Informatica Intelligent Cloud Services(IICS)におけるSnowflakeの利用方法※manabian様のQiita記事。ありがとうございました。

5
2
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
5
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?