株式会社NTTデータ Data & Intelligence事業部 の nttd-nagano です。
12月13日の記事 で、Informaticaのクラウドデータマネージメントプラットフォーム「Intelligent Data Management Cloud」(※1)をご紹介しましたが、今回は、そのIDMCのデータ統合サービスである「Cloud Data Integration」(※2)と、同社の旧来のデータ統合製品である「PowerCenter」を比べ、その違いをまとめてみました。
記事が長くなってしまったため、全4回に分割してご説明しております。
前回は第2回目として「ソースやターゲットの設定方法の比較」「トランスフォーメーションの種類や使用方法の比較」「トランスフォーメーション間の接続の方法の比較」をご説明しました。
今回は第3回目として「マッピングを包む定義体とその実行方法や実行状況の確認方法の比較」「コマンドでの実行方法の比較」「パラメーターの比較」をご説明します。
※1. 略称はIDMC。旧称はIICS。以下IDMCと記載。
※2. 以下CDIと記載。
「データ統合」というのは、ETL(※3)と呼ばれていたこともある領域の処理です。
※3. Extract、Transform、Loadの頭文字を取った言葉。これらはそれぞれ、連携元からのデータ抽出、データの変換・加工、連携先へのデータのロードを示します。
なお、IDMCにはCDIをはじめ様々なサービスがありますが、本記事はPowerCenterとの比較であるため、CDIのみにフォーカスしてご説明していきます。
マッピングを包む定義体とその実行方法や実行状況の確認方法の比較
公式の動画「IICS for PowerCenter Developers: Running a Mapping without a Session」および「IICS for PowerCenter Developers: How to Create a PowerCenter Session Equivalent in IICS」をベースに筆者の解釈を交えて説明します。
-
PowerCenterでは、PowerCenter Designerでマッピング作成後にアドホックに実行したい場合、マッピングに対する「セッション」を作り、「セッション」を包含した「ワークフロー」を作る必要がありました。また、そのために、Workflow Managerに切り替える必要がありました。一方、CDIでは、それらの手順は不要です。
-
CDIでは、「マッピング」の作成時に状態が「有効」になり、その後保存すると、画面右上の「実行」ボタンがクリックできるようになります。その「実行」ボタンをクリックすると、どのランタイム環境(Agent)を指定するのかを聞かれます。そして、「実行」ボタンをクリックすると、「マッピング」が実行されます。
-
さて、PowerCenterでは、実行状況を確認するためにWorkflow Monitorを使っていました。一方、CDIでは、自分が実行したものの実行状況を見たい場合は、画面左の「マイジョブ」をクリックします。 各行をクリックすると、詳細を見ることができます。また、必要であれば、この詳細画面からログファイルをダウンロードすることもできます。
-
自分が実行したものではなく、システムレベルで何が実行中なのかを見たい場合は、アプリケーションピッカーに戻り、「モニタ」をクリックします。モニタの詳細は、 公式ドキュメント をご覧ください。
-
さて、前述の通り、CDIでは、「マッピング」を画面からアドホックに実行することもできますが、何度も実行する場合は、PowerCenterの「セッション」相当の定義体を作ります。CDIでは、それは「マッピングタスク」です。 マッピングタスクの詳細は、 公式ドキュメント をご覧ください。
-
CDIでは、マッピングデザイナーのままで、画面左で「新規」>「マッピングタスク」をクリックすると作れます。
-
ウィザードの「スケジュール」にて、定期実行の設定や、メールでの通知の設定、前処理コマンド/後処理コマンドの設定などができます。
-
PowerCenterの「セッション」とは異なり、「マッピングタスク」を「ワークフロー」のようなものに格納する必要はありません。その代わり、「マッピングタスク」を直接実行できます。複数の「マッピングタスク」を実行したい場合、「タスクフロー」に格納することもできます。これがPowerCenterの「ワークフロー」相当の定義体です。 タスクフローの詳細は、 公式ドキュメント をご覧ください。
-
一方、CDIでも、「マッピングタスク」がエラーであった場合に、「リニアタスクフロー」の実行を停止し、ステータスを「失敗」にする設定があります。 詳細は 公式ドキュメント をご覧ください。
PowerCenterの定義体 IDMCのCDIの定義体 ワークフロー タスクフロー セッション マッピングタスク マッピング マッピング マップレット マップレット
コマンドでの実行方法の比較
- PowerCenterでは、pmcmd startWorkflow コマンドで「ワークフロー」を実行できました 。
- 一方、CDIでは、「RunAJobユーティリティ」を使用して「タスク」(「マッピングタスク」など) または 「タスクフロー」を実行できます。 詳細は 公式ドキュメント をご覧ください。
- CDIでは、他の方法で実行することもできます。詳細は 公式ドキュメント をご覧ください。
パラメーターの比較
- PowerCenterにはサービス変数、サービスプロセス変数、ワークフロー変数、ワークレット変数、セッションパラメータ、マッピングパラメーター、マッピング変数があり、それら外部から指定するために「パラメーターファイル」を使用できました。この「パラメータファイル」は「ワークフロー」に対して指定するものでした。
- 一方、CDIにも同様に「パラメーター」と「パラメーターファイル」があります。雰囲気は似ているものの、使用方法かなり差異があります。また、新たに「パラメーターセット」という概念もあります。
- 「パラメーター」には種類があります。「入力パラメーター」「入出力パラメーター」「システムパラメーター」です。
- まず、「入力パラメーター」を説明します。「マッピング」レベルで定義します。次のタイプがあります:「文字列」「接続」「式」「データオブジェクト」「フィールド」「フィールドマッピング」「マスクルール」。 詳細は、公式ドキュメント をご覧ください。「接続」と「データオブジェクト」の入力パラメータの値はパラメーターファイルで上書きできます。上書きするには事前に許可設定が必要です。詳細は、公式ドキュメント をご覧ください。
- 次に、「入出力パラメーター」を説明します。これも「マッピング」レベルで定義します。パラメータ値は、タスクの実行中に更新され、保持されます。次のデータ型があります:「integer」「bigint」「string」「text」「decimal」「double」「date/time」。例えばカウンタなどに利用できます。 詳細は、公式ドキュメント をご覧ください。
- 最後は、「システムパラメーター」を説明します。あらかじめ定義されています。$LastRunTime(最終実行日付時刻)などがあります。
- それぞれの差異については、公式のKB「Overview of parameter types in Mapping Tasks and details about their lifecycle in Cloud Data Integration (CDI)」をご覧ください。
- 「入力パラメーター」と「入出力パラメーター」を外部から指定するために「パラメーターファイル」を使用できます。「マッピングタスク」に対して指定します。 「パラメーターファイル」で「パラメーター」が定義されていない場合、「タスク」で定義されている値が使用されます。詳細は、公式ドキュメント をご覧ください。
- 一方、「タスクフロー」レベルの概念として、「パラメーターセット」という概念があります。
- たとえば、前述の「RunAJobユーティリティ」 を使用して「マッピングタスク」を実行する場合には、前述の「パラメーターファイル」を指定できますが、一方で、「RunAJobユーティリティ」を使用して「タスクフロー」を実行する場合には、「パラメーターファイル」を指定することはできず、「パラメーターセット」を指定することになります。
- 詳細は、公式のKB「HOW TO: Implement parameter set in IICS」 および 公式ドキュメントのタスクフローおよびパラメーターセットの説明 および 公式ドキュメントのParamSetCliユーティリティの説明 をご覧ください。
おわりに
以上、「PowerCenterとCDIの違いをまとめてみた」の第3回目でした。
次回の第4回目は、「バージョン管理方法の比較」「管理者作業の比較」「機能面での進化」をご説明します。
※.2022.12.22追記:第4回目を投稿しました。 → Informatica PowerCenterとCloud Data Integrationの違いをまとめてみた(第4回/全4回)
IDMCのCDIは30日間の無料体験ができる ので、この機会に試してみてはいかがでしょうか。
IDMCには今回ご紹介したCDIの他にも、API統合、マスターデータ管理、データガバナンス関連など様々なサービスがあります。
これらについても、今後、当Organization の記事でご紹介していく予定ですので、ご興味がございましたらご覧ください。
仲間募集中!
NTTデータ Data&Intelligence事業部 では、以下の職種を募集しています。
1. 「クラウド技術を活用したデータ分析プラットフォームの開発・構築(ITアーキテクト/クラウドエンジニア)」の募集
クラウド/プラットフォーム技術の知見に基づき、ITアーキテクトまたはPMとして、DWH、BI、ETL領域における、ソリューション開発の推進や、コンサルティング工程のシステムグランドデザイン策定時におけるアーキテクト観点からの検討を行う人材を募集しています。2. AI/データ活用を実践する「クラウド・ソリューションアーキテクト」
AI/データ活用を実践する「クラウド・ソリューションアーキテクト」として、クラウド先進テクノロジーを積極活用し、お客様のビジネス価値創出活動を実践。AI/データ活用の基本構想立案コンサルティングからクラウドプラットフォーム提供・活用を支援しています。お客様のAI・データ活用を支援するクラウド・ソリューション提案、アーキテクチャ設計・構築・継続活用支援(フルマネージドサービス提供)、および最新クラウドサービスに関する調査・検証で、クラウド分析基盤ソリューションのメニュー拡充を実施する人材を募集します。また、取り扱う主なソリューションについては、以下のページも参照ください。
ソリューション紹介
1. NTTデータとInformaticaについて
データ連携や処理方式を専門領域として10年以上取り組んできたプロ集団であるNTTデータは、データマネジメント領域でグローバルでの高い評価を得ているInformatica社とパートナーシップを結び、サービス強化を推進しています。2. Trusted Data Foundationについて
~データ資産を分析活用するための環境をオールインワンで提供するソリューション~https://enterprise-aiiot.nttdata.com/tdf/
最新のクラウド技術を採用して弊社が独自に設計したリファレンスアーキテクチャ(Datalake+DWH+AI/BI)を顧客要件に合わせてカスタマイズして提供します。
可視化、機械学習、DeepLearningなどデータ資産を分析活用するための環境がオールインワンで用意されており、これまでとは別次元の量と質のデータを用いてアジリティ高くDX推進を実現できます。