JP4224126B1 - データベース管理サーバ装置、データベース管理システム、データベース管理方法およびデータベース管理プログラム - Google Patents

データベース管理サーバ装置、データベース管理システム、データベース管理方法およびデータベース管理プログラム Download PDF

Info

Publication number
JP4224126B1
JP4224126B1 JP2008150211A JP2008150211A JP4224126B1 JP 4224126 B1 JP4224126 B1 JP 4224126B1 JP 2008150211 A JP2008150211 A JP 2008150211A JP 2008150211 A JP2008150211 A JP 2008150211A JP 4224126 B1 JP4224126 B1 JP 4224126B1
Authority
JP
Japan
Prior art keywords
version
update request
database
update
database management
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.)
Active
Application number
JP2008150211A
Other languages
English (en)
Other versions
JP2009295071A (ja
Inventor
祐司 菅野
光昭 稲葉
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.)
Panasonic Corp
Panasonic Holdings Corp
Original Assignee
Panasonic Corp
Matsushita Electric Industrial Co 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 Panasonic Corp, Matsushita Electric Industrial Co Ltd filed Critical Panasonic Corp
Priority to JP2008150211A priority Critical patent/JP4224126B1/ja
Application granted granted Critical
Publication of JP4224126B1 publication Critical patent/JP4224126B1/ja
Priority to US12/472,680 priority patent/US20100145914A1/en
Publication of JP2009295071A publication Critical patent/JP2009295071A/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/23Updating
    • G06F16/2308Concurrency control
    • G06F16/2315Optimistic concurrency control
    • G06F16/2329Optimistic concurrency control using versioning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/21Design, administration or maintenance of databases
    • G06F16/219Managing data history or versioning

Abstract

【課題】 更新の一貫性が保たれ、かつ、更新処理の待ち時間の発生を抑えることのできるデータベース管理サーバ装置を提供する。
【解決手段】 データベース管理システム1のサーバ装置3は、クライアント装置2からの更新要求に基づいてデータベースの更新を非破壊で行うことにより、世代管理型のデータベース管理を行う機能を有する。主記憶部4には、複数のデータベースの実体がデータベースの版ごとに記憶されており、版作成部5は、クライアント装置からの更新要求に基づいてデータベースの新しい版を作成する。要求受付部11は、新しい版の作成中であるか否かに係らず、次の版に対する更新要求を受け付ける。受付管理部13は、その更新要求に応じて次の版に対する更新要求の受付期間を開始し、所定時間の経過後に受付期間を終了する。そして、版作成部5は、受付期間中に受け付けた更新要求に基づいて次の版を作成する。
【選択図】 図1

Description

本発明は、世代管理型のデータベース管理を行う機能を備えたデータベース管理サーバ装置に関するものである。
近年、電子計算機やネットワークの高性能化・低価格化や、インターネット通信環境の整備・普及等に伴って、情報技術の利用が盛んになってきている。その中でも、リレーショナルデータベースや文書データベースを管理するデータベース管理システムは、各種の応用システムから独立した形で各種のデータを維持・管理し、データの一貫性の保持や障害時の復旧、高速で高機能な検索処理などを容易に実現できるミドルウエアとして、各種の情報システムの中核として盛んに利用されている。
このようなデータベース管理システムの中には、データベースの「世代」という概念を導入し、データベースの世代管理を行うものがある(例えば、特許文献1および非特許文献1参照)。
特開2002−366547号公報 Narayanan.Shivakumar and Hector G. Molina: "Wave-Indices: Indexing Evolving Databases", AMCSIGMOD '97, pp.381, ACM, 1997
このような世代管理型のデータベース管理システムでは、データベースの更新処理が非破壊で行われる。つまり、現在のデータベースの実体を変更せずに次のデータベースが作成される)。そのため、世代管理型のデータベース管理システムは、破壊的な更新を行うデータベース管理システムに比べて、例えば下記(1)〜(3)等の優れた特徴をもっている。
(1)更新処理の途中で、地震や停電といった機械的・電気的な事故や、記憶装置が満杯になる、といったさまざまな障害があっても、更新前の、現在のデータベースの内容が破壊されない可能性が高いため、対障害性に優れている。
(2)データベースを更新中でも、指定した世代で検索処理を行う限り、更新処理の影響を受けないため、複数の関連した検索要求の間での検索処理の一貫性を容易に実現できる。
(3)更新処理中でも検索性能の低下が少ない。
従来の世代管理型のデータベース管理システムでは、更新の一貫性が保たれており、更新に成功したデータが更新完了後に検索できない等の問題の発生が防がれている。しかし、更新の一貫性を保とうとすると、検索処理や更新処理に待ち時間が発生することになる。例えば、あるクライアント装置からのデータベース更新要求の処理中は、「次の世代の作成中」の状態となり、別のクライアント装置からの更新要求が待たされることになる。そこで、クライアント装置が更新要求を送信してから、更新完了の通知を受け取るまでの時間を短縮することが望まれていた。
また、従来のデータベース管理システムでは、仮に上記のような待ち時間が発生しない場合であっても、データベースの更新処理が非破壊で行われるため、破壊型の更新処理(つまり、世代管理を行わない更新処理)に比べて更新処理のオーバーヘッドが大きく、クライアント装置からみたときの更新時間が比較的長くなる。そこで、クライアント装置からみたときの更新時間を短縮することが望まれていた。
本発明は、上記従来の課題を解決するためになされたもので、更新の一貫性が保たれており、かつ、更新処理の待ち時間の発生を抑えることができるデータベース管理サーバ装置を提供することを目的とする。
本発明のデータベース管理サーバ装置は、クライアント装置からの更新要求に基づいてデータベースの更新を非破壊で行うことにより、世代管理型のデータベース管理を行う機能を有するデータベース管理サーバ装置であって、前記データベース管理サーバ装置は、複数のデータベースの実体を、データベースの版ごとに記憶する版記憶手段と、前記クライアント装置からの更新要求に基づいて、データベースの新しい版を作成する版作成手段と、前記新しい版の作成中であるか否かに係らず、前記クライアント装置からのデータベースの次の版に対する更新要求を受け付ける更新要求受付手段と、前記クライアント装置からの更新要求に応じて前記次の版に対する更新要求の受付期間を開始し、所定時間の経過に応じて前記次の版に対する更新要求の受付期間を終了する受付管理手段と、を備え、前記版作成手段は、前記受付期間中に受け付けた前記次の版に対する更新要求に基づいて、前記データベースの次の版を作成する構成を有している。
この構成により、クライアント装置からの更新要求があったときには、データベースの新しい版(例えば、版X)の作成中であっても、その次の版(例えば、版X+1)に対する更新要求が受け付けられ、次の版に対する更新要求の受付期間が開始される。その後、所定時間が経過すると更新要求の受付期間が終了し、その受付期間中に受け付けた更新要求がまとめられて次の版が作成される。これにより、更新処理の待ち時間(更新要求の受付までの待ち時間)の発生を抑えることができる。また、この場合、世代管理型のデータベース管理により、更新の一貫性が保たれる。なお、ここで、データベースの次の版に対する更新要求とは、データベースの次の版において更新が反映されることを要求するものをいう。
また、本発明のデータベース管理サーバ装置は、前記受付期間中の前記クライアント装置からの更新要求と、過去に受け付けた更新要求との衝突の有無を判定する更新衝突判定手段と、更新衝突が無であると判定された場合に、前記クライアント装置からの更新要求の受付完了通知として、前記クライアント装置へデータベースの予定版名を通知する予定版名通知手段と、を備えた構成を有している。
この構成により、受付期間中のクライアント装置からの更新要求と、過去に受け付けた更新要求との衝突の有無の判定が行われる。そして、更新衝突が無であると判定されると、更新要求の受付完了通知として予定版名が通知される。このように、更新要求の受付完了通知として予定版名を利用することにより、更新要求を送ったクライアント装置は、その更新要求が受け付けられたか否かを確認することができ、また、その更新要求が反映されるであろう版を知ることができる。
また、本発明のデータベース管理サーバ装置では、前記予定版名通知手段は、前記クライアント装置からの更新要求に対する応答として、前記クライアント装置へ前記データベースの予定版名を通知する構成を有している。
この構成により、クライアント装置からの更新要求に対する応答として、予定版名が通知される。したがって、更新要求を送ったクライアント装置は、その更新要求が受け付けられたか否かを早く確認することができ、また、その更新要求が反映されるであろう版をすぐに知ることができる。そのため、例えば、更新要求を送った後に、データベース管理サーバ装置に障害が発生した場合であっても、その障害からの復旧処理が行われた後に、更新要求が受け付けられたか否か、あるいは、その更新要求が反映されたか否かを容易に確認することができる。
また、本発明のデータベース管理サーバ装置は、前記データベースの更新ログとして、前記データベースの版ごとの更新状態を記憶する更新ログ記憶手段と、クライアント装置からの確認要求に応じて、前記データベースの版の更新状態を通知する更新状態通知手段と、前記データベースの新しい版の作成が完了したときに、前記更新ログに前記新しい版の作成完了を記録する作成ログ記録手段と、前記データベース管理サーバ装置の障害からの復旧処理を行うときに、前記障害の発生時に前記更新ログに作成完了の記録が行われていない作成途中の版を破棄する破棄処理手段と、を備えた構成を有している。
この構成により、データベースの新しい版の作成が完了すると、更新ログにその版の作成完了が記録される。データベース管理サーバ装置に障害が発生した場合、その障害からの復旧処理が行われるときに、更新ログに作成完了の記録が行われていない作成途中の版が破棄される。このようなデータベースの版の更新状態(「作成完了」または「破棄」などの状態)は、クライアント装置からの確認要求に応じて通知される。したがって、クライアント装置は、データベース管理サーバ装置に障害が発生したときに、以前に送った更新要求が反映された版が作成されたか否か、すなわち、以前に送った更新要求を再度送る必要があるか否かを、容易に確認することができる。なお、新しい版の作成が完了すると、その版は検索可能になる。したがって、版の作成完了状態は、版の検索可能状態であるともいえる。また、版の更新状態には、上記の作成完了状態(検索可能状態)のほかに、例えば受付状態や作成中状態などが含まれる。
また、本発明のデータベース管理サーバ装置は、前記データベースの版の削除を行う版削除手段と、前記版の削除が行われたときに、前記データベースの更新ログとして、削除したデータベースの版名を残す削除ログ記録手段と、を備えた構成を有している。
この構成により、データベースの版の削除が行われた場合であっても、更新ログにその版名(予定版名)が残される。したがって、データベースの版が削除された後であっても、ある版名をもつデータベースの版が過去に存在していたか否か、例えば、自分が過去に送った更新要求が反映されたか否かを容易に確認することができる。この場合、データベースの版名は、データベースの実体に比べてデータ量がはるかに小さくて済む。
また、本発明のデータベース管理サーバ装置では、前記受付管理手段は、前記新しい版の作成中に前記クライアント装置から前記次の版に対する更新要求を受け付けた場合に、前記更新要求の受付期間の終了時を前記新しい版の作成完了時以後に設定する構成を有している。
この構成により、更新要求の受付期間の終了時は、新しい版の作成完了時以後に設定される。この場合、新しい版(作成中の版)の作成が完了するまでは、次の版(受け付けた更新要求を反映する版)の作成を開始することができない。したがって、新しい版の作成が完了するのを待って、次の版に対する更新要求の受付を終了するようにする。これにより、更新受付の時間的な効率を向上することができる。
また、本発明のデータベース管理サーバ装置では、前記受付管理手段は、前記新しい版の作成中に前記クライアント装置から前記次の版に対する更新要求を受け付けた場合に、前記更新要求の受付期間の終了時を前記更新要求の受付数により決定する構成を有している。
この構成により、更新要求の受付期間の終了時が、更新要求の受付数に基づいて決定される。例えば、更新要求の受付数がある一定数以上になった場合に、更新要求の受付期間を終了するようにする。これにより、更新要求の受付期間を適切な長さに制御することができる。
本発明のデータベース管理システムは、データベースの更新要求を送る機能を有するクライアント装置と、前記クライアント装置からの更新要求に基づいてデータベースの更新を非破壊で行うことにより、世代管理型のデータベース管理を行う機能を有するデータベース管理サーバ装置と、を備えたデータベース管理システムであって、前記データベース管理サーバ装置は、複数のデータベースの実体を、データベースの版ごとに記憶する版記憶手段と、前記クライアント装置からの更新要求に基づいて、データベースの新しい版を作成する版作成手段と、前記新しい版の作成中であるか否かに係らず、前記クライアント装置からのデータベースの次の版に対する更新要求を受け付ける更新要求受付手段と、前記クライアント装置からの更新要求に応じて前記次の版に対する更新要求の受付期間を開始し、所定時間の経過に応じて前記次の版に対する更新要求の受付期間を終了する受付管理手段と、を備え、前記版作成手段は、前記受付期間中に受け付けた前記次の版に対する更新要求に基づいて、前記データベースの次の版を作成する構成を有している。
このシステムによれば、クライアント装置からの更新要求があったときには、データベースの新しい版(例えば、版X)の作成中であっても、その次の版(例えば、版X+1)に対する更新要求が受け付けられ、次の版に対する更新要求の受付期間が開始される。その後、所定時間が経過すると更新要求の受付期間が終了し、その受付期間中に受け付けた更新要求がまとめられて次の版が作成される。これにより、更新処理の待ち時間(更新要求の受付までの待ち時間)の発生を抑えることができる。また、この場合、世代管理型のデータベース管理により、更新の一貫性が保たれる。
本発明のデータベース管理方法は、クライアント装置からの更新要求に基づいてデータベースの更新を非破壊で行うことにより、世代管理型のデータベース管理を行う機能を有するデータベース管理サーバ装置で用いられるデータベース管理方法であって、前記データベース管理サーバ装置には、複数のデータベースの実体が、データベースの版ごとに記憶されており、前記データベース管理サーバ装置は、前記クライアント装置からの更新要求に基づいて、データベースの新しい版を作成する機能を有しており、前記データベース管理方法は、前記新しい版の作成中であるか否かに係らず、前記クライアント装置からのデータベースの次の版に対する更新要求を受け付けることと、前記クライアント装置からの更新要求に応じて前記次の版に対する更新要求の受付期間を開始し、所定時間の経過に応じて前記次の版に対する更新要求の受付期間を終了することと、前記受付期間中に受け付けた前記次の版に対する更新要求に基づいて、前記データベースの次の版を作成することと、を含むものである。
この方法によっても、クライアント装置からの更新要求があったときには、データベースの新しい版(例えば、版X)の作成中であっても、その次の版(例えば、版X+1)に対する更新要求が受け付けられ、次の版に対する更新要求の受付期間が開始される。その後、所定時間が経過すると更新要求の受付期間が終了し、その受付期間中に受け付けた更新要求がまとめられて次の版が作成される。これにより、更新処理の待ち時間(更新要求の受付までの待ち時間)の発生を抑えることができる。また、この場合、世代管理型のデータベース管理により、更新の一貫性が保たれる。
本発明のデータベース管理プログラムは、クライアント装置からの更新要求に基づいてデータベースの更新を非破壊で行うことにより、世代管理型のデータベース管理を行う機能を有するデータベース管理サーバ装置で実行されるデータベース管理プログラムであって、前記データベース管理サーバ装置には、複数のデータベースの実体が、データベースの版ごとに記憶されており、前記データベース管理サーバ装置は、前記クライアント装置からの更新要求に基づいて、データベースの新しい版を作成する機能を有しており、前記データベース管理プログラムは、コンピュータに、前記新しい版の作成中であるか否かに係らず、前記クライアント装置からのデータベースの次の版に対する更新要求を受け付ける処理と、前記クライアント装置からの更新要求に応じて前記次の版に対する更新要求の受付期間を開始し、所定時間の経過に応じて前記次の版に対する更新要求の受付期間を終了する処理と、前記受付期間中に受け付けた前記次の版に対する更新要求に基づいて、前記データベースの次の版を作成する処理と、を実行させるものである。
このプログラムによっても、クライアント装置からの更新要求があったときには、データベースの新しい版(例えば、版X)の作成中であっても、その次の版(例えば、版X+1)に対する更新要求が受け付けられ、次の版に対する更新要求の受付期間が開始される。その後、所定時間が経過すると更新要求の受付期間が終了し、その受付期間中に受け付けた更新要求がまとめられて次の版が作成される。これにより、更新処理の待ち時間(更新要求の受付までの待ち時間)の発生を抑えることができる。また、この場合、世代管理型のデータベース管理により、更新の一貫性が保たれる。
本発明は、新しい版の作成中であるか否かに係らずクライアント装置からの更新要求を受け付ける更新要求手段と、その更新要求に応じて開始された受付期間中に受け付けた更新要求に基づいて次の版を作成する版作成手段とを設けることにより、更新の一貫性が保たれ、かつ、更新処理の待ち時間の発生を抑えることができるという効果を有するデータベース管理サーバ装置を提供することができるものである。
以下、本発明の実施の形態のデータベース管理システムについて、図面を用いて説明する。ここでは、まず、図1および図2を参照して、本実施の形態のデータベース管理システムの構成について説明する。
図1は、本実施の形態のデータベース管理システムの構成を示すブロック図である。図1に示すように、データベース管理システム1は、検索要求や更新要求を送るクライアント装置2と、検索要求や更新要求に対する応答として検索結果や更新結果を送り返すデータベース管理サーバ装置3(単にサーバ装置3ともいう)で構成されている。なお、図1の例では、説明の便宜のため、3つのクライアント装置2(クライアント装置A〜C)と1つのサーバ装置3のみが図示されているが、クライアント装置2やサーバ装置3の数はこれに限定されるものではない。
本実施の形態のサーバ装置3は、後述するように、クライアント装置2からの更新要求に基づいて、データベースの更新を非破壊で行うことにより、世代管理型のデータベース管理を行う機能を備えている。この機能は、サーバ装置3のメモリ等(図示せず)に記憶されたプログラムによって実行される。
図1に示すように、サーバ装置3は、複数のデータベースの実体(ディレクトリやファイルなど)を、データベースの版ごとに記憶する主記憶部4を備えている。図1の例では、4つの版(版1〜版4)が主記憶部4に記憶されている。また、この主記憶部4には、データベースの版更新ログが記憶されている。この版更新ログは、データベースの版の更新状態(受付状態、作成中状態、検索可能状態(作成完了状態)など)を示すものである。ここでは、この主記憶部4が、本発明の版記憶手段および更新ログ記憶手段に相当する。
サーバ装置3は、データベースの新たな版を主記憶部4に記憶する版作成部5と、主記憶部4に記憶されている既存の版を削除する版削除部6を備えている。版作成部5は、クライアント装置2からの更新要求に基づいて、データベースの新しい版を作成する機能を有している。後述するように、この版作成部5は、所定の受付期間中に受け付けた次の版に対する更新要求に基づいて、データベースの次の版を作成する機能を有している。この版作成部5が、本発明の版作成手段に相当する。
また、サーバ装置3は、主記憶部4に記憶されているデータベースの版(作成済みの版)の実体を、検索や参照などの作業のために一時的に記憶しておく作業用記憶部7を備えている。なお、ここでは、作業用記憶部7に一時的に記憶することを「ロード」といい、作業用記憶部7から削除することを「アンロード」という。
このサーバ装置3は、主記憶部4に記憶されているデータベースの版(作成済みの版)の実体を作業用記憶部7にロードする版ロード部8と、作業用記憶部7から版の実体をアンロードする版アンロード部9を備えている。図1の例では、2つの版(版2と版3)が作業用記憶部7にロードされており、参照する必要がなくなった古い版(版1)は作業用記憶部7からアンロードされている。さらに、このサーバ装置3には、作業用記憶部7にロードされているデータベースの版を検索する版検索部10が備えられている。
図1に示すように、サーバ装置3は、クライアント装置2からの検索要求や更新要求を受け付ける要求受付部11と、検索要求や更新要求に対する応答として検索結果や更新結果をクライアント装置2に通知する結果通知部12を備えている。この要求受付部11は、版作成部5が新しい版の作成中であるか否かに係らず、クライアント装置2から次の版に対する更新要求を受け付けることができる。ここでは、この要求受付部11が、本発明の更新要求受付手段に相当する。
また、サーバ装置3は、クライアント装置2からの更新要求を受け付けたときに更新要求の受付期間を開始して、所定の一定時間が経過したときに受付期間を終了する受付管理部13を備えている。この受付管理部13は、新しい版(例えば、版2)の作成中にクライアント装置2からの更新要求を受け付けたときに、次の版(例えば、版3)に対する更新要求の受付期間を開始する。そして、その次の版(版3)に対する更新要求の受付期間の終了時は、新しい版(版2)の作成完了時以後に設定される(図3など参照)。なお、更新要求の受付開始後、多くの更新要求が来たような場合は一定数の更新要求数で受付期間を終了しても良い。いずれの場合も、この受付管理部13が、本発明の受付管理手段に相当する。
そして、このサーバ装置3は、上記の版作成部5・版削除部6・版ロード部8・版アンロード部9などを制御して、データベースの版の更新制御を行う版更新制御部14を備えている。以下、版更新制御部14の機能について、図2を参照して詳細に説明する。
図2は、版更新制御部14の機能を説明するためのブロック図である。図2に示すように、版更新制御部14は、受付期間中のクライアント装置2からの更新要求と、過去に受け付けた更新要求との衝突の有無を判定する更新衝突判定部15を備えている。
この更新衝突判定部15は、クライアント装置2からの更新要求に含まれる更新データと、過去に受け付けた更新要求に含まれる更新データ(その受付期間中に先に受け付けた更新要求に含まれる更新データや、作成中の版の更新データ、作成済みの版の更新データなど)との整合性を検査する。具体的には、クライアント装置2からの更新要求に含まれる更新データのIDが、過去に受け付けた更新要求に含まれる更新データのIDのいずれかと一致するか否かが判定される。
更新衝突判定部15での判定の結果、更新要求の衝突が無である(更新データのIDが一致しない)と判定された場合には、クライアント装置2からの更新要求の受付完了通知として、結果通知部12からクライアント装置2へデータベースの予定版名が通知される。ここでは、更新衝突判定部15が、本発明の更新衝突判定手段に相当し、結果通知部12が、本発明の予定版名通知手段に相当する。
なお、データベースの予定版名とは、次に作成されるであろうデータベースの版名である。例えば、「版2」という版名のデータベースの新しい版が作成中である場合には、データベースの次の版の版名(予定版名)は「版3」である。また、この版名には、クライアント装置2からの更新要求の受付時刻が利用されてもよい。例えば、YYYY年MM月DD日の12時34分56秒にクライアント装置2からの更新要求を受け付けた場合には、次の版の版名(予定版名)は、「版YYYYMMDD123456」である。
また、図2に示すように、版更新制御部14は、作成ログ記録部16と破棄処理部17を備えている。作成ログ記録部16は、データベースの新しい版の作成が完了したときに、その新しい版の更新状態として、版更新ログに新しい版の「作成完了」を記録する機能を備えている。また、破棄処理部17は、サーバ装置3に何らかの障害が発生した場合、その障害から復旧処理を行うときに(再起動を行うときに)、障害の発生時に上記の版更新ログに「作成完了」が記録されていない版(作成途中の版)を破棄する機能を備えている。
例えば、サーバ装置3に障害が発生した時に「版3」の作成は完了していたが「版4」の作成は完了していなかった場合、版更新ログには「版3」の「作成完了」は記録されているので、障害からの復旧処理の際に「版3」は破棄されない。したがって、その後にクライアント装置2から「版3」についての確認要求があった場合には、「版3」の更新状態として、サーバ装置3の結果通知部12からそのクライアント装置2へ「作成完了」が通知される(図5など参照)。
一方、この場合、版更新ログには「版4」の「作成完了」は記録されていないので、障害からの復旧処理の際に「版4」は破棄される。したがって、その後にクライアント装置2から「版4」についての確認要求があった場合には、「版4」の更新状態として、サーバ装置3の結果通知部12からそのクライアント装置2へ「破棄」が通知される(図5など参照)。ここでは、作成ログ記録部16が、本発明の作成ログ記録手段に相当し、破棄処理部17が、本発明の破棄処理手段に相当する。また、結果通知部12が、本発明の更新状態通知手段に相当するといえる。
さらに、図2に示すように、版更新制御部14は、削除ログ記録部18を備えている。削除ログ記録部18は、版削除部6がデータベースの版の削除を行ったときに、データベースの版更新ログとして、削除したデータベースの予定版名を残す機能を備えている。例えば、主記憶部4から「版1」を削除する場合には、この「版1」という版名が版更新ログに記録される(図1参照)。この削除ログ記録部18は、本発明の削除ログ記録手段に相当する。
以上のように構成されたデータベース管理システム1について、図3〜図9を用いてその動作を説明する。
ここでは、まず、図3および図4を参照して、データベース管理システム1の通常の動作(障害が発生しないときの動作)について説明する。図3は、非同期型のデータベース管理システム1の動作の説明図である。ここで、「非同期型」のシステムとは、クライアント装置2からの更新要求に対して、その更新要求が反映されていないにも係らず、そのクライアント装置2に予定版名(その更新要求が反映されるであろう版名)を通知するシステムをいう。
図3では、サーバ装置3において4つのデータベースの版(版1〜版4)が並列的に(パイプライン的に)管理されており、3つのクライアント装置2(クライアント装置A〜C)からの更新要求や確認要求に対する処理が行われる例が示されている。
まず、サーバ装置3では、データベースの「版1」の作成が完了してロードされている。すなわち、「版1」は「検索可能」な状態になっている。このとき、クライアント装置Bからサーバ装置3に検索要求bが送られると、サーバ装置3では「版1」を用いて検索処理が実行され、その検索結果bがクライアント装置Bに通知される。
つぎに、クライアント装置Aからサーバ装置3に更新要求aが送られる。このとき、サーバ装置3では、データベースの「版2」に対する更新要求の受付期間は終了しており、「版2」は作成中になっている。このような場合、サーバ装置3は、クライアント装置Aからの更新要求aに応じて、その次の版である「版3」に対する更新要求の受付期間を開始する。そして、この更新要求aに対する応答として「版3」という版名がクライアント装置Aに通知される。
つづいて、クライアント装置Bからサーバ装置3に更新要求bが送られる。この場合、サーバ装置3では、「版2」の作成が完了していないので、「版3」に対する更新要求の受付期間は終了していない。したがって、サーバ装置3では、クライアント装置Bからの更新要求bとこの受付期間中に受け付けた更新要求aとの衝突の有無が判定され、衝突が無であると判定されると、その結果として「版3」という版名がクライアント装置Bに通知される。
その後「版2」の作成が完了すると、サーバ装置3では「版3」の受付期間を締め切り、「版3」の作成が開始される。このとき、クライアント装置Aからサーバ装置3に「版3」の更新状態の確認要求が送られると、その確認要求に対する応答として「作成中」という更新状態がクライアント装置Aに通知される。
つぎに、クライアント装置Cからサーバ装置3に更新要求cが送られる。上述の場合と同様、サーバ装置3では、データベースの「版3」に対する更新要求の受付期間は終了しており、「版3」は作成中になっている。したがって、サーバ装置3は、クライアント装置Cからの更新要求cに応じて、その次の版である「版4」に対する更新要求の受付期間を開始する。そして、この更新要求cに対する応答として「版4」という版名がクライアント装置Cに通知される。
「版3」の作成が完了してロードされた後に、クライアント装置AおよびBからサーバ装置3に「版3」の更新状態の確認要求が送られると、その確認要求に対する応答として「作成完了」という更新状態がクライアント装置AおよびBに通知される。
そして、クライアント装置Aからサーバ装置3に検索要求aが送られると、サーバ装置3では「版3(クライアント装置Aからの更新要求aが反映された版)」を用いて検索処理が実行され、その検索結果aがクライアント装置Aに通知される。
また、「版3」の作成が完了すると、上述の場合と同様に、サーバ装置3では「版4」の受付期間を締め切り、「版4」の作成が開始される。このとき、クライアント装置Cからサーバ装置3に「版4」の更新状態の確認要求が送られると、その確認要求に対する応答として「作成中」という更新状態がクライアント装置Cに通知される。そして、「版4」の作成が完了してロードされた後に、クライアント装置Cからサーバ装置3に「版4」の更新状態の確認要求が送られると、その確認要求に対する応答として「作成完了」という更新状態がクライアント装置Cに通知される。
ここで、図3を参照して、データベースの版の更新状態について説明すると、データベースの版は、まず、クライアント装置2からの更新要求があったときに版名(予定版名)が決定され、受付期間が開始されて「受付」状態となる。その後、受付期間が終了すると、版の作成が開始されて「作成中」の状態となる。そして、その版の作成が完了して作業用記憶部7にロードされると「検索可能」状態になる。古くなり参照する必要がなくなった版は作業用記憶部7からアンロードされる。アンロードされた版は、すぐに主記憶部4から削除されるわけではなく、主記憶部4に「保持」された状態になる。その後、一定の期間が経過すると、その版の実体は主記憶部4から削除されるが、その版名は版更新ログに記録される。
図4は、同期型のデータベース管理システム1の動作の説明図である。ここで、「同期型」のシステムとは、クライアント装置2からの更新要求に対して、その更新要求が反映されたときに、そのクライアント装置2に版名(その更新要求が反映された版名)を通知するシステムをいう。
ここでは、図4のシステムの動作が、図3のシステムの動作と相違する点を中心に説明する。したがって、ここで特に言及しない限り、図4のシステムの動作は、図3のシステムの動作と同様である。
図4に示すように、同期型のシステムでは、クライアント装置Aからサーバ装置3に更新要求aが送られたときに、この更新要求aに対する応答として「版3」という版名がサーバ装置3からクライアント装置Aに送られるが、この版名はクライアント装置Aのアプリケーション制御層までは届かない。この場合、「版3」の作成が完了してロードされたときに、「版3」の「作成完了」がクライアント装置Aに通知される。
同様に、クライアント装置Bからサーバ装置3に更新要求bが送られたときに、この更新要求bに対する応答として「版3」という版名がサーバ装置3からクライアント装置Bに送られるが、この版名はクライアント装置Bのアプリケーション制御層までは届かない。この場合、「版3」の作成が完了してロードされたときに、「版3」の「作成完了」がクライアント装置Bに通知される。
また、同様に、クライアント装置Cからサーバ装置3に更新要求cが送られたときに、この更新要求cに対する応答として「版4」という版名がサーバ装置3からクライアント装置Cに送られるが、この版名はクライアント装置Cのアプリケーション制御層までは届かない。この場合、「版4」の作成が完了してロードされたときに、「版4」の「作成完了」がクライアント装置Cに通知される。
つぎに、図5および図6を参照して、サーバ装置3に障害が発生したときの動作について説明する。図5は、非同期型のシステムでサーバ障害が発生したときの動作の説明図である。ここでは、システムのサーバ装置3に障害が発生したときの動作が、図3の通常の動作と相違する点を中心に説明する。
図5の例では、クライアント装置AおよびBから「版3」に対する更新要求がサーバ装置3に送られており、クライアント装置Cから「版4」に対する更新要求がサーバ装置3に送られている。そして、サーバ装置3に障害が発生したときに、「版3」は「検索可能」な状態であり、「版4」は「受付」の状態である。したがって、この場合、版更新ログには、「版3」の「作成完了」が記録される。
図5に示すように、サーバ装置3に障害が発生すると、まず、更新要求を送ってきたクライアント装置2に対して、障害通知として、その更新要求に対する版名を含む障害通知が送られる。この場合、クライアント装置AおよびBには「版3」という版名を含む障害通知が送られ、クライアント装置Cには「版4」という版名を含む障害通知が送られる。なお、非同期のシステムでは、クライアント装置2はすでにサーバ装置3から版名通知が送られているため、必ずしも障害通知に版名を含める必要はない。
サーバ装置3が障害から復旧して再起動の処理をするときには、版更新ログに「作成完了」が記録されている「版3」をロードして「検索可能」な状態にする。一方、版更新ログに「作成完了」が記録されていない「版4」については、サーバ装置3の再起動の際に作成途中の版を破棄し、版更新ログに「破棄」を記録する。
その後、クライアント装置AおよびBからサーバ装置3に「版3」の更新状態の確認要求が送られると、その確認要求に対する応答として「作成完了」という更新状態がクライアント装置AおよびBに通知される。
一方、クライアント装置Cからサーバ装置3に「版4」の更新状態の確認要求が送られた場合、その確認要求に対する応答として「破棄」という更新状態がクライアント装置Cに通知される。このようにして、クライアント装置Cは、サーバ装置3の障害により、「版4」に対する更新要求cが反映されなかったことを確認することができ、更新要求cを再度送る必要があることを認識することができる。なお、図5の例では、クライアント装置Cは、更新要求cをサーバ装置3に再送しており、この場合、二度目の更新要求cに対する版名は「版5」である。
図6は、同期型のシステムでサーバ障害が発生したときの動作の説明図である。ここでは、システムのサーバ装置3に障害が発生したときの動作が、図4の通常の動作と相違する点を中心に説明する。
図6の例では、クライアント装置AおよびBから「版3」に対する更新要求がサーバ装置3に送られており、クライアント装置Cから「版4」に対する更新要求がサーバ装置3に送られている。そして、図5の例と同様、サーバ装置3に障害が発生したときに、「版3」は「検索可能」な状態であり、「版4」は「受付」の状態である。したがって、この場合、版更新ログには、「版3」の「作成完了」が記録される。
図6に示すように、サーバ装置3に障害が発生すると、まず、更新要求を送ってきたクライアント装置2に対して、障害通知として、その更新要求に対する版名を含む障害通知が送られる。この場合、クライアント装置AおよびBには「版3」という版名を含む障害通知が送られ、クライアント装置Cには「版4」という版名を含む障害通知が送られる。
そして、図5と同様、サーバ装置3が障害から復旧して再起動の処理をするときには、版更新ログに「作成完了」が記録されている「版3」をロードして「検索可能」な状態にする。一方、版更新ログに「作成完了」が記録されていない「版4」については、サーバ装置3の再起動の際に作成途中の版を破棄し、版更新ログに「破棄」を記録する。
その後、クライアント装置AおよびBからサーバ装置3に「版3」の更新状態の確認要求が送られると、その確認要求に対する応答として「作成完了」という更新状態がクライアント装置AおよびBに通知される。
一方、クライアント装置Cからサーバ装置3に「版4」の更新状態の確認要求が送られた場合、その確認要求に対する応答として「破棄」という更新状態がクライアント装置Cに通知される。このようにして、クライアント装置Cは、サーバ装置3の障害により、「版4」に対する更新要求cが反映されなかったことを確認することができ、更新要求cを再度送る必要があることを認識することができる。なお、図6の例でも、図5と同様に、クライアント装置Cは、更新要求cをサーバ装置3に再送しており、この場合、二度目の更新要求cに対する版名は「版5」である。
つづいて、図7〜図9を参照して、サーバ装置3における各処理の流れについて説明する。図7は、更新要求の受付処理の流れを示すフロー図である。図7に示すように、サーバ装置3は、クライアント装置2から更新要求を受け付けると(S10)、現在、作成中の版(例えば、版X)があるか否かを判断する(S11)。作成中の版がある場合には、その版との更新データのIDの衝突があるか否かを判断する(S12)。更新データのIDの衝突がある場合には、その更新要求を却下して、クライアント装置2にその旨のエラー通知を送り返す(S13)。
更新データのIDの衝突がない場合には、現在、受付中の版(例えば、版X+1)があるか否かを判断する(S14)。受付中の版がある場合には、その版との更新データのIDの衝突があるか否かを判断する(S15)。更新データのIDの衝突がある場合には、その更新要求を却下して、クライアント装置2にその旨のエラー通知を送り返す(S13)。受付中の版がない場合には、その予定版名「X+1」を版名として決定し(S16)、その版(版X+1)を受付状態にする(S17)。
そして、更新要求を版X+1に反映させて(S18)、更新要求の受付を終了し、版名X+1をクライアント装置2へ送り返す(S19)。このようにして、更新要求が受理される。
図8は、確認要求の受付処理の流れを示すフロー図である。図8に示すように、サーバ装置3は、クライアント装置2からある版(例えば、版X)の確認要求を受け付けると(S20)、版更新ログを参照して、その版Xが現在受付中であるか否かを判定する(S21)。そして、受付中であると判定された場合には、クライアント装置2に「受付中」である旨を通知する(S22)。
その版Xが現在受付中でないと判定された場合には、版更新ログを参照して、その版Xが現在作成中であるか否かを判定する(S23)。そして、作成中であると判定された場合には、クライアント装置2に「作成中」である旨を通知する(S24)。
その版Xが現在作成中でないと判定された場合には、版更新ログを参照して、その版Xが現在ロード中であるか否かを判定する(S25)。そして、ロード中であると判定された場合には、クライアント装置2に「作成完了」を通知する(S26)。
その版Xが現在ロード中でないと判定された場合には、版更新ログを参照して、その版Xが現在保持中であるか否かを判定する(S27)。そして、保持中であると判定された場合には、クライアント装置2に「作成完了」を通知する(S26)。
その版Xが現在保持中でないと判定された場合には、その版Xを作成した記録が版更新ログにあるか否かを判定する(S28)。そして、版更新ログに記録があると判定された場合には、クライアント装置2に「作成完了」を通知する(S26)。一方、版更新ログに記録がないと判定された場合には、クライアント装置2に「破棄」を通知する(S29)。
図9は、サーバ障害からの復旧(再起動)処理の流れを示すフロー図である。図9に示すように、サーバ装置3が障害からの復旧(再起動)の処理を開始すると(S30)、まず、主記憶部4に記憶されている版(例えば、版X)を一つ選択する(S31)。そして、その版Xが、版更新ログに記録がある版であるか否かを判定する(S32)。
版更新ログに記録があると判定された場合には、その版Xをロードする(S33)。一方、版更新ログに記録がないと判定された場合には、その版Xを破棄する(S34)。そして、上記の処理を、主記憶部4に記憶されているすべての版について行った場合に(S36)、サーバ装置3の再起動の処理を終了する(S37)。
このような本発明の実施の形態によれば、データベース管理サーバ装置3に、新しい版の作成中であるか否かに係らずクライアント装置2からの更新要求を受け付ける更新要求部と、その更新要求に応じて開始された受付期間中に受け付けた更新要求に基づいて次の版を作成する版作成部5とを設けることにより、更新の一貫性が保たれ、かつ、更新処理の待ち時間の発生を抑えることができる。
すなわち、本実施の形態では、クライアント装置2からの更新要求があったときには、データベースの新しい版(例えば、版X)の作成中であっても、その次の版(例えば、版X+1)に対する更新要求が受け付けられ、次の版に対する更新要求の受付期間が開始される。その後、所定時間が経過すると更新要求の受付期間が終了し、その受付期間中に受け付けた更新要求がまとめられて次の版が作成される。これにより、更新処理の待ち時間(更新要求の受付までの待ち時間)の発生を抑えることができる。また、この場合、世代管理型のデータベース管理により、更新の一貫性が保たれる。
また、本実施の形態では、受付期間中のクライアント装置2からの更新要求と、過去に受け付けた更新要求との衝突の有無の判定が行われる。そして、更新衝突が無であると判定されると、更新要求の受付完了通知として予定版名が通知される。このように、更新要求の受付完了通知として予定版名を利用することにより、更新要求を送ったクライアント装置2は、その更新要求が受け付けられたか否かを確認することができ、また、その更新要求が反映されるであろう版を知ることができる。
また、本実施の形態では、クライアント装置2からの更新要求に対する応答として、予定版名が通知される。したがって、更新要求を送ったクライアント装置2は、その更新要求が受け付けられたか否かを早く確認することができ、また、その更新要求が反映されるであろう版をすぐに知ることができる。そのため、例えば、更新要求を送った後に、データベース管理サーバ装置3に障害が発生した場合であっても、その障害からの復旧処理が行われた後に、更新要求が受け付けられたか否か、あるいは、その更新要求が反映されたか否かを容易に確認することができる。
また、本実施の形態では、データベースの新しい版の作成が完了すると、更新ログにその版の作成完了が記録される。データベース管理サーバ装置3に障害が発生した場合、その障害からの復旧処理が行われるときに、更新ログに作成完了の記録が行われていない作成途中の版が破棄される。このようなデータベースの版の更新状態(「作成完了」または「破棄」などの状態)は、クライアント装置2からの確認要求に応じて通知される。したがって、クライアント装置2は、データベース管理サーバ装置3に障害が発生したときに、以前に送った更新要求が反映された版が作成されたか否か、すなわち、以前に送った更新要求を再度送る必要があるか否かを、容易に確認することができる。
また、本実施の形態では、データベースの版の削除が行われた場合であっても、更新ログにその版名(予定版名)が残される。したがって、データベースの版が削除された後であっても、ある版名をもつデータベースの版が過去に存在していたか否か、例えば、自分が過去に送った更新要求が反映されたか否かを容易に確認することができる。この場合、データベースの版名は、データベースの実体に比べてデータ量がはるかに小さくて済む。
また、本実施の形態では、更新要求の受付期間の終了時は、新しい版の作成完了時以後に設定される。この場合、新しい版(作成中の版)の作成が完了するまでは、次の版(受け付けた更新要求を反映する版)の作成を開始することができない。したがって、新しい版の作成が完了するのを待って、次の版に対する更新要求の受付を終了するようにする。これにより、更新受付の時間的な効率を向上することができる。
また、本実施の形態では、更新要求の受付期間の終了時が、更新要求の受付数に基づいて決定される。例えば、更新要求の受付数がある一定数以上になった場合に、更新要求の受付期間を終了するようにする。これにより、更新要求の受付期間を適切な長さに制御することができる。
以上、本発明の実施の形態を例示により説明したが、本発明の範囲はこれらに限定されるものではなく、請求項に記載された範囲内において目的に応じて変更・変形することが可能である。
以上のように、本発明にかかるデータベース管理システムは、更新の一貫性が保たれ、かつ、更新処理の待ち時間の発生を抑えることができるという効果を有し、世代管理型のデータベース管理等に利用され、有用である。
本発明の実施の形態におけるデータベース管理システムの構成を示すブロック図 版更新制御部の構成を示すブロック図 本発明の実施の形態におけるデータベース管理システム(非同期型)の動作の説明図 本発明の実施の形態におけるデータベース管理システム(同期型)の動作の説明図 障害からの復旧処理を行うときのデータベース管理システム(非同期型)の動作の説明図 障害からの復旧処理を行うときのデータベース管理システム(同期型)の動作の説明図 更新要求の受付処理の動作説明のためのフロー図 確認要求の受付処理の動作説明のためのフロー図 障害からの復旧(再起動)処理の動作説明のためのフロー図
符号の説明
1 データベース管理システム
2 クライアント装置
3 データベース管理サーバ装置
4 主記憶部
5 版作成部
6 版削除部
7 作業用記憶部
8 版ロード部
9 版アンロード部
10 版検索部
11 要求受付部
12 結果通知部
13 受付管理部
14 版更新制御部
15 更新衝突判定部
16 作成ログ記録部
17 破棄処理部
18 削除ログ記録部

Claims (10)

  1. クライアント装置からの更新要求に基づいてデータベースの更新を非破壊で行うことにより、世代管理型のデータベース管理を行う機能を有するデータベース管理サーバ装置であって、
    前記データベース管理サーバ装置は、
    複数のデータベースの実体を、データベースの版ごとに記憶する版記憶手段と、
    前記クライアント装置からの更新要求に基づいて、データベースの新しい版を作成する版作成手段と、
    以前に受け付けた前記更新要求に基づいて前記新しい版の作成中であるか否かに係らず、前記クライアント装置からの別の更新要求を、前記新しい版の次の版に対する更新要求として受け付けることができる更新要求受付手段と、
    前記クライアント装置からの別の更新要求に応じて前記新しい版の次の版に対する更新要求としての受け付けを行う受付期間を開始し、所定時間の経過に応じて前記受付期間を終了する受付管理手段と、
    を備え、
    前記版作成手段は、前記受付期間中に前記新しい版の次の版に対する更新要求として受け付けた更新要求に基づいて、前記データベースの次の版を作成することを特徴とするデータベース管理サーバ装置。
  2. 前記受付期間中の前記クライアント装置からの更新要求と、過去に受け付けた更新要求との衝突の有無を判定する更新衝突判定手段と、
    更新衝突が無であると判定された場合に、前記クライアント装置からの更新要求の受付完了通知として、前記クライアント装置へデータベースの予定版名を通知する予定版名通知手段と、
    を備えたことを特徴とする請求項1に記載のデータベース管理サーバ装置。
  3. 前記予定版名通知手段は、前記クライアント装置からの更新要求に対する応答として、前記クライアント装置へ前記データベースの予定版名を通知することを特徴とする請求項2に記載のデータベース管理サーバ装置。
  4. 前記データベースの更新ログとして、前記データベースの版ごとの更新状態を記憶する更新ログ記憶手段と、
    クライアント装置からの確認要求に応じて、前記データベースの版の更新状態を通知する更新状態通知手段と、
    前記データベースの新しい版の作成が完了したときに、前記更新ログに前記新しい版の作成完了を記録する作成ログ記録手段と、
    前記データベース管理サーバ装置の障害からの復旧処理を行うときに、前記障害の発生時に前記更新ログに作成完了の記録が行われていない作成途中の版を破棄する破棄処理手段と、
    を備えたことを特徴とする請求項1ないし請求項3のいずれかに記載のデータベース管理サーバ装置。
  5. 前記データベースの版の削除を行う版削除手段と、
    前記版の削除が行われたときに、前記データベースの更新ログとして、削除したデータベースの版名を残す削除ログ記録手段と、
    を備えたことを特徴とする請求項1ないし請求項4のいずれかに記載のデータベース管理サーバ装置。
  6. 前記受付管理手段は、前記新しい版の作成中に前記新しい版の次の版に対する更新要求として更新要求を受け付けた場合に、前記更新要求の受付期間の終了時を前記新しい版の作成完了時以後に設定することを特徴とする請求項1ないし請求項5のいずれかに記載のデータベース管理サーバ装置。
  7. 前記受付管理手段は、前記新しい版の作成中に前記新しい版の次の版に対する更新要求として更新要求を受け付けた場合に、前記更新要求の受付期間の終了時を前記更新要求の受付数により決定することを特徴とする請求項1ないし請求項5のいずれかに記載のデータベース管理サーバ装置。
  8. データベースの更新要求を送る機能を有するクライアント装置と、
    前記クライアント装置からの更新要求に基づいてデータベースの更新を非破壊で行うことにより、世代管理型のデータベース管理を行う機能を有するデータベース管理サーバ装置と、
    を備えたデータベース管理システムであって、
    前記データベース管理サーバ装置は、
    複数のデータベースの実体を、データベースの版ごとに記憶する版記憶手段と、
    前記クライアント装置からの更新要求に基づいて、データベースの新しい版を作成する版作成手段と、
    以前に受け付けた前記更新要求に基づいて前記新しい版の作成中であるか否かに係らず、前記クライアント装置からの別の更新要求を、前記新しい版の次の版に対する更新要求として受け付けることができる更新要求受付手段と、
    前記クライアント装置からの別の更新要求に応じて前記新しい版の次の版に対する更新要求としての受け付けを行う受付期間を開始し、所定時間の経過に応じて前記受付期間を終了する受付管理手段と、
    を備え、
    前記版作成手段は、前記受付期間中に前記新しい版の次の版に対する更新要求として受け付けた更新要求に基づいて、前記データベースの次の版を作成することを特徴とするデータベース管理システム。
  9. クライアント装置からの更新要求に基づいてデータベースの更新を非破壊で行うことにより、世代管理型のデータベース管理を行う機能を有するデータベース管理サーバ装置で用いられるデータベース管理方法であって、
    前記データベース管理サーバ装置には、複数のデータベースの実体が、データベースの版ごとに記憶されており、前記データベース管理サーバ装置は、前記更新要求に基づいて、データベースの新しい版を作成する機能を有しており、
    前記データベース管理方法は、
    以前に受け付けた前記更新要求に基づいて前記新しい版の作成中であるか否かに係らず、前記クライアント装置からの別の更新要求を、前記新しい版の次の版に対する更新要求として受け付けることと、
    前記クライアント装置からの別の更新要求に応じて前記新しい版の次の版に対する更新要求としての受け付けを行う受付期間を開始し、所定時間の経過に応じて前記受付期間を終了することと、
    前記受付期間中に前記新しい版の次の版に対する更新要求として受け付けた更新要求に基づいて、前記データベースの次の版を作成することと、
    を含むことを特徴とするデータベース管理方法。
  10. クライアント装置からの更新要求に基づいてデータベースの更新を非破壊で行うことにより、世代管理型のデータベース管理を行う機能を有するデータベース管理サーバ装置で実行されるデータベース管理プログラムであって、
    前記データベース管理サーバ装置には、複数のデータベースの実体が、データベースの版ごとに記憶されており、前記データベース管理サーバ装置は、前記クライアント装置からの更新要求に基づいて、データベースの新しい版を作成する機能を有しており、
    前記データベース管理プログラムは、
    コンピュータに、
    以前に受け付けた前記更新要求に基づいて前記新しい版の作成中であるか否かに係らず、前記クライアント装置からの別の更新要求を、前記新しい版の次の版に対する更新要求として受け付ける処理と、
    前記クライアント装置からの別の更新要求に応じて前記新しい版の次の版に対する更新要求としての受け付けを行う受付期間を開始し、所定時間の経過に応じて前記受付期間を終了する処理と、
    前記受付期間中に前記新しい版の次の版に対する更新要求として受け付けた更新要求に基づいて、前記データベースの次の版を作成する処理と、
    を実行させることを特徴とするデータベース管理プログラム。
JP2008150211A 2008-06-09 2008-06-09 データベース管理サーバ装置、データベース管理システム、データベース管理方法およびデータベース管理プログラム Active JP4224126B1 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2008150211A JP4224126B1 (ja) 2008-06-09 2008-06-09 データベース管理サーバ装置、データベース管理システム、データベース管理方法およびデータベース管理プログラム
US12/472,680 US20100145914A1 (en) 2008-06-09 2009-05-27 Database management server apparatus, database management system, database management method and database management program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008150211A JP4224126B1 (ja) 2008-06-09 2008-06-09 データベース管理サーバ装置、データベース管理システム、データベース管理方法およびデータベース管理プログラム

Publications (2)

Publication Number Publication Date
JP4224126B1 true JP4224126B1 (ja) 2009-02-12
JP2009295071A JP2009295071A (ja) 2009-12-17

Family

ID=40403903

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008150211A Active JP4224126B1 (ja) 2008-06-09 2008-06-09 データベース管理サーバ装置、データベース管理システム、データベース管理方法およびデータベース管理プログラム

Country Status (2)

Country Link
US (1) US20100145914A1 (ja)
JP (1) JP4224126B1 (ja)

Families Citing this family (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2010065511A1 (en) 2008-12-02 2010-06-10 Ab Initio Software Llc Mapping instances of a dataset within a data management system
JP6121163B2 (ja) 2009-09-16 2017-04-26 アビニシオ テクノロジー エルエルシー データセット要素のマッピング
CN102193841B (zh) * 2010-03-04 2013-07-31 阿里巴巴集团控股有限公司 一种Subversion配置库的备份方法及装置
CA2814835C (en) 2010-10-25 2019-01-08 Ab Initio Technology Llc Managing data set objects in a dataflow graph that represents a computer program
WO2012097278A1 (en) * 2011-01-14 2012-07-19 Ab Initio Technology Llc Managing changes to collections of data
US8843914B1 (en) 2011-09-19 2014-09-23 Amazon Technologies, Inc. Distributed update service
US9626379B1 (en) 2011-09-22 2017-04-18 Amazon Technologies, Inc. Optimistic commit processing for an offline document repository
US10489360B2 (en) 2012-10-17 2019-11-26 Ab Initio Technology Llc Specifying and applying rules to data
US9851980B1 (en) * 2012-10-22 2017-12-26 Amazon Technologies, Inc. Distributed update service enabling update requests
US9342291B1 (en) 2012-11-14 2016-05-17 Amazon Technologies, Inc. Distributed update service
EP3191962B1 (en) 2014-07-18 2019-12-11 AB Initio Technology LLC Managing parameter sets
WO2016016944A1 (ja) * 2014-07-29 2016-02-04 株式会社日立製作所 データベース管理システム及びデータベース管理方法
US9626393B2 (en) 2014-09-10 2017-04-18 Ab Initio Technology Llc Conditional validation rules
US10705926B2 (en) * 2016-07-29 2020-07-07 Rubrik, Inc. Data protection and recovery across relational and non-relational databases
CN108733743B (zh) * 2018-03-23 2021-04-23 山东昭元信息科技有限公司 一种基于时间轴的时序数据库版本管理实现方法
US11461302B1 (en) * 2018-08-14 2022-10-04 Amazon Technologies, Inc. Storing multiple instances of data items to implement key overloading in database tables

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5280612A (en) * 1991-11-26 1994-01-18 International Business Machines Corporation Multiple version database concurrency control system
US5913160A (en) * 1994-09-13 1999-06-15 At&T Corporation Method and system for updating replicated databases in foreign and home telecommunication network systems for supporting global mobility of network customers

Also Published As

Publication number Publication date
US20100145914A1 (en) 2010-06-10
JP2009295071A (ja) 2009-12-17

Similar Documents

Publication Publication Date Title
JP4224126B1 (ja) データベース管理サーバ装置、データベース管理システム、データベース管理方法およびデータベース管理プログラム
US11010240B2 (en) Tracking status and restarting distributed replication
US20200348852A1 (en) Distributed object replication architecture
JP4582297B2 (ja) レプリケーションシステム、装置、方法、およびプログラム
JP4719318B2 (ja) データの複製管理方法及びシステム
US8751863B2 (en) Implementing failover processes between storage stamps
JP4668763B2 (ja) ストレージ装置のリストア方法及びストレージ装置
JP5467625B2 (ja) トランザクションを処理する本番システムと該本番システムのバックアップ・システムである代行システムとを含む本番−代行システム
US7900006B2 (en) Maintaining checkpoints during backup of live system
WO2018049983A1 (zh) 数据同步方法、系统、同步获取方法及装置
US20180307569A1 (en) Data retracement method, apparatus, and system
US8533525B2 (en) Data management apparatus, monitoring apparatus, replica apparatus, cluster system, control method and computer-readable medium
JP5948933B2 (ja) ジョブ継続管理装置、ジョブ継続管理方法、及び、ジョブ継続管理プログラム
US20120278429A1 (en) Cluster system, synchronization controlling method, server, and synchronization controlling program
US8112665B1 (en) Methods and systems for rapid rollback and rapid retry of a data migration
US11892982B2 (en) Facilitating immediate performance of volume resynchronization with the use of passive cache entries
US11500812B2 (en) Intermediate file processing method, client, server, and system
JP4560074B2 (ja) 仮想計算機システム及び同システムにおける仮想計算機復元方法
US20090248760A1 (en) Backup method of computer system
CN113438275B (zh) 数据迁移方法、装置、存储介质及数据迁移设备
JP2007058506A (ja) 文書管理サーバ、文書管理システム、及び、文書管理プログラムとその記録媒体
US11693844B2 (en) Processing delete requests based on change feed of updates
JP6251965B2 (ja) 情報システムおよびデータベース復旧方法
CN108874592B (zh) 一种针对Log-structured存储引擎的数据冷备方法及系统
JP2008310517A (ja) データ同一化方法、データ同一化プログラム、および、現用系装置

Legal Events

Date Code Title Description
TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20081120

R150 Certificate of patent or registration of utility model

Ref document number: 4224126

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20111128

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121128

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121128

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20131128

Year of fee payment: 5