メタデータをデータウェアハウスセンターにインポートすると、データウェアハウスセンターはウェアハウス用にデータを抽出および変換したり、データを抽出および変換するパートナー・アプリケーションを実行することができます。
メタデータをデータウェアハウスセンターにインポートすることには、以下のタスクが関係します。
タグ言語ファイルを構築するには、以下のように行います。
以下のタイプのオブジェクトについて、メタデータをデータウェアハウスセンターにインポートできます。
ウェアハウス・エージェント は、ソース・データベースまたはファイル (ウェアハウス・ソース) と、ターゲット・データベース (ウェアハウス・ターゲット) との間の実際のデータ転送を実行します。さらに、そのデータの変換も実行します。ウェアハウス・エージェントは、ウェアハウス・サーバーからコマンドを受け取ります。その後、エージェントは SQL コマンドを発行し、パートナー・アプリケーションを開始するか、またはパートナー・アプリケーションを開始するデータウェアハウスセンター プログラムを開始します。さらに、ウェアハウス・エージェントは、表定義をインポートします。
エージェント・サイト は、エージェントが実行するマシンです。エージェント・サイトには、ソース・データベースおよびターゲット・データベースを含むマシンにアクセス可能でなければなりません。
ウェアハウス・ターゲット またはターゲット・ファイル は、データウェアハウスセンターまたはパートナー・アプリケーションが処理した後にデータを書き込むデータベースまたはファイルです。一般用語のターゲット は、データベースまたは 1 つ以上のファイルのグループを意味します。ターゲットは、1 つ以上の表またはファイルと関連しています。表またはファイルは、 1 つ以上の列またはフィールドと関連しています。ウェアハウス・ターゲットは、データウェアハウスセンターによって管理される表またはファイルのセットのサブセットです。
ウェアハウス・ターゲットは、ユーザーが照会およびレポート作成を実行するために使用するウェアハウスを含むデータベースです。
データウェアハウスセンターにインポートしたいオブジェクトを定義するためには、 1 つ以上のデータウェアハウスセンター メタデータ・テンプレートからタグ言語ファイルを構築します。
各テンプレートは、表などのオブジェクト、または列などのオブジェクトのサブセットに対応します。複数のテンプレートを結合して、オブジェクトに関するすべての詳細を定義します。たとえば、ソース・データベースを定義したい場合、データベース、表、および列のテンプレートを結合します。
パートナー・メタデータ・ストアから値を取得するプログラムを作成して、それらの値によってテンプレート内のトークンを置換します。本書では、この種類のプログラムを交換プログラム と呼びます。
各テンプレートには、交換プログラムが値を指定しなければならないトークンが含まれます。たとえば、トークン *TableDescription は表の記述を表します。交換プログラムは *TableDescription を検索して、それをリレーショナル・カタログで指定された表の記述を含むストリングに置き換えます。 DB2(TM) ユニバーサル・データベースの表では、システム・カタログの syscat.tables 表の REMARKS フィールド内にその記述があります。交換プログラムがトークンを値で置き換えるので、ファイル内のメタデータを識別する基礎となるタグ言語の構文を知る必要はありません。
アプリケーション開発クライアントのインストール時に、テンプレートのインストールを選択できます。
テンプレートをインストールするには、以下のように行います。
ISV ツールキットのデフォルトのディレクトリーは、x:\sqllib\templates です。データウェアハウスセンターは、VWS_TEMPLATES 環境変数を ISV ツールキットの位置に設定します。ご使用のプログラムは、VWS_TEMPLATES の値を照会して、テンプレートの位置を見つけることができます。
データウェアハウスセンターは、VWS_TEMPLATES が設定したディレクトリーのサブディレクトリーにファイルをインストールします。 表 2 は、インストールされるファイルのタイプ、およびそれらのファイルがインストールされるサブディレクトリーをリストしています。
表 2. テンプレートのファイル・タイプおよびサブディレクトリー
ファイルのタイプ | サブディレクトリー |
---|---|
テンプレート | ISV |
サンプル | Samples |
ヘッダー・ファイル | Include |
交換プログラムを作成するとき、以下を行う必要があります。
さらに、データウェアハウスセンターが処理メッセージのログに使用するディレクトリーと同じディレクトリーに処理メッセージのログを記録することができます。
ISV_Defines.h ヘッダー・ファイルを使用すると、テンプレートのトークンが変更してもプログラム・ロジックを同じに保つことができます。その場合に必要なのは、プログラムを再コンパイルすることだけです。
テンプレートを使用して作業するために、作成するプログラムは以下の手順を使用しなければなりません。
タグ言語ファイルの形式にプログラミングする代わりに、検索と置換の手法を使用します。トークンを使用することにより、テンプレート・ファイル内で使用されているタグ言語の変更からプログラムが独立していることになります。
テンプレート内では、各トークンは括弧で囲まれています。右小括弧は値の終了を示します。作成するプログラムがトークンだけを値に置換して、括弧を除去しないようにしてください。
トークンの値を置換するストリングは、以下の規則に従っていなければなりません。
たとえば、*DatabaseNotes トークンを以下の値で置き換えると仮定します。
This is my database (managed by the Finance group).
この値を、以下のように変更しなければなりません。
This is my database '('managed by the Finance group')'.
交換プログラムにトークンの値がない場合、そのトークンを定数 ISV_DEFAULTVALUE (ISV_defines.h 内で定義されている) に置き換えるようにします。ただし、必須のトークンには ISV_DEFAULTVALUE 以外の値を指定しなければなりません。
セキュリティー・グループのテンプレートは存在しないので、作成するプログラムでは値 ISV_DEFAULTSECURITYGROUP を *SecurityGroup トークンのインスタンスに指定しなければなりません。
テンプレートは、データウェアハウスセンターに特定のメタデータについてはデフォルト値を使用します。たとえば、ウェアハウス・ソースおよびウェアハウス・ターゲットの再試行回数および再試行間隔は、データウェアハウスセンターのデフォルト値に設定されます。
各テンプレートには、タグ言語ファイルをインポートするときの処理の追跡に使用できる *CurrentCheckPointID++ トークンを含んでいます。作成するプログラムがトークンの値を設定するとき、 *CurrentCheckPointID++ の最初の出現を 0 に設定するようにしてください。プログラムは、*CurrentCheckPointID++ が出現するたびにその値を 1 ずつ増加させるようにします。データウェアハウスセンターはタグ言語ファイルのインポート時にこれらのチェックポイントをログ・ファイルに書き込みます。
表 3、表 4、および表 5 は、プログラムがテンプレートをタグ言語ファイルに追加しなければならない順序をリストしています。それらの表には、テンプレートが必須または任意選択となるときの条件が示されています。
ヘッダーを除き、それぞれのテンプレートについて必要な数のコピーを定義することができます。各タグ言語ファイルで定義するヘッダーのコピーは 1 つだけです。
順序 | テンプレート | 必須または任意選択 |
---|---|---|
1 | HeaderInfo.tag | 常に必須 |
2 | AgentSite.tag | デフォルトのエージェント・サイトを使用しない場合は必須 |
3 | VWPGroup.tag | データウェアハウスセンター プログラムを定義している場合は必須 |
4 | VWPProgramTemplate.tag | データウェアハウスセンター プログラムを定義している場合は必須 |
5 | VWPProgramTemplateParameter.tag | データウェアハウスセンター プログラムを定義している場合は必須 |
6 | SourceDataBase.tag
WarehouseDataBase.tag | ウェアハウス・ソースまたはウェアハウス・ターゲットを定義している場合は必須 |
7 | Table.tag | ウェアハウス・ソースまたはウェアハウス・ターゲットを定義している場合は必須 |
8 | Column.tag | ウェアハウス・ソースまたはウェアハウス・ターゲットを定義している場合は必須 |
Column.tag テンプレートをタグ言語ファイルに追加した後、一連のテンプレート、およびテンプレートをタグ言語ファイルに追加する順序は、ステップまたはスタースキーマのどちらを定義したいかに依存します。
ステップを定義している場合、表 4 に示されている順序で以下のテンプレートをタグ言語ファイルに追加します。
表 4. ステップを定義するときのテンプレートの相互関係および条件
順序 | テンプレート | 必須または任意選択 |
9 | SubjectArea.tag | ステップを定義している場合は必須 |
10 | Process.tag | ステップを定義している場合は必須 |
11 | Step.tag | ソースおよびターゲット・データとの間での SQL 変換を生成している場合、またはデータウェアハウスセンターが実行するプログラムを定義している場合は必須。 |
12 | StepInputTable.tag | 以下のタイプのステップを定義している場合は必須。
ISV_StepType_Editioned_Append
ISV_StepType_Full_Replace
ISV_StepType_Uneditioned_Append
以下のタイプのステップを定義している場合は任意選択。
ISV_StepType_VWP_Population |
13 | StepOutputTable.tag | 以下のタイプのステップを定義している場合は必須。
ISV_StepType_Editioned_Append
ISV_StepType_Full_Replace
ISV_StepType_Uneditioned_Append
以下のタイプのステップには、StepOutputTable を使用できません。
ISV_StepType_VWP_Population |
14 | StepVWPOutputTable.tag |
以下のタイプのステップを定義している場合は任意選択。
ISV_StepType_VWP_Population
|
15 | StepCascade.tag | ステップを連鎖関係にリンクするために必須 |
16 | StepVWPProgramInstance.tag | ステップがデータウェアハウスセンター プログラムを使用する場合に必須 |
17 | VWPProgramInstanceParameter.tag | ステップが、パラメーターが渡されることを期待し、パラメーターを持っているデータウェアハウスセンター プログラムを使用する場合に必須。 |
スタースキーマを定義している場合、表 5 に示されている順序で以下のテンプレートをタグ言語ファイルに追加します。
表 5. スタースキーマを定義するときのテンプレートの相互関係および条件
順序 | テンプレート | 必須または任意選択 |
9 | StarSchema.tag | 以下のタイプのスタースキーマを定義している場合は必須。 |
10 | StarSchemaInputTable.tag | 以下のタイプのスタースキーマを定義している場合は必須。 |
これらのテンプレートに関する詳細は、メタデータ・テンプレートを参照してください。
交換プログラムは、ログ処理メッセージまたはトレース・ファイルを VWS_LOGGING 環境変数が指定するディレクトリーに書き込みます。データウェアハウスセンターはこのディレクトリーを、ログ・ファイルおよびトレース・ファイルのために使用します。
タグ言語ファイルに含めることのできるオブジェクトを定義するため、ヘッダーを定義しなければなりません。
ヘッダーを定義するには、以下のように行います。
プログラムは、HeaderInfo.tag テンプレート・ファイルをコピーして変更しなければなりません。
プログラムは、以下の値を提供しなければなりません。
テンプレート内のトークンに関する情報については、HeaderInfo.tag を参照してください。
図 3 は、タグ言語ファイルのヘッダー部分を構築するためにプログラムで使用できるロジックの疑似コードです。
図 3. ヘッダーをタグ言語ファイルに追加するための疑似コード
Initialize native metadata environment (need to include ISV_defines.h) Read a copy of the HeaderInfo.tag template (from the templates directory) Search for and replace tokens with the metadata from your native metadata store (or defaults) Write the output to a target file |
ISV_Sample プログラムは、タグ言語ファイルのヘッダー部分の例を示しています。プログラムのソース・コードは、VWS_TEMPLATES 環境変数によって設定されたディレクトリーの Samples サブディレクトリーにあります。
以下のエージェント・サイト・タイプの 1 つを使用できます。
既存のエージェント・サイトを使用するためには、 *AgentSite トークンのすべての出現をエージェント・サイト名に置き換えます。
デフォルトのエージェント・サイトを使用するためには、 *AgentSite トークンのすべての出現を ISV_DEFAULTAGENTSITE に置き換えます。
新規のエージェント・サイトを定義するには、AgentSite テンプレート内のトークンの値を定義します。 *AgentSite トークンのすべての出現を、新規のエージェント・サイト名に置き換えます。
新規のエージェント・サイトを定義するには、以下のように行います。
プログラムは、AgentSite.tag テンプレート・ファイルをコピーして変更しなければなりません。 AgentSite.tag テンプレートには、前提条件として HeaderInfo.tag テンプレートが必要です。
新規のエージェント・サイトを定義するために、プログラムはウェアハウス・エージェントがインストールされているワークステーションについてのメタデータを取得しなければなりません。プログラムは取得した値でテンプレート内の適切なトークンを置換しなければなりません。
図 4 は、タグ言語ファイルに新規のエージェント・サイトを追加するためにプログラムで使用できるロジックの疑似コードを示しています。
図 4. AgentSite.tag テンプレートを変更する疑似コードの例
If the ISV wants to create an AgentSite specific to the ISV: Read a copy of the AgentSite.tag template from the template directory Search for and replace tokens with the metadata from your native metadata store (or defaults) Append the output to a target file Else Set AgentSite token to default agentsite value |
ISV_Sample プログラムは、パートナー・ツールに特定のエージェント・サイトをタグ言語ファイルに追加する例を示しています。プログラムのソース・コードは、VWS_TEMPLATES 環境変数によって設定されたディレクトリーの Samples サブディレクトリーにあります。
データウェアハウスセンターまたはパートナー・アプリケーションがソースから読み取るようにしたい場合、それらのソースを定義します。同様に、データウェアハウスセンターまたはパートナー・アプリケーションがデータをターゲットに書き込むようにしたい場合、それらのターゲットを定義します。以下の条件に適合する場合を除き、使用するすべてのソースおよびターゲットを定義しなければなりません。
ソースおよびターゲットを定義するには、以下のように行います。
以下のタイプのソース・オブジェクトを定義できます。
リレーショナル・データベースをターゲット・オブジェクトとして定義することができます。
表 6 および表 7 は、ソースおよびターゲット・オブジェクトの各タイプを定義するために、プログラムがコピーして変更しなければならないテンプレートをリストしています。
表 6 は、リレーショナル・データベースを定義するために、プログラムがコピーしなければならないテンプレートを示しています。
表 6. リレーショナル・ソースおよびターゲット定義のためのテンプレート
ソースまたはターゲットの定義 | テンプレートのコピー数 | コピーするテンプレート | 前提条件となるテンプレート |
---|---|---|---|
データベース | 使用したいデータベースごとに 1 コピー | SourceDataBase.tag
| HeaderInfo.tag
デフォルト・エージェントを使用していない場合、AgentSite.tag |
表 | データベースに定義したい表ごとに 1 コピー | Table.tag | SourceDataBase.tag
|
列 | 各表に定義したい列ごとに 1 コピー | Column.tag | Table.tag |
テンプレート内に共通の値を指定することによって、表のテンプレートとデータベースのテンプレートとを関連付けます。同様に、テンプレート内に共通の値を指定することによって、列のテンプレートと表のテンプレートとを関連付けます。
図 5 は、データベース、表、および列のテンプレートの関係を示しています。 1 から m の表記は、1 対多の関係を示します。ここで、多には O も含まれます。
図 5. DataBase.tag、Table.tag、および Column.tag のテンプレートの関係
![]() |
表 7 は、IMS データベースを定義するために、プログラムがコピーしなければならないテンプレートを示しています。これらの IMS オブジェクトにアクセスするためには、データウェアハウスセンター ODBC ドライバーを使用しなければなりません。
ソースまたはターゲットの定義 | テンプレートのコピー数 | コピーするテンプレート | 前提条件となるテンプレート |
---|---|---|---|
データベース | 使用したいデータベースごとに 1 コピー | SourceDataBase.tag | HeaderInfo.tag
デフォルト・エージェントを使用していない場合、AgentSite.tag |
セグメント | データベースで使用したいセグメントごとに 1 コピー | Table.tag | SourceDataBase.tag |
フィールド | 各セグメントで使用したいフィールドごとに 1 コピー | Column.tag | Table.tag |
表の関係を定義したときと同様の方法で、データベース、セグメント、およびフィールドの各テンプレート間の関係を定義します。 (図 5 を参照)
表 7 は、ファイル・システムおよび関連ファイル、または単一のファイルのどちらかを定義するために、プログラムがコピーしなければならないテンプレートを示しています。
表 8. ファイル・システムまたは単一のファイルのためのテンプレート
ソースまたはターゲットの定義 | テンプレートのコピー数 | コピーするテンプレート | 前提条件となるテンプレート |
---|---|---|---|
ファイル・システム | ファイル・システムごとに 1 コピー | SourceDataBase.tag | HeaderInfo.tag
デフォルト・エージェントを使用していない場合、AgentSite.tag |
ファイル | ファイル・システムで使用したいファイルごとに 1 コピー | Table.tag | SourceDataBase.tag |
フィールド | 各ファイルで使用したいフィールドごとに 1 コピー | Column.tag | Table.tag |
表の関係を定義したときと同様の方法で、ファイル・システム、ファイル、およびフィールドの各テンプレート間の関係を定義します。 (図 5 を参照)
プログラムは、パートナー・メタデータ・ストアからデータベースまたはファイルを説明する値を取得しなければなりません。プログラムは取得した値でテンプレート内の適切なトークンを置換しなければなりません。
プログラムは、ソース・データベースまたはターゲット・データベースについての以下のメタデータを提供しなければなりません。
プログラムは、ソース・ファイルについての以下のメタデータを提供しなければなりません。
図 6 は、ソースまたはターゲットを定義するデータ・リソースを作成または更新するために、プログラムで使用できるロジックの疑似コードを示しています。
図 6. ソースまたはターゲットを定義するデータ・リソースを作成または更新するための疑似コード. このロジックを作成または更新したいソースまたはターゲット定義ごとに使用します。
For each source or target to be defined: Read a copy of the SourceDatabase.tag or WarehouseDatabase.tag template Search for and replace tokens with the metadata from your native metadata source (or defaults) Append the output to a target file For each table, file, or segment that is to be defined: Read a copy of the Table.tag template Search for and replace tokens with the metadata from your native metadata source (or defaults) Append the output to a target file For each column or field that the table contains: Read a copy of the Column.tag template Search for and replace tokens with the metadata from your native metadata source (or defaults) Append the output to a target file End (for each column) End (for each table) End (for each source or target data source) |
ISV_Sample プログラムは、ソースまたはターゲット定義のためのデータ・ソースを作成または更新する例を示しています。プログラムのソース・コードは、VWS_TEMPLATES 環境変数によって設定されたディレクトリーの Samples サブディレクトリーにあります。
データウェアハウスセンターがパートナー・アプリケーションをスケジューリングして実行するようにしたい場合、最初にそのアプリケーションをデータウェアハウスセンター プログラムとして定義しなければなりません。その後、それを 1 つ以上のステップで使用して、プログラムをスケジューリングおよび実行することができます。
タグ言語ファイルがデータウェアハウスセンター プログラムを含める場合、以下のオブジェクトを順序どおりに定義しなければなりません。
ステップのためにプログラム・パラメーターのインスタンスを定義することによって、特定のステップで使用されるパラメーターを変更できます。データウェアハウスセンター プログラムをステップで使用することについての詳細は、 ステップを定義するを参照してください。
データウェアハウスセンターと共に使用するプログラムを作成することについての詳細は、 付録 C, データウェアハウスセンターで使用するプログラムを独自に作成するを参照してください。
データウェアハウスセンター プログラムを定義するには、以下のように行います。
表 9 は、データウェアハウスセンター プログラムを定義するために、プログラムがコピーして変更しなければならないテンプレートを示しています。
表 9. データウェアハウスセンター プログラムのテンプレート
定義 | テンプレートのコピー数 | コピーするテンプレート | 前提条件となるテンプレート |
---|---|---|---|
データウェアハウスセンター プログラム・グループ | 定義するプログラム・グループごとに 1 コピー | VWPGroup.tag | HeaderInfo.tag |
データウェアハウスセンター プログラム・テンプレート | プログラム・グループ内のデータウェアハウスセンター プログラムごとに 1 コピー | VWPProgramTemplate.tag | VWPGroup.tag |
データウェアハウスセンター プログラム・テンプレートのパラメーター | データウェアハウスセンター プログラムに渡されるパラメーターごとに 1 コピー | VWPProgramTemplateParameter.tag | VWPProgramTemplate.tag |
テンプレート内に共通の値を指定することによって、データウェアハウスセンター プログラム・グループのテンプレートとデータウェアハウスセンター プログラムのテンプレートとを関連付けます。同様に、テンプレート内に共通の値を指定することによって、パラメーターのテンプレートとデータウェアハウスセンター プログラムのテンプレートとを関連付けます。
図 7 は、データウェアハウスセンター プログラム・グループ、データウェアハウスセンター プログラム、およびデータウェアハウスセンター プログラム・パラメーターの間の関係を示しています。
図 7. VWPGroup.tag、VWPProgramTemplate.tag、および VWPProgramTemplateParameter.tag の各テンプレート間の関係
![]() |
データウェアハウスセンター プログラムをステップに関連付けることについての詳細は、ステップを定義するを参照してください。
プログラムは、パートナー・メタデータ・ストアからデータウェアハウスセンター プログラムを説明する値を取得しなければなりません。
プログラムは取得した値でテンプレート内の適切なトークンを置換しなければなりません。
図 8 は、データウェアハウスセンターによって管理および実行されるアプリケーションを定義するため、プログラムで使用できるロジックの疑似コードを示しています。
図 8. データウェアハウスセンター プログラムを定義するための疑似コード
Read a copy of the VWPGroup.tag template Search for and replace tokens with the metadata from your native metadata store (or defaults) Append the output to a target file For each application that is to be managed by the Data Warehouse Center: Read a copy of the VWPProgramTemplate.tag template Search for and replace tokens with the metadata from your native metadata store (or defaults) Append the output to a target file For each parameter the application needs passed: Read a copy of the VWPProgramTemplateParameter.tag template Search for and replace tokens with the metadata from your native metadata store (or defaults) Append the output to a target file End (for each parameter) End (for each application) |
ISV_Sample プログラムは、データウェアハウスセンター プログラムをタグ言語ファイルに追加する例を示しています。プログラムのソース・コードは、VWS_TEMPLATES 環境変数によって設定されたディレクトリーの Samples サブディレクトリーにあります。
ステップとは、ウェアハウス・プロセスでデータに対する単一の操作のことです。ほとんどの場合、ステップにはウェアハウス・ソース、データの変換または移動、およびウェアハウス・ターゲットが含まれます。ステップはスケジュールに従って実行したり、他のステップからの連鎖で実行することができます。ステップを使用して、データの抽出、変換、および書き込みにおける各ステップを定義およびスケジューリングします。データウェアハウスセンターが管理するようにしたい変換プロセスの部分ごとに、ステップを定義しなければなりません。データウェアハウスセンター オンライン・ヘルプの情報を使用するよりも、この節の情報を使用してステップを定義する方法を決めてください。ユーザー・インターフェースを使用してステップを定義すると、テンプレートには複数の異なる関係が必要となります。
ステップのためのサブジェクト・エリアを定義しなければなりません。特定のパートナー・アプリケーションを使用するステップのために、サブジェクト・エリアを定義することができます。
タグ言語ファイルにステップが含まれる場合、以下のオブジェクトを順序どおりに定義しなければなりません。
ステップを定義するには、以下のように行います。
表 10 は、ステップを定義するために、プログラムがコピーして変更しなければならないテンプレートを示しています。
定義 | テンプレートのコピー数 | コピーするテンプレート | 前提条件となるテンプレート |
---|---|---|---|
サブジェクト・エリア | サブジェクト・エリアごとに 1 コピー | SubjectArea.tag | HeaderInfo.tag
デフォルト・エージェントを使用していない場合、AgentSite.tag |
プロセス | プロセスごとに 1 コピー | Process.tag | SubjectArea.tag |
ステップ | ステップごとに 1 コピー | Step.tag | SubjectArea.tag
|
ステップのソース表 | ステップのソース表ごとに 1 コピー | StepInputTable.tag | Table.tag
|
ステップのターゲット表 | ステップにターゲット表がある場合、1 コピー | StepOutputTable.tag | Table.tag
|
データウェアハウスセンター プログラムを使用するステップのターゲット表 | プログラムによって更新される各ターゲット表を記述するために 1 コピー | StepOutputTable.tag | Table.tag
|
データウェアハウスセンター プログラム・インスタンス | ステップがデータウェアハウスセンター プログラムを使用する場合、1 コピー | StepVWPProgramInstance.tag | VWPProgramTemplate.tag
|
データウェアハウスセンター プログラム・インスタンスのパラメーター | ステップで使用されるパラメーターごとに 1 コピー | VWPProgramInstanceParameter.tag | StepVWPProgramInstance.tag |
テンプレート内に共通の値を指定することによって、サブジェクト・エリアのテンプレートとプロセスのテンプレートとを関連付けます。同様に、テンプレート内に共通の値を指定することによって、ステップのテンプレートと入力表および出力表のテンプレートとを関連付けます。さらに、テンプレート内に共通の値を指定することによって、ステップのテンプレートとプログラム・インスタンスのテンプレートとを関連付けることができます。
図 9 は、サブジェクト・エリア、ステップ、ステップ入力表、ステップ出力表、ステップ VWP プログラム・インスタンス、および VWP プログラム・インスタンス・パラメーター・タグの間の関係を示しています。
図 9. SubjectArea.tag、Process.tag、Step.tag、StepInputTable.tag、StepOutputTable.tag、 StepVWPOutputTable.tag、StepVWPProgramInstance.tag、および VWPProgramInstanceParameter.tag の各テンプレートの間の関係. データウェアハウスセンター プログラム・テンプレートのテンプレートと他のデータウェアハウスセンター プログラムのテンプレートとがどのように関連するかは、 図 7 をご覧ください。
![]() |
プログラムは、パートナー・メタデータ・ストアからサブジェクト・エリアまたはステップを説明する値を取得しなければなりません。
プログラムは取得した値でテンプレート内の適切なトークンを置換しなければなりません。
図 10 は、タグ言語ファイル内にステップを定義するためにプログラムで使用できる、ロジックの疑似コードを示しています。
図 10. タグ言語ファイルにステップを定義するための疑似コード
Read a copy of the SubjectArea.tag template Search for and replace tokens with the metadata from your native metadata store (or defaults) Append the output to a target file Read a copy of the process For each step to be defined: Read a copy of the Step.tag template Search for and replace tokens with the metadata from your native metadata store (or defaults) Append the output to a target file If the step is to execute your application: Read a copy of the StepVWPProgramInstance.tag template Search for and replace tokens with the metadata from your native metadata store (or defaults) Append the output to a target file For each parameter that your application needs: Read a copy of the VWPProgramInstanceParameter.tag template Search for and replace tokens with the metadata from your native metadata store (or defaults) Append the output to a target file End (for each parameter) If the step is to be related to its VWP output target data: Read a copy of the StepVWPOutputTable.tag template Search for and replace tokens with the metadata from your native metadata store (or defaults) Append the output to a target file End (step relation to its output) End (if step to execute your application) If the step is to be related to its input source data: Read a copy of the StepInputTable.tag template Search for and replace tokens with the metadata from your native metadata store (or defaults) Append the output to a target file End (step relation to its source) If the step is to be related to its output target data: Read a copy of the StepOutputTable.tag template Search for and replace tokens with the metadata from your native metadata store (or defaults) Append the output to a target file End (step relation to its target) End (for each step) |
ISV_Sample プログラムは、ステップをタグ言語ファイルに追加する例を示しています。プログラムのソース・コードは、VWS_TEMPLATES 環境変数によって設定されたディレクトリーの Samples サブディレクトリーにあります。
タグ言語ファイル内で、ステップが他のステップを開始するように指定できます。
連鎖ステップを定義するには、以下のように行います。
表 11 は、連鎖関係を定義するために、プログラムがコピーして変更しなければならないテンプレートを示しています。
定義 | テンプレートのコピー数 | コピーするテンプレート | 前提条件となるテンプレート |
---|---|---|---|
ステップの連鎖関係 | 関係ごとに 1 コピー | StepCascade.tag | StepCascade.tag |
以下を行うために、プログラムはステップの名前および別のステップの名前を指定しなければなりません。
プログラムは取得した値でテンプレート内の適切なトークンを置換しなければなりません。
図 11 は、アプリケーションが 2 つのステップを関連付けて、 1 つのステップが別のステップの完了時に開始するようにするためにプログラムで使用できる、ロジックの疑似コードを示しています。
Read a copy of the StepCascade.tag template Search for and replace tokens with the metadata from your native metadata store (or defaults) Append the output to a target file End (relate steps for cascaded processing) |
ISV_Sample プログラムは、タグ言語ファイル内でステップを関連付けて連鎖処理を行う方法の例を示しています。プログラムのソース・コードは、VWS_TEMPLATES 環境変数によって設定されたディレクトリーの Samples サブディレクトリーにあります。
コマンド・ウィンドウまたはユーザー・インターフェースを使用して、メタデータをタグ言語ファイルからインポートすることができます。この節では、コマンド・ウィンドウの使用方法を解説します。ユーザー・インターフェースの使用方法については、データウェアハウスセンターのオンライン・ヘルプを参照してください。
タグ言語ファイルをインポートするためには、DOS コマンド・プロンプトから以下のコマンドを入力します。
iwh2imp2 tag-filename log-pathname target-control-db userid password [PREFIX = schema]
接頭部が指定されない場合、デフォルト値は IWH です。
インポート・コマンドのパラメーターに関するヘルプを表示するには、コマンドだけを入力します。
インポート・ユーティリティーはメタデータをタグ言語ファイルからインポートするときに、以下のファイル名とファイル拡張子を持つログ・ファイルを作成します。
インポート・プロセスは、戻りコードおよび最後に完了したチェックポイントをログ・ファイルの末尾に記録します。
system() 呼び出しまたは rexec() 呼び出しを使用して、戻りコードを交換プログラムにコーディングすることもできます。使用する呼び出しは、プログラムを実行しているオペレーティング・システムに依存します。
メタデータをデータウェアハウスセンターにインポートすることについての詳細は、 データウェアハウスセンター 管理の手引き を参照してください。
メタデータをデータウェアハウスセンターにインポートした後、以下の手順を完了して、ウェアハウスのための自動処理をセットアップしなければなりません。
変更を加える必要がある場合、以下のように行います。
プログラムを更新して、これらの変更が反映されるようにします。
これで、ステップは自動スケジュールによって実行するようになりました。