各製品の資料を入手。
詳細はこちら →Informatica PowerCenter でNetSuite のデータを抽出、変換、ロードする
Informatica PowerCenter でNetSuite のデータのシンプルなWorkflow を作成。
最終更新日:2022-04-03
こんにちは!ドライバー周りのヘルプドキュメントを担当している古川です。
Informatica は、データ転送用の強力で洗練された手段を提供します。CData ODBC Driver for NetSuite を利用することで、Informatica の強力なデータ転送と操作機能でシームレスに統合された、業界が認めた標準ドライバーにアクセスできるようになります。このチュートリアルでは、Informatica PowerCenter でシンプルなWorkflow を作成してNetSuite のデータを抽出し、フラットファイルにロードする方法について説明します。
CData ODBC ドライバとは?
CData ODBC ドライバは、以下のような特徴を持ったリアルタイムデータ連携ソリューションです。
- NetSuite をはじめとする、CRM、MA、会計ツールなど多様なカテゴリの270種類以上のSaaS / オンプレミスデータソースに対応
- 多様なアプリケーション、ツールにNetSuite のデータを連携
- ノーコードでの手軽な接続設定
- 標準 SQL での柔軟なデータ読み込み・書き込み
CData ODBC ドライバでは、1.データソースとしてNetSuite の接続を設定、2.Informatica PowerCenter 側でODBC Driver との接続を設定、という2つのステップだけでデータソースに接続できます。以下に具体的な設定手順を説明します。
CData ODBC ドライバのインストールとNetSuite への接続設定
まずは、本記事右側のサイドバーからNetSuite ODBC Driver の無償トライアルをPowerCenter サーバーとクライアントマシーンにドライバーをインストールします。30日間無償で、製品版の全機能が使用できます。
どちらにおいても、データソースのODBC DSN で接続プロパティを指定します。これはドライバーインストール時の最後の手順にあたります。Microsoft ODBC データソースアドミニストレーターを使ってODBC DSN を作成および設定できます。
Netsuite への接続
NetSuite は現在、2つの異なるAPI を提供しています。
- SuiteTalk はNetSuite との通信に使用する、SOAP ベースのより古いサービスです。多くのエンティティを幅広くサポートし、INSERT / UPDATE / DELETE を完全にサポートします。 しかしデータの抽出用ツールは低機能で、SELECT 時のパフォーマンスは極めて低いです。テーブルを結合するよい方法もありません。データのグループ化および集計はこのAPI からは利用できず、 そのためこれらの操作をサポートするには、すべてをクライアントサイドで実行しなければなりません。
- SuiteQL は新しいAPI です。サービスとのSQL ライクな通信方法を実現するため、JOIN の機能はより豊富になり、GROUP BY や集計機能もサポートします。 加えて、抽出したいカラムだけを取得する機能も完全にサポートします。そのため、データを抽出する際のパフォーマンスがSuiteTalk より大幅に向上しています。ただし、サポートされるのはデータの抽出のみです。
NetSuite に接続するには、以下を行う必要があります。
- Schema を設定して、接続に使用するAPI を指定。データを取得するだけの場合は、SuiteQL の使用をお勧めします。データの取得および変更が必要な場合は、SuiteTalk の使用をお勧めします。
- 使用するAPI に適した接続オプションを設定します。(それぞれのAPI で利用可能な接続オプションが異なります。ヘルプドキュメントの「許可の設定」を参照してください。)
Netsuite への認証
SuiteTalk またはSuiteQL
NetSuite は3つの形式のOAuth 認証を提供します。
- トークンベース認証(TBA)は、基本的にOAuth 1.0 で、OAuthAccessToken とOAuthAccessTokenSecret を実行時ではなくNetSuite UI 内で作成します。 TBA は、2020.2 以降のSuiteTalk およびSuiteQL の両方で利用可能です。
- OAuth 2.0 認証は、SuiteQL でのみ利用できます。OAuth 2.0 認証を強制するには、次のいずれかを実行します。
- OAuthVersion を使用するAPI に明示的に設定、または
- Schema をSuiteQL に設定
- OAuth JWT 認証は、OAuth 2.0 クライアント認証フローであり、クライアント認証情報を含むJWT を使用してNetSuite データへのアクセスを要求します。この認証方法は、Schema がSuiteQL に設定されている場合にのみ使用できます。
認証方法の詳細はヘルプドキュメントの「はじめに」を参照してください。
PowerCenter でETL ワークフローを作成する
次のステップに従ってPowerCenter でワークフローを作成し、NetSuite のデータをプルしてフラットファイルにプッシュします。
ODBC ドライバーを使用してソースを作成する
- %INFA_HOME%\clients\PowerCenterClient\client\bin にあるpowrmart.ini ファイルで、次の行をODBCDLL セクションに追加します。
CData=PMODBC.DLL
- PowerCenter Workflow Manager で新しいODBC リレーショナル接続を追加し、ユーザー名とパスワードのプロパティをODBC Driver がインストールされているマシンのユーザーに設定して、接続文字列をドライバーのSystem DSN(CData NetSuite Sys)に設定します。
- PowerCenter Designer でリポジトリに接続し、フォルダを開きます。
- 「Source Analyzer」を選択してソースメニューをクリックし、「Import from Database」を選択します。
- ODBC データソースのドロップダウンメニューで、以前構成したDSN(CData NetSuite Sys)を選択します。
- 「connect」をクリックし、含めるテーブルとビューを選択します。
- 「OK」をクリックします。
ソースを使用してフラットファイルターゲットを作成する
- 「Targets Analyzer」を選択し、以前に作成したソースをワークスペースにドラッグアンドドロップします。既存のソースを使用することで、カラムがターゲットにコピーされます。
- 新しいターゲットを右クリックし、「edit」をクリックしてデータベースタイプをフラットファイルに変更します。
NetSuite のデータとフラットファイル間のマッピングを作成する
- 「Mapping Designer」をクリックします。
- ソースとターゲットをワークスペースにドラッグします。(プロンプトが表示されたら、新しいマッピングに名前を付けます。)
- ワークスペースで右クリックし、「Autolink by Name」を選択します。
- カラムをソース修飾子からターゲット定義にドラッグします。
- フォルダをセーブ(Ctrl + S)します。
マッピングを使用してワークフローを作成する
ソース、ターゲット、マッピングを作成して保存したら、ワークフローを作成することができるようになります。
- マッピングを右クリックして「generate workflow」を選択し、「Workflow Generation」ウィザードを開きます。
- 再利用不可のセッションでワークフローを作成します。
- (以前作成した関連する接続への)接続オブジェクトが適切に構成されていることを確認してプレフィックスを設定します。
- 必要に応じて接続を設定します。
- ワークフローを確認して「Finish」をクリックします。
ワークフローを作成したら、PowerCenter Workflow Manager を開いてワークフローにアクセスして開始し、NetSuite のデータをフラットファイルに素早く転送できます。ODBC Driver for NetSuite を使用して、ソースとターゲットをPowerCenter から設定することで、Informatica PowerCenter でNetSuite のデータをお好みのエレガントで強力な機能に統合することができます。
NetSuite からInformatica PowerCenter へのデータ連携には、ぜひCData ODBC ドライバをご利用ください
このようにCData ODBC ドライバと併用することで、270を超えるSaaS、NoSQL データをコーディングなしで扱うことができます。30日の無償評価版が利用できますので、ぜひ自社で使っているクラウドサービスやNoSQL と合わせて活用してみてください。
CData ODBC ドライバは日本のユーザー向けに、UI の日本語化、ドキュメントの日本語化、日本語でのテクニカルサポートを提供しています。