Data Warehouse サンプルの拡張

Data Warehouse サンプルは、簡単に拡張したり、既存の形で他のメッセージ・フローで使用したりできるように設計されています。 付属している版のサンプルは、妥当性検査やビジネス・ルールの適用など、メッセージ内容に関する処理を実行しませんが、この種の処理を追加することができます。

着信メッセージを BLOB に変換してデータベースに挿入するという、Compute ノード Warehouse_Input_Message の処理を、ほとんど、または全く変更を加えずに、現行の形で別のメッセージ・フローに追加できます。これをサブフローに変換することで、再利用の可能性が広がります。

提供されている版のサンプルでは、1 回の挿入で、入力メッセージのメッセージ・ツリー全体がデータベースに挿入されます。データベースに挿入する前にメッセージを複数の部分に分割したり、メッセージ・ツリーの一部だけをアーカイブしたりすることができます。この場合は、ASBITSTREAM 関数に対して別のフィールド参照を指定してください。

このサンプルで使用されている入力メッセージは、XML 形式のペイロードが入った WebSphere MQ メッセージです。メッセージ・フローに変更を加えることで、タイプや形式の異なるメッセージを同じ方法でアーカイブすることもできます。メッセージの解析とメッセージ・ツリーの作成が済んだ後の処理は、この例と同じです。

このようなアーカイブ手法を使用する際には、データの保持に最適なデータ・ストアを使用するようにしなければなりません。 長期に渡ってデータを保管しなければならない場合、情報を保持する場所として適切なのはデータベースです。メッセージ・フローの実行の過程で使用する情報を短期間保持する場合、データベースは適切ではありません。そのような状況では、代わりに WebSphere MQ メッセージの使用を考慮できます。その場合、MQOutput ノードを使用してメッセージを書き出し、MQGET ノードを使用してメッセージを取り出します。WebSphere MQ メッセージの使用法として最適なのは、情報を短期間保管することです。データを長期間保管する場合は、データベースを考慮できます。メッセージ・フローで MQGET ノードを使用する方法に関する図については、Coordinated Request Reply サンプルを参照してください。

他の状況でサンプルを使用する場合は、データベース・ノードの「データ・ソース」名 (Database ノードの「基本」プロパティー・フォルダーで指定) を変更する必要が出てくると考えられます。ここには、「挿入」を実行する対象のデータベースが指定されます。

変更を加える際、ノードのパラメーター設定をすべて検討して、ご自分の要件と互換性のある設定になっているかどうかを確認するのはよい習慣です。

メインページのアイコン   サンプルのホームに戻る