JP2019020793A - データベース移行システム - Google Patents

データベース移行システム Download PDF

Info

Publication number
JP2019020793A
JP2019020793A JP2017135881A JP2017135881A JP2019020793A JP 2019020793 A JP2019020793 A JP 2019020793A JP 2017135881 A JP2017135881 A JP 2017135881A JP 2017135881 A JP2017135881 A JP 2017135881A JP 2019020793 A JP2019020793 A JP 2019020793A
Authority
JP
Japan
Prior art keywords
migration
database
data
management system
transfer
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2017135881A
Other languages
English (en)
Inventor
淳平 岡安
Jumpei Okayasu
淳平 岡安
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP2017135881A priority Critical patent/JP2019020793A/ja
Publication of JP2019020793A publication Critical patent/JP2019020793A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

【課題】異なるデータベース構造間の複数のデータベース間でのデータ移行作業において、シームレスに移行が行うことを目的とする。【解決手段】複数のデータベースと接続され、複数のデータベース間のデータ移行を管理するデータ移行管理システムであって、複数のデータベースの組み合わせ毎に、移行元データベースのデータ構造、移行先データベースのデータ構造に応じた移行プランを示す移行情報テーブルを有し、第1のテーブルの第1のデータベースから第2のデータベースへの移行要求を受領したときに、当該移行要求に対応する移行プランを前記移行情報テーブルから選択し、選択した移行プランに基づき、前記第1のテーブルを変換した上で、変換後の前記第1のテーブルを前記第2のデータベースに移行することを特徴とするデータ移行管理システム。【選択図】 図2

Description

本発明は、異なるデータベース間において、データを移行するための移行方式および技術に関する。
BI(ビジネスインテリジェンス)分野において、様々なプラットフォームが提案されてきた。それらのプラットフォームは、機能面や性能など利用者のニーズによって最適なものが選択されるべきであるが、一からの構築には時間やコストがかかることによって、ニーズが満たせない問題があった。PaaS(Platform as a Service)はその問題を解決する提供形態である。PaaSの存在によって、利用者はプラットフォーム開発に時間やコストを割かれることなく、アプリケーション開発やデータマネジメントなどの領域に注力することができる。
本技術分野の従来技術としては、例えば、特開2013―41526号広報(特許文献1)がある。特許文献1には、移行元データベースと移行先データベースのデータ構造に基づき、移行元データベースと移行先データベースで共通項目を抽出し共通項目のデータ移行を実行するプログラムと、移行元データベースと移行先データベースで異なる指定項目について変換した上で移行を実行するプログラムと、から移行ツールを生成する移行する技術が記載されている。
特開2013―41526号広報
データを取り扱うBI分野においては、プラットフォームを含めたコンテンツの提供スピードが重要になる。これは、データをもとにした経営判断や事業判断がデータ鮮度に依存するためである。また、BIツールの適合性や、処理速度など利用者のニーズに柔軟に対応することも必要である。
特許文献1をはじめ、データベースの移行作業の自動化や移行用ツールを生成するための技術が多数提案されている。それらの技術は、データベースの構造が共通するデータベース間だけでなく、異なる構造においても、データベース移行を可能にしている。しかし、これらの技術の前提として、柔軟に変更される利用者のニーズは組み込まれておらず、そのために高頻度で発生する移行作業を考慮していない。
本発明は、上記の問題を踏まえ、異なるデータベース構造間の複数のデータベース間でのデータ移行作業において、シームレスに移行が行うことを目的とする。より具体的には、本発明は、複数でかつ高頻度に発生する移行作業において、介在する人の削減、手間の軽減を実現する。
本発明おけるデータ移行管理システムは、複数のデータベースと接続され、複数のデータベース間のデータ移行を管理するデータ移行管理システムであって、複数のデータベースの組み合わせ毎に、移行元データベースのデータ構造、移行先データベースのデータ構造に応じた移行プランを示す移行情報テーブルを有し、第1のテーブルの第1のデータベースから第2のデータベースへの移行要求を受領したときに、当該移行要求に対応する移行プランを前記移行情報テーブルから選択し、選択した移行プランに基づき、前記第1のテーブルを変換した上で、変換後の前記第1のテーブルを前記第2のデータベースに移行することを特徴とするデータ移行管理システムである。
本発明によれば、利用者が高頻度でデータベース間の移行を実施したい場合においても、迅速に移行作業が可能であり、かつ移行の手間を軽減することができる。
本発明の一実施形態のシステム構成図である。 本発明の一実施形態のシステム構成図である。 本発明の一実施形態における実行計画テーブルの例である。 本発明の一実施形態におけるスケジュールテーブルの例である。 本発明の一実施形態における移行情報テーブルの例である。 本発明の一実施形態における変換情報テーブルの例である 本発明の一実施形態における全体処理の流れ(1)を示すフローチャートである。 本発明の一実施形態における全体処理の流れ(2)を示すフローチャートである。 本発明の一実施形態における移行案件管理システムの処理を示すフローチャートの例である。 本発明の一実施形態における移行作業実行システムの処理を示すフローチャートの例である。
以下、図面に従い、本発明の実施形態を説明する。
図1は、本発明の実施形態における
本発明の実施形態のシステムは、
ネットワークで互いに接続された、移行案件管理ステム10、移行作業実行システム20、DB(データベース)システム30の3つのシステムにより構成されている。
図2を用いて、各システムの詳細を説明する
移行案件管理システム10は、テーブル管理者1からのデータ移行要求を受理し、移行作業実行システムへ実行命令を行うシステムであり、制御部、移行情報入力部12、メール送受信装置14、実行結果出力部16、実行計画テーブル18を備える。
テーブル管理者1は、自己の端末を介して、移行案件管理システムに、データ移行要求を入力する。たとえば、データベースシステム30に格納のされているデータのうち、第1のDBに格納されている第1のテーブルを第2のDBに移行させる要求などを入力する。
データベースシステムに格納されているデータは、テーブル毎に管理者(権限)が設定されており、このデータ移行要求は、各テーブル管理者1が自身の所有するテーブル(つまり権限の付与されているテーブル)について、データ移行要求を出すことができる。
一方、DB管理者2は、各テーブル管理者の要請により、DBシステムの管理を行う。たとえば、テーブル管理者1から発行されたデータ移行要求の実行について、その進捗を管理する。
制御部11は、移行案件管理システムを制御するとともに、各装置・別システムに対して命令を行う機能を有する。
移行情報入力部12は、テーブル管理者からの移行作業依頼を受付け、制御部に伝える機能を有する。メール送受信装置14は、移行案件管理システムにおいて、実行結果出力部から送られてきた内容を、テーブル管理者およびDB管理者へメール配信する機能を有する。実行結果出力部16は、移行案件管理システムにおいて、制御部11から引き渡された内容に応じて、実行結果を生成する部分である。実行計画テーブル18は、移行案件管理システムにおいて、移行案件の実行計画(申請者や受付状況など)を管理するテーブルである。詳細は後述する。
続いて、移行作業実行システム20について説明する。移行作業実行システム20は、移行案件管理システム10からの命令を受領し、DBシステム31、32、33への参照要求や更新作業を執り行うシステムである。移行作業実行システム20は、制御部21、プログラム実行部28、スケジュールテーブル22、移行情報テーブル24、変換情報テーブル26を備える。
制御部21は、移行作業実行システム20を制御するとともに、各装置・別システムに対して命令を行う機能を備える。スケジュールテーブル22は、移行作業のスケジュールを管理するテーブルである。移行情報テーブル24は、移行作業実行システムにおいて、移行対象のテーブル情報を管理するテーブルである。変換情報テーブル26移行作業実行システムにおいて、移行作業時の置換リストを管理するテーブルである。各テーブルの詳細は後術する。プログラム実行部28DBシステムに対して、プログラムの実行を指示する機能を備える。
次に、データベースシステム30について説明する。
本発明の実施形態では、データベースシステム30は、DBシステム(ローグレード)31、DBシステム32(ミドルグレード)、などの種別の異なる複数のDBシステムを有する。ユーザ(テーブル管理者)は、複数のDBシステムから、テーブルを格納(インポート)するDBシステム選択することができる。
図3に、実行計画テーブル18の例を示す。実行計画テーブルは、前述したように移行案件管理システムに格納されており、テーブル管理者から受領したデータ移行要求毎に、移行の実行計画(申請者や受付状況など)を管理するテーブルである。案件番号は、移行要求前に付与される管理番号である。申請者ID、承認者IDは、当該データ移行要求の申請者と承認者のIDである。計画日時は、当該データ移行要求を受領した日時を示す。ステータスは、移行案件管理システム各移行要求に対応するステータスを示す。移行プランは、当該移行要求が移行作業実行システムの移行情報テーブルで管理される複数の移行プランのいずれに対応するかを示す情報である。移行元テーブルは、テーブル管理者から指定のあった移行対象のテーブルの移行元データベースにおけるテーブル名ある。一方移行先テーブルは、移行対象のテーブルの移行先データベースでのテーブル名である。実行計画テーブルはデータ移行の実行状況に応じて、逐次的に更新される。更新日時は各データ移行に対応する情報が最後に更新された日時を示す。
図4は、スケジュールテーブル22の例を示す。スケジュールテーブル22は移行作業実行システム20に格納され、移行作業のスケジュールを管理するテーブルである。スケジュールIDは、上述の案件番号毎に付与される管理番号である。案件番号は、スケジュールIDに対応する案件番号が示される。開始予定時刻、終了予定時刻は、各データ移行の実行開始、実行終了が予定されている時刻である。一方、開始時刻、終了時刻は、各データ移行が実際に実行開始、実行終了した時刻である。ステータスは、移行作業実行システム20における各データ移行のステータスを占めす。スケジュールテーブルはデータ移行の実行状況に応じて、逐次的に更新される。更新日時は各データ移行に対応する情報が最後に更新された日時を示す。
図5は、移行情報テーブル24の例を示す。本実施形態では、各DBシステムは、それぞれ異なる種類のデータ構造で格納されている。データ構造のDBシステム間でデータ移行を実行する場合、データ形式を変換する必要がある。移行情報テーブル、移行元DBシステム、移行先DBシステムの組合せ毎に、データ形式を変換に必要な情報を管理するテーブルである。移行プランは移行元DBシステム、移行先DBシステムの組合せ毎に付与された識別情報である。移行元DBは、移行元DBシステムの名称、移行先DBは、移行先DBシステムの名称である。移行先接続情報1、移行先接続情報2、接続情報(IP Address)、接続情報(PASS)は、データ移行に際して、移行元DBシステム、移行先DBシステムに移行作業実行システム20がアクセスするために必要な情報を示す。移行元圧縮率は、移行元DBシステムにおけるデータ圧縮率、移行先圧縮率は移行先DBシステムにおけるデータ圧縮率である。移行先格納形式は、移行先データベースの格納形式を示す。
図6は、変換情報テーブル26の例を示す。データ構造が異なるDBシステム間でデータ移行を実行する場合、上述のとおり、移行先データベースにデータを格納する前に、データを変換する必要がある。図6は移行プラン毎に、移行元データベースで格納されていた文字列の種別と、移行先データベースへの格納前に変換すべき文字列の種別の対応を示すものである。
図7、図8を用いて、データ移行手続処理の流れを説明する。
S105において、移行情報管理システムは、テーブル管理者1からログイン受付けると、移行情報の入力画面を表示する。
次に、S110において、移行情報管理システムは、テーブル管理者が入力した移行情報を、実行計画テーブルへ書き込む。案件番号は値が重複しないよう発番し、ステータスには「受付済」となる。更新日時にはその時点の時刻を書き込む。
次に、S115において、移行情報管理システムは、テーブル管理者からの移行情報更新をトリガーに、DB管理者に移行作業の申請があった旨の通知メールを配信する。その際、本文には実行計画テーブルに更新された値の一部(案件番号、申請者ID、計画日時、コメント、移行プラン、更新日時)と承認画面へのリンクを掲載する。
次に、S120において、移行情報管理システムは、DB管理者のログインを受け付け、実行計画テーブルの案件番号に紐付いた案件一覧を表示する。
続いて、S125において、移行情報管理システムは、DB管理者が選択した案件番号をキーに実行計画テーブルを更新する。承認者IDにはDB管理者のIDが入り、ステータスは「実行待」となる。更新日時にはその時点の時刻を書き込む。
次に、S130において、移行情報管理システムは、DB管理者からの移行情報更新をトリガーに、移行チェック内部処理を移行作業実行システムに指示する。その際、引数として実行計画テーブルの移行情報を移行作業実行システムに受け渡す。
次に、S132において、移行情報管理システムは、移行作業実行システムから、移行元DBの対象容量および圧縮率を取得する。また、移行先空き容量および圧縮率を取得する。
次に、S135において、移行情報管理システムは、算出された安全想定容量と移行先空き容量を比較し、安全想定容量が移行先空き容量よりも小さければ、移行先DBに十分な空きがあるとみなし、次の条件分岐に遷移する。逆に安全想定容量が移行先空き容量よりも大きければ、移行先DBに十分な空きがないとみなし、案件差し戻し処理に遷移する(S135の詳細は図9を用いて後述する)。
次に、S137において、移行情報管理システムは、算出されたインポート処理想定時間と許容時間を比較し、インポート処理想定時間が許容時間よりも小さければ、通常運用への影響が無いものとし、移行処理を指示のフローに遷移する。逆にインポート処理想定時間が許容時間より大きければ定常運用の影響があると判断し、案件差し戻し処理に遷移する。
次に、S140において、移行情報管理システムは、移行チェック判定の結果から、移行処理を移行作業実施システムに指示する(S140の詳細は図10を用いて後述する)。
次に、S142において、移行情報管理システムは、移行作業実施システムから、移行処理の結果受け取る。
次に、S145において、移行情報管理システムは、移行処理の結果をもとに、実行計画テーブルへ書き込む。ステータスには「実行完了」もしくは「エラー」となる。更新日時にはその時点の時刻を書き込む。
次に、S150において、移行情報管理システムは、移行チェック判定の結果を、実行計画テーブルのコメントへ書き込む。
次に、S155において、移行情報管理システムは、移行チェック判定の結果をもとに、実行計画テーブルへ書き込む。ステータスには「差し戻し」が入る。更新日時にはその時点の時刻を書き込む。
次に、S160において、移行情報管理システムは、DB管理者に移行結果の通知メールを配信する。その際、本文には移行結果に紐付いたメッセージと、実行計画テーブルに更新された値の一部(案件番号、申請者ID、計画日時、コメント、移行プラン、更新日時)と承認画面へのリンクを掲載する。
なお、移行結果に紐付いたメッセージは、たとえば以下のようなものである。(1)案件番号XXXXXが差し戻されました。DB管理者は内容を確認し、承認作業を実施してください。<ステータス:差し戻し> (2)案件番号XXXXXが正常に完了しました。DB管理者は内容を確認し、承認作業を実施してください。<ステータス:実行完了> (3)案件番号XXXXXにて予期しないエラーが発生しました。DB管理者は内容を確認し、承認作業を実施してください。また、必要におうじてDBシステムのログを確認してください。<ステータス:エラー>
続いて、S165において、移行情報管理システムは、DB管理者のログインを受け付け、実行計画テーブルの案件番号に紐付いた案件一覧を表示する。
次に、S170において、移行情報管理システムは、DB管理者が選択した案件番号をキーに実行計画テーブルを更新する。承認者IDにはDB管理者のIDが入り(IDは上書きされる)、ステータスは「完了」もしくは「完了(異常)」となる。更新日時にはその時点の時刻を書き込む。また、結果に応じてDB管理者はコメントに値を追加する。
次に、S175において、移行情報管理システムは、DB管理者の移行情報更新をトリガーに、テーブル管理者に移行結果の通知メールを配信する。その際、本文には実行計画テーブルに更新された値の一部(案件番号、ステータス、画日時、コメント、移行プラン、更新日時)と承認画面へのリンクを掲載する。
図9を用いて、図7で説明したS130移行手続における移行チェック内部処理を説明する。
S210において、移行案件管理システムから移行チェック内部処理指示を受領した移行作業実行システムは、移行情報テーブルを参照する。次に、S220で、移行作業実行システムは、移行先DBに空き容量を問合せ移行作業実行システムより、DBシステム(移行先)へ空き容量を問い合わせる。
S225において、移行作業実行システムは、DBシステム(移行先)より、問合せ結果を受け取る。S230において、移行作業実行システムは、移行元DBの対象テーブル容量および圧縮率から、データをエクスポート処理した際の単純想定容量を算出する(移行元DBの対象テーブル容量÷(移行元DB)圧縮率=単純想定容量)。つぎに、S240で、移行作業実行システムは、単純想定容量に安全係数と移行先DBの圧縮率を掛けた、安全想定容量を算出する。なお、ここでの安全係数はデータ容量を過少見積りすることによって、移行作業実施後にエラーになるリスクを軽減するためにある。また、安全係数は任意にDB管理者が設定できるものとするが、安全係数の持つ意味を考慮し、その値は1以上2未満とする(単純想定容量×安全係数×(移行先DB)圧縮率=安全想定容量)。
次に、S250において、移行作業実行システムは、安全想定容量にデータ量あたりの処理時間を掛け、インポート処理想定時間を算出する(安全想定容量×データ量あたりの処理時間=インポート処理想定時間)。なお、ここでのデータ量あたりの処理時間は任意にDB管理者が設定できるものとする。これは、DBシステムのマシンスペックによって処理時間が異なるためである。また、許容時間も、任意にDB管理者が設定できるものとする。これは、運用設計によって許容時間が異なるためである。移行作業実行システムは、算出した値を、移行チェック内部処理の結果として移行案件管理システムに送る。
図10を用いて、移行作業実行システムはにおける移行処理を説明する。
この処理は、図8のS140において移行処理管理システムが発行した移行処理指示を、移行処理実行システムが受領することを契機に実行される。
S310において、 移行処理実行システムがは、移行元DBより、移行対象テーブルのテーブル定義を取得する。ここではSQLによって記述された、CREATE文をDDLとして移行作業実施システムにダウンロードする。次に、S320において、移行処理実行システムは、移行元DBより、移行対象テーブルのデータを取得する。ファイル形式は任意でDB管理者が変更できるものする。次に、S330において、移行処理実行システムは、変換情報テーブルをもとに、事前に取得した移行元DBのテーブル定義(DDL)の内容を修正する。これは異なるDB構造を持つ場合において、データ型やDDLの表記が異なるためである。なお、変換情報テーブルは事前にDB管理者が作成する。つぎに、S340において、移行処理実行システムは、移行作業実施システムから、DBシステムに対して命令するためのプログラムを生成する。次に、S350において、移行処理実行システムは、移行元DBから取得し移行作業実施システム上に確保したデータを、移行先DBへ転送する。次に、S360で、移行処理実行システムは、スケジュールテーブルに従い、プログラムを実行する。移行処理実行システムは、データ移行の進捗を移行処理結果として、データ移行管理システムに送信する。

Claims (3)

  1. 複数のデータベースと接続され、複数のデータベース間のデータ移行を管理するデータ移行管理システムであって、
    複数のデータベースの組み合わせ毎に、移行元データベースのデータ構造、移行先データベースのデータ構造に応じた移行プランを示す移行情報テーブルを有し、
    第1のテーブルの第1のデータベースから第2のデータベースへの移行要求を受領したときに、
    当該移行要求に対応する移行プランを前記移行情報テーブルから選択し、選択した移行プランに基づき、前記第1のテーブルを変換した上で、変換後の前記第1のテーブルを前記第2のデータベースに移行することを特徴とする
    データ移行管理システム。
  2. 請求項1に記載のデータ移行管理ステムであって、
    前記移行情報テーブルは、前記移行プラン毎に、移行元データベースの文字列の種類と、当該文字列を移行先データベースに格納する際に変化すべき文字列の種類との対応関係を管理し、当該対応関係に基づき、前記第1のテーブルの変換を行うことを特徴とする
    データ移行管理システム。
  3. 請求項1に記載のデータ移行管理ステムであって、
    前記移行情報テーブルは、移行元データベースの圧縮率と、移行先データベースの圧縮率を管理し、
    前記第1のテーブルの前記第1のデータベースから前記第2のデータベースへの移行要求を受領したときに、
    前記移行情報テーブルに示される前記第1のデータベースの圧縮率と前記第2のデータベースの圧縮率に基づき、当該移行要求が実行可能かを判断する
    データ移行管理システム。
JP2017135881A 2017-07-12 2017-07-12 データベース移行システム Pending JP2019020793A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2017135881A JP2019020793A (ja) 2017-07-12 2017-07-12 データベース移行システム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2017135881A JP2019020793A (ja) 2017-07-12 2017-07-12 データベース移行システム

Publications (1)

Publication Number Publication Date
JP2019020793A true JP2019020793A (ja) 2019-02-07

Family

ID=65354083

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017135881A Pending JP2019020793A (ja) 2017-07-12 2017-07-12 データベース移行システム

Country Status (1)

Country Link
JP (1) JP2019020793A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2023159619A (ja) * 2022-04-20 2023-11-01 三菱電機Itソリューションズ株式会社 データ移行装置およびデータ移行方法

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2023159619A (ja) * 2022-04-20 2023-11-01 三菱電機Itソリューションズ株式会社 データ移行装置およびデータ移行方法
JP7386921B2 (ja) 2022-04-20 2023-11-27 三菱電機Itソリューションズ株式会社 データ移行装置およびデータ移行方法

Similar Documents

Publication Publication Date Title
CN111782365B (zh) 定时任务处理方法、装置、设备及存储介质
US20080046862A1 (en) Business task management
CN107203395A (zh) 资源升级方法、装置及计算机可读存储介质和电子设备
US10127218B2 (en) Object templates for data-driven applications
US10063424B2 (en) Communications processing method and apparatus
CN103229143B (zh) 具有可扩展和可定制的计算引擎的面向网络服务的架构内的服务提供者
CN108055343A (zh) 用于机房的数据同步方法及装置
CN104462304A (zh) 一种信息处理方法和装置
US8214245B2 (en) Method and system for synchronizing inclusive decision branches
JP2009288836A (ja) 仮想サーバのシステム障害回復方法及びそのシステム
CN111290768B (zh) 一种容器化应用系统的更新方法、装置、设备和介质
CN107333248B (zh) 一种短信实时发送方法和系统
CN108563697A (zh) 一种数据处理方法、装置和存储介质
CN110751458A (zh) 一种业务审批方法、装置和系统
CN110750419B (zh) 离线任务的处理方法、装置、电子设备及存储介质
CN109960212B (zh) 任务发送方法和装置
JP5268589B2 (ja) 情報処理装置及び情報処理装置の運用方法
CN115964021A (zh) 一种需求发布方法、装置、电子设备及存储介质
CN107463391A (zh) 任务处理方法、装置及设备
CN113076186B (zh) 任务处理的方法、装置、电子设备和存储介质
JP2019020793A (ja) データベース移行システム
CN113608751A (zh) 推理服务平台的运行方法、装置、设备及存储介质
US9032326B2 (en) Late instantiation of dependent objects
CN113472638B (zh) 边缘网关控制方法及系统、装置、电子设备、存储介质
CN102147750A (zh) 作业处理方法和系统