表示装置を備えるクライアントと、移行元DBを備える移行元サーバと、移行先DBを備える移行先サーバとを具備し、前記移行元DBから前記移行先DBへデータ移行処理を実施するデータ移行システムであって、前記クライアントからの指示を受け付ける画面処理部と、後続の各処理で用いる処理条件を定義する定義ファイルを作成し、記憶領域に格納する定義ファイル作成部と、前記クライアントからの指示に基づき、前記移行元DBをクレンジングするクレンジング処理部と、前記記憶領域から読み出した定義ファイルを用いて、前記クレンジング前又は後の移行元DBのデータの妥当性のチェック処理を実施し、チェック処理結果を出力するチェック処理部と、前記記憶領域から読み出した定義ファイルを用いて、前記チェック後及びクレンジング後の移行元DBから移行対象となるデータを抽出し、抽出処理結果を出力する抽出処理部と、前記記憶領域から読み出した定義ファイルを用いて、前記抽出後の移行元DBを変換及び又は加工し、変換加工処理結果を出力する変換加工処理部と、前記記憶領域から読み出した定義ファイルを用いて、前記変換及び又は加工後の移行元DBを前記移行先DBへロードし、ロード処理結果を出力するロード処理部と、前記記憶領域から読み出した定義ファイルを用いて、前記ロード後の移行先DBに格納されたデータの妥当性を検証し、検証処理結果を出力する検証処理部とを備え、前記画面処理部は、前記表示装置に前記チェック処理結果および検証処理結果を表示することを特徴とするデータ移行システム。前記定義ファイルは、少なくとも、前記移行元DB内のテーブルの項目毎に、チェックを必須とする項目、データの属性、またはデータの範囲を定義するチェック定義ファイルと、前記移行元DBおよび移行先DBに含まれるそれぞれのテーブルについて、対応するテーブル項目を紐付けした情報を保持するとともに、対応するテーブル項目毎のデータを比較検証するための条件を定義する検証定義ファイルとを有することを特徴とする請求項1記載のデータ移行システム。ユーザからの指示により、移行元サーバに備えられた移行元DBを移行先サーバに備えられた移行先DBへ、データ移行処理を実施するデータ移行装置であって、前記ユーザからの指示を受け付ける画面処理部と、後続の各処理で用いる処理条件を定義する定義ファイルを作成し、記憶領域に格納する定義ファイル作成部と、前記ユーザからの指示に基づき、前記移行元DBをクレンジングするクレンジング処理部と、前記記憶領域から読み出した定義ファイルを用いて、前記クレンジング前又は後の移行元DBのデータの妥当性のチェック処理を実施し、チェック処理結果を出力するチェック処理部と、前記記憶領域から読み出した定義ファイルを用いて、前記チェック後及びクレンジング後の移行元DBから移行対象となるデータを抽出し、抽出処理結果を出力する抽出処理部と、前記記憶領域から読み出した定義ファイルを用いて、前記抽出後の移行元DBを変換及び又は加工し、変換加工処理結果を出力する変換加工処理部と、前記記憶領域から読み出した定義ファイルを用いて、前記変換及び又は加工後の移行元DBを前記移行先DBへロードし、ロード処理結果を出力するロード処理部と、前記記憶領域から読み出した定義ファイルを用いて、前記ロード後の移行先DBに格納されたデータの妥当性を検証し、検証処理結果を出力する検証処理部とを備え、前記画面処理部は、表示装置に前記チェック処理結果および検証処理結果を表示することを特徴とするデータ移行装置。前記定義ファイルは、少なくとも、前記移行元DB内のテーブルの項目毎に、チェックを必須とする項目、データの属性、またはデータの範囲を定義するチェック定義ファイルと、前記移行元DBおよび移行先DBに含まれるそれぞれのテーブルについて、対応するテーブル項目を紐付けした情報を保持するとともに、対応するテーブル項目毎のデータを比較検証するための条件を定義する検証定義ファイルとを有することを特徴とする請求項3記載のデータ移行装置。ユーザからの指示により、移行元サーバに備えられた移行元DBを移行先サーバに備えられた移行先DBへ、データ移行処理を実施するデータ移行方法であって、画面処理部が、前記クライアントからの指示を受け付けるステップと、定義ファイル作成部が、後続の各処理で用いる処理条件を定義する定義ファイルを作成し、記憶領域に格納するステップと、クレンジング処理部が、前記ユーザからの指示に基づき、前記移行元DBをクレンジングするステップと、チェック処理部が、前記記憶領域から読み出した定義ファイルを用いて、前記クレンジング前又は後の移行元DBのデータの妥当性のチェック処理を実施し、チェック処理結果を出力するステップと、前記画面処理部が、表示装置に前記チェック処理結果を表示するステップと、抽出処理部が、前記記憶領域から読み出した定義ファイルを用いて、前記チェック後及びクレンジング後の移行元DBから移行対象となるデータを抽出し、抽出処理結果を出力するステップと、変換加工処理部が、前記記憶領域から読み出した定義ファイルを用いて、前記抽出後の移行元DBを変換及び又は加工し、変換加工処理結果を出力するステップと、ロード処理部が、前記記憶領域から読み出した定義ファイルを用いて、前記変換及び又は加工後の移行元DBを前記移行先DBへロードし、ロード処理結果を出力するステップと、検証処理部が、前記記憶領域から読み出した定義ファイルを用いて、前記ロード後の移行先DBに格納されたデータの妥当性を検証し、検証処理結果を出力するステップと、前記画面処理部が、前記表示装置に前記検証処理結果を表示するステップとを備えることを特徴とするデータ移行方法。前記定義ファイルは、少なくとも、前記移行元DB内のテーブルの項目毎に、チェックを必須とする項目、データの属性、またはデータの範囲を定義するチェック定義ファイルと、前記移行元DBおよび移行先DBに含まれるそれぞれのテーブルについて、対応するテーブル項目を紐付けした情報を保持するとともに、対応するテーブル項目毎のデータを比較検証するための条件を定義する検証定義ファイルとを有することを特徴とする請求項5記載のデータ移行方法。しかしながら、上記特許文献1のようにデータ移行を自動化する手法では、移行処理中に何らかのエラーが発生する場合がある。例えば、移行すべきデータのクレンジング漏れ、抽出漏れ、変換、加工ミス等である。したがって、データ移行前後において、適宜データのチェックおよび検証が必要となる。上記特許文献1は、データ移行前後で、データのチェックおよび検証をする手段は何ら開示していない。また、ユーザが個別にチェック、検証するのでは、精度を保証できず、時間もかかる。本発明は上記課題に鑑みてなされたものであり、移行先システムに自動的に移行されるデータの精度を向上させるとともに、ユーザが、移行先システムのデータの妥当性を効率的に判断することが可能なデータ移行システムを提供する。上記課題を解決するために本発明は、移行対象となるデータ種別および数を問わずにデータ移行を一度に実施し、また移行対象となるデータを移行元DBから抽出する前に当該データをチェックし、移行先DBにデータをロードした後にデータを検証することを特徴とする。すなわち、本発明のデータ移行システムは、表示装置を備えるクライアントと、移行元DBを備える移行元サーバと、移行先DBを備える移行先サーバとを具備し、前記移行元DBから前記移行先DBへデータ移行処理を実施するデータ移行システムであって、前記クライアントからの指示を受け付ける画面処理部と、後続の各処理で用いる処理条件を定義する定義ファイルを作成し、記憶領域に格納する定義ファイル作成部と、前記クライアントからの指示に基づき、前記移行元DBをクレンジングするクレンジング処理部と、前記記憶領域から読み出した定義ファイルを用いて、前記クレンジング前又は後の移行元DBのデータの妥当性のチェック処理を実施し、チェック処理結果を出力するチェック処理部と、前記記憶領域から読み出した定義ファイルを用いて、前記チェック後及びクレンジング後の移行元DBから移行対象となるデータを抽出し、抽出処理結果を出力する抽出処理部と、前記記憶領域から読み出した定義ファイルを用いて、前記抽出後の移行元DBを変換及び又は加工し、変換加工処理結果を出力する変換加工処理部と、前記記憶領域から読み出した定義ファイルを用いて、前記変換及び又は加工後の移行元DBを前記移行先DBへロードし、ロード処理結果を出力するロード処理部と、前記記憶領域から読み出した定義ファイルを用いて、前記ロード後の移行先DBのデータの妥当性を検証し、検証処理結果を出力する検証処理部とを備え、前記画面処理部は、前記表示装置に前記チェック処理結果および検証処理結果を表示することを特徴とする。本発明によれば、移行先システムに自動的に移行されるデータの精度を向上させるとともに、ユーザが、移行先のデータの妥当性を判断することができる。本発明は、データ移行システム、データ移行装置、及びデータ移行方法に関する。以下、添付図面を参照して本発明の実施形態について説明する。ただし、本実施形態は、本発明を実施するための一例に過ぎず、本発明の技術的範囲を限定するものではないことに注意すべきである。また、各図において共通の構成には同一の参照番号が付されている。<従来の移行処理>図1は、従来のシステム移行処理を示す概念図である。移行元システム101は、1つ以上の移行元テーブル102を保持する移行元DBDatabase103、移行元テーブル102のうち、移行する対象をまとめた移行元データファイル104を有する。移行先システム105は、移行元データファイル104を移行先の形式に変換及び又は加工した編集後データファイル108、編集後データファイル108をロードした移行先DB107を有する。なお、移行元データファイル104と編集後データファイル108は、移行先システムの形態によってはファイルではなくDB形式等のデータでもよい。このようなシステムにおいて、以下説明する1クレンジング、2抽出、3変換及び又は加工、4ロードという各処理を、手作業にて実施する。1クレンジング処理では、移行元DB103内の移行元テーブル102のデータの外部要因等により陳腐化したデータを正しい内容に変更する。外部要因とは、例えば、ユーザの入力ミスがある。変更方法としては、例えば、SQLPlus等のデータベースアクセスツールを使用し、陳腐化したデータを絞り込み、データパッチをあてる。2抽出処理では、移行元DB103内から移行を実施する対象となるテーブルを抽出し、移行元データファイル104を作成する処理が行われる。また、移行元テーブル102内の抽出する対象となるテーブルが、3変換及び又は加工処理を実施する前提となっているかをユーザが手作業でチェックする。チェックの結果、エラーとなったデータは、抽出前にSQLPlus等のデータベースアクセスツールにて移行元テーブル102を変換しておく。3変換及び又は加工処理では、2抽出処理にて作成した移行元データファイル104を移行先テーブル106へロード可能な形式に変換及び又は加工する。システム的な制約だけでなく、業務的な制約によって変換が必要な場合においても当該処理にて変換及び又は加工を実施する。4ロード処理では、3変換及び又は加工にて作成した編集後データファイル108を、移行先DB107内の移行先テーブル106に登録する。<本発明のデータ移行システムの構成>上述した従来の移行処理では、上記の1から4について、移行を実施する対象の移行元テーブル102毎に、個別のプログラム開発や人手による作業の実施を行う必要がある。そのため、テーブル数が増える程、作業量や不良件数の増加を招く。また、1クレンジングは手作業でSQLを作成し、結果の確認は目視で行われることが多い。そのため、作業結果の精度が低くなってしまう。そこで、以下説明する本発明のデータ移行システムでは、移行対象となるデータ種別および数を問わずにデータ移行を実施し、また移行対象となるデータを移行元DBから抽出する前に当該データをチェックし、移行先DBにデータをロードした後にデータを検証することを特徴とする。図2は、移行対象となる移行元テーブル102の一例である。同図は、テーブル項目として、従業員コード、従業員名、フリガナ、電話番号、住所、所属コード、役職コード、生年月日を有する。また、各項目には、対応するデータが羅列される。以下説明する処理では、移行元テーブル102の従業員テーブルを、移行先テーブル106の社員テーブルとして移行する。図3は、本発明の実施形態に係るデータ移行システムの構成図である。本システムは以下に示す処理部等から構成されている。データ移行システムは、移行元データが格納された移行元DB311を有する移行元サーバ310、データ移行処理を実行するデータ移行サーバ301、データ移行サーバ301とGUIGraphicalUserInterfaceを介してやり取りする端末機としてのクライアント330、移行先DB321を有する移行先サーバ320を備える。データ移行サーバ301は、LANLocalAreaNetwork340、341、342によって、移行元サーバ310、クライアント330、および移行先サーバ320と接続されており、これらは相互に通信可能である。クライアント330の表示装置331は、InternetExplorer登録商標のようなWebブラウザを用いることが想定される。また、移行元DB311と移行先DB321は同一サーバ内に存在していてもよい。データ移行サーバ301は、オンライン処理を実行するオンライン処理部351、バッチ処理を実行するバッチ処理部352、各処理結果ファイルを格納するファイル情報格納部353を備える。オンライン処理部351は、クライアント330からの指示およびクライアント330への指示をGUIを介して処理する画面処理部302、後続の処理で用いる定義ファイル308を作成する定義ファイル作成部312、移行先DB321に格納されたテーブルの妥当性を検証し、検証処理結果ファイルを出力する検証処理部303を備える。バッチ処理部352は、移行元DB311をクレンジングし、移行元DB311’図4を作成するクレンジング処理部313、移行元DB311’のデータをチェックし、チェック処理結果ファイルを出力するチェック処理部304、移行元DB311から移行する対象となるデータを抽出し、抽出処理結果ファイルを出力する抽出処理部305、抽出後のデータを変換及び又は加工し、変換及び又は加工処理結果ファイルを出力する変換加工処理部306、変換及び又は加工後のデータを移行先DB321にロードするロード処理部307を備える。ファイル情報格納部353は、チェック処理、抽出処理、変換及び又は加工処理、ロード処理、検証処理の各処理を実行する際に用いる定義ファイル308、および各処理の出力結果であって、表示装置331に表示可能な処理結果ファイル309を備える。各手段の一部又は全部は、ハードウエアとして実現可能である。また、各手段はプログラム処理を通じて実現される。ここでのチェック処理部304、抽出処理部305、変換加工処理部306、およびロード処理部307による処理は、バッチ処理を想定しているが、移行するデータの件数等の状況に応じて一部または全ての処理をオンライン処理としてもよい。<本発明のデータ移行処理>図4および図5は、本発明の実施形態に係るデータ移行処理の手順を示すフローチャートである。S01において、画面処理部302は、GUIを介してユーザへ定義ファイルを作成するための条件を提示する。定義ファイル作成部312は、ユーザからの指示および移行元DB311を入力として、定義ファイル308を作成する。定義ファイルの作成時に画面表示される項目は、チェック処理、抽出処理、変換及び又は加工処理、ロード処理、および検証処理で用いる条件について、移行対象となるテーブルの種類を問わずに一般化したものが含まれている。画面の項目は定義ファイルの内容と連動する。ユーザは、これらGUI上に提示された項目をチェックし、又は、新たな条件を追加することにより定義ファイルの内容を設定する。各画面の設定ボタンが押下されると、各処理に対応する定義ファイルが作成される。なお、定義ファイルは、XMLExtensibleMarkupLanguage形式により作成される。定義ファイル308は、それぞれ、チェック処理で使用するチェック定義ファイルF01、抽出処理で使用する抽出定義ファイルF02、変換及び又は加工処理で使用する変換加工定義ファイルF03、ロード処理で使用するロード定義ファイルF04、検証処理で使用する検証定義ファイルF05を含む。チェック定義ファイルF01は、移行元DB311’内のテーブルの項目毎に、チェックを必須とする項目、データの属性ごとにチェックする場合はその属性、データの範囲等を定義する。例えば、チェック内容、チェック対象、条件、データ型、項目名、値等を定義する。抽出定義ファイルF02は、前記移行元DB311’から抽出対象とするテーブル、テーブル項目、データ、レコード等の抽出条件を定義する。変換加工定義ファイルF03は、抽出後のテーブル、テーブル項目毎のデータ、またはレコード毎に、データの変換条件を定義する。変換条件は、例えば、不要な半角スペースの削除や型変換等である。ロード定義ファイルF04は、変換及び又は加工後のテーブル、テーブル項目毎のデータ、又はレコードを全てを登録する一括登録、移行元DBから変更した箇所のみを登録する差分登録、テーブル項目毎のデータまたはレコード毎に、上書き、加算、もしくは減算する更新登録等を定義する。これにより、より柔軟な移行が可能となる。検証定義ファイルF05は、前記移行元DBおよび移行先DBに含まれるそれぞれのテーブルについて、対応するテーブル項目を紐付けした情報を保持するとともに、対応するテーブル項目毎のデータを比較検証するための条件を定義する。S02において、クレンジング処理部313は、ユーザからのGUI操作および移行元DB311を入力としてデータクレンジングを実施し、移行元DB311’を出力する。データクレンジング方法には、SQLPlus等のデータベースアクセスツールを用いてDBを更新する方法がある。なお、本処理は、後続処理のチェック処理S03の後に実施してもよい。S03において、チェック処理部304は、移行元DB311’及びチェック定義ファイルF01を入力として、移行元DB311’の業務的な正当性とシステム的な正当性をチェックする。ここでの正当性は、移行元DB311’とチェック定義ファイルF01のチェック内容とが一致するか否かで調べる。例えば移行元DB311’の電話番号項目がチェック内容例えば12桁と一致するか等をチェックする。すなわち、各チェック内容について、当該内容と合致しないデータがデータベースに存在しないか否かをチェックする。チェックでエラーになったテーブル項目のデータは、チェック処理結果ファイルK01に出力する。図6は、本発明の実施形態に係るチェック条件の設定画面600である。設定画面600は、移行元テーブルと移行先テーブルを表示する移行定義601、チェックを実施するか否かを判断するチェックボックス602、移行元テーブルのテーブル名603、移行元テーブルの項目名604、移行元DB311上で表されるデータ型605、移行元DB311上でのサイズを表示するsize606、各レコードを一意に決定するプライマリーキーか否かを決定するPK607、移行元DB311上でNOTNULL制約があるか否かを決定するNOTNULL608、チェックを実施する分類を定義するチェック内容609、チェックを実施する際の具体値を入力する値1610および値2612、値1および値2を使用する方法を定義する条件1611および条件2613を有する。チェック内容609は、例えば、桁数チェック、固定値チェック、日付妥当性チェック、範囲チェック等があり、プルダウンで選択可能である。また、条件1611および条件2613は、例えば、と等しいで始まる以上を含み、プルダウンで選択可能である。なお、値2が設定されている場合は、値1と値2はAND条件となる。ここでは、図2の従業員テーブルにおいて、項目名604が電話番号である項目について桁数が12桁と等しいか否か、および項目名604が所属コードである項目について範囲が00以上50以下であるか否かをチェックしている。S04において、画面処理部302は、チェック処理結果ファイルK01の内容をクライアント330の表示装置331に提示し、ユーザからの移行元DB311’の内容が妥当であるか否かの指示を受け付ける。提示されるチェック処理結果ファイルK01の内容としては、例えば、移行元DB311’に格納されたテーブル項目毎のデータが妥当であると判定されたものは○、そうでなければ×を表示する。ユーザは、チェック処理結果ファイルK01を参照し、エラー判定された状態のまま後続の処理を継続して問題が無いかを確認し、確認した結果をクライアント330の表示装置331に表示されたGUIに入力する。画面処理部302は、ユーザより妥当であるとの指示を受けた場合は、後続の処理へ移行する。ユーザより妥当でないとの指示を受けた場合は、定義ファイル308に何らかのエラーがある可能性があるためS01に戻り、定義ファイル308を再度作成する。S05において、抽出処理部305は、移行元DB311’および抽出定義ファイルF02を入力として、対象となるテーブル、レコード等を抽出し、抽出処理結果ファイルK02を出力する。S06において、変換加工処理部306は、変換加工定義ファイルF03に定義されているテーブル項目毎の変換条件を元に、抽出処理結果ファイルK02の変換及び又は加工処理を実施し、変換及び又は加工処理結果ファイルK04を出力する。S07において、ロード処理部307は、変換及び又は加工処理結果ファイルK04およびロード定義ファイルF04を入力として、移行先DB321へのロード処理を実行し、ロード処理結果ファイルK05を出力する。S08において、検証処理部303は、検証定義ファイルF05に定義されているテーブル項目毎の検証条件検証項目、検証方法等に基づいて移行元DB311’と移行先DB321からデータを取得し、検証処理結果ファイルK03を出力する。S09において、検証処理部303は、検証結果を画面表示するタイミングで、検証定義ファイルF05と検証処理結果ファイルK03を参照し、定義されている検証方法に従って検証作業を実行する。即ち、検証処理部303は、移行元DB311’および移行先DB321に含まれるそれぞれのテーブルについて、検証定義ファイルF05に定義された、それぞれのテーブルのテーブル項目を紐付けした情報およびそれぞれのテーブル項目毎のデータを比較検証ための条件に従って検証を行う。例えば、検証内容が取引明細テーブルの単価項目に対して合計値で検証するような場合には、移行元DB311’の単価項目の合計値と移行先DB321の単価項目の合計値とを比較することで検証を行う。このように、検証定義ファイルF05を用いることで、移行元DB311’のテーブル項目と移行先DB321のテーブル項目とを正確に対応付けて検証することが可能になる。検証処理部303は、検証結果を画面上に表示する。例えば移行が妥当であると判定されたものは○、そうでなければ×を表示する。ユーザは、当該画面表示を通じて移行先DB321の妥当性を確認し、確認した結果をクライアント330の表示装置331に表示されたGUIに入力する。画面処理部302は、妥当であるとの指示を受けた場合は、データ移行処理を終了する。これにより、従来の移行元テーブルごとの手作業による検証が、テーブル全てについて自動的な検証となる。S10において、S09で移行先DB321の内容が妥当でないとの指示を受けた場合、画面処理部302は、問題内容を表示装置331に提示する。定義ファイル308に何らかのエラーがある可能性がある場合はS01に戻り、定義ファイル308を再度作成する。または、再処理を要する箇所からやり直し、検証処理結果ファイルK03にエラーが無くなるまで処理を実施する。なお、ここでは、チェック処理結果ファイルK01および検証処理結果ファイルK03を表示装置331に提示したが、必要に応じてまたはユーザからの指示によりその他の処理結果ファイルを提示してもよい。また、必要に応じて、S09において、ロード処理部307によるロード処理結果K05を検証してもよい。<まとめ>本実施形態では、以下に示す特徴および効果がある。1画面処理部302は、ユーザがGUIを介して選択または追加した後続の処理で必要となる条件を受け付ける。定義ファイル作成部312は、ユーザからの指示に基づき、各処理で用いる定義ファイルを作成する。その後、各処理部が、移行対象となる移行元テーブル全てについて、定義ファイルの情報を元に、抽出、変換及び又は加工、ロード、検証を一度に自動で実施する。これにより、移行元DB311に含まれるテーブル毎に、抽出、変換及び又は加工、ロード、検証の移行処理を実行する必要がなくなる。すなわち、移行元DB311に含まれる全テーブルのうち移行対象となるテーブルを自動的に一括して移行先DB321に移行できる。よって、移行処理にかかる開発時間、および開発工数が大幅に削減される。また、手作業によるチェックおよび検証を必要としないため、データが膨大であっても、作業時間が長くならず、データ移行ミスなども発生しにくい。さらに、ユーザはGUIを介して表示装置331から容易にデータ移行をすることが可能であるため、SQL等の専門的知識を必要としない。2チェック処理部304が、中間的に生成される移行元DB311’から移行対象となるテーブルを抽出する前に、移行元DB311’のチェック処理を実施する。その後、画面処理部302が、チェック処理結果をユーザに提示する。これにより、データ移行処理の初期段階から正確なエラー情報をユーザが把握することが可能となる。その結果、後工程での手戻りが発生しにくくなるため、移行処理にかかる開発時間、および開発工数が大幅に削減される。3検証処理部303が、検証定義ファイルF05に定義されている、テーブル項目毎の検証条件検証対象の有無、合計平均等の検証方法を元に、移行先DB321のテーブルを検証し、移行処理結果を出力する。その後、画面処理部302が、移行処理結果をユーザに提示する。これにより、ユーザは、提示された検証結果を参照してデータ移行の妥当性が簡単に判断できる。また、移行先DB321を手作業で検証する必要がなくなる。その結果、移行処理にかかる開発時間および開発工数が大幅に削減される。