Hitachi

ノンストップデータベース HiRDB Version 9 コマンドリファレンス(Windows(R)用)


5.1.7 エンディアンが異なるプラットフォーム間のデータ移行

既存のHiRDBシステムを別のHiRDBシステムに移行する場合,既存システムのデータを別システムに移行する必要があります。データ移行時,移行元システムと移行先システムでエンディアンが異なる場合,pdloadが入力データファイルのエンディアンを変換して移行先システムにデータロードできます。このとき,入力データファイルには,pdrorgを使用してバイナリ形式でアンロードしたファイル(pdrorg出力バイナリ形式ファイル)を指定します。エンディアンが異なるプラットフォーム間のデータ移行の概要を次の図に示します。

図5‒5 エンディアンが異なるプラットフォーム間のデータ移行の概要

[図データ]

[説明]

移行元システムでpdrorgを使用してデータをアンロードします。アンロードデータファイルを移行先システムに転送し,pdloadでエンディアンを変換してデータロードします。

pdrorg出力バイナリ形式ファイルについては,「pdrorg出力バイナリ形式ファイル」を参照してください。

〈この項の構成〉

(1) エンディアン変換の有無

入力データの制御情報中の数値データと数値型データをエンディアン変換します。FIX表と非FIX表の入力データの変換有無をそれぞれ次の表に示します。

表5‒3 エンディアン変換の有無(FIX表)

データ型

エンディアン変換の有無

INTEGER

SMALLINT

DECIMAL

×

FLOAT※1

SMALLFLT※1

CHAR

×※2

NCHAR

×※2

MCHAR

×※2

DATE

×

TIME

×

TIMESTAMP

×

INTERVAL YEAR TO DAY

×

INTERVAL HOUR TO SECOND

×

(凡例)

○:エンディアン変換します。

×:エンディアン変換しません。

注※1

浮動小数点数はハードウェア表現によって精度が異なり,プラットフォーム間移行によってけた落ちが発生するおそれがありますが,これに関しては保証しません。

注※2

データ中に数値が入っていても,データ中のエンディアン変換はしません。

表5‒4 エンディアン変換の有無(非FIX表)

箇所

データ型

エンディアン変換の有無

基本行データの長さ及びオフセット部

既定義型の列データ値

INTEGER

SMALLINT

DECIMAL

×

FLOAT※1

SMALLFLT※1

CHAR

×※2

VARCHAR

※2

NCHAR

×※2

NVARCHAR

※2

MCHAR

×※2

MVARCHAR

※2

DATE

×

TIME

×

TIMESTAMP

×

INTERVAL YEAR TO DAY

×

INTERVAL HOUR TO SECOND

×

BINARY

※2

BLOB

※2

コンストラクタ関数の引数のデータ値

INTEGER

SMALLINT

FLOAT※1

SMALLFLT※1

CHAR

×※2

VARCHAR

※2

NCHAR

×※2

NVARCHAR

※2

MCHAR

×※2

MVARCHAR

※2

BINARY

※2

BLOB

※2

繰返し列の要素数

繰返し列のナル値フラグ

×

繰返し要素値

※3

BINARY引数のデータ値

×

BINARY列のデータ値

×

BLOB引数のデータ値

×※2

BLOB列のデータ値

×※2

(凡例)

○:エンディアン変換します。

△:実データ長部分だけをエンディアン変換します。

×:エンディアン変換しません。

−:該当しません。

注※1

浮動小数点数はハードウェア表現によって精度が異なり,プラットフォーム間移行によってけた落ちが発生するおそれがありますが,これに関しては保証しません。

注※2

データ中に数値が入っていても,データ中のエンディアン変換はしません。

注※3

繰返し列の要素値は既定義型の列データ値で該当するデータ型を参照してください。