JP2003345639A - データベースの交換システム - Google Patents

データベースの交換システム

Info

Publication number
JP2003345639A
JP2003345639A JP2002153051A JP2002153051A JP2003345639A JP 2003345639 A JP2003345639 A JP 2003345639A JP 2002153051 A JP2002153051 A JP 2002153051A JP 2002153051 A JP2002153051 A JP 2002153051A JP 2003345639 A JP2003345639 A JP 2003345639A
Authority
JP
Japan
Prior art keywords
transaction
database
log
unit
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.)
Withdrawn
Application number
JP2002153051A
Other languages
English (en)
Inventor
Jinken Toki
仁謙 土岐
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.)
NEC Solution Innovators Ltd
Original Assignee
NEC Solution Innovators 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 NEC Solution Innovators Ltd filed Critical NEC Solution Innovators Ltd
Priority to JP2002153051A priority Critical patent/JP2003345639A/ja
Publication of JP2003345639A publication Critical patent/JP2003345639A/ja
Withdrawn legal-status Critical Current

Links

Landscapes

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

Abstract

(57)【要約】 【課題】トランザクション処理を中断することなく、デ
ータベースを交換して、データベースの保守やアップグ
レードを容易に行うことにある。 【解決手段】クライアント10とネットワーク20と第
1のデータベース100とを備え、第1のデータベース
100は、トランザクション処理手段110と更新テー
ブル120と識別番号生成のシーケンサ140とトラン
ザクションの更新ログ記録手段300とトリガー手段1
30と識別番号のトランザクションテーブル150とを
備え、更に、第1のデータベース100を交換する第2
のデータベース200とデータベース切り替え手段30
とバックアップ手段40と、更新ログ記録手段300
と、第2のデータベース200にリストアされていない
トランザクションを選別し電文に変換するトランザクシ
ョン再生手段400と、を設ける。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】この発明は、データベースの
ハードウェアやソフトウェアを更新するシステムに関
し、特に、トランザクション処理の中断をクライアント
に気づかれることなく、運用中の第1のデータベースを
更新済みの第2のデータベースに交換するデータベース
の交換システムに関する。
【0002】
【従来の技術】従来、データベースに障害が生じたと
き、バックアップしてあるデータを待機のデータベース
にリストアし、障害が発生した直前までのトランザクシ
ョンをリストアしたデータに反映させて記憶内容を復元
し、待機データベースに切り替えることが行われてい
る。特開平11ー265322号公報のバックアップ機
能付オンラインデータベース情報処理システムによれ
ば、運用系である主システムと待機系である副システム
とアクセスキーサーバとを設け、主システムのデータベ
ースを定期的に副システムに転送してバックアップし、
転送実施中は、トランザクション処理を抑制し、該トラ
ンザクションをアクセスキーサーバに記録し、転送完了
後、該当のトランザクションを副システムに反映させ
て、データベースを整合させる。つまり、アクセスキー
サーバに、転送中の要求を一時的にホールドさせてお
き、データベースに反映させることを転送完了まで待た
せることによって、オンラインデータ端末群には、オン
ライントランザクション処理を無停止にみせる発明であ
る。
【0003】この発明では、データベースをオンライン
中に切り替えることはできるが、運用系のハードウェア
あるいはソフトウェアと待機系のハードウェアあるいは
ソフトウェアとが同じものであることが前提になる。し
かし、切り替えが必要になる事態は、単なる保守作業の
ための切り替えだけでなく、ハードウェアやソフトウェ
アをグレードアップする更新作業の際にも必要になる。
そのような事態では、該発明は無停止で切り替えること
ができない。
【0004】
【発明が解決しようとする課題】基本ソフトウェアやミ
ドルウェアのオープン化が進んだことにより、システム
構築ベンダーは独自の自社製のオペレーティングシステ
ムやデータベースソフトウェアを使うよりも、主要なソ
フトウェアベンダーの提供するオペレーティングシステ
ムやデータベースソフトウェアを使って、システムを構
築することが多くなっている。各ソフトウェアベンダー
は市場の主導権を巡って激しく競争しているため、各社
の提供しているソフトウェアは頻繁に新しいバージョン
を出している。ソフトウェアベンダーはある程度古いバ
ージョンのソフトウェアをサポートするよりも、新しい
バージョンのソフトウェアに切り替えることを推奨す
る。そこで、ソフトウェアの新しいバージョンが出る
と、ユーザはソフトウェアのアップグレード作業を余儀
なくさせられる。
【0005】更に、ハードウェアベンダーの間でも競争
が激しいため、ハードウェアの性能が急激に向上してお
り、またインターネットの普及によりエンドユーザの数
が急速に増大する傾向にあるため、処理能力向上のため
にサーバのハードウェアを性能の向上した新しいハード
ウェアに交換する作業も頻繁に発生するようになってき
ている。そのため、ソフトウェアのバーションアップの
場合と同様に、ユーザは、ハードウェアの置き換えをせ
ざるをえない。
【0006】更に、従来の技術では、データベースのソ
フトウェアあるいはハードウェアのアップグレード等の
更新作業は、いずれもデータベースを停止しなければ実
施できない。しかし、24時間サービスのシステムが増
加しており、データベースの停止は単にビジネス上の損
失だけでなく、社会的な活動にも支障を来す事態になっ
ている。このため、システムの更新作業に無理な時間短
縮が求められ、過重な作業を強いることになっている。
【0007】以上の背景から、データベースのハードウ
ェアやソフトウェアのアップグレード等の更新作業の際
にも、切り替えを無停止で実施する要望が増大してい
る。
【0008】この発明の目的は、以上の課題を解決する
ために提供されるもので、データベースを停止させるこ
となく、動作中のデータベースを更新済みのデータベー
スに切り替えて交換するデータベースの交換システムに
ある。このデータベースの交換システムにより、データ
ベー スの交換がデータベースを利用しているクライア
ントから感知されないので、データベースを利用してい
るアプリケーションに影響を与えることがない。
【0009】更に、他の目的は、使用しているデータベ
ースソフトウェアの種類に依存することなく、データベ
ースを交換することを可能にして、交換前と交換後のデ
ータベースソフトウェアの種類を異なるものに更新でき
ることにある。
【0010】更に、他の目的は、データベースの障害時
に交換先のデータベースに運用を一時的に引き継がせる
が、交換作業以外のときは、交換先のデータベースを別
用途に利用可能にすることにある。
【0011】
【課題を解決するための手段】そのため、この発明の、
電文を送信するクライアントと、前記電文を伝送するネ
ットワークと、前記電文をトランザクション処理して格
納する第1のデータベースと、を備え、前記第1のデー
タベースは、前記クライアントからの電文をトランザク
ション処理するトランザクション処理手段と、前記トラ
ンザクション処理手段におけるトランザクションをログ
記録する更新ログ記録手段と、前記更新ログ記録手段に
ログ開始を指示するトリガー手段と、前記トランザクシ
ョンを識別する識別番号を生成するシーケンサと、前記
トランザクション処理手段による更新データを格納する
更新テーブルと、前記識別番号を登録するトランザクシ
ョンテーブルと、を備えるシステムにおいて、前記第1
のデータベースを交換する第2のデータベースと、前記
クライアントから送信される電文を前記第1のデータベ
ース並びに前記第2のデータベースのどちらか一方に受
け渡すデータベース切り替え手段と、前記第1のデータ
ベースの更新テーブル及びトランザクションテーブルを
バックアップして前記第2のデータベースの更新テーブ
ル及びトランザクションテーブルにリストアするバック
アップ手段と、前記更新ログ記録手段にログ記録された
トランザクションの内で、前記第1のデータベースから
前記第2のデータベースにリストアされていないトラン
ザクションを選別して第2のデータベースに渡し、選別
したトランザクションが十分に少ないとき、前記データ
ベース切り替え手段に切り替えを指示するトランザクシ
ョン再生手段と、を有することを特徴とする。
【0012】更に、前記データベース切り替え手段は、
前記ネットワークから受信する電文を前記第1のデータ
ベースか、あるいは前記第2のデータベースかのどちら
か一方に受け渡す切り替えスイッチであることを特徴と
する。
【0013】更に、前記第2のデータベースは、前記デ
ータベース切り替え手段あるいは前記トランザクション
再生手段からの電文をトランザクション処理するトラン
ザクション処理手段と、前記トランザクション処理手段
の更新データと、前記バックアップ手段からリストアさ
れる更新データと、を格納する更新テーブルと、前記ト
ランザクション再生手段からのトランザクション識別番
号と、前記バックアップ手段からリストアされたトラン
ザクション識別番号を登録するトランザクションテーブ
ルと、を備えることを特徴とする。
【0014】更に、前記更新ログ記録手段は、前記第1
のデータベースにおけるトランザクション処理のトラン
ザクションを記録する第1のログ記録装置及び第2のロ
グ記録装置と、前記第1のログ記録装置と第2のログ記
録装置とを切り替えて、どちらか一方に前記トランザク
ションを渡すログ書き込み先切り替え手段と、前記第1
のログ記録装置と第2のログ記録装置とを切り替えてど
ちらか一方から読み出した前記トランザクションを前記
トランザクション再生手段に渡すログ読み出し先切り替
え手段と、前記第1のデータベースのトランザクション
処理手段のトランザクションに前記シーケンサの識別番
号を付与し、前記識別番号付きトランザクションを前記
ログ書き込み先切り替え手段が指定する前記第1あるい
は第2のログ記録装置のいずれか一つに書き込むログ作
成手段と、前記ログ作成手段が付与する前記トランザク
ションの識別番号を前記トランザクションテーブルに登
録するトランザクション番号登録手段と、を備えること
を特徴とする。
【0015】更に、前記トランザクション再生手段は、
前記ログ読み出し先切り替え手段で指定される第1ある
いは第2のログ記録装置から読み取られた識別番号を含
むトランザクションと、前記第2のデータベースのトラ
ンザクションテーブルにリストアされている識別番号
と、を比較して、未処理トランザクションの識別番号を
選択するトランザクション未処理番号確認手段と、前記
未処理トランザクションをクライアントから渡された電
文に変換し、第2のデータベースのトランザクション処
理手段に渡すトランザクション変換手段と、前記トラン
ザクション未処理番号確認手段から未処理トランザクシ
ョンの識別番号を選別して前記第2のデータベースのト
ランザクションテーブルに渡し、前記未処理トランザク
ションの数が十分少ないことを検知して前記データベー
スの切り替え手段に通知するトランザクション番号登録
手段と、を備えることを特徴とする。
【0016】更に、前記ログ書き込み先切り替え手段及
び前記ログ読み出し先切り替え手段は、互いに連動して
切り替わることを特徴とする。
【0017】更に、前記データベース切り替え手段は、
トランザクション再生手段のトランザクション番号登録
手段が未処理トランザクション数が十分少ないことを検
知して、通知するタイミングで切り替え指示されること
を特徴とする。
【0018】
【発明の実施の形態】この発明の実施の形態について図
面を参照して説明する。第1の実施の形態を示す図1を
参照すると、クライアント10は、ネットワーク20を
経由してデータベースに電文を発行する。ネットワーク
20を介して送られてきた電文は、まず、データベース
切り替え手段30が受け取る。データベース切り替え手
段30には、データベース100とデータベース200
の二つが接続され、どちらか一方に電文を転送する。デ
ータベース100は動作しているデータベースで、デー
タベース200は交換先のデータベースとすると、デー
タベース切り替え手段30はネットワーク20から送ら
れてきた電文を、データベース100に転送して、デー
タベース100は送られてきた電文をトランザクション
処理し、トランザクションに識別番号を付し、更新デー
タを格納する。
【0019】データベース100を計画的に停止すると
き、まずデータベース100に転送された電文のトラン
ザクションを更新ログ記録手段300に継続的に記録す
る。バックアップ手段40は、データベース100のデ
ータを自身にバックアップし、更に、バックアップされ
たデータベース100のデータをデータベース200に
リストアする。
【0020】データベース200が、オペレーティング
システムやデータベースソフトウェアのアップグレー
ド、あるいはハードウェアの交換等、自身の稼動を停止
状態にしないと実施できない作業を実施する。その作業
が完了後、更新ログ記録手段300に記録されたログト
ランザクションをトランザクション再生手段400が読
み出して、リストアに反映されていないトランザクショ
ンを選別し、該トランザクションをデータベース100
に渡された元の電文に変換する。トランザクション再生
手段400がログトランザクションから変換した電文
は、クライアント10から送られた電文と同一形式で、
データベース200に送られて、トランザクション処理
される。
【0021】トランザクション再生手段400が更新ロ
グ記録手段300のログトランザクションを全て読み出
してトランザクションを元の電文に変換してデータベー
ス200へ送り、データベース200が送られてきた全
ての電文をトランザクション処理し終えると、これでデ
ータベース100の完全なコピーがデータベース200
に作られたことになる。最後に、データベース100を
停止して、データベース切り替え手段30の電文転送先
をデータベース100からデータベース200に切り替
えて、データベースの交換が完了する。データベース1
00を停止してからデータベース200への切り替える
までの処理は、クライアント10が感知できない短い時
間で完了する。
【0022】次に、この第1の実施の形態の細部につい
て図面を参照して説明する。図1の細部を示す図2を参
照すると、クライアント10は、ネットワーク20を経
由して電文をデータベースに送る。ネットワーク20を
経由して送られる電文は、データベース切り替え手段3
0が受け取る。データベース切り替え手段30は、デー
タベース100とデータベース200とに接続されてお
り、どちらか一方へ電文を転送する。
【0023】バックアップ手段40は、データベース1
00のデータをバックアップして自身に保存する。ま
た、バックアップ手段40は、保存してあるデータをリ
ストアすることもできる。リストア先は、バックアップ
元と同一のデータベースにすることも、バックアップ元
とは異なるデータベースにすることも可能である。バッ
クアップ手段40は、通常の運用では、データベース1
00のデータをバックアップするために使われる。この
実施の形態では、バックアップ手段40を、データベー
ス100のデータをバックアップしてからデータベース
200にリストアすることで、データベース100のデ
ータをデータベース200にコピーするために使用す
る。
【0024】データベース100は、クライアント10
が発行した電文をトランザクション処理する動作中のデ
ータベースである。データベース100は、トランザク
ション処理手段110と、更新テーブル120と、トリ
ガー130と、シーケンス140と、トランザクション
テーブル150と、を備える。
【0025】トランザクション処理手段110は、電文
をトランザクション処理して更新テーブル120を更新
する。更新テーブル120は、クライアント10から送
られてきた電文のトランザクション処理結果を格納する
テーブルである。
【0026】トリガー130は、更新テーブル120が
更新されたときに、データベースにあらかじめ登録して
おいた手順を実行する、データベースが持つ手段であ
る。トリガー130は、更新ログ記録手段300を起動
するために使われる。シーケンス140は、トランザク
ションに付加する識別番号を発行する。トランザクショ
ンテーブル150は、データベース100が処理したト
ランザクションの識別番号を登録するテーブルである。
【0027】データベース200は、データベース10
0を計画的に停止するとき、データベース100を引き
継ぐ。データベース200は、通常の運用では必要がな
く、データベース100をソフトウェアやハードウェア
のアップグレードで停止させるときに必要になる。デー
タベース200は、トランザクション処理手段210
と、更新テーブル220と、トランザクションテーブル
250と、を備える。それぞれの手段の機能役割はデー
タベース100の対応する手段に同じである。
【0028】更新ログ記録手段300は、データベース
100からデータベース200にバックアップしてリス
トアした後、切り替えるまでの過程で、データベース1
00で処理されたトランザクション処理結果を記録す
る。更新ログ記録手段300は、ログ作成手段310
と、トランザクション番号登録手段320と、ログ書き
込み先切り替え手段330と、ログ読み出し先切り替え
手段340と、ログ記録装置350と、ログ記録装置3
60を備える。
【0029】ログ作成手段310は、トランザクション
処理のトランザクションとそれの識別番号とから、ログ
トランザクションを作成する。トランザクション番号登
録手段320は、ログ作成手段310が処理したトラン
ザクションの識別番号を、データベース100のトラン
ザクションテーブル150に登録する。ログ作成手段3
10が作成したログトランザクションは、ログ書き込み
先切り替え手段330を経由して、ログ記録装置350
とログ記録装置360のどちらか一方に記録される。ま
た記録されたログトランザクションを読み出すときは、
ログ読み出し先切り替え手段340を経由して、ログ記
録装置350とログ記録装置360のどちらか一方に記
録されたログトランザクションが読み出される。ログ書
き込み先切り替え手段330と、ログ読み出し先切り替
え手段340は、常に互いに異なるログ記録装置に接続
され、一つのログ記録装置に対して同時に書き込みと読
み出しが発生しないように連動する。これは書き込み途
中の不完全なログトランザクションが読み出されないよ
うにするためである。
【0030】トランザクション再生手段400は、更新
ログ記録装置300に記録されたログトランザクション
をデータベース100で処理された元の電文に変換す
る。トランザクション再生手段400は、未処理トラン
ザクション番号確認手段410と、トランザクション番
号登録手段420と、トランザクション変換手段430
と、を備える。
【0031】未処理トランザクション番号確認手段41
0は、更新ログ記録手段300から読み出したログトラ
ンザクションの識別番号が、データベース200のトラ
ンザクションテーブル250に登録されているか否かを
確認する。該識別番号がトランザクションテーブル25
0に登録されている場合、未処理トランザクション番号
確認手段410はログトランザクションを無視する。
【0032】該識別番号がトランザクションテーブル2
50に登録されていない場合、未処理トランザクション
番号確認手段410は、該識別番号をトランザクション
番号登録手段420に渡し、ログトランザクションをト
ランザクション変換手段430に渡す。トランザクショ
ン番号登録手段420は、データベース200のトラン
ザクションテーブル250に、未処理トランザクション
番号確認手段410から渡された識別番号を登録する。
トランザクション変換手段430は、未処理トランザク
ション番号確認手段410から渡されたログトランザク
ションを、データベース100で処理された元の電文に
変換して、データベース200に渡す。
【0033】以上の各手段は、概略として次のような一
連の動作をする。クライアント10が電文を発行する
と、ネットワーク20を経由してデータベース切り替え
手段30が電文を受け取る。データベース切り替え手段
30は、通常送られてきた電文をデータベース100に
転送する。データベース100は電文を受け取ると、ト
ランザクション処理手段110でトランザクション処理
し、その結果、更新テーブル120の内容が更新され
る。
【0034】これ以降の一連の動作は、トリガー130
が有効になっているかどうかで異なる。トリガー130
が無効になっている場合、機能動作は、データベース1
00のトランザクション処理の完了で完結する。トリガ
ー130が有効になっている場合、次の動作を続行す
る。トランザクション処理の結果、更新テーブル120
が更新されるとトリガー130が起動される。トリガー
130は起動されると、更新ログ記録手段300のログ
作成手段310を起動し、トランザクション処理手段1
10からトランザクションをログ作成手段310に渡
す。
【0035】ログ作成手段310は、起動されると、ト
リガー130を介してトランザクションを受けとる。ロ
グ作成手段310は、データベース100のシーケンス
140に、トランザクションの識別番号の発行を要求
し、新しく発行された識別番号を受けとる。ログ作成手
段310は、該識別番号をトランザクション番号登録手
段320に渡す。トランザクション番号登録手段320
は、受けとった識別番号を、トランザクションテーブル
150に登録する。ログ作成手段310は、識別番号を
付したトランザクションからログトランザクションを作
成し、ログ書き込み先切り替え手段330に渡す。ログ
書き込み先切り替え手段330は、受けとったログトラ
ンザクションをログ記録手段350とログ記録手段36
0のどちらか一方に書き込む。
【0036】更新ログ記録手段300に記録されたログ
トランザクションを読み出すときは、まずログ書き込み
先切り替え手段330とログ読み出し先切り替え手段3
40の、それぞれの接続先を切り替える。この切り替え
で、ログ記録装置350とログ記録装置360の内、直
前までログトランザクションを書き込まれていた方が、
ログトランザクションの書き込みから解放されてログ読
み出し先切り替え手段340に接続される。トランザク
ション再生手段400のトランザクション未処理番号確
認手段410がログ読み出し先切り替え手段340を経
由して、ログ記録装置350とログ記録装置360のど
ちらか一方からログトランザクションを読み出す。
【0037】トランザクション未処理番号確認手段41
0はログトランザクションを読み出すと、トランザクシ
ョンと識別番号とに分解する。トランザクション未処理
番号確認手段410は、データベース200のトランザ
クションテーブル250に該識別番号が登録されている
か否かを確認する。該識別番号がトランザクションテー
ブル250に登録されている場合、該トランザクション
の処理結果は既にデータベース200にリストアされて
いるので、トランザクション未処理番号確認手段410
は該トランザクションを無視する。
【0038】該識別番号がトランザクションテーブル2
50に登録されていない場合、トランザクション未処理
番号確認手段410は、トランザクションの識別番号を
トランザクション番号登録手段420に渡し、該当のト
ランザクションをトランザクション変換手段430に渡
して、元の電文に変換する。
【0039】トランザクション番号登録手段420は、
受けとった識別番号をデータベース200のトランザク
ションテーブル250に登録する。トランザクション変
換手段430は、受けとったトランザクションをデータ
ベース100で処理された元の電文に変換する。次に、
トランザクション変換手段430は、該電文をデータベ
ース200のトランザクション処理手段210に渡す。
トランザクション処理手段210は、トランザクション
変換手段430から渡された電文をトランザクション処
理し、データベース100と同様に、更新テーブル22
0を更新する。
【0040】この第1の実施例の動作について図面を参
照して説明する。図3は、この実施例の動作のフローを
示している。図4は、図3の動作の内のステップ75の
詳細を示している。図3を参照すると、初期状態ではデ
ータベース切り替え手段30の電文転送先がデータベー
ス100になっており、データベース100のトリガー
130が無効な状態になっているとする。また、更新ロ
グ記録手段330の、ログ書き込み先切り替え手段33
0の書き込み先がログ記録装置350に設定されてお
り、ログ読み出し先切り替え手段340の読み出し先が
ログ記録装置360に設定されているとする。この状態
で、クライアント10が電文を発行すると、電文はネッ
トワーク20とデータベース切り替え手段30とを経由
して、データベース100に送られてトランザクション
処理される。クライアント10の電文発行は、ステップ
78でデータベース100とデータベース200の交換
が完了するまでの間、オンラインで実行される状態にあ
る。
【0041】次に、データベース200を設定して、ト
ランザクション切り替え手段30と、バックアップ手段
40と、トランザクション再生手段400と、を付加す
る(ステップ70)。データベース100のトリガー1
30を有効な状態にする。トリガー130が有効になる
と、データベース100で処理されたトランザクション
のログが、更新ログ記録手段300に記録されるように
なる(ステップ71)。データベース100で処理され
た電文に対応するトランザクションを更新ログ記録手段
300が記録する処理は、ステップ76のデータベース
100が停止するまでの間、継続される。
【0042】データベース100のトランザクションテ
ーブル150と更新テーブル120とをバックアップ手
段40にバックアップする。この間、クライアント10
が発行した電文のトランザクション処理はデータベース
100のトランザクション処理手段110で継続され
て、トランザクション処理の記録が更新ログ記録手段3
00に記録され続ける(ステップ72)。
【0043】バックアップ手段40は、トランザクショ
ンテーブル150と更新テーブル120とをデータベー
ス200にリストアする。この作業により、データベー
ス100のバックアップ時点でのコピーがデータベース
200上に作成される(ステップ73)。このバックア
ップとリストアの間、クライアント10が発行した電文
のトランザクション処理はデータベース100で続行
し、識別番号が付されたトランザクションの記録が更新
ログ記録手段300に記録され続ける。
【0044】データベース200に対して、データベー
スの停止が必要なアップグレード等の作業を実施する
(ステップ74)。具体的には、オペレーティングシス
テム又はデータベースソフトウェアあるはハードウェア
のアップグレード作業などが相当する。この作業期間、
クライアント10が発行した電文は、データベース10
0でトランザクション処理されて、トランザクションの
記録が更新ログ記録手段300に記録され続ける。
【0045】次に、トランザクション再生手段400が
更新ログ記録手段300に記録されたログトランザクシ
ョンを全て読み出し、トランザクション未処理確認手段
が、トランザクションテーブル250にリストアされた
トランザクション識別番号と、更新ログ記録手段300
のトランザクション識別番号とを比較参照し、未処理ト
ランザクションを選別する。トランザクション変換手段
430は、選別された未処理トランザクションを電文に
変換して、データベース200のトランザクション処理
手段210に渡し、更新テーブル220を更新する。こ
の間も、クライアント10が発行した電文はデータベー
ス100でトランザクション処理されて、トランザクシ
ョン処理結果の記録が更新ログ記録手段300に記録さ
れ続ける。このためトランザクション再生手段400
は、単位時間当たりに、クライアント10の電文の基づ
くトランザクション処理の発生回数よりも多くのトラン
ザクション処理をログトランザクションから実施するこ
とになる(ステップ75)。
【0046】このステップ75の詳細を示す図4を参照
して説明する。初期状態ではログ書き込み先切り替え手
段330の書き込み先がログ記録装置350に設定され
ており、ログ読み出し先切り替え手段340の読み出し
先がログ記録装置360に設定されている。ステップ7
1でログ記録を開始してから、このステップ75の時点
までに処理されたトランザクションは、ログ記録装置3
50に記録されている。ログ記録装置360はログされ
ないので空である。
【0047】次に、ステップ75で、図4のループ75
00に入り、ログ書き込み先切り替え手段330の書き
込み先をログ記録装置360に変更し、ログ読み出し先
切り替え手段340の読み出し先をログ記録装置350
に変更する(ステップ7501)。この2つの動作を実
施する間にログの読み書きが行われると、書き込み途中
の不完全なログトランザクションが読み出されてしまう
可能性があるので、この2つの切り替えを実行する間
は、ログ記録装置350及びログ記録装置360へのト
ランザクションの読み書きを一時抑制し、初期状態から
動作しているログ作成手段310のログトランザクショ
ンの書き込み先が、ログ記録装置350からログ記録装
置360に切り替わることになる(ステップ750
2)。
【0048】トランザクション番号登録手段420は、
ログ記録装置350に記録されたトランザクションの量
が十分少ないか否かを判定する(ステップ7503)。
ここでログトランザクションの量が十分少ないというこ
との意味は、ログ記録装置350に記録された全てのロ
グトランザクションをトランザクション再生装置400
が読み出し、選別したトランザクションを元の電文に変
換し終わるまでの時間が、クライアント10のトランザ
クションの発行を一時的に抑制しても問題がないほど短
いということである。ログトランザクションの量が十分
に少なければループ7500を中断して次のステップ4
11に進み(ステップ7503のY)、そうでなければ
ループ7500の次の処理であるステップ7504に進
む(ステップ7503のN)。
【0049】トランザクション再生手段400がログ記
録装置350から全てのログトランザクションを読み出
し、未処理トランザクションを選別して電文に変換す
る。該電文はデータベース200のトランザクション処
理手段210に渡されて処理される(ステップ750
4)。ログ記録装置350に記録されたログトランザク
ションをクリアする(ステップ7505)。次のステッ
プ7506からステップ7509までの処理は、ステッ
プ7502からステップ7505までの処理を、ログ記
録装置350とログ記録装置360の役割を逆にして、
繰り返している。
【0050】ステップ7502からステップ7509ま
での処理を終えたら、ループ7500の先頭に戻って繰
り返す(ステップ7510)。ループ7500は、ステ
ップ7503で、ログ記録装置350に記録されたログ
トランザクションの量が十分に少ないと判断されるか、
又はステップ77507でログ記録装置360に記録さ
れたログトランザクションの量が十分に少ないと判断さ
れるまで、繰り返される(ステップ7510)。ログト
ランザクションの量が十分に少なくはなく、ループ75
00が中断される場合、ログ記録装置350又はログ記
録装置360に記録されたログトランザクションは、そ
の時点ではそれぞれに残ったままでスッテプ76に進
む。
【0051】次に、ステップ76に戻り、続きの処理を
説明する。データベース100を停止する(ステップ7
6)。ステップ76からステップ78までの間、クライ
アント10が発行する電文のトランザクション処理が一
時的に抑制される。クライアント10が発行する電文の
トランザクション処理の一時抑制は、更新ログ記録手段
300のログ記録装置350又はログ記録装置360の
どちらか一方に残っているログトランザクションが、全
てトランザクション再生手段400で処理されて完了す
るまで続く。
【0052】ステップ75におけるループ7500(図
4参照)の繰り返しによって、ログ記録装置350又は
ログ記録装置360に残っているログトランザクション
の量がクライアント10の電文のトランザクション処理
を抑制しても問題無いほど少ない量になっている。この
ためステップ76からステップ78までの間のトランザ
クション処理の抑制は、クライアント10から感知され
ない。
【0053】次に、ステップ77で、更新ログ記録装置
300のログ記録装置350又はログ記録装置360の
どちらか一方に残っているログトランザクションを、ト
ランザクション再生手段400が全て読み出して選別
し、更新テーブル220にリストアされていない未処理
トランザクションを電文に変換する。トランザクション
再生手段400がログトランザクションから変換した電
文は、データベース200に渡されてトランザクション
処理される。ステップ77終了すると、データベース1
00が停止するまでに処理した全てのトランザクション
が、データベース200でも処理されたので、データベ
ース200はデータベース100の同等なコピーにな
る。最後にステップ78で、データベース切り替え手段
30の電文転送先を、データベース100からデータベ
ース200に切り替えて、データベース200の運転を
開始する。
【0054】以上の説明の通り、ステップ70からステ
ップ78までの処理の結果、クライアント10の発行す
る電文を処理するデータベースが、データベース100
からデータベース200に交換される。
【0055】第2の実施例について、図5を参照して説
明する。第1の実施の形態を示す図1に変形を施した図
5では、バックアップ手段40がデータベース100と
データベース200の双方から、バックアップとリスト
アを実施可能にする。また、データベース200に、ト
リガー230と、シーケンス240と、が追加され、デ
ータベース200からデータベース100へログトラン
ザクションを渡す方向に向けて、更新ログ記録手段50
0とトランザクション再生手段600と、が追加されて
いる。更新ログ記録手段500には、第1の実施の形態
における更新ログ記録手段300と同様に、ログ作成手
段510と、トランザクション番号登録手段520と、
ログ書き込み先切り替え手段530と、ログ読み出し先
切り替え手段540と、ログ記録装置550と、ログ記
録装置560と、を有する。
【0056】トランザクション再生手段600には、第
1の実施の形態におけるトランザクション再生手段40
0と同様に、トランザクション未処理番号確認手段61
0と、トランザクション番号登録手段620と、トラン
ザクション変換手段630と、を有する。
【0057】第1の実施の形態に以上の変形を施して、
データベース100とデータベース200とを交換した
後、データベース100とデータベース200の役割を
入れ替えて、もう一度交換することで、クライアント1
0が発行する電文のトランザクション処理をデータベー
ス100に戻すことができる。
【0058】この第2の実施の形態では、データベース
200の処理能力がデータベース100より低い場合な
どに、データベース100を停止して、処理能力を増強
するグレードアップ作業した後、クライアント10の発
行する電文をトランザクション処理するデータベース
を、元のデータベース100に戻すときに有効である。
【0059】
【発明の効果】この発明の第1の効果は、クライアント
の電文発行を中断することなく、運用中のデータベース
を交換先のデータベースに交換できることである。その
理由は、データベースに更新ログ装置及びトランザクシ
ョン再生装置並びに交換先データベースを設置すること
により、バックアップとリストア以後の未処理トランザ
クションの量が、十分少ないタイミングでデータベース
を交換するので、短時間の中断をクライアントに気づか
れないからである。
【0060】更に、第2の効果は、例えば交換先のデー
タベースを稼動中のデータベースより性能の良いハード
ウェアやソフトウェアにグレードアップすることが実施
できる。その理由は、交換先データベースにリストアさ
れていないトランザクションは、元の電文に変換してト
ランザクション処理するので、データベースの外部イン
ターフェースが同一であれば、データベースのグレード
アップができるからである。
【0061】更に、第3の効果は、クライアントの電文
発行を中断することなく、データベースの停止を必要と
する保守やグレードアップ作業が実施可能なことであ
る。その理由は、運用中のデータベースを交換先のデー
タベースに交換する前に、交換先のデータベースに対し
て作業を実施し、交換のための切り替えをクライアント
が気づかないよう短時間に行うことができるからであ
る。
【0062】更に、第4の効果は、バックアップ手段
と、更新ログ記録手段と、トランザクション再生手段
と、によるデータベースの交換手段がデータベースに独
立して設置されるため、データベースのハードウェアや
ソフトウェアが外部インタフェースを同一に保てると
き、その種類に依存することなく、データベースの交換
が実施できることである。
【0063】更に、第5の効果は、交換先データベース
は、交換用として常に待機させる必要がないため、デー
タベースを有効に利用できることである。その理由は、
交換前のデータベースと交換後のデータベースは、交換
作業時以外は不要なため、別用途に使用できるからであ
る。例えば、データベースを交換前は開発環境として使
用し、交換後、空いたデータベースを開発環境に使用で
きるので、ハードウェア及びソフトウェアの有効活用が
図れるためである。
【図面の簡単な説明】
【図1】この発明の実施の形態の構成を示す図である。
【図2】図1の細部及び第1の実施の形態を示す図であ
る。
【図3】第1の実施の形態の動作を示す流れ図である。
【図4】図3の流れ図の切り替えのタイミングを判定す
る動作を示す図である。
【図5】図1の細部及び第2の実施の形態を示す図であ
る。
【符号の説明】
10 クライアント 20 ネットワーク 30 データベース切り替え手段 40 バックアップ手段 100 データベース 110 トランザクション処理手段 120 更新テーブル 130 トリガー 140 シーケンス 150 トランザクションテーブル 200 データベース 210 トランザクション処理手段 220 更新テーブル 230 トリガー 240 シーケンス 250 トランザクションテーブル 300 更新ログ記録手段 310 ログ作成手段 320 トランザクション番号登録手段 330 ログ書き込み先切り替え手段 340 ログ読み出し先切り替え手段 350 ログ記録装置 360 ログ記録装置 400 トランザクション再生手段 410 トランザクション未処理番号確認手段 420 トランザクション番号登録手段 430 トランザクション変換手段 500 更新ログ記録手段 510 ログ作成手段 520 トランザクション番号登録手段 530 ログ書き込み先切り替え手段 540 ログ読み出し先切り替え手段 550 ログ記録装置 560 ログ記録装置 600 トランザクション再生手段 610 トランザクション未処理番号確認手段 620 トランザクション番号登録手段 630 トランザクション変換手段

Claims (7)

    【特許請求の範囲】
  1. 【請求項1】 電文を送信するクライアントと、前記電
    文を伝送するネットワークと、前記電文をトランザクシ
    ョン処理して格納する第1のデータベースと、を備え、 前記第1のデータベースは、 前記クライアントからの電文をトランザクション処理す
    るトランザクション処理手段と、 前記トランザクション処理手段におけるトランザクショ
    ンをログ記録する更新ログ記録手段と、 前記更新ログ記録手段にログ開始を指示するトリガー手
    段と、 前記トランザクションを識別する識別番号を生成するシ
    ーケンサと、 前記トランザクション処理手段による更新データを格納
    する更新テーブルと、 前記識別番号を登録するトランザクションテーブルと、 を備えるシステムにおいて、 前記第1のデータベースを交換する第2のデータベース
    と、 前記クライアントから送信される電文を前記第1のデー
    タベース並びに前記第2のデータベースのどちらか一方
    に受け渡すデータベース切り替え手段と、 前記第1のデータベースの更新テーブル及びトランザク
    ションテーブルをバックアップして前記第2のデータベ
    ースの更新テーブル及びトランザクションテーブルにリ
    ストアするバックアップ手段と、 前記更新ログ記録手段にログ記録されたトランザクショ
    ンの内で、前記第1のデータベースから前記第2のデー
    タベースにリストアされていないトランザクションを選
    別して第2のデータベースに渡し、選別したトランザク
    ションが十分に少ないとき、前記データベース切り替え
    手段に切り替えを指示するトランザクション再生手段
    と、 を有することを特徴とするデータベースの交換システ
    ム。
  2. 【請求項2】 前記データベース切り替え手段は、 前記ネットワークから受信する電文を前記第1のデータ
    ベースか、あるいは前記第2のデータベースかのどちら
    か一方に受け渡す切り替えスイッチであることを特徴と
    する請求項1記載のデータベースの交換システム。
  3. 【請求項3】 前記第2のデータベースは、 前記データベース切り替え手段あるいは前記トランザク
    ション再生手段からの電文をトランザクション処理する
    トランザクション処理手段と、 前記トランザクション処理手段の更新データと、前記バ
    ックアップ手段からリストアされる更新データと、を格
    納する更新テーブルと、 前記トランザクション再生手段からのトランザクション
    識別番号と、前記バックアップ手段からリストアされた
    トランザクション識別番号を登録するトランザクション
    テーブルと、 を備えることを特徴とする請求項1記載のデータベース
    の交換システム。
  4. 【請求項4】 前記更新ログ記録手段は、 前記第1のデータベースにおけるトランザクション処理
    のトランザクションを記録する第1のログ記録装置及び
    第2のログ記録装置と、 前記第1のログ記録装置と第2のログ記録装置とを切り
    替えて、どちらか一方に前記トランザクションを渡すロ
    グ書き込み先切り替え手段と、 前記第1のログ記録装置と第2のログ記録装置とを切り
    替えてどちらか一方から読み出した前記トランザクショ
    ンを前記トランザクション再生手段に渡すログ読み出し
    先切り替え手段と、 前記第1のデータベースのトランザクション処理手段の
    トランザクションに前記シーケンサの識別番号を付与
    し、前記識別番号付きトランザクションを前記ログ書き
    込み先切り替え手段が指定する前記第1あるいは第2の
    ログ記録装置のいずれか一つに書き込むログ作成手段
    と、 前記ログ作成手段が付与する前記トランザクションの識
    別番号を前記トランザクションテーブルに登録するトラ
    ンザクション番号登録手段と、 を備えることを特徴とする請求項1記載のデータベース
    の交換システム。
  5. 【請求項5】 前記トランザクション再生手段は、 前記ログ読み出し先切り替え手段で指定される第1ある
    いは第2のログ記録装置から読み取られた識別番号を含
    むトランザクションと、前記第2のデータベースのトラ
    ンザクションテーブルにリストアされている識別番号
    と、を比較して、未処理トランザクションの識別番号を
    選択するトランザクション未処理番号確認手段と、 前記未処理トランザクションをクライアントから渡され
    た電文に変換し、第2のデータベースのトランザクショ
    ン処理手段に渡すトランザクション変換手段と、 前記トランザクション未処理番号確認手段から未処理ト
    ランザクションの識別番号を選別して前記第2のデータ
    ベースのトランザクションテーブルに渡し、前記未処理
    トランザクションの数が十分少ないことを検知して前記
    データベースの切り替え手段に通知するトランザクショ
    ン番号登録手段と、 を備えることを特徴とする請求項1記載のデータベース
    の交換システム。
  6. 【請求項6】 前記ログ書き込み先切り替え手段及び前
    記ログ読み出し先切り替え手段は、 互いに連動して切り替わることを特徴とする請求項4記
    載のデータベースの交換システム。
  7. 【請求項7】 前記データベース切り替え手段は、 トランザクション再生手段のトランザクション番号登録
    手段が未処理トランザクション数が十分少ないことを検
    知して、通知するタイミングで切り替え指示されること
    を特徴とする請求項2記載のデータベースの交換システ
    ム。
JP2002153051A 2002-05-27 2002-05-27 データベースの交換システム Withdrawn JP2003345639A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2002153051A JP2003345639A (ja) 2002-05-27 2002-05-27 データベースの交換システム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2002153051A JP2003345639A (ja) 2002-05-27 2002-05-27 データベースの交換システム

Publications (1)

Publication Number Publication Date
JP2003345639A true JP2003345639A (ja) 2003-12-05

Family

ID=29770220

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002153051A Withdrawn JP2003345639A (ja) 2002-05-27 2002-05-27 データベースの交換システム

Country Status (1)

Country Link
JP (1) JP2003345639A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010157202A (ja) * 2008-12-31 2010-07-15 Sap Ag 分散トランザクション回復システムおよび方法
JP2012215937A (ja) * 2011-03-31 2012-11-08 Hitachi Solutions Ltd データベースのストリーム型レプリケーション機能を用いたスケールアップとダウン方法及びシステム

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010157202A (ja) * 2008-12-31 2010-07-15 Sap Ag 分散トランザクション回復システムおよび方法
JP2012215937A (ja) * 2011-03-31 2012-11-08 Hitachi Solutions Ltd データベースのストリーム型レプリケーション機能を用いたスケールアップとダウン方法及びシステム

Similar Documents

Publication Publication Date Title
US7668874B2 (en) Disaster recovery processing method and apparatus and storage unit for the same
US7243256B2 (en) External storage and data recovery method for external storage as well as program
JP4148722B2 (ja) オンラインデータ移行方法
US7793060B2 (en) System method and circuit for differential mirroring of data
KR100983300B1 (ko) 데이터 처리 시스템 내에서의 고장 복구
US7925831B2 (en) Disk array apparatus and disk array apparatus control method
JP3968207B2 (ja) データ多重化方法およびデータ多重化システム
JP3938475B2 (ja) バックアップ処理方法及びその実施システム並びにその処理プログラム
JP2005196683A (ja) 情報処理システム、情報処理装置、及び情報処理システムの制御方法
US7013371B2 (en) Data transfer control system
KR20000052929A (ko) 백업 소프트웨어용 에이전트 갱신 방법 및 시스템
JP2007249776A (ja) データベース複製プログラム、データベース複製装置およびデータベース複製方法
JP3617437B2 (ja) データコピー方法およびデータコピー用プログラムを記録したプログラム記録媒体
JPH10326220A (ja) ファイルシステムおよびファイル管理方法
JP2003345639A (ja) データベースの交換システム
JP4131621B2 (ja) 分散ミラードディスクシステム
JP3598202B2 (ja) オンラインシステム
JPH04299435A (ja) データベース等価方式
JP4721057B2 (ja) データ管理システム,データ管理方法及びデータ管理用プログラム
JPH1185594A (ja) リモートコピー用情報処理システム
JP3043662B2 (ja) データバックアップ方式
JP4193754B2 (ja) データ二重化方法とプログラム
JPH11345139A (ja) 無停止型2重化システム
US20070260816A1 (en) RAID management apparatus, RAID management method, and computer product
JP2001154897A (ja) データベースシステム及びデータベース更新方法

Legal Events

Date Code Title Description
A300 Application deemed to be withdrawn because no request for examination was validly filed

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20050802