データ変換

WebSphere® MQ または IBM® Integration Bus 機能を使用して、メッセージ・フローが異なる環境間で転送するデータを変換します。

データ変換とは、あるオペレーティング・システムで認識される形式のデータを、別のオペレーティング・システムで認識される、特性の異なる (数値順序など) 形式に変換する処理のことです。

数値を保管するために異なるメソッドを使用するシステムのネットワークを使用するか、または異なるコード・ページでデータを表示するユーザー間で通信する必要がある場合、データ変換のインプリメント方法を考慮する必要があります。

コード・ページ変換
コード・ページ変換は、以下の 1 つ以上の理由で必要になる場合があります。
  • ASCII 対 EBCDIC
  • 各国語に固有のコード・ページ
  • オペレーティング・システムに固有のコード・ページ

WebSphere MQでは、これらの要因は MQMD ヘッダーの CCSID フィールドによって処理されます。 MQMD ヘッダーについて詳しくは、 WebSphere MQ バージョン 7.5 オンライン製品資料アプリケーション・プログラミング・リファレンス セクションの「MQMD-メッセージ記述子」を参照してください。 コード・ページ・サポートの詳細については、同じく「アプリケーション・プログラミング・リファレンス」セクションにある『コード・ページ変換』を参照してください。

エンコード
エンコード (バイト・オーダー) 変換は、以下のいずれかまたは両方の理由で必要になる場合があります。
  • ビッグ・エンディアン対リトル・エンディアン

    エンディアンは、データをコンピューター・メモリーに保管または送信する際に、最上位バイトを最初にするか (ビッグ・エンディアン) それとも最後にするか (リトル・エンディアン) を示すデータ属性です。

  • 浮動小数点数の表記

WebSphere MQでは、これらの要因は MQMD ヘッダーの Encoding フィールドによって処理されます。 MQMD ヘッダーについて詳しくは、 WebSphere MQ バージョン 7.5 オンライン製品資料アプリケーション・プログラミング・リファレンス セクションの「MQMD-メッセージ記述子」を参照してください。 エンコードの詳細については、同じく「アプリケーション・プログラミング・リファレンス」セクションにある『マシン・エンコード』を参照してください。

メッセージを受け取るためのメッセージ・フローを構成する場合:
  • WebSphere MQ ヘッダーを使用する WebSphere MQ プロトコルを介して受信されるメッセージには、MQMD ヘッダーのコード・ページ・エンコード特性、およびオプションで他の WebSphere MQ ヘッダーのコード・ページ・エンコード特性が含まれます。
  • WebSphere MQ ヘッダーを使用しないプロトコルを介して受信されるメッセージには、これらの特性は含まれません。 メッセージ・フローのノードでプロパティーを使用することにより、これらの特性を構成します。 例えば、 ファイル入力 ノードの メッセージ・コード化文字セット ID プロパティーと メッセージ・エンコード プロパティーを設定します。
他のアプリケーションやシステムにメッセージを送るためのメッセージ・フローを構成する場合:
  • WebSphere MQ プロトコルを介して送信されるメッセージには、MQMD ヘッダーのコード・ページ・エンコード特性、およびオプションで他の WebSphere MQ ヘッダーのコード・ページ・エンコード特性が含まれます。
  • WebSphere MQ ヘッダーを使用しないプロトコルを介して送信されるメッセージは、これらの特性を論理メッセージ・ツリー構造の「プロパティー」フォルダーに組み込むように変更する必要があります。 出力ノードによって呼び出されるパーサーは、これらの値を使って正しいビット・ストリームを生成します。

IBM Integration Busを使用する場合、 IBM Integration BusWebSphere MQ、またはその両方のデータ変換機能を使用できます。

IBM Integration Bus 機能
IBM Integration Toolkitを介して MRM ドメイン内のメッセージをモデル化できます。 メッセージの事前定義エレメントは、そのタイプおよび物理層の特性に応じて変換されます。 詳しくは、 メッセージ・セット: 物理プロパティーの構成を参照してください。 ユーザー定義のメッセージを使用することもできます。 その後、 計算または JavaCompute (計算) ノードを使用して、エンコードと CCSID を構成できます。 WebSphere MQ データ変換出口は必要ありません。
  • ストリング・データは、CCSID 設定に応じて変換されます。
  • 10 進整数および浮動小数点拡張 10 進数タイプは、CCSID 設定に応じて変換されます。
  • 10 進整数および浮動小数点 (その他の物理データ・タイプ) は、エンコード設定に応じて変換されます。
  • バイナリーおよびブール・データは変換されません。

IBM Integration Bus は、パーサーが提供されている WebSphere MQ ヘッダーを変換することもできます。

IBM Integration Bus 機能を使用すると、メッセージ全体が指定されたエンコードおよび CCSID に変換されません。各ヘッダーに異なるエンコードまたは CCSID、あるいはその両方を指定して、メッセージの以下の部分に対して異なる変換を実行することができます。 最後のヘッダー内のエンコードおよび CCSID は、メッセージ本体のための値を定義します。

WebSphere MQ 機能

ヘッダーとメッセージ本体は、該当する MQMD フィールドで設定された値、および他のヘッダー・フォーマット名に従って変換されます。 場合によっては、メッセージの本体を変換するためにデータ変換出口をセットアップする必要があります。

WebSphere MQ 機能を使用すると、メッセージ全体が、 WebSphere MQ ヘッダーの形式の設定に従って、指定されたエンコードおよび CCSID に変換されます。

WebSphere MQ 機能を使用したデータ変換について詳しくは、 WebSphere MQ バージョン 7.5 オンライン製品資料アプリケーション・プログラミング・リファレンス セクションの「データ変換」を参照してください。