JP2004318288A - データ処理方法および装置ならびにその処理プログラム - Google Patents
データ処理方法および装置ならびにその処理プログラム Download PDFInfo
- Publication number
- JP2004318288A JP2004318288A JP2003108361A JP2003108361A JP2004318288A JP 2004318288 A JP2004318288 A JP 2004318288A JP 2003108361 A JP2003108361 A JP 2003108361A JP 2003108361 A JP2003108361 A JP 2003108361A JP 2004318288 A JP2004318288 A JP 2004318288A
- Authority
- JP
- Japan
- Prior art keywords
- database
- processing
- unit
- program
- update
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/27—Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
- G06F16/275—Synchronous replication
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/27—Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S707/00—Data processing: database and file management or data structures
- Y10S707/99951—File or database maintenance
- Y10S707/99952—Coherency, e.g. same view to multiple users
- Y10S707/99953—Recoverability
Abstract
【解決手段】運用対象のデータベースを前記主データベースから複製データベースへ切り替えるステップと、前記切り替えにより運用対象ではなくなった主データベースに対して所定処理を実行するステップと、前記切り替えにより運用対象となった複製データベースへデータベースアクセス要求を振り分けてデータベース処理を行うステップと、前記複製データベースに対して行われた更新処理の内容を示す更新情報を出力するステップと、前記出力された更新情報を前記所定処理の実行された主データベースへ反映させるステップと、運用対象のデータベースを前記複製データベースから主データベースへ切り替えるステップとを有するものである。
【選択図】 図1
Description
【発明の属する技術分野】
本発明は、データベースの運用で利用されるデータベース処理技術に関するものである。
【0002】
【従来の技術】
従来の大量のトランザクション処理を行うオンライン業務においては、大量データの集計や一括登録等の日次、週次、月次処理、或いはデータベースのバックアップや再編成など定期的なバッチ処理が必要となる。これらの処理は、オンラインサービスで使用するデータベースへの一括アクセスを伴う為、オンライン業務処理への影響が大きく、24時間連続でサービス(プログラムやオブジェクトの実行により実現される機能)を提供する際の妨げとなっている。
【0003】
近年、磁気ディスク装置など複数のストレージ装置を専用の高速ネットワークで有機的に結合したSAN(Storage Area Network)構成が普及し始めている。この構成では任意の論理ボリュームを複数の論理ボリュームに高速コピーする機能、任意の論理ボリュームを正ボリュームとし、他の複数の論理ボリュームを副ボリュームとしてデータの多重書き込みを行う機能、多重書き込み状態の論理ボリュームを任意の時点で切り離し、正・副独立したボリュームとしてアクセスできる機能、任意の論理ボリュームを正ボリューム、別の論理ボリュームを副ボリュームとし、多重書き込みを再開して双方のデータの差分だけを正ボリュームから副ボリュームに反映する差分反映機能などをストレージ装置が提供している。
【0004】
また、外部記憶装置上で多重書き又は複製されたデータベース領域の一方を切り離し、物理的な複製データベースを作成する場合に、トランザクション処理を継続したまま、複製データベースの一貫性を維持できる様にしたり、また、複製元のデータベースをアクセスしていたアプリケーションプログラムを変更せずに、物理的な複製データベースをアクセス可能とする複製データベースアクセス装置が提案されている(例えば特許文献1参照)。
【0005】
【特許文献1】
特開2003−006020号公報
【0006】
【発明が解決しようとする課題】
前記従来の技術において、データベースの複写を複製データベースとして作成しておき、そのデータベースに対して再編成やフラグメンテーション解消等の所定処理を行う必要が生じた際に、運用対象を複製データベースに切り替えて、データベースの再編成時にも複製データベースによりデータベース処理を継続した場合、複製データベースに対して行われた更新処理を、再編成後のデータベースに対しても実行する必要があるが、それを実現するためには、複製データベースに対する更新処理を、時系列にデータベースに対して反映する必要があり、複数実行していた業務プログラム、アプリケーションプログラム等のプログラムが行った更新処理を時系列に再実行することを前記プログラムで実現することは複雑で、データベースを管理する側以外で実現するのは困難であった。
【0007】
本発明の目的は上記問題を解決し、データベースに対して所定処理を行う必要がある場合に、データベース処理と所定処理とを並行若しくは並列実行することが可能な技術を提供することにある。
【0008】
【課題を解決するための手段】
本発明は、運用対象を複製データベースへ切り替えてデータベース処理を継続すると共に主データベースに対して所定処理を実行し、複製データベースに対して行われた更新処理を前記所定処理の実行された主データベースへ反映させた後、運用対象を主データベースへ戻すものである。
【0009】
本発明のデータベース処理装置(計算機や情報処理装置、またはその様な処理を実施するプログラムやオブジェクトでも良い)では、主データベースの再編成等の特定処理の実行が運用操作命令として指示されると、運用対象となっている主データベースに対するデータベース処理の実行を停止して、主データベースとその複製データベースとを静止化状態とする。そして、DB定義情報中のステータスを変更することにより、運用対象のデータベースを前記主データベースから複製データベースへ切り替えた後、前記主データベース及び複製データベースの静止化状態を解除する。
【0010】
次に、前記ステータスの変更により運用対象ではなくなった主データベースに対して再編成等の所定処理を実行すると共に、前記ステータスの変更により運用対象となった複製データベースへデータベースアクセス要求を振り分けてデータベース処理を継続し、その複製データベースに対して行われた更新処理の内容を示す更新情報を更新情報ファイルへ出力する。
【0011】
そして主データベースに対する所定処理が終了すると、前記出力された更新情報に従って主データベースの内容を更新することにより、その更新情報を主データベースへ反映させる処理を行う。この間の業務処理は複製データベースで継続して実行しており、反映が必要となる更新処理の量も増え続けるが、更新反映処理は更新情報に基づく更新処理を並行に実行するため、業務による更新より高速に実行することで、業務処理に追付くことを利用している。
【0012】
前記更新情報の反映が終了すると、運用対象となっている複製データベースに対するデータベース処理の実行を停止して、前記更新情報が反映された主データベースと運用対象となっている複製データベースとを静止化状態とする。そして、DB定義情報中のステータスを変更することにより、運用対象のデータベースを前記複製データベースから主データベースへ切り替えた後、前記主データベース及び複製データベースの静止化状態を解除して、主データベースによるデータベース処理を再開する。
【0013】
以上の様に本発明のデータベース処理装置によれば、主データベースに対して所定処理を行う必要がある場合に、データベース処理をできるだけ継続させたまま所定処理を実行することが可能である。
【0014】
【発明の実施の形態】
以下に本発明の一実施形態のデータベース処理システムについて説明する。
【0015】
図1は本実施形態のデータベース処理システムの概略構成を示す図である。図1に示す様に本実施形態のデータベース処理装置101は、データベース管理処理部102と、運用操作命令部104と、データベース運用操作処理部110と、データベースアクセス制御部111と、データ静止化部113と、データ静止化解除部114と、動的複写部115と、動的登録部116と、世代管理部117と、カレントアクセス世代設定部118と、アクセス対象設定部122と、アクセス対象振り分け部123と、更新情報出力部124と、更新内容反映部125とを有している。これら102、104、110〜125の処理部は、それぞれの処理が実施されるハードウェアやプログラムやオブジェクトでも良い。
【0016】
データベース管理処理部102は、データベースをアクセスするプログラム(業務プログラムやアプリケーションプログラム)や運用操作命令部104からのデータベースへのアクセス要求を受け取って、各処理部の動作を制御し、データベースの検索及び更新や再編成等を実行する処理部である。
【0017】
運用操作命令部104は、データベースの再編成等の特定処理の実行指示をシステム管理者から受け付け、その特定処理の実行をデータベース管理処理部102へ指示する処理部である。データベース運用操作処理部110は、動的複写部115、動的登録部116、世代管理部117及びカレントアクセス世代設定部118の動作を制御する処理部である。
【0018】
データベースアクセス制御部111は、データ静止化部113、データ静止化解除部114、アクセス対象設定部122、アクセス対象振り分け部123、更新情報出力部124、更新内容反映部125の動作を制御し、主データベース及び複製データベースの切り替えや、運用対象となっていない主データベースでの所定処理の実行と複製データベースでのデータベース処理の継続、主データベースへの更新情報ファイル109の反映を行う処理部である。
【0019】
データ静止化部113は、運用対象となっている主データベースとその複写を保持している複製データベースとを静止化状態とする処理や、更新情報が反映された主データベースと運用対象となっている複製データベースとを静止化状態とする処理を行う処理部である。
【0020】
データ静止化解除部114は、主データベース及び複製データベースの静止化状態を解除する処理部である。動的複写部115は、主データベースの内容を複製データベースへ複写する処理部である。動的登録部116は、データベースに対して、主データベースとその複写を保持する複製データベースが定義された場合に、その定義内容を定義情報ファイル106中へ登録する処理部である。
【0021】
世代管理部117は、世代番号「0」で表される主データベースと、「0」以外の世代番号で表される複製データベースの運用状態を管理する処理部である。カレントアクセス世代設定部118は、「カレント」で表される運用対象のデータベースを主データベースから複製データベースまたは複製データベースから主データベースへ切り替える処理部である。
カレントデータベースとは前記プログラムからのアクセスが許可されているデータベースをいう。
【0022】
アクセス対象設定部122は、業務AP103(業務サービスを提供するプログラムもしくは、データベースをアクセスするプログラムやオブジェクト)、運用操作命令部104または更新内容反映部125からのデータベースへのアクセス要求を受け付け、そのアクセス要求の内容に応じてアクセス対象を主データベースまたは複製データベースに設定する処理部である。
【0023】
アクセス対象振り分け部123は、アクセス対象設定部122によって設定されたデータベースへアクセス要求を振り分けることにより、業務AP103からのデータベースアクセス要求、運用操作命令部104からの再編成等の実行指示、更新内容反映部125からの更新情報反映要求を、主データベースまたは複製データベースへ振り分ける処理部である。
【0024】
更新情報出力部124は、運用対象となっている複製データベースに対して行われた更新処理の内容を示す更新情報を更新情報ファイル109へ出力する処理部である。
【0025】
ここで主データベースとは前記複製データベースの複製元データベースをいう。更新情報とはデータベースに対するレコードの追加、削除および更新処理の少なくともいずれかの処理を含む履歴情報をいう。更新内容反映部125は、更新情報ファイル109へ出力された更新情報を、その更新情報中のキー値に対応する複数の実行プロセスの並行処理により、前記所定処理の実行された主データベースへ反映させる処理部である。
【0026】
データベース処理装置101を、データベース管理処理部102、運用操作命令部104、データベース運用操作処理部110、データベースアクセス制御部111、データ静止化部113、データ静止化解除部114、動的複写部115、動的登録部116、世代管理部117、カレントアクセス世代設定部118、アクセス対象設定部122、アクセス対象振り分け部123、更新情報出力部124及び更新内容反映部125として機能させる為のプログラムは、CD−ROM等の記録媒体に記録され磁気ディスク等に格納された後、メモリにロードされて実行されるものとする。なお前記プログラムを記録する記録媒体はCD−ROM以外の他の記録媒体でも良い。また前記プログラムを当該記録媒体から情報処理装置にインストールして使用しても良いし、ネットワークを通じて当該記録媒体にアクセスして前記プログラムを使用するものとしても良い。
【0027】
またディスクシステム105は、定義情報ファイル106、主データベース107、複製データベース108および更新情報ファイル109を格納する磁気ディスク装置と動的複写部115からの指示により、主データベース107を複写して複製データベース108を作成したり、主データベース107の更新内容を複製データベース108に反映する(ミラーリング処理ともいう)、或いは反映を行わないようにする多重書き制御部126からなる。
複製データベースの生成処理はディスク装置におけるボリュームコピー機能であるMRCFやシャドウイメージ等の処理を利用する。
【0028】
図2は本実施形態の通常運用状態からレプリカ運用状態に切り替えてデータベース処理実行中に再編成する状態遷移の概要を示す図である。図2に示す様に本実施形態のデータベース処理装置101では、通常運用状態の際には業務AP103によるアクセス要求を主データベースで処理し、多重書き制御部126により主データベースの内容を複製データベースへ複写している。このような多重書き処理は、データベース処理部102で実現してもよい。
【0029】
ここで運用操作命令部104から主データベースの再編成等の特定処理の実行指示が入力されると、データ静止化部113により、データベースに対するアクセス処理の実行を抑止するロック中にして、DBキャッシュ1000上のデータを主データベース107に出力した状態(静止化状態)にし、世代管理部117とカレントアクセス世代設定部118により、DB定義情報1104の状態とステータスの内容を変更して、データ静止化解除部114により静止化を解除し、運用対象を主データベースから複製データベースへ切り替えるレプリカ運用を開始して、主データベースに対して再編成を行う。複製データベースにより業務AP103からのアクセス要求の処理により、複製データベースに対して行われた更新処理の内容を示す更新情報を出力する。ここでの前記再編成処理と前記アクセス要求処理は並列実行もしくは並行実行可能である。このように静止化状態を利用することにより、運用対象と主データベースから複製データベースに切り替えることができる。
【0030】
この様に本実施形態のデータベース処理装置101では、主データベースの再編成処理と、複製データベースによるデータベース処理の継続とを並行して行うので、主データベースに対して再編成等の所定処理を行う必要がある場合に、データベース処理は所定処理中でも実行することが可能である。
【0031】
図3は本実施形態の再編成終了後にレプリカ運用状態から通常運用状態に戻すまでの状態遷移の概要を示す図である。図3に示す様に本実施形態のデータベース処理装置101では、主データベースに対する再編成が終了すると、前記出力された更新情報を主データベースへ反映させた後、運用対象を複製データベースから主データベースへ切り替えてレプリカ運用を終了し、主データベースによる通常運用を再開する。
【0032】
前記の更新情報を主データベースに反映する処理において、反映処理時点で出力済の更新情報を主データベースへ反映させた後、その主データベースと運用対象となっている複製データベースとを静止化状態とし、反映後から静止化までに出力された更新情報を主データベースへ反映させることにより、複製データベースに対して行われた全更新処理の内容を主データベースへ反映させる。前記更新情報の処理数や残処理数に達したとき静止化状態とし、更新情報を主データベースに反映することも可能である。その後、主データベースによる通常運用状態に戻す。このような処理により、複製データベースへの更新処理の処理履歴を更新情報として設けることにより、主データベースへ反映する範囲を明確化できるという効果がある。
【0033】
この様に本実施形態のデータベース処理装置101では、主データベースへの更新情報の反映処理と、複製データベースによるデータベース処理の継続とを並行して行い、更新情報の反映が一旦終了した後に静止化を行うので、アクセス処理のロック解除待ち時間を短くすることが可能である。
【0034】
図4は本実施形態のプログラム実行管理情報、表インデクス格納情報及びDB定義情報の例を示す図である。図4に示す様に本実施形態の表インデクス格納情報1101は、業務AP103、運用操作命令部104または更新内容反映部125からのアクセス要求で処理される表やインデクスの名称を示す表・インデクス名と、それらの表やインデクスが格納されているデータベースの領域名を格納している。
【0035】
またDB定義情報1104は、そのデータベースの実体である領域の名称を示す領域名、その領域の主データベースでの名称を示す元領域名、そのデータベースが主データベースまたは複製データベースのいずれであるかを示す世代、そのデータベースが運用対象であるかどうかを示すステータス、そのデータベースの運用状態を示す状態、そのデータベースへのアクセスパスの名称を示すアクセスパス名を格納している。
【0036】
プログラム実行管理情報1301は、アクセス要求を行ったプログラムの名称を示すプログラム名、そのプログラムが更新反映処理要求を行うものであるかどうかを示す更新反映フラグ、レプリカ運用状態でのアクセスが許可されているかどうかを示すアクセス許可フラグ、世代番号が指定されているかどうかを示す世代設定フラグ、指定された世代番号を格納している。
【0037】
本実施形態のデータベース処理装置101において、運用操作命令部104は、データベースの再編成等の特定処理の実行指示がシステム管理者から入力されると、運用操作命令部104は、その入力された実行指示を受け付けた後、その特定処理の対象となるテーブルの名称、そのテーブルを格納しているデータベースの世代識別子、レプリカ運用状態での当該データベースへのアクセス許可を要求することを示すレプリカ運用状態アクセス許可要求と共に、当該特定処理の実行を指示する運用操作命令を、データベースアクセス制御部111へ渡す。
【0038】
データベースアクセス制御部111は、運用操作命令部104から特定処理の実行を指示されると、その対象となっているデータベースに対して、複製データベースを運用対象とするレプリカ運用を開始する。
【0039】
図5は本実施形態のレプリカ運用開始処理の処理手順を示すフローチャートである。ステップ501でデータベースアクセス制御部111は、運用操作命令部104から受け取ったテーブル名称を用いて表インデクス格納情報1101の表・インデクス名を検索し、対応する領域名を取り出した後、その元領域名が前記取り出した領域名と一致すると共にその世代が「0」であるレコードをDB定義情報1104から検索して、そのレコード中の状態を読み出し、処理対象のデータベースが通常運用状態であるかどうかを判定する。前記判定の結果、通常運用状態ではない場合にはステップ502へ進み、エラーとして処理を終了する。また通常運用状態である場合にはステップ503へ進む。
【0040】
ステップ503でデータ静止化部113は、前記処理対象の主データベース及びその複製データベースが静止化状態であることを示す情報をメモリ内に格納することにより、運用対象となっている主データベースに対するデータベース処理の実行を停止して、主データベースとその複製データベースとを静止化状態とする。
【0041】
ステップ504で世代管理部117は、前記検索されたDB定義情報1104のレコードの状態の項目中にレプリカ運用状態であることを示す情報を設定し、当該主データベースをレプリカ運用状態とする。
【0042】
ステップ505で世代管理部117は、その元領域名が前記取り出した領域名と一致すると共にその世代が「0」以外であるレコードをDB定義情報1104から検索し、その検索されたレコードの状態の項目中にレプリカ運用状態であることを示す情報を設定して、その複製データベースをレプリカ運用状態とする。
【0043】
ステップ506でデータベースアクセス制御部111は、前記主データベースの内容を複製データベースへ複写する状態である多重書き状態の解除をディスクシステム105の多重書き制御部126へ指示する。
【0044】
ステップ507でカレントアクセス世代設定部118は、DB定義情報1104から検索された主データベースのレコード中のステータスの項目に、運用対象のデータベースではないことを示す「サブ」を設定すると共に、複製データベースのレコード中のステータスの項目に、運用対象のデータベースであることを示す「カレント」を設定し、運用対象のデータベースを主データベースから複製データベースへ切り替える。
【0045】
ステップ508でデータ静止化解除部114は、前記メモリ内に格納した静止化状態であることを示す情報を削除し、主データベース及び複製データベースの静止化状態を解除する。
【0046】
前記の様にしてレプリカ運用が開始されるとデータベースアクセス制御部111は、運用対象ではなくなった主データベースに対して、運用操作命令部104から指示された再編成等の特定の処理を実行し、これと並行して複製データベースでデータベース処理を継続する。また更新情報出力部124は、運用対象となっている複製データベースに対して更新処理が行われた場合に、その更新処理の内容を示す更新情報を更新情報ファイル109へ出力する。そして主データベースに対する特定処理が終了するとデータベースアクセス制御部111は、レプリカ運用を終了して通常運用状態へ戻す処理を行う。
【0047】
図6は本実施形態のレプリカ運用終了処理の処理手順を示すフローチャートである。ステップ601でデータベースアクセス制御部111は、DB定義情報1104の先頭エントリよりレコードを読み出してステップ602へ進む。
【0048】
ステップ602では、前記読み出したレコード中の世代が「0」であり、そのステータスが「サブ」であり、その状態が「レプリカ」である場合、すなわち、そのレコードが、レプリカ運用状態で特定処理の行われた主データベースのレコードである場合にはステップ603へ進む。
【0049】
ステップ603で更新内容反映部125は、更新情報ファイル109へ出力された更新情報を、その更新情報中のキー値に対応する複数の実行プロセスの並行処理により、前記所定処理の実行された主データベースへ反映させる処理を行う。
【0050】
ステップ604でデータベースアクセス制御部111は、DB定義情報1104中の全エントリに対する処理を完了したかどうかを調べ、まだ全エントリの処理を完了していない場合には次のエントリのレコードを読み出してステップ602へ戻り、全エントリの処理を完了した場合にはこのレプリカ運用終了処理を終了する。
【0051】
図7は本実施形態のステップ603のDB更新反映処理の処理手順を示すフローチャートである。ステップ701で更新内容反映部125は、システム定義等により予め指定された数の更新処理実行プロセスを生成する。
【0052】
ステップ702では、更新情報ファイル109の先頭からレコードを読み出してステップ703へ進む。ステップ703では、前記レコードの読み出し結果を調べることにより、更新情報ファイル109中に更新情報があるかどうかを判定し、更新情報がある場合にはステップ704へ進み、更新情報がない場合にはステップ705へ進む。
【0053】
ステップ704では、更新処理実行プロセスを制御して処理対象領域の更新情報により更新内容を主データベースへ反映する。
【0054】
ステップ705でデータ静止化部113は、前記主データベース及びその複製データベースが静止化状態であることを示す情報をメモリ内に格納することにより、運用対象となっている複製データベースに対するデータベース処理の実行を停止して、主データベースとその複製データベースとを静止化状態とする。
【0055】
ステップ706では、更新情報ファイル109からのレコードの読み出しを行ってその結果を調べることにより、更新情報ファイル109中に更新情報があるかどうかを判定し、更新情報がある場合にはステップ707へ進む。ステップ707では、更新処理実行プロセスを制御して処理対象領域の更新情報より更新内容を反映する。
【0056】
ステップ708では、更新情報ファイル109からのレコードの読み出しを行ってその結果を調べることにより、全更新情報を処理したかどうかを判定し、また全更新情報を処理していない場合にはステップ707へ戻り、全更新情報を処理した場合にはステップ709へ進む。ステップ709では、ステップ701で生成した全実行プロセスに終了を指示する。
【0057】
ステップ710でカレントアクセス世代設定部118は、DB定義情報1104を検索し、前記主データベースのレコード中のステータスの項目に、運用対象のデータベースであることを示す「カレント」を設定すると共に、その複製データベースのレコード中のステータスの項目に、運用対象のデータベースでないことを示す「サブ」を設定し、運用対象のデータベースを複製データベースから主データベースへ切り替える。
【0058】
ステップ711で世代管理部117は、前記検索された主データベースのレコードの状態の項目中に通常運用状態であることを示す情報を設定し、当該主データベースを通常運用状態とする。
【0059】
ステップ712で世代管理部117は、前記検索された複製データベースのレコードの状態の項目中に非運用状態であることを示す情報を設定して、その複製データベースを非運用状態とする。
【0060】
ステップ713でデータ静止化解除部114は、前記メモリ内に格納した静止化状態であることを示す情報を削除し、主データベース及び複製データベースの静止化状態を解除する。
【0061】
図8は本実施形態のステップ704の反映制御処理及び更新処理実行プロセスの反映実行処理の処理手順を示すフローチャートである。ステップ801で更新内容反映部125は、前記読み出したレコード中の更新情報から、更新処理の行われたデータベースレコードのキー値を読込む。
【0062】
ステップ802では、前記読み込んだキー値をステップ701の更新処理実行プロセス数で割った結果の剰余に「1」を加えた値により、実行プロセス管理テーブルのエントリを決定する。
【0063】
ステップ803では、前記決定されたエントリの実行プロセスの状態を実行プロセス管理テーブルから読み出し、その状態がreadyでない場合にはステップ804へ進んで、その状態がreadyになるのを待つ。
【0064】
ステップ805では、前記決定されたエントリの更新情報中に、前記読み出したレコード中の更新情報を設定する。ステップ806では、前記決定されたエントリの状態をbusyに変更する。ステップ807では、前記決定されたエントリのプロセス番号で識別される実行プロセスに対して反映処理の実行を指示する。
【0065】
ステップ808で更新処理実行プロセスは、処理の指示を更新内容反映部125から受け取っているかどうかを調べ、処理の指示を受け取っていない場合にはステップ809で指示を待つ。
【0066】
ステップ810では、更新内容反映部125から受け取った指示内容を調べ、その指示が処理終了の指示ではない場合にはステップ811へ進み、処理終了の指示である場合にはステップ813へ進む。
【0067】
ステップ811では、実行プロセス管理テーブルを参照し、その更新処理実行プロセスのエントリ中に格納されている更新情報に基づいて更新反映処理を行う。ステップ812では、そのエントリ中の状態をreadyに戻す。一方、ステップ813では、その更新処理実行プロセスの処理を終了させる。
【0068】
前記の様にして更新処理実行プロセスにより更新反映処理が開始されると、そのアクセス対象に応じてアクセス処理の振り分けが行われる。
【0069】
図9は本実施形態のアクセス対象振り分けとアクセス処理の処理手順を示すフローチャートである。ステップ904では、前記アクセス要求中のテーブル名称を用いて表インデクス格納情報1101の表・インデクス名を検索し、対応する領域名を取り出す。ステップ901でアクセス対象設定部122は、業務AP103、運用操作命令部104または更新内容反映部125からデータベースへのアクセス要求を受け付けると、そのアクセス要求でアクセス対象となっているデータベースが静止化状態であることを示す情報がメモリ内に格納されているかどうかを調べて、そのデータベースがロック中(静止化状態)であるかどうかを判定し、ロック中である場合にはステップ902へ進む。
【0070】
ステップ902では、アクセス要求を行ったプログラムの名称に対応する更新反映フラグをプログラム実行管理情報1301から読み出して、当該アクセス要求が更新反映処理要求(更新反映フラグがON)であるかどうかを判定し、そのアクセス要求が更新反映処理要求ではない場合にはステップ903でロックの解除を待つ。
【0071】
ステップ905では、前記アクセス要求中に世代識別子の指定があるかどうかを調べ、世代識別子の指定がない場合にはステップ906へ進み、世代識別子の指定がある場合にはステップ907へ進む。
【0072】
ステップ906では、DB定義情報1104を検索し、前記取り出した領域名が元領域名と一致すると共にステータスが「カレント」であるエントリを得る。またステップ907では、DB定義情報1104を検索し、前記取り出した領域名が元領域名と一致すると共に、指定されている世代識別子が世代と一致するエントリを得る。
【0073】
ステップ908でアクセス対象振り分け部123は、前記の様にして得たエントリ中の状態を参照し、そのデータベースの状態が、通常運用状態である場合にはステップ909へ進み、レプリカ運用状態である場合にはステップ910へ進み、非運用状態である場合にはステップ913へ進む。
【0074】
ステップ909では、前記エントリ中のアクセスパス名を読み出し、そのアクセスパスに従ってデータベースへのアクセス処理を実行する。
【0075】
ステップ910では、前記エントリ中のステータスが「カレント」であるかどうかを調べ、「カレント」である場合にはステップ909へ進み、そうでない場合にはステップ911へ進む。
【0076】
ステップ911では、そのアクセス要求を行ったプログラムの名称に対応するアクセス許可フラグをプログラム実行管理情報1301から読み出して、当該アクセス要求がレプリカ運用状態でのアクセスが許可されているもの(アクセス許可フラグがON)であるかどうかを判定し、レプリカ運用状態でのアクセスが許可されている場合にはステップ909へ進み、そうでない場合にはステップ912へ進む。
【0077】
ステップ912では、アクセス不可のエラーとする。またステップ913でも、同様にアクセス不可のエラーとする。
【0078】
図10は本実施形態の更新情報のレコード形式の例を示す図である。図10に示す様に本実施形態の更新情報は、その更新処理が行われた複製データベースの領域名、更新された表名、更新処理の行われたデータベースレコードを識別する為のキー値、その更新処理の種別を示す処理種別、その更新処理で用いられた更新データを格納している。
【0079】
図11は本実施形態の更新反映処理の実行プロセス管理テーブル形式の例を示す図である。図11に示す様に本実施形態の実行プロセス管理テーブルは、更新処理実行プロセス(プログラムやオブジェクト)を識別する為の情報であるプロセス番号、そのプロセスの状態を示す処理状態、そのプロセスによる反映処理で用いられる更新情報を格納している。
【0080】
以上説明した様に本実施形態のデータベース処理装置によれば、運用対象を複製データベースへ切り替えてデータベース処理を継続すると共に主データベースに対して所定処理を実行し、複製データベースに対して行われた更新処理を前記所定処理の実行された主データベースへ反映させた後、運用対象を主データベースへ戻すので、主データベースに対して所定処理を行う必要がある場合に、データベース処理をできるだけ継続させたまま所定処理を実行することが可能である。
【0081】
【発明の効果】
本発明によれば、データベースに対して所定処理を行う必要がある場合に、データベース処理と所定処理とを並行若しくは並列実行することが可能である。
【図面の簡単な説明】
【図1】本実施形態のデータベース処理装置の概略構成を示す図である。
【図2】本実施形態の通常運用状態からレプリカ運用状態に切り替えてデータベース処理実行中に再編成する状態遷移の概要を示す図である。
【図3】本実施形態の再編成終了後にレプリカ運用状態から通常運用状態に戻すまでの状態遷移の概要を示す図である。
【図4】本実施形態のプログラム実行管理情報、表インデクス格納情報及びDB定義情報の例を示す図である。
【図5】本実施形態のレプリカ運用開始処理の処理手順を示すフローチャートである。
【図6】本実施形態のレプリカ運用終了処理の処理手順を示すフローチャートである。
【図7】本実施形態のステップ603のDB更新反映処理の処理手順を示すフローチャートである。
【図8】本実施形態のステップ704の反映制御処理及び更新処理実行プロセスの反映実行処理の処理手順を示すフローチャートである。
【図9】本実施形態のアクセス対象振り分けとアクセス処理の処理手順を示すフローチャートである。
【図10】本実施形態の更新情報のレコード形式の例を示す図である。
【図11】本実施形態の更新反映処理の実行プロセス管理テーブル形式の例を示す図である。
【符号の説明】
101…データベース処理装置、103…業務AP、105…ディスクシステム、106…定義情報ファイル、107…データベース(主)、108…データベース(複製)、109…更新情報ファイル、1000…DBキャッシュ、119…DBアクセス要求、120…クライアント定義ファイル、121…クライアントアクセス対象設定部、102…データベース管理処理部、104…運用操作命令部、110…データベース運用操作処理部、111…データベースアクセス制御部、113…データ静止化部、114…データ静止化解除部、115…動的複写部、116…動的登録部、117…世代管理部、118…カレントアクセス世代設定部、122…アクセス対象設定部、123…アクセス対象振り分け部、124…更新情報出力部、125…更新内容反映部、126…多重書き制御部、1101…表インデクス格納情報、1102…表インデクス格納情報レコード、1104…DB定義情報、1107〜1109…DB定義情報レコード、1301…プログラム実行管理情報、1401〜1403…プログラム実行管理情報レコード。
Claims (10)
- プログラムからのアクセスを許可している第1のデータベースの複製である第2のデータベースを生成し、該生成が終了した後に前記プログラムのアクセス許可を前記第1のデータベースから前記第2のデータベースに切り替えることを特徴とするデータ処理方法。
- 前記プログラムのアクセス許可を切り替えた後、第2のデータベースヘの当該プログラムの処理の履歴を処理履歴として記憶し、前記第1のデータベースについては所定の処理を実行することを特徴とする請求項1記載のデータ処理方法。
- 前記第1のデータベースヘの所定の処理が終了した後、前記記憶した処理履歴に基づく処理を第1のデータベースに行うことを特徴とする請求項2記載のデータ処理方法。
- 前記記憶した処理履歴に基づく前記第1のデータベースへの処理が終了したとき、前記プログラムのアクセス許可を前記第2のデータベースから前記第1のデータベースに切り替えることを特徴とする請求項3記載のデータ処理方法。
- 所定条件を満たしたとき前記記憶した処理履歴に基づく前記第1のデータベースへの処理を終了して第2のデータベースを静止化状態とし、前記記憶した処理履歴で第1のデータベースに処理されていないものがある場合は、前記処理されていない処理履歴に基づく処理を第1のデータベースに行うことを特徴とする請求項3記載のデータ処理方法。
- 前記静止化状態は、前記プログラムにおける前記第1のデータベースまたは前記第2のデータベースへのアクセス処理時に一時記憶し、前記第1のデータベースまた前記第2のデータベースへの格納を停止している状態であることを特徴とする請求項5記載のデータ処理方法。
- 前記第2のデータベースへの当該プログラムの処理と、前記第1のデータベースヘの所定の処理は並行処理または並列処理することを請求項2または3記載の記載のデータ処理方法。
- 前記記憶した処理履歴に基づく処理を第1のデータベースに行うとき、前記処理履歴に含まれるキー値もしくはキーレンジに対応して割り付けた複数のプログラムにより並行処理もしくは並列処理することを特徴とする請求項2または3記載のデータ処理方法。
- 実行されているプログラムからのアクセスを許可している第1のデータベースの複製である第2のデータベースを生成する手段と、該生成が終了した後に前記プログラムのアクセス許可を前記第1のデータベースから前記第2のデータベースに切り替える手段とを有することを特徴とするデータ処理装置。
- 実行されているプログラムからのアクセスを許可している第1のデータベースの複製である第2のデータベースを生成するステップと、該生成が終了した後に前記プログラムのアクセス許可を前記第1のデータベースから前記第2のデータベースに切り替えるステップとを有することを特徴とするデータ処理プログラム。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003108361A JP2004318288A (ja) | 2003-04-11 | 2003-04-11 | データ処理方法および装置ならびにその処理プログラム |
US10/781,677 US7487162B2 (en) | 2003-04-11 | 2004-02-20 | Method and data processing system with data replication |
US12/362,872 US8117167B2 (en) | 2003-04-11 | 2009-01-30 | Method and data processing system with data replication |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003108361A JP2004318288A (ja) | 2003-04-11 | 2003-04-11 | データ処理方法および装置ならびにその処理プログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2004318288A true JP2004318288A (ja) | 2004-11-11 |
Family
ID=33295888
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2003108361A Pending JP2004318288A (ja) | 2003-04-11 | 2003-04-11 | データ処理方法および装置ならびにその処理プログラム |
Country Status (2)
Country | Link |
---|---|
US (2) | US7487162B2 (ja) |
JP (1) | JP2004318288A (ja) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007041888A (ja) * | 2005-08-04 | 2007-02-15 | Fujitsu Ltd | データベース再構成装置、およびデータベース再構成プログラム |
JP2008084255A (ja) * | 2006-09-29 | 2008-04-10 | Nomura Research Institute Ltd | シノニムを使用するデータベースシステムのアクセス制御方式及び方法 |
JP2008198153A (ja) * | 2007-02-16 | 2008-08-28 | Nomura Research Institute Ltd | オンライン処理を継続させながらバッチ処理を行う連続運用システム |
JP2012226499A (ja) * | 2011-04-18 | 2012-11-15 | Toshiba Corp | データベース装置およびデータベース再編成方法 |
JP2012226453A (ja) * | 2011-04-15 | 2012-11-15 | Toshiba Corp | データベース装置およびデータベース再編成方法 |
JP2021099606A (ja) * | 2019-12-20 | 2021-07-01 | 日本電気株式会社 | 複製データ制御装置、複製データ制御システム、複製データ制御方法および複製データ制御プログラム |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7302164B2 (en) | 2000-02-11 | 2007-11-27 | Datcard Systems, Inc. | System and method for producing medical image data onto portable digital recording media |
US7120644B1 (en) * | 2002-03-26 | 2006-10-10 | Software Engineering Corporation | Digital image storage and management system |
US8769479B2 (en) * | 2006-01-31 | 2014-07-01 | Digital River, Inc. | Physical on demand |
US7933472B1 (en) | 2006-04-26 | 2011-04-26 | Datcard Systems, Inc. | System for remotely generating and distributing DICOM-compliant media volumes |
JP5374056B2 (ja) * | 2008-02-26 | 2013-12-25 | 株式会社バッファロー | データ管理方法 |
JP4612714B2 (ja) * | 2008-08-12 | 2011-01-12 | 株式会社日立製作所 | データ処理方法、クラスタシステム、及びデータ処理プログラム |
CN104537110B (zh) * | 2015-01-19 | 2018-01-12 | 上海拍拍贷金融信息服务有限公司 | 一种数据写入方法和装置 |
CN115237347A (zh) * | 2019-10-17 | 2022-10-25 | 华为技术有限公司 | 一种数据存储方法及装置 |
US11379211B2 (en) * | 2019-12-05 | 2022-07-05 | Sap Se | Fencing execution of external tools during software changes |
Family Cites Families (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5307481A (en) * | 1990-02-28 | 1994-04-26 | Hitachi, Ltd. | Highly reliable online system |
US5544347A (en) * | 1990-09-24 | 1996-08-06 | Emc Corporation | Data storage system controlled remote data mirroring with respectively maintained data indices |
US5287496A (en) * | 1991-02-25 | 1994-02-15 | International Business Machines Corporation | Dynamic, finite versioning for concurrent transaction and query processing |
US5317731A (en) * | 1991-02-25 | 1994-05-31 | International Business Machines Corporation | Intelligent page store for concurrent and consistent access to a database by a transaction processor and a query processor |
US6101497A (en) * | 1996-05-31 | 2000-08-08 | Emc Corporation | Method and apparatus for independent and simultaneous access to a common data set |
US5812849A (en) * | 1996-12-18 | 1998-09-22 | Chrysler Corporation | Software redevelopment system |
JPH10207754A (ja) * | 1997-01-16 | 1998-08-07 | Fujitsu Ltd | 更新系データベースの複製方式 |
US6757698B2 (en) * | 1999-04-14 | 2004-06-29 | Iomega Corporation | Method and apparatus for automatically synchronizing data from a host computer to two or more backup data storage locations |
US6662356B1 (en) * | 1999-06-30 | 2003-12-09 | Microsoft Corporation | Application program interface for transforming heterogeneous programs |
US6567811B1 (en) * | 1999-07-15 | 2003-05-20 | International Business Machines Corporation | Method and system to merge volume groups on a UNIX-based computer system |
US6912629B1 (en) * | 1999-07-28 | 2005-06-28 | Storage Technology Corporation | System and method for restoring data from secondary volume to primary volume in a data storage system |
US7117197B1 (en) * | 2000-04-26 | 2006-10-03 | Oracle International Corp. | Selectively auditing accesses to rows within a relational database at a database server |
US6801921B2 (en) * | 2000-09-08 | 2004-10-05 | Hitachi, Ltd. | Method and system for managing multiple database storage units |
US6691245B1 (en) * | 2000-10-10 | 2004-02-10 | Lsi Logic Corporation | Data storage with host-initiated synchronization and fail-over of remote mirror |
US6665812B1 (en) * | 2000-12-22 | 2003-12-16 | Emc Corporation | Storage array network backup configuration |
US6681290B2 (en) * | 2001-01-29 | 2004-01-20 | International Business Machines Corporation | Physical data layout to reduce seeks in a raid system |
US7117229B2 (en) * | 2001-05-31 | 2006-10-03 | Computer Associates Think, Inc. | Method and system for online reorganization of databases |
JP2003006020A (ja) * | 2001-06-26 | 2003-01-10 | Hitachi Ltd | 複製データベースアクセス装置とそのアクセス方法 |
US7613806B2 (en) * | 2001-06-28 | 2009-11-03 | Emc Corporation | System and method for managing replication sets of data distributed over one or more computer systems |
US20030163510A1 (en) * | 2002-02-28 | 2003-08-28 | Bob Janssen | Method of administering user access to application programs on a computer system |
-
2003
- 2003-04-11 JP JP2003108361A patent/JP2004318288A/ja active Pending
-
2004
- 2004-02-20 US US10/781,677 patent/US7487162B2/en not_active Expired - Fee Related
-
2009
- 2009-01-30 US US12/362,872 patent/US8117167B2/en not_active Expired - Fee Related
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007041888A (ja) * | 2005-08-04 | 2007-02-15 | Fujitsu Ltd | データベース再構成装置、およびデータベース再構成プログラム |
JP4693540B2 (ja) * | 2005-08-04 | 2011-06-01 | 富士通株式会社 | データベース再構成装置、およびデータベース再構成プログラム |
US8429129B2 (en) | 2005-08-04 | 2013-04-23 | Fujitsu Limited | Database restructuring apparatus, and computer-readable recording medium recording database restructuring program |
JP2008084255A (ja) * | 2006-09-29 | 2008-04-10 | Nomura Research Institute Ltd | シノニムを使用するデータベースシステムのアクセス制御方式及び方法 |
JP2008198153A (ja) * | 2007-02-16 | 2008-08-28 | Nomura Research Institute Ltd | オンライン処理を継続させながらバッチ処理を行う連続運用システム |
JP2012226453A (ja) * | 2011-04-15 | 2012-11-15 | Toshiba Corp | データベース装置およびデータベース再編成方法 |
JP2012226499A (ja) * | 2011-04-18 | 2012-11-15 | Toshiba Corp | データベース装置およびデータベース再編成方法 |
JP2021099606A (ja) * | 2019-12-20 | 2021-07-01 | 日本電気株式会社 | 複製データ制御装置、複製データ制御システム、複製データ制御方法および複製データ制御プログラム |
Also Published As
Publication number | Publication date |
---|---|
US20040215637A1 (en) | 2004-10-28 |
US8117167B2 (en) | 2012-02-14 |
US7487162B2 (en) | 2009-02-03 |
US20090144291A1 (en) | 2009-06-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8117167B2 (en) | Method and data processing system with data replication | |
US6983277B2 (en) | Method and system of database management for replica database | |
JP5254611B2 (ja) | 固定内容分散データ記憶のためのメタデータ管理 | |
JP5918243B2 (ja) | 分散型データベースにおいてインテグリティを管理するためのシステム及び方法 | |
JP5178822B2 (ja) | データベースマネジメントシステム(dbms)におけるデータ複製方法およびシステム | |
KR100380221B1 (ko) | Raid 데이터 저장 시스템에 있어서 즉시 백업을제공하는 방법 및 시스템 | |
JP4620457B2 (ja) | 複数の同時にアクティブなファイルシステム | |
US8572037B2 (en) | Database server, replication server and method for replicating data of a database server by at least one replication server | |
US20030149736A1 (en) | Method and system for transporting data content on a storage area network | |
US20050273474A1 (en) | Method and system for data processing with data replication for the same | |
JP2013544386A5 (ja) | ||
JPH07319748A (ja) | データ処理システム内で複写データ一貫性を維持するためのシステムおよび方法 | |
KR20060004915A (ko) | 데이터 처리 시스템 내에서의 고장 복구 | |
US8082406B1 (en) | Techniques for reducing data storage needs using CDP/R | |
CN113220729B (zh) | 数据存储方法、装置、电子设备及计算机可读存储介质 | |
JP2003330782A (ja) | 計算機システム | |
JP4136615B2 (ja) | データベースシステム及びデータベースのアクセス方法 | |
US7631020B1 (en) | Method and system of generating a proxy for a database | |
US7194486B2 (en) | Method and system for data processing with data replication for the same | |
US7987335B1 (en) | Techniques for virtualizing data | |
Siddha | A Persistent Snapshot Device Driver for Linux | |
JP2830826B2 (ja) | 分散ファイルの同期システムと方法 | |
JP3330006B2 (ja) | 情報記憶システムを備えるネットワークシステム、該システムの入力システムならびに | |
JP5002636B2 (ja) | データ処理装置及びデータベース管理方法 | |
Troisi | NonStop SQL/MP availability and database configuration operations |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20060329 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20081216 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20090213 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20090310 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20090409 |
|
A911 | Transfer to examiner for re-examination before appeal (zenchi) |
Free format text: JAPANESE INTERMEDIATE CODE: A911 Effective date: 20090522 |
|
A912 | Re-examination (zenchi) completed and case transferred to appeal board |
Free format text: JAPANESE INTERMEDIATE CODE: A912 Effective date: 20090619 |