(57)【要約】【課題】ホスト側に依存することなく、汎用的にデータを取り扱うことができ、また、移行時におけるデータ更新時間を短縮することもできるデータ移行方法及びデータ移行システムを提供すること。【解決手段】ホスト１１側は、蓄積されたデータを単にレコード単位のシーケンシャルファイル１７として出力すればよく、一方、データ移行先のコンピュータシステム１３では、移行処理手段１４により、出力されたシーケンシャルファイル１７を移行先のデータベース１５に合わせて編集してデータベーステキストファイル１８を作成するので、ホスト１１側の機器やツールに依存したり制約されることなく、汎用的にデータ処理を行なうことができる。【選択図】　図１
2004110283.tif 000002
【特許請求の範囲】
【請求項１】
ホスト側に蓄積されたデータを、データベース構造の異なる他のコンピュータシステムのデータベースに移行させるデータ移行方法であって、
ホスト側に蓄積された移行対象のデータをデータベース単位で順次出力したシーケンシャルファイルを、
予め設定したデータベーステキスト変換ファイルに基づき、移行先のデータベースに合わせて編集したデータベーステキストファイルを作成し、
このデータベーステキストファイルのデータを前記移行先のデータベースにロードする
ことを特徴とするデータ移行方法。
【請求項２】
シーケンシャルファイルはホスト側から所定の周期で出力され、
前回周期のシーケンシャルファイルに基づくデータベーステキストファイルのデータと、今回周期のシーケンシャルファイルに基づくデータベーステキストファイルのデータとの差分データを作成し、
予め設定された言語構築ファイルを用いて、これら各差分データに対応するデータベースアクセス用の言語ファイルを作成し、
この言語ファイルに基づき対応する差分データで移行先のデータベースを更新する
ことを特徴とする請求項１に記載のデータ移行方法。
【請求項３】
移行先のデータベースはリレーショナルデータベースであり、データベーステキストファイルは、テーブル毎に作成される
ことを特徴とする請求項１に記載のデータ移行方法。
【請求項４】
ホスト側に蓄積されたデータを、データベース構造の異なる他のコンピュータシステムのデータベースに移行させるデータ移行システムであって、
ホスト側に蓄積された移行対象のデータをデータベース単位で順次出力したシーケンシャルファイルを、予め設定したデータベーステキスト変換ファイルに従い、移行先のデータベースに合わせて編集したデータベーステキストファイルを作成するデータベーステキスト作成処理手段と、
このデータベーステキストファイルのデータを前記移行先のデータベースにロードするローダと、
を備えたことを特徴とするデータ移行システム。
【請求項５】
シーケンシャルファイルはホスト側から所定の周期で出力されており、
前回周期のシーケンシャルファイルに基づくデータベーステキストファイルのデータと、今回周期のシーケンシャルファイルに基づくデータベーステキストファイルのデータとの差分データを作成する差分ファイル作成処理手段と、
予め設定された言語構築ファイルを用いて、これら各差分データに対応するデータベースアクセス用の言語ファイルを作成する言語ファイル作成処理手段と、
この言語ファイルに基づき対応する差分データで移行先のデータベースを更新するデータ更新手段と、
を設けたことを特徴とする請求項４に記載のデータ移行システム。
【請求項６】
移行先のデータベースはリレーショナルデータベースであり、データベーステキストファイルは、テーブル毎に作成されている
ことを特徴とする請求項４に記載のデータ移行システム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、ホスト側に蓄積されたデータを、データベース構造の異なる他のコンピュータシステムのデータベースに移行させるデータ移行方法およびデータ移行システムに関する。
【０００２】
【従来の技術】
一般に、多くのデータを扱うコンピュータシステムでは、ホストに蓄積された各種データのうち、必要とするデータを他のコンピュータシステムのデータベースに定期的に移行し、更新することが行われている（例えば、特許文献１参照）。
【０００３】
このようなコンピュータシステムにおいて、例えば、ホスト側のデータベースに、各種製品に関する顧客情報が蓄積されており、所定の周期（例えば、月に一回）で統計データを作成する場合など、ホスト側から、統計データを必要とする営業所などのコンピュータシステムにデータを移行し、移行先のコンピュータシステムで統計データを作成するようなことがある。
【０００４】
このような場合、ホスト側と移行先のコンピュータシステムで、データベースの構造が異なることが往々にしてある。この場合、ホストメーカの協力により、ホストのデータベースの種類に合わせたホストメーカ関連製品や、特定のツールを用いなければ、データの移行が困難であった。
【０００５】
また、実際にデータの移行を行なう場合、移行毎に対象となる全データを出力して再構築しなければならず、データ取扱量が膨大になると共に、再構築のため多くのデータ更新時間を必要とする。
【０００６】
【特許文献１】
特開２００１−２３６２５０号公報
【０００７】
【発明が解決しようとする課題】
このように、ホスト側とコンピュータシステムが異なる場合、ホストメーカに依存したツール等が必要となり、汎用的な取り扱いが困難であった。また、移行に際しても、その都度対象となる全データを出力し、これを再構築しなければならず、多くのデータ更新時間を要した。
【０００８】
本発明の目的は、ホスト側に依存することなく、汎用的にデータを取り扱うことができ、また、移行時におけるデータ更新時間を短縮することもできるデータ移行方法及びデータ移行システムを提供することにある。
【０００９】
【課題を解決するための手段】
本発明によるデータ移行方法は、ホスト側に蓄積されたデータを、データベース構造の異なる他のコンピュータシステムのデータベースに移行させる方法で、ホスト側に蓄積された移行対象のデータをデータベース単位で順次出力したシーケンシャルファイルを、予め設定したデータベース変換ファイルに基づき、移行先のデータベースに合わせて編集したデータベーステキストファイルを作成し、このデータベーステキストファイルのデータを前記移行先のデータベースにロードすることを特徴とする。
【００１０】
また、この場合、シーケンシャルファイルはホスト側から所定の周期で出力され、前回周期のシーケンシャルファイルに基づくデータベーステキストファイルのデータと、今回周期のシーケンシャルファイルに基づくデータベーステキストファイルのデータとの差分データを作成し、予め設定された言語構築ファイルを用いて、これら各差分データに対応するデータベースアクセス用の言語ファイルを作成し、この言語ファイルに基づき対応する差分データで移行先のデータベースを更新するようにしてもよい。
【００１１】
本発明によるデータ移行システムは、ホスト側に蓄積されたデータを、データベース構造の異なる他のコンピュータシステムのデータベースに移行させるシステムであって、ホスト側に蓄積された移行対象のデータをデータベース単位で順次出力したシーケンシャルファイルを、予め設定したデータベース変換ファイルに従い、移行先のデータベースに合わせて編集したデータベーステキストファイルを作成するデータベーステキスト作成処理手段と、このデータベーステキストファイルのデータを前記移行先のデータベースにロードするローダとを備えたことを特徴とする。
【００１２】
また、本発明のデータ移行システムでは、シーケンシャルファイルはホスト側から所定の周期で出力されており、前回周期のシーケンシャルファイルに基づくデータベーステキストファイルのデータと、今回周期のシーケンシャルファイルに基づくデータベーステキストファイルのデータとの差分データを作成する差分ファイル作成処理手段と、予め設定された言語構築ファイルを用いて、これら各差分データに対応するデータベースアクセス用の言語ファイルを作成する言語ファイル作成手段と、この言語ファイルに基づき対応する差分データで移行先のデータベースを更新するデータ更新手段とを設けた構成にしてもよい。
【００１３】
本発明では、移行先のデータベースはリレーショナルデータベースであり、データベーステキストファイルは、テーブル毎に作成されているとよい。
【００１４】
これらの発明では、ホスト側は、蓄積されたデータを単にデータベース単位のシーケンシャルファイルとして出力すればよく、一方、データ移行先のコンピュータシステムでは出力されたシーケンシャルファイルを移行先のデータベースに合わせて編集してデータベーステキストファイルを作成するので、ホスト側の機器やツールに依存したり制約されることなく、汎用的にデータ処理を行なうことができる。
【００１５】
また、移行先における定期的なデータ更新時には、前回周期に作成されたデータベーステキストファイルのデータと今回周期で作成されたデータベーステキストファイルのデータとの差分データを作成し、これによって移行先データベースを更新するので、従来のように全データを再構築する場合に比べ、取り扱うデータ量が少なくなり更新時間も短くなる。
【００１６】
【発明の実施の形態】
以下、本発明によるデータ移行方法およびそのシステムの一実施の形態を、図面を参照して説明する。
【００１７】
図１は本発明が適用されるシステムの概略構成を示すブロック図である。１１はホスト側のコンピュータで、そのデータベース１２には、各種のデータが蓄積されている。例えば、各種の製品毎に、顧客の氏名や年齢、住所情報や履歴情報等が、階層型のデータベースに１２に蓄積されているものとする。
【００１８】
１３はサーバ等として用いられる他のコンピュータシステム（以下、サーバとして説明する）で、移行処理手段１４およびリレーショナルデータベース（以下、ＲＤＢと呼ぶ）１５を有する。１６は端末で、サーバ１３のＲＤＢ１５に格納されたデータの紹介や検索等に用いられる。
【００１９】
ホスト１１は、蓄積されたデータのうち、サーバ１３への移行対象データを、所定の周期（例えば１ヶ月に１回）毎に、データベース単位でシーケンシャルに出力したシーケンシャルファイル（以下、ＳＡＭファイルと呼ぶ）１７をサーバ１３に送る。
【００２０】
サーバ１３は、ホスト１１から出力されたＳＡＭファイル１７を受け、これを移行処理手段１４によって編集（文字コード変換、項目結合・分割など）を行い、ＲＤＢ１５のテーブルに合わせた形でシーケンシャルファイルを作成する。これをデータベーステキストファイル（以下、ＤＢテキストファイルと呼ぶ）とし、このＤＢテキストファイル１８によりＲＤＢ１５を構築又は更新する。
【００２１】
サーバ１３は、更新されたＲＤＢ１５のデータを用い、例えば、月単位の統計データを、図示しない統計処理手段により作成する。
【００２２】
以下、移行処理手段１４による、移行処理の詳細を図２乃至図５を用いて詳細に説明する。
【００２３】
なお、図２は移行処理手段１４による処理手順の流れを説明するフローチャート、図３および図４はこの処理に伴うデータの流れを説明するブロックチャートであり、図３はＲＤＢ１５の初期構築時を表し、図４は更新時を表している。また、図５は上記処理の流れに伴う各データファイルの構成を示している。
【００２４】
図２において、所定周期における移行処理が開始すると（Ｓ２０１）、移行対象となるファイルの有無を判断する（Ｓ２０２）。その結果、対象ファイルがない場合は、端末に実行不可を通知し（Ｓ２２６）、終了する（Ｓ２２８）。
【００２５】
対象ファイルが有る場合は、そのループ処理（Ｓ２０３）を経て、データ変換処理に進む。すなわち、図３および図４で示すように、ホスト１１から出力されたＳＡＭファイル１７が、サーバ１３側に保存されているかを判断し、保存されている（有る）場合は、予め設定してあるＤＢテキスト変換ファイル２１を用いてＤＢテキスト作成処理手段２２により、ＤＢテキスト１８を作成する。
【００２６】
ここで、ＳＡＭファイル１７のファイル構成を図５（ｃ）により説明する。図１で示したホスト１１のデータベースは階層構成であり、例えば、顧客のあて名ファイルは、図５（ａ）のように、あて名本体のレコードと住所情報のレコード、履歴情報のレコードが、階層構成で保存されている。この１レコード（レコード長：１００バイト）のレイアウトを図５（ｂ）で示す。ＳＡＭファイル１７は、図５（ｃ）で示すように、これらレコードを、シーケンシャルに出力して構成したものである。
【００２７】
図２に戻って、ループ処理（Ｓ２０３）を経た後、中止要求の有無を判断する（Ｓ２０４）。もし、端末１６から移行中止要求がある場合は、端末１６へ実行中断を通知し（Ｓ２２７）、終了する（Ｓ２２８）。中止要求がない場合はＳＡＭファイル１７を読み込み（Ｓ２０５）、構造異常の有無を判断する（Ｓ２０６）。構造異常がある場合は、エラーログ（図３および図４の２３）を出力する（Ｓ２０７）。
【００２８】
構造異常がない場合は、まずコード変換を行う（Ｓ２０８）。すなわち、ホスト１１側とサーバ側では使っている文字コードが異なり、外字なども使っているので、パック形式データのアンパックを含め、文字コードを変換する。次に、コード変換以外のデータ変換（タイプ変換）を行う（Ｓ２０９）。例えば、日付データはＲＤＢ１５のｄａｔｅ型へ統一して変換するなどの処理を実施する。
【００２９】
次に、ＲＤＢ１５のテーブル単位のＤＢテキストファイルを作成し・保存する（Ｓ２１０）。すなわち、ＳＡＭファイル１７は、図５（ｃ）で示したように、各レコードをシーケンシャルに配列しただけの構成であるため、そのままではＲＤＢ１５に適用できない。そこで、データ項目の結合・分割などの編集を行い、図５（ｅ）で示すように、ＲＤＢ１５のテーブルに合わせた構成のＤＢテキストファイル１８を作成し、図３で示すように、中間生成ファイルとして保存する。
【００３０】
この編集に当っては、例えば、図５（ｄ）で示すような構造のＤＢテキスト変換ファイル２１を用いる。このＤＢテキスト変換ファイル２１には、ＳＡＭファイル１７の各レコードの内容を表す項目や、バイト位置を指定する項目等、多数の項目があり、これらの項目にしたがって編集を行うことにより、図５（ｅ）で示したＤＢテキストファイル１８を作成することができる。すなわち、ＲＤＢのキー項目の付加など、予め用意する現行データから、ＲＤＢテーブルへの変換定義に従ってＤＢテキストデータを構築し、中間生成ファイルとして保存する。
【００３１】
図２に戻って、次に、対象ファイルの有無を確認し（Ｓ２１１）、ある場合は対象ファイルループ（Ｓ２０３）に戻り、同じ処理を繰り返す。対象ファイルがない場合は、この移行処理が、定期更新によるかを判断する（Ｓ２１２）。この結果、定期更新ではなく（Ｓ２１２：ｎｏ）、図３で示したＲＤＢ１５の初期構築の場合は、ステップ（Ｓ２１７：ｙｅｓ）（Ｓ２１８：ｎｏ）および対象ファイルループ（Ｓ２１９）を経た後、図３で示すローダ２４を利用してＤＢテキストファイル１８のデータをＲＤＢ１５にロードし（Ｓ２２０）、ＲＤＢの初期構築を行う。このロードは、対象ファイルがなくなるまで繰り返し行われ（Ｓ２２１）（Ｓ２１９）、対象ファイルが無くなった時点で処理を終了する（Ｓ２２８）。
【００３２】
一方、初期構築ではなく、図４で示す定期更新の場合（Ｓ２１２：ｙｅｓ）は、対象ＤＢテキストデータループ処理（Ｓ２１３）を経て、前回周期で作成したＤＢテキストファイルのデータと今回周期で作成したＤＢテキストファイルのデータとを比較し（Ｓ２１４）、追加／削除／更新用の差分データを作成し、保存する（Ｓ２１５）。すなわち、図４で示すように、中間ファイルとして保存してある今回周期で作成したＤＢテキストファイル１８ａと前回周期で作成したＤＢテキストファイル１８ｂとを、ＤＢテキスト差分ファイル作成手段２５に読み出し、これら両者のデータを比較してその差分データを作成し、中間ファイル１８ａｂとして保存する。
【００３３】
この中間ファイル１８ａｂは、前述した追加用（新規）データのＤＢテキスト差分ファイルと、削除用データのＤＢテキスト差分ファイルと、更新用データのＤＢテキスト差分ファイルとの３種である。
【００３４】
図２に戻って、上述した一連の差分データ作成処理（Ｓ２１４）（Ｓ２１５）は、対象となるＤＢテキストデータが無くなくなるまで繰り返し行う（Ｓ２１６）（Ｓ２１３）。
【００３５】
次に、この差分データをＲＤＢ１５にアクセスさせるための言語作成処理に移行する。この場合、中止要求の有無および定期更新かを判断し（Ｓ２１７）（Ｓ２１８）、対象ファイルループ処理（Ｓ２２２）を経て、ＤＭＬ（Ｄａｔａ　Ｍａｎｉｐｕｒａｔｉｏｎ　Ｌａｎｇｕａｇｅ）作成される（Ｓ２２３）。すなわち、図４で示す言語ファイル作成処理手段２６により、前記差分データの追加用、削除用、更新用の各ＤＢテキスト差分ファイル１８ａｂを、ＲＤＢ１５にアクセスさせるための言語ＤＭＬ（データベースアクセス用のＳＱＬ文）を、予め設定された言語構築ファイル、すなわち、ＳＱＬ（Ｓｔｒｕｃｔｕｒｅ　Ｑｕｅｒｙ　Ｌａｎｇｕａｇｅ）文構築ファイル２７を用いて、これら各差分データに対応するデータベースアクセス用の言語ファイル２８を作成する。作成された言語ファイル（Ｉｎｓｅｒｔ（追加）用のＳＱＬファイル、Ｄｅｌｅｔｅ（削除）用のＳＱＬファイル、Ｕｐｄａｔｅ（更新）用のＳＱＬファイル）２８は、中間生成ファイルとして保存される。
【００３６】
この言語作成処理（Ｓ２２３）は、対象ファイルが無くなるまで繰り返される（Ｓ２２４）（Ｓ２２２）。対象ファイルが無くなると（Ｓ２２４：ｎｏ）、次に、差分データでＲＤＢ１５を更新すべくＳＱＬ文を実行し（Ｓ２２５）、データ移行処理を終了する（Ｓ２２８）。すなわち、図４で示すデータ更新手段２９により、この言語ファイル（ＳＱＬ文）２８に基づき、対応する差分データ（ＤＢテキスト差分ファイル１８ａｂ）で、移行先のＲＤＢ１５を更新（追加、削除、更新）する。
【００３７】
このように、ホストとサーバとの間でデータの移行を行う場合、データベース構造が異なっていても、ホスト側からＳＡＭファイルを出力してもらえば、サーバ側で移行先のデータベース構造に合わせて編集を行い、ＤＢテキストデータを作成するので、ホストの構成に依存したり、制約を受けたりすること無く、容易にデータ移行を行うことができる。すなわち、ＳＡＭファイルは、どのようなコンピュータシステムでも容易に出力することができるので、従来のように、ホストのデータベースの種類ごとに、ホストメーカ関連製品を用いたり、特定ツールを選択する必要はなく、ＳＡＭファイルの構造さえわかれば汎用的に使用でき、異なる構造のデータベース間におけるデータ移行を容易に行うことができる。
【００３８】
また、移行先データベースの更新に当っては、従来はホストから移行対象の全データを出力し、これを再構築して移行先のデータベースを更新していたが、定期的な更新においては、前回周期で作成したＤＢテキストデータとの差分をとり、この差分データにより移行先データベースを更新しているので、取り扱うデータ量が少なく、更新時間を大幅に短縮することができる。
【００３９】
【発明の効果】
本発明によれば、移行元のホスト側からは、移行対象データをレコード単位でシーケンシャルに出力するだけでよく、ホスト側の構成に依存することなく、汎用的にデータを取り扱うことができる。また、移行を受ける側において、前回移行時との差分データをとり、この差分データで移行先データベースを更新することにより、移行時におけるデータ更新時間を大幅に短縮することができる。
【図面の簡単な説明】
【図１】本発明によるデータ移行システムの一実施の形態を示す概念構成図である。
【図２】同上一実施の形態における処理の流れを説明するフローチャートである。
【図３】同上一実施の形態におけるＲＤＢ初期構築時のデータの流れを示すブロックチャートである。
【図４】同上一実施の形態におけるＲＤＢ定期更新時のデータの流れを示すブロックチャートである。
【図５】同上一実施の形態における各データ構造およびファイル構造を示す図である。
【符号の説明】
１１　　ホスト
１２　　データベース
１３　　他のコンピュータシステム
１４　　移行処理手段
１５　　移行先のデータベース
１７　　シーケンシャルファイル
１８　　データベーステキストファイル
１８ａ　　今回周期のデータベーステキストファイル
１８ｂ　　前回周期のデータベーステキストファイル
１８ａｂ　　テキスト差分ファイル
２１　　変換ファイル
２２　　デーベーステキスト作成処理手段
２４　　ローダ
２５　　データベーステキスト差分ファイル作成処理手段
２６　　言語作成処理手段
２７　　言語構築ファイル
２８　　データベースアクセス用言語ファイル
２９　　更新手段
【図１】
2004110283.tif 000003
【図２】
2004110283.tif 000004
【図３】
2004110283.tif 000005
【図４】
2004110283.tif 000006
【図５】
2004110283.tif 000007