データウェアハウスセンターを使用すると、 DB2 データベース視点として MQSeries メッセージ・キューからデータにアクセスできます。 DB2 表関数、およびデータへのアクセスを可能にする DB2 視点を作成するため、 ウィザードが提供されています。 MQSeries メッセージはそれぞれ、指定にしたがって構文解析され、結果行として返される 区切りストリングとして扱われます。 さらに、XML 文書である MQSeries メッセージにウェアハウス・ソースとしてアクセスできます。 データウェアハウスセンターを使用して、MQSeries メッセージ・キュー および DB2 XML エクステンダー文書アクセス定義 (DAD) ファイルからデータをインポートできます。
DB2 ユニバーサル・データベース バージョン 7.2
DB2 ウェアハウス・マネージャー バージョン 7.2
MQSeries サポート。 MQSeries の要件について詳しくは、MQSeries を参照してください。 ウェアハウス・ソースのセットアップについては、ユーザー定義機能の セットアップ・セクションを参照してください。
ウェアハウス・ソース・データベースをカタログすると、 データベース別名がエージェント・マシンでカタログされます。 ただし、MQSeries および XML 視点を作成すると、データウェアハウスセンターは データベース別名がクライアント・マシンにも定義されると想定し、 ウェアハウス・ソース・データベースのユーザー ID およびパスワードを使用して クライアント・マシンに接続しようとします。 成功した場合、ウィザードが呼び出され、視点を作成することができます。 成功しなかった場合、警告メッセージが表示され、 ウィザードで別のデータベース別名をカタログまたは選択する必要があります。
MQ メッセージの最大長については、「リリース・ノート」の 「SQL 解説書」セクションを参照してください。
MQSeries メッセージの視点を作成するには:
MQSeries ウィザードがオープンします。 ウィザードを完了したら、新しい視点がデータウェアハウスセンターに作成されます。 視点を選択すると、MQSeries キューがアクセスされ、ウィザードでの指定にしたがって 各メッセージが区切りストリングとして構文解析されます。
DB2 ユニバーサル・データベース バージョン 7.2
DB2 XML エクステンダー バージョン 7.2
MQSeries サポート。 MQSeries の要件について詳しくは、MQSeries を参照してください。 ウェアハウス・ソースのセットアップについては、ユーザー定義機能の セットアップ・セクションを参照してください。
1 次または外部キーを持つターゲット表が存在する場合、インポートは失敗します。 インポートの前に、データウェアハウスセンターでこれらのキーの定義を手操作で削除する必要があります。
MQSeries メタデータをデータウェアハウスセンターにインポートするには:
ステップで実行時にターゲット表の内容を置換したい場合、 「表の内容の置換」ラジオ・ボタンをクリックします。
ステップで実行時にターゲット表の内容に追加したい場合、 「表の内容に追加」ラジオ・ボタンをクリックします。
「メタデータのインポート」ウィンドウがクローズします。
インポート操作が完了すると、以下のウェアハウス・オブジェクトが ウェアハウス・ツリーに追加されます。
ウェアハウス・ターゲット・エージェント・サイトがローカル・マシンではない場合、 ステップ・パラメーターを変更する必要があります。
MQSeries および XML ストアード・プロシージャーは MQXMLXF と 呼ばれ、DB2 データウェアハウスセンター バージョン 7.2 (Windows NT および UNIX 版) に 含まれています。 MQSeries および XML メタデータをインポートしたときに作成されるステップが、 ストアード・プロシージャーを実行します。 パラメーターを次の表で説明します。
パラメーター | 値 |
MQSeries ServiceName | メッセージの送信先または検索元となるサービス・ポイントの名前。 |
MQSeries PolicyName | メッセージング・システムが操作を行うために使用するポリシーの名前。 |
DAD ファイル名 | DB2 XML エクステンダー DAD ファイルの名前。 |
TargetTableList | コンマで区切られたステップのターゲット表のリスト |
オプション | REPLACE または APPEND |
RUN ID | ステップのエディション番号 (ログに記録するため) |
|
ステップの実行時、ストアード・プロシージャーがエラー・コード SQLCODE -443 および SQLSTATE 38600 を
返す場合があります。
エラーを診断するためには、次の表を参照してください。
エラー番号 | 説明 |
AMIRC=xxxxx;<log file name> | xxxxx は、AMI 層からの戻りコードです。 詳しくは、MQSeries の資料を参照してください。 <log file name> はログ・ファイルのロケーションを示しています。 |
XMLRC=xxxxx;<log file name> | xxxxx は、DB2 XML エクステンダーからの戻りコードです。 戻りコードの説明については、DB2 XML エクステンダーの資料を参照してください。 <log file name> はログ・ファイルのロケーションを示しています。 |
SQLCODE=xxxxx;<log file name> | xxxxx は、SQL 要求が実行されたときに 返される非ゼロの SQLCODE です。 <log file name> はログ・ファイルのロケーションを示しています。 |
すべてのエラーについて詳しくは、ログ・ファイルを調べてください。
MQXMLXF が実行されると、データウェアハウスセンターはすべての診断情報を ログ・ファイルに保管します。 ログ・ファイルの名前は mqxf<nnnnnnnn>.log です。 ここで <nnnnnnnn> は、ストアード・プロシージャーに渡された 実行 ID です。 データウェアハウスセンターは、VWS_LOGGING 環境変数によって指定されているディレクトリーに ファイルを作成します。 この環境が定義されていない場合、ログ・ファイルは一時ディレクトリーに作成されます。
VWS_LOGGING 環境変数を UNIX プラットフォームのストアード・プロシージャーから 見えるようにするには、db2start コマンドの前に db2set コマンドを 使用し、DB2ENVLIST 環境変数に VWS_LOGGING を追加する必要があります。 環境コマンドの例:
db2set DB2ENVLIST="AMT_DATA_PATH VWS_LOGGING" |
ステップが正常に実行された場合、ログ・ファイルは削除されます。