メインコンテンツまでスキップ
Adaptive Insights
Knowledge @ Adaptive Insights LLC, a Workday Company

スクリプト化されたデータ ソースの設定

スクリプト化されたデータソースを使用すると複雑なカスタムデータの抽出と変換シナリオを独自に作成できるようになります。Kettle ETLスクリプトを書いてデータの抽出元となる情報ソースを指定し、抽出したデータにカスタマー固有のビジネスルールを適用できます。(スクリプト化されたデータ ソースを設定する前に、ネットワーク上のオンプレミス WindowsサーバーにAdaptive データ エージェントをインストールする必要があります。Adaptive データ エージェント設定については、「Adaptiveデータ エージェントの使用」を参照してください。)

 

スクリプト化されたデータ ソースは、Pentaho Kettle スクリプトの作成方法や Spoon UI の使用方法に精通した上級 ETL ユーザー向けです。Pentaho KettleSpoonに関する詳しい資料やチュートリアルなどについては、http://wiki.pentaho.comPentaho ウィキを参照してください。

スクリプト化されたデータ ソースは、以下の手順で設定します:

  1. [統合] > [データ デザイナー] に移動し、[データ デザイナー] にアクセスします。

  2. 画面の右側にある [コンポーネント ライブラリ] の [データ ソース] フォルダーで、[新しいデータ ソースを作成] をクリックします。
    [新規作成] ダイアログ ボックスが表示されます。

  3. データ ソースの種類として [スクリプト化されたデータ ソース] を選択し、データ ソース名を入力します。

  4. [作成] をクリックします。
    以下のように、画面の中央エリアに新規データ ソース’の設定およびその他の情報が表示されます。

5. データ ソースの’情報を入力します:

  • 関連エージェント: ドロップダウン リストからエージェントを選択します。
  • エントリ ポイント: ドロップダウン リストからエントリ ポイントを選択します。エントリ ポイントはシステムのETLスクリプトです。(この項目は後に編集または変更できます。)
  • ログレベル: ドロップダウン リストからログレベルを選択し、このデータ ソースをどこまで詳細にログするかを指定します。オプション:
  • エラー: 重大なエラーのみを記録します。
  • 情報: データ ソースが更新されたときなど、すべての基本情報を記録します。
  • 詳細全ての段階と操作に関する非常に詳細な情報を提供します。(このレベルは、主にデバッグや監査に使用されます。典型的な使用方法よりも多くのログ情報を生成する可能性があります。)
  • ソースURI: 接続先のURIをセミコロン(;)で区切って入力します。この フィールドは、基礎を成すソース システムを特定し文書化する際の補助としてのみ使用します。ソフトウェアでは、その他の目的には 使用されません。
  1. [操作] メニューの [保存 ]をクリックします。

Spoonを開始

スクリプト化されたデータ ソースの基本情報を保存し終わったら、ETLスクリプト エディターのSpoonの開始、スクリプトを使った作業、およびスクリプト化されたデータ ソースへのテーブルの追加ができます。

スクリプトの表示および編集は、以下の手順で実行します:

  1. Windows [スタート] メニューから、[すべてのプログラム] をクリックします。

  2. [Adaptive データ エージェント] フォルダーを開きます。

  3. [Adaptive スクリプト エディター] をクリックします。
    Pentaho スプラッシュ画面と開始ヒントに続き、以下のようなSpoon 画面が表示されます。


  1. Adaptive IntegrationログインE メールとパスワードを入力し、[今すぐログイン/テナント一覧をリフレッシュ] をクリックします、

  2. ドロップダウン リストからテナントを選択します。(通常はテナントは1人だけです。)
    Spoon はテナント一覧をリフレッシュします。

  3. ドロップダウン リストから、このデータ ソースで使用しているエージェントを選択します。
    Spoon はエージェント一覧をリフレッシュします。

  4. [スクリプトを編集] のドロップダウン リストから、作成したばかりのスクリプト化されたデータ ソースを選択します。

ログインが完了し、’使用するエージェントとデータ ソースをSpoon に伝えたら、スクリプトの編集作業を開始できます。

  1. Spoon 画面の右上にある [データ統合] リンクをクリックします。
    以下のようなSpoon の統合エリアが表示されます。

2. [ファイル] > [開く] を選択し、表示・編集したいスクリプトに移動したら、[OK] をクリックします。
下の画像は「スクリプト化されたデータ ソース」の例です。(Adaptive Integrationに含まれているスクリプトのサンプルから、スクリプトの構造やデータ­ベース接続について学ぶことができます。これらの情報は、今後のご自身のスクリプト開発に役立てられます。)

!spoon_scripted_example.jpg
  1. 必要に応じてスクリプトを編集し、保存します。

  2. 右上にある [Adaptive]  をクリックし、[Adaptiveエリア] に戻ります。
    (先に示した)Spoon 画面が再び表示されます。

  3. [エージェントの変更を公開] をクリックします。これにより、スクリプトはAdaptive サーバーにプッシュして戻され、スクリプト レポジトリに保存されます。

以下のデータ インポート モードがサポートされています。(この設定はテーブルにより異なる場合があります。)

  • データのインポートを実行するたびに、レコードがすべて置き換えられます。
  • データの同期が必要な時は毎回、リモート エージェントがすべてのソース レコードをスキャンし、変更されたレコードを送信します。
  • 特定の期間範囲内のすべてのレコードを送信します。

スクリプト化されたデータ ソースへのテーブルおよび列の追加

スクリプトが完成したら、Adaptive Integrationのデータ ソースにテーブルや列を追加できます。

データ ソースで定義されている列とETLスクリプトで定義されている列は、完全に一致している’必要があります。一致していない場合はデータ ロードに失敗します。

スクリプト化されたデータ ソースへのテーブルの追加は、以下の手順で行います:

  1. [データ コンポーネント] メニューの [カスタム テーブル] エントリを展開します。

  2. [スクリプト化されたテーブル] アイテムを [インポートするテーブル]領域にドラッグ アンド ドロップします。
    アイテムをドロップする際、以下のような [スクリプト化されたテーブル] ダイアログ ボックスが表示されます。

    !scripted_table_settings_xantus.png
  3. テーブル設定を入力します:

  • 名前 テーブルの名前を入力します。
  • データ インポート モード: 以下のインポート モードから1つを選択します:
    • データのインポートの実行ごとにレコードすべてを置き換え: これがデフォルトです。データをインポートする際、ステージング領域のレコードのすべてが必ず置き換えられます。
    • リモート キャッシュを使用し、変更されたレコードをインポート時に識別、送信: Adaptive Integrationはステージング領域のデータとスプレッドシートまたはデータベース内のレコードを比較し、変更されたレコードのみをインポートします。
    • 特定の期間範囲内のレコードすべてを送信: このモードを選択すると、期間範囲と、その期間範囲をAdaptive Inte­grationが適用する列を入力するよう促されます。この選択基準を満たす列はすべてインポートされます。
  • データ インポート フィルタ: インポートしている情報をフィルタリングまたはフォーマットするSQL式を入力します。SQLフィルタはデータベースからデータを抽出する前に適用され、インポートする必要があるデータの量を削減するとともに、ステージング領域に取り込むデータをさらに細かく制御できます。フィールドをクリックすると、前述の [SQLフィルタの編集] ダイアログ ボックスが表示されます。(ここで入力したフィルタは、ステージング領域のプレビュー データではなく、データベース内の実際のデータに適用されます。)
  1. [適用 ]をクリックして設定を適用します。

スクリプト化されたデータ ソースへの列の追加は、以下の手順で行います:

  1. [データ コンポーネント] メニューの [カスタム列] エントリを展開します。

  2. [インポートするテーブル] 領域に列タイプの1つをドラッグ アンド ドロップします。
    このアイテムをドロップすると、[カスタム列] ダイアログ ボックスが表示されます。

  3. 列の設定を入力します:

  • 名前列の名前を入力します。(列の名前は大文字やスペースの使用を含め、Spoonのスクリプトで指定された列の名前と完全に一致している必要があります。)
  • 列の型: 列タイプを識別する表示専用フィールドです。
  • 列タイプを変換する: この値は、SQL列以外では変更できません。SQL列では、6種類の変換オプションからどれでも選択できます。
  1. [適用 ]をクリックして設定を適用します。

列の管理

作業しているテーブルに列が多数ある場合は、[列を管理] を使用してどの列をインポートするかをすばやく編集できます。[列を管理] ダイアログ ボックスにはテーブルの列が表示されるため、インポートする列を選択または選択解除できます。

インポートする列を管理するには、次の手順を実行します:

  1. テーブル名の右にあるタブの矢印をクリックします。
    いくつかのオプションを含むフローティング メニューが表示されます。

  2. フローティング メニューで [列を管理] をクリックします。
    [列を管理] ダイアログ ボックスが表示されます。

    BatchEdit-ManageColumns00063.png
  3. インポートする列の横にあるチェックボックスをオンにします。列をチェックすると、ポップアップの内容を保存してからプレビュー ウィンドウに列が表示されます。列のチェックを外すと、プレビュー ウィンドウから列が削除されます。

    isDeleted­などの、システムが生成するフィールドのインポート ステータスを変更することはできません。個々の列のインポート状態は、­列のプロパティを選択してプロパティを設定するか、列をデザイナーにドラッグ アンド ドロップして、変更することもできます。

テーブルのカスタマイズ

テーブルごとにデータのインポート方法をカスタマイズできます。

テーブル設定をカスタマイズするには、次の手順を実行します:

  1. テーブル名の右にあるタブの矢印をクリックします。
    いくつかのオプションを含むフローティング メニューが表示されます。

  2. フローティング メニューで [テーブルの設定] をクリックします。
    先に示したように [テーブル設定] ダイアログ ボックスが表示されます。

  3. [適用 ]をクリックして設定を適用します。

  4. 各テーブルに対して手順1〜3を繰り返します。

  5. [保存] をクリックして、データ ソースに設定を保存します。

列のオプション設定

[インポートするテーブル] セクションを使用中は、データ ソースまたはインポート後のステージング領域にある状態でのデータのプレビューを表示できます。各列のオプションを変更するには、見出しをマウスでクリックし、その名前の横にあるドロップダウン メニューをクリックします。オプションは次のとおりです:

  • 昇順で並べ替え: この列に基づいてテーブル全体を昇順で並べ替えます。
  • 降順で並べ替え: この列に基づいてテーブル全体を降順で並べ替えます。
  • 列の設定: このダイアログを使用して、ステージング テーブルの列のプロパティを変更します。
  • 名前: ヘッダーに表示される列の名前。
  • 列の型: 列で使用されるデータ型。
  • 列の型を変換: このドロップダウン メニューから新しい型を選択します。
  • インポートから列を除外する: インポートするデータからこの列を削除する場合に選択します。
  • カスタム列を削除: このオプションを選択して列を削除します。(カスタム­列でのみ使用可能。)

ステージング テーブルからデータをダウンロード

単一のステージング テーブルからデータをダウンロードできます。

単一のステージング テーブルからデータをダウンロードするには、次の手順を実行します:

  1. [インポートするテーブル] セクションの テーブルの見出しにある下矢印をクリックします。

  2. [データをダウンロードする] を選択します。

  3. 「“この操作では、データをダウンロードするためのURLを含むメールを送信します”」というプロンプトで、 [送信] をクリックします。 Adaptive IntegrationはURLを記載したEメールを、データ デザイナーに関連づけられたEメール科目に送信します。

  4. E メールを開いてURLをクリックします。データは.csv形式でダウンロードされます。

高度なフィルタの使用

[ソース] ドロップダウン メニューの下にある [高度なフィルタ] をクリックすると、[インポートするテーブル] プレビュー領域でデータの­フィルタリング用オプションが表示されます。[高度なフィルタ] は、ステージング テーブル内またはスクリプトからのデータのサブセットを表示および参照するためのツールを提供します。[ソース] ドロップダウンから [スクリプト] を選択した場合、プレビュー リクエストがプロセスのためにエージェントに送信されます。フィルタのプロパティを変更することで、ステージング領域のデータを変更することなく、プレビュー ウィンドウのデータ表示を変更できます。

プレビュー領域は、特にステージング領域のデータのごく一部をプレビューするためのものです。スプレッドシートで利用できるデータを探索して、ステージング領域をチェックすることで予定のデータが入手できることを確認できます。(プレビュー関数で設定されたフィルタは、ステージング領域の実際のデータには影響しません。)

[高度なフィルタ] のオプションは次のとおりです:

  • 個別の行: 重複する行を非表示にするには、このボックスをオンにします。
  • 最大行数: プレビュー領域に表示される行数を制限するには、テキスト ボックスに数値を入力します。
  • : このドロップダウン メニューの列をオンまたはオフにし、列を表示または非表示にします。

このリストから列を削除しても、その列はインポート リストから削除されません。

  • SQLフィルタ: 大型のテキストボックスをクリックし、(先に示した)[SQL式を編集] ダイアログ ボックスを表示します。ここでSQLフィルタを入力し、プレビューする行を制限できます。[適用] をクリックすると、フィルタのSQL構文を自動的にチェックします。(エラーがある場合は、エラーが式に表示されます。)SQL構文のヘルプの詳細については [メモ] セクションの [オンライン ヘルプ] をクリックしてください。

[フィルタを削除]( [ソース] ドロップダウン メニューの横)をクリックして、高度なフィルタの­設定をすべてクリアします。

テーブルのカスタマイズ プロセスの一環として、SQL式を使用して結合テーブルとカスタム列を作成することもできます。

パラメータの追加と編集

パラメータを使って、基になるKettle スクリプトに情報を渡すことができます。­パラメータは既定値を使って設定できます。そのうえでスクリプトはパラメータを使い、ETLスクリプト内の変換およびフィルタリングをコントロールできます。

パラメータの追加は、以下の手順で実行します:

  1. [パラメータ]  の見出しの右側にある [パラメータを編集] アイコンをクリックします。
    [パラメータ エディタ] のダイアログボックスが表示されます(以下に示す通り)。

    !loaders_script_edit_parms.png
     
  2. 左ペインの、パラメータを追加したいフォルダーをクリックします。フォルダー名が右ペインに表示されます。

  3. [追加] をクリックし、フローティング メニューに表示される以下のオプションの1つを選択します:

  • フォルダー: 新規フォルダーを作成します。
  • ブール値: ブール値のパラメータ(true/false)を作成します
  • 整数: 整数のパラメータを作成します。
  • テキスト: テキスト値のパラメータを作成します。
  • パスワード: パスワードのパラメータを作成します。
  • 期間範囲: 期間範囲のパラメータ(開始日/終了日)を作成します。
  • 属性: 属性を作成します。
  • 実績バージョン: 実績バージョンを作成します。
  • 計画バージョン: 計画バージョンを作成します。
  1. 右ペインで、選択したオプションの情報を入力します。
  2. [適用] をクリックします。

個々のパラメータを編集するには、編集したいアイテムを左ペインでダブルクリックし、フィールド内の情報を編集します。編集が終了したら [適用] をクリックして変更を保存します。

パラメータをグループ分けするには、フォルダーを作成し、そのフォルダーにパラメータをドラッグします。

スクリプト化されたデータ ソースによるデータのインポート

スクリプト化されたデータ ソースを設定して保存すると、データをインポートできます。

スクリプト化されたデータ ソースを使ってデータをインポートするには、次のようにします:

  1. [操作] メニューの [データをインポート] をクリックします。
    選択したデータは、ETLスクリプトでおよびSQL式でフィルタリングされ、ステージング領域に読み込まれます。ステージング領域でデータをプレビューできます。

情報は手動でクリアするまで、またはその後のデータ読み込みで有効な「データ インポート モード」に基づいてクリアされるまで、ステージング領域に残ります。

ステージング領域からデータをクリアするには、次のようにします:

  1. [操作] メニューの [ステージング テーブルをクリア] をクリックします。
    データ ソース内のすべてのテーブルのステージング領域がクリアされます。

  • この記事は役に立ちましたか?