JP2002132554A - データベースアクセス方法 - Google Patents
データベースアクセス方法Info
- Publication number
- JP2002132554A JP2002132554A JP2000332107A JP2000332107A JP2002132554A JP 2002132554 A JP2002132554 A JP 2002132554A JP 2000332107 A JP2000332107 A JP 2000332107A JP 2000332107 A JP2000332107 A JP 2000332107A JP 2002132554 A JP2002132554 A JP 2002132554A
- Authority
- JP
- Japan
- Prior art keywords
- storage device
- data
- host computer
- storage
- write
- 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.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/20—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
- G06F11/2053—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant
- G06F11/2056—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant by mirroring
- G06F11/2087—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant by mirroring with a common controller
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0866—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches for peripheral storage systems, e.g. disk cache
- G06F12/0868—Data transfer between cache memory and other subsystems, e.g. storage devices or host systems
-
- 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/23—Updating
- G06F16/2308—Concurrency control
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/20—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
- G06F11/2053—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant
- G06F11/2056—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant by mirroring
- G06F11/2082—Data synchronisation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F2003/0697—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers device management, e.g. handlers, drivers, I/O schedulers
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/31—Providing disk cache in a specific location of a storage system
- G06F2212/312—In storage controller
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/31—Providing disk cache in a specific location of a storage system
- G06F2212/313—In storage device
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/46—Caching storage objects of specific type in disk cache
- G06F2212/465—Structured object, e.g. database record
-
- 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/99931—Database or file accessing
- Y10S707/99938—Concurrency, e.g. lock management in shared database
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Quality & Reliability (AREA)
- Human Computer Interaction (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
Abstract
に複数のトランザクションを処理する際のホスト計算機
の負荷を低減する。 【解決手段】記憶装置サブシステム3は、データが二重
化して格納されるディスクユニット31a、31bを有
する。サーバ1は、リードアクセス時はディスクユニッ
ト31b、ライトアクセス時はディスクユニット31a
にアクセスする。ライトアクセス時に未完了のリード処
理が存在するとき、サーバ1は、ディスクユニット31
a、31bの二重化の中止を指示してライト要求を発行
し、ライトデータをディスクユニット31aにのみ格納
する。サーバ1は、リード、ライト処理がそれぞれ完了
した時点で、記憶装置サブシステム3に対してディスク
ユニット31a、31bの二重化を再開させ、ディスク
ユニット31aに書き込まれたデータをディスクユニッ
ト31bに反映させる。
Description
などにおけるデータベースシステムの問い合わせ方法に
係り、特に、複数のトランザクション処理を高速化する
方法に関する。
空券予約処理など、同時に複数の処理要求を受け付ける
必要のある処理では、オンライントランザクションシス
テムが広く使われている。
は、ほぼ同時に複数の要求が発生したときでも、矛盾の
ないデータを返却することが要求される。例えば、ある
ユーザ(第1のユーザ)の要求により、データベースの
ある部分の読み出しが行われている途中で、別のユーザ
(第2のユーザ)が同じデータ部分への更新要求を行う
ことを考える。この場合、第1のユーザからの要求によ
り読み出すべきデータは、第2のユーザからの要求によ
り更新される以前のデータである。第2のユーザからの
要求によるデータ更新をそのまま実行させると、第1の
ユーザからの要求によりデータが読み出されるよりも前
にデータが書き換えられてしまう可能性がある。このた
め、システムは、第1のユーザの要求に応じてその要求
により読み出すべきデータをロックし、他のユーザによ
るデータ更新を第1のユーザからの要求によるデータの
読み出しが完了するまでは待たせる。
ぞれの処理のことをトランザクションと呼ぶ。オンライ
ントランザクションシステムは、各トランザクションが
競合して矛盾したデータを読み出す、あるいは書き込む
ことが無いように制御する。上述した技術では、第1の
ユーザからの要求によるデータ読み出しが非常に時間の
かかる処理である場合、例えば、読み出すべきデータ量
が非常に大きい場合、第2のユーザからの要求によるデ
ータ書き込みは、第1のユーザからの要求によるデータ
読み出しが完了するまで待たされる。このため、第2の
ユーザからの要求は、その処理に非常に時間がかかって
しまう。
データベース管理システム(以下、DBMSと略す)で
は、マルチバージョニングと呼ばれる技術が用いられ
る。マルチバージョニングに関しては、例えばORAC
LE8アーキテクチャ(翔泳社)P.206-に解説されてい
る。この技術では、第1のユーザからの要求によるデー
タの読み出しが完了していなくても、第2のユーザから
の要求によるデータの書き込みが許可される。第2のユ
ーザからの要求によりデータが書き込まれた領域第1の
ユーザからの要求によるデータの読み出しが必要になっ
たときは、データベースのロールバックセグメントを用
いて第2のユーザからの要求によるデータの書き込みが
行われる前の時点のデータが復元され、第1のユーザに
渡される。このような処理により、お互いの処理が阻害
されることはなくなる。
ば、マルチバージョニングによって、複数のトランザク
ションを同時に実行できるようになる。しかし、データ
の復元などは、すべてDBMSによって実施されるた
め、ホストコンピュータの負荷が大きく、結果として各
処理時間が長くなってしまう。ロールバックセグメント
は、それほど大きくとることはできず、大規模な更新処
理などには向かないといった問題がある。
同時に複数の要求があった場合に、システムの負荷を増
大させずに効率的な処理を行うことのできる方法を提供
することにある。
ステムは、その好ましい態様において、トランザクショ
ン処理が実行されるホスト計算機と、このホスト計算機
に接続され、トランザクション処理でアクセスされるデ
ータベースを格納した第1の記憶装置及びホスト計算機
からの要求に基づいて第1の記憶装置のアクセスを行う
記憶制御装置とを備える記憶装置サブシステムとを有し
て構成される。
にディスクサブシステムへのライト要求を発行するに際
して、データベースからの未完了のリード処理が存在す
るか確認する。未完了の読み出し処理が存在する場合、
ホスト計算機は、発行したライト要求に応じて第1の記
憶装置にデータが書き込まれないようディスクサブシス
テムに指示し、ライト要求をディスクサブシステムに発
行する。
じてデータベースに書き込むべきデータを第1の記憶装
置とは異なる第2の記憶装置に格納して処理の完了をホ
スト計算機に報告する。
ライト処理の完了後、第1の記憶装置へのデータの書き
込みが行われるように指示する。ディスクサブシステム
は、この指示に応じて、第2の記憶装置に書き込まれ、
第1の記憶装置に書き込まれていないデータを第2の記
憶装置から第1の記憶装置に書き込む。
装置と第2の記憶装置とは、期多く制御装置により同じ
データが二重化して格納されるように制御されたディス
ク装置により構成される。ホスト計算機は、通常の状態
において、データベースからのデータの読み出しは第1
の記憶装置を指定して実施し、データベースへのデータ
の書き込みは、第2の記憶装置を指定して行う。第2の
記憶装置を指定して行われたデータの書き込みの結果
は、記憶制御装置により、第1の記憶装置にも反映され
る。
が書き込まれないよう指示された場合、記憶制御装置
は、第2の記憶装置を指定して行われたデータの書き込
みを第1の記憶装置に反映させることを一時的に中断す
る。第1の記憶装置へのデータの書き込みが行われるよ
う指示された場合、記憶制御装置は、第2の記憶装置か
ら差分のデータを第1の記憶装置に転送し、両者の内容
を一致させ、第2の記憶装置に対するデータの書き込み
を第1の記憶装置に反映させるよう制御する。
置は、記憶制御装置が有するキャッシュメモリにより構
成される。ホスト計算機から第1の記憶装置にデータが
書き込まれないよう指示された場合、記憶制御装置は、
第1の記憶装置を指定したデータの書き込み要求に対し
て、データを第2の記憶装置に書き込んだ段階で処理の
完了を報告する。第1の記憶装置へのデータの書き込み
が行われるよう指示された場合、記憶制御装置は、第2
の記憶装置に保持され、第1の記憶装置に書き込まれて
いないデータを第1の記憶装置に書き込む。
態における構成例を示すブロック図である。
ーバ1、複数のクライアント計算機2a、2b、…2n
(総称してクライアント2と呼ぶ)、及びサーバ1に接
続される記憶装置サブシステム3を含んで構成される。
続するためのSCSIインタフェース13、クライアン
ト2と接続するためのネットワークインタフェース1
4、データベース管理システム11、ボリュームマネー
ジャ12を有する。サーバ1は、いわゆるパーソナルコ
ンピュータや、ワークステーションなどの計算機により
実現され、図示しないCPUやメモリ、その他の周辺装
置を有する。データベース管理システム11,及びボリ
ュームマネージャ12は、メモリに格納され、CPUに
よって実行されることでその機能が実現されるプログラ
ムとして実装される。ボリュームマネージャ12は、デ
ータベース管理システム11の中に組み込まれたソフト
ウェアとして実現されても良い。
接続するためのネットワークインタフェース22a、2
2b、22c、…22n(以後、総称してネットワーク
インタフェース22と呼ぶ)、データベースクライアン
ト21a、21b、…21n(以後、総称してデータベ
ースクライアント2と呼ぶ)を有する。クライアント2
は、サーバ同様パーソナルコンピュータなどの計算機に
より実現され、図示しないCPUメモリなどを有する。
データベースクライアント2は、メモリに格納され、C
PUによって実行されることでその機能が実現されるプ
ログラムとして実装される。
置サブシステム3に格納されたデータのアクセスを実施
し、データベースクライアント21は、データベース管
理システム11に処理要求を出して必要なデータにアク
セスする。
ット31a,31b、ディスクコントローラ32、サー
バ1と接続するインタフェース33を有している。一般
に、データベースでは、多数のディスクにデータが格納
されるが、本実施形態では、説明を簡単化するためにデ
ータベースのデータは、ディスクユニット31a、31
bの2つのディスクユニットに格納されているものとす
る。また、ディスクユニット31a、31bの容量は同
一であるとする。
321、キャッシュメモリ322、制御メモリ323を
有して構成される。
計算機(ここではサーバ1)からのアクセス処理速度を
高めるため、頻繁に読み出されるデータを格納し、ある
いはホスト計算機からのライトデータを一時的に格納す
る。キャッシュメモリ322は、格納されたデータが停
電などの障害時に喪失されることを防ぐため、バッテリ
バックアップされるか、あるいはフラッシュメモリなど
の不揮発メモリにより構成されることが望ましい。
アクセス要求の処理と、キャッシュメモリ322の制御
を行う。これらの制御を行うプログラムは、制御メモリ
323に格納される。ディスクユニット31a、31b
は、それぞれ、必ずしも1つの磁気ディスクドライブで
ある必要はなく、ディスクアレイのような、物理的に複
数のディスクドライブをまとめて1または複数のディス
クドライブに見せかけた論理ディスク装置であっても良
い。
ニット31a、31bをサーバ1からそれぞれ独立した
1つのディスクユニットとしてアクセスできるよう制御
する。ただし、ディスクユニット31bに対するサーバ
1からのアクセスは、リードのみが許可される。
ィスクユニットの内容を同一の状態に維持するボリュー
ム二重化機能を有する。例えば、ディスクユニット31
aと31bが二重化状態とされているときに、サーバ1
からディスクユニット31aへのデータのライト要求が
あると、ディスクコントローラ32は、ディスクユニッ
ト31aにデータを書き込むとともに、同じデータをデ
ィスクユニット31bにも書き込む。ボリューム二重化
機能の設定と解除は、サーバ1のボリュームマネージャ
12が、SCSIインタフェース13を介して発行する
コマンドによって操作される。ディスクコントローラ3
2は、ボリュームマネージャ12により二重化機能の解
除が指示されると、ディスクユニット31bへのデータ
反映を中止する。これにより、ディスクユニット31b
には、二重化機能の解除が指示された時点のデータが保
持される。ディスクコントローラ32は、二重化機能の
設定が指示されると、二重化機能が解除された後にディ
スクユニット31aに書き込まれた差分のデータをディ
スクユニット31bにコピーし、ディスクユニット31
aとディスクユニット32bの内容を同一にする。
に、サーバがリードアクセスの対象とされているデータ
部分への更新要求を受けたときに実施されるデータベー
ス管理システム11の処理を示すフローチャートであ
る。
ステム11は、データベースクライアント21からデー
タの検索などのためにリード要求を受けると、ディスク
ユニット31bをアクセスして要求されたデータを取り
出す。
の更新要求があった場合、データベース管理システム1
1は、ディスクユニット31bへの実行中のリードアク
セスの有無を調べる(ステップ1101)。実行中のリ
ードアクセスが存在しない場合、データベース管理シス
テム11は、二重化機能を利用してディスクユニット3
1a、32bの双方に更新要求で指定されたデータを書
き込み、データの更新を実施する(ステップ110
2)。
ドアクセスが存在する場合、データベース管理システム
11は、ボリュームマネージャ12を用いて、ディスク
ユニット31aとディスクユニット31bの二重化処理
を中断する(ステップ1103)。引き続きデータベー
ス管理システム11は、更新要求の内容に従って、ディ
スクユニット31aのデータを更新する(ステップ11
04)。
ステム11は、先に実行が開始されているリードアクセ
ス処理が終了しているかチェックし、リードアクセス処
理が終了していない場合、それが完了するまで待ちつづ
ける(ステップ1105)。リードアクセスが終了して
いる場合、データベース管理システム11は、ボリュー
ムマネージャ12により、ディスクユニット31aとデ
ィスクユニット31bの二重化処理を再開させ、ディス
クユニット31aからディスクユニット31bに差分デ
ータをコピーする(ステップ1106)。
ステム側の負荷が大きく増えることなくデータベースに
対する複数のアクセス要求を処理することが可能とな
る。
ムの構成を示す簡略なブロック図である。本実施形態に
おける計算機システムは、ディスクコントローラ32′
の機能が、第1の実施形態のディスクコントローラ32
とは若干異なっている点を除くと、第1の実施形態の計
算機システムとほぼ同様に構成される。以下、主に、第
1の実施形態と相違する点について説明する。
ラ32′は、サーバ1からの「ライト一時禁止」の要求
があると、それ以後サーバ1から出されるライト要求に
対して、書き込みが要求されたデータを実際にディスク
ユニットに書き込まず、キャッシュメモリ322′に一
時的に格納して処理を完了させる機能を有する。
ータは、サーバ1から「ライト禁止解除」を示す要求が
出されたときに、キャッシュメモリ322′からディス
クユニット31に書き込まれる。ディスクコントローラ
32′は、サーバ1から「ライト禁止解除」を示す要求
を受けると、それ以降受け付けたライト要求に対して、
ディスクユニット31aへのデータの書き込みを実施す
る。
キャッシュメモリ管理テーブルの論理的な構成を示すテ
ーブル構成図である。
キャッシュメモリ322′に一時的に書き込まれたデー
タを、後でディスクユニット31aに書き込むために必
要な情報として、シーケンス番号401、先頭LBA4
02、ブロック数403、先頭キャッシュアドレス40
4、及び最終キャッシュアドレス405を保持する。
ライト要求によるデータの書き込み順を示す通番であ
る。シーケンス番号401は、必ずしも連続した番号で
ある必要はなく、ディスクコントローラ32′がデータ
の書き込み順を識別できる情報であればよい。例えば、
通番に代えてライト要求のあった時刻を用いることも可
能である。
ト要求によりデータの書き込みが要求されたディスクユ
ニット31aの先頭ブロックのアドレス(LBA:Logi
calBlock Address)、ブロック数403は、ライト要求
により書き込まれたデータの大きさ(ディスクユニット
31a上でのブロックの数)を示す。
ッシュアドレス405は、データが一時的に保持されて
いるキャッシュメモリ322′の領域の先頭のアドレス
と最終のアドレスをそれぞれ示している。
禁止解除」の指示を受け取ると、キャッシュメモリ管理
テーブル400に保持されている情報に基づいて、シー
ケンス番号401の小さい順(ライト要求を受け付けた
順)にデータをディスクユニット31aに書き出してい
く。このように、シーケンス番号401の順に従ってデ
ータをディスクユニット31aに書き込んでいくこと
で、ライトデータの順序性を保証することができる。
イト一時禁止」の状態にある場合に行われるライト要求
の処理の流れを示すフローチャートである。
から「ライト一時禁止」の要求を受け付けた後に、サー
バ1からのライト要求を受けると、ライト要求に伴いサ
ーバ1から受け取ったライトデータをキャッシュメモリ
322′に格納する。この際、ディスクコントローラ3
2′は、キャッシュメモリ管理テーブル400を参照し
て、キャッシュメモリ322′内のデータが格納されて
いない領域のキャッシュメモリアドレスを取得する。そ
して、取得したキャッシュメモリアドレスで指定される
領域をライトデータの格納のために割り当てる(ステッ
プ2001)。
ャッシュメモリ管理テーブル400に、シーケンス番号
401、先頭LBA402、ブロック数403、ライト
データが格納されたキャッシュメモリ上の先頭キャッシ
ュアドレス404、及び最終キャッシュアドレス405
を記録する。シーケンス番号は、キャッシュメモリ管理
テーブル400に何もエントリが存在しないときには0
が割り当てられ、以後、1ずつ増加した値が割り当てら
れる。例えば、図4に示すように、4つのエントリが存
在しているときにライト要求を受け付けると、そのライ
ト要求には、シーケンス番号として5が割り当てられる
(ステップ2002)。
2′は、サーバ1にライト処理の完了を通知する。先に
述べたように、この時点ではディスクユニット31aに
データは書き込まれずに処理が終了する(ステップ20
03)。
バ1から「ライト禁止解除」の要求を受け付けたときに
実施される処理の流れを示すフローチャートである。
から「ライト禁止解除」の要求をうけると、キャッシュ
メモリ管理テーブル400内でシーケンス番号401の
最も小さいエントリを探す(ステップ2101)。ディ
スクコントローラ32′は、続いて、ステップ2101
で探したエントリを参照し、先頭キャッシュアドレス4
04、最終キャッシュアドレス405で特定されるキャ
ッシュメモリ322′の領域に格納されているデータ
を、先頭LBA402、ブロック数403に従ってディ
スクユニット31aに書き出す(ステップ2102)。
は、ディスクユニット31aへの書き込みが完了した時
点で、キャッシュメモリ管理テーブル400から削除さ
れる(ステップ2103)。次に、ディスクコントロー
ラ32′は、キャッシュメモリ管理テーブル400に未
処理のエントリが存在するか否か調べる。キャッシュメ
モリ管理テーブル400にまだエントリが残っている場
合、ディスクコントローラ32′は、ステップ2101
以降の処理を繰り返す。一方、すべてのエントリについ
て処理を終え、未処理のエントリが存在しないときは、
処理が終了する(ステップ2104)。
スのリードアクセス中に、サーバがリードアクセスの対
象とされているデータ部分への更新要求を受けたときに
実施されるデータベース管理システム11の処理を示す
フローチャートである。図7において、図2に示した処
理と同じ処理については、図2と同じ参照番号が用いら
れている。
ベースクライアント21からデータの更新要求がある
と、実行中のリードアクセスの有無を調べる(ステップ
1101)。実行中のリードアクセスが存在しなけれ
ば、データベース管理システム11は、書き込みが要求
されたデータをディスクユニット31aに書き込むため
に、記憶装置サブシステム3′にライト要求を発行する
(ステップ2201)。
ドアクセスが存在する場合、データベース管理システム
11は、記憶装置サブシステム3′に対して、「ライト
一時禁止」の要求を出す(ステップ2202)。続い
て、データベース管理システム11は、データベースク
ライアント21からの更新要求に従ったデータのライト
要求を記憶装置サブシステム3′に対して発行する。こ
こで、ライト要求は、場合によっては複数回発行されて
もよい。このとき、ディスクサブシステム3側では、図
5に示したような処理が実施される。すなわち、データ
ベース管理システム11からのライト要求に応じて、ラ
イトデータがキャッシュメモリ322′に格納された段
階で処理が完了し、ディスクユニット31aには、書き
込まれない(ステップ1104)。
知を受けると、データベース管理システム11は、先に
実行されていたリードアクセス処理が終了しているかチ
ェックする(ステップ1105)。データベース管理シ
ステム11は、リードアクセス処理が終了してれば、記
憶装置サブシステム3′に対して「ライト禁止解除」を
指示し、処理を終了する(ステップ2203)。
止解除」の指示に応答して、記憶装置サブシステム3′
は、図6に示した処理を実施し、ステップ1104でキ
ャッシュメモリ322′に保持された書き込みデータを
ディスクユニット31aに書き込む。キャッシュメモリ
322′からディスクユニット31aへのデータの書き
込みが行われている最中に同じ領域にサーバ1からデー
タのリード要求が発生した場合、記憶装置サブシステム
3′のディスクコントローラ32′は、図8に示す処理
を実施する。
からのリード要求に応じて、制御メモリ323′のキャ
ッシュメモリ管理テーブル400を参照し、要求された
データがキャッシュメモリ322′に保持されているか
チェックする(ステップ2301)。該当するデータがキ
ャッシュメモリ322′にある場合、ディスクコントロ
ーラ32′は、そのデータをキャッシュメモリ322′
から取り出して、サーバ1に転送する(ステップ230
2)。ステップ2301において、該当するデータがキ
ャッシュメモリ322′にないと判断されたとき、ディ
スクコントローラ32′は、ディスクユニット31aか
ら該当するデータを読み出して、サーバ1に渡す(ステ
ップ2303)。
なり、データベース管理システム11は、データベース
のデータをアクセスする際には、常にディスクユニット
31aをアクセスすればよい。また、第1の実施形態で
は、データの更新処理が完了した後で行われるディスク
の同期化処理(ステップ1106)の最中は、その領域
に対するデータのリード要求を受け付けることができな
い。これに対して、本実施形態では、図8に示す処理を
実施することで、ライト禁止解除に伴う処理を実行中に
もデータベースのデータを参照することが可能となる。
ムの構成を示す簡略なブロック図である。本実施形態に
おける計算機システムも、物理的には第1及び第2の実
施形態と同様に構成される。本実施形態では、以下に説
明するように、データベース管理システム11′により
発行されるリード、ライトなどのI/Oコマンド、ディ
スクコントローラ32″の機能が第1、第2の実施形態
と異なる。
1′は、ディスクユニット31aにアクセスする場合、
リード/ライト要求として、通常のリード/ライトコマ
ンドを拡張したコマンドを発行する。通常のリード/ラ
イトコマンドでは、ディスクユニット31aの書き込み
位置をあらわすLBAと書き込みブロック数が指定され
るが、本実施形態のリード/ライトコマンドでは、これ
らの情報に加え、トランザクションIDの指定が含まれ
る。トランザクションIDは、データベース管理システ
ム11′で取り扱われる一連のトランザクションごとに
割り当てられる一意な識別番号である。同一のトランザ
クション中で発生したリード/ライトコマンドには同じ
トランザクションIDの指定が含まれる。
ステム3″内で、各I/Oがどのトランザクションに関
連したものかを識別するために用いられる。したがっ
て、トランザクションIDは、各々のトランザクション
を識別できれば内容はどのようなものであっても良い。
本実施形態では、トランザクションIDを非負の整数と
し、初期値を0、それ以降発生するトランザクションに
は1、2、3、・・・のように、連続する番号を割り当て
ていくものとする。トランザクションIDの値が大きい
ほど、そのトランザクションは時間的に後に実施された
ことになる。
ス管理システムにより実施されるデータの更新処理の流
れを示すフローチャートである。
ンザクションIDを含むライト要求を記憶装置サブシス
テムに対して発行する。ライト要求は、トランザクショ
ンの種類によっては複数発行されることもある(ステッ
プ3001)。ライト処理が完了すると、データベース
管理システム11′は、完了したライト処理を実行した
トランザクションよりも前のトランザクションがすべて
完了しているか確認する(ステップ3002)。以前の
トランザクションで未完了のものがある場合は、そのま
ま待機し、以前のトランザクションがすべて完了してい
たら記憶装置サブシステム3″に対してコミットを指示
する。通常の記憶装置サブシステムでは、コミット処理
を指示するコマンドはサポートされていない。このた
め、本実施形態では、例えば、SCSI(Small Comput
er System Interface)におけるMODE SENSEコマンドを
拡張したコマンドによりコミットの指示を行う(ステッ
プ3003)。
メモリ管理テーブルの論理的な構成を示すテーブル構成
図である。
ル400′は、トランザクションID410ごとに作成
され、管理される。各トランザクションに対応したキャ
ッシュメモリテーブル400′のエントリには、シーケ
ンス番号401′、先頭LBA402、ブロック数40
3、キャッシュメモリ上の先頭キャッシュアドレス40
4、及び最終キャッシュアドレス405が情報として記
録される。
は、トランザクションID410で管理されたそれぞれ
のキャッシュメモリ管理テーブルの中で一意な番号を持
つ。
じて記憶装置サブシステム3″により実施される処理の
フローチャートである。
いて図5により説明した処理に対応する処理である。本
実施形態では、先に述べたように、トランザクションI
D410ごとにキャッシュメモリ管理テーブル400′
が作成される。このため、図5に示す処理に対して、新
たに発生したトランザクションに対応する管理テーブル
の割り当てを行う処理が追加されている。
トローラ32″は、サーバ1からライト要求があると、
ライト要求に含まれているトランザクションIDを参照
し、制御メモリ323″にそのトランザクションIDに
対応するキャッシュメモリ管理テーブルがあるかチェッ
クする(ステップ3101)。該当するキャッシュメモ
リ管理テーブルが存在しなければ、ディスクコントロー
ラ32″は、新たにキャッシュメモリ管理テーブル作成
し、指定されたトランザクションIDのために割り当て
る(ステップ3102)。
モリ管理テーブルが存在する場合、及び、ステップ31
02の後、ディスクコントローラ32″は、第2の実施
形態において図5により説明した処理と同様に、ライト
データをキャッシュメモリ322″に書き込み(ステッ
プ2001)、キャッシュメモリ管理テーブルにシーケ
ンス番号401′、先頭LBA402、ブロック数40
3、キャッシュメモリ上の先頭キャッシュアドレス40
4、及び最終キャッシュアドレス405を記録し(ステ
ップ2002)、サーバ1にライト完了を報告する(ス
テップ2003)。
じて記憶装置サブシステム3″により実施される処理の
フローチャートである。
るリード要求にもトランザクションIDが含まれる。デ
ィスクコントローラ32″は、サーバ1からリード要求
を受け取ると、キャッシュメモリ管理テーブル400′
を参照して、リード要求で指定されたトランザクション
IDよりも古いトランザクションIDに関するキャッシ
ュメモリ管理テーブルがあるかチェックする(ステップ
3201)。該当するキャッシュメモリ管理テーブルが
ない場合、ディスクコントローラ32″は、ディスクユ
ニット31aから直接該当するデータを読み出してサー
バ1に渡して処理を終了する(ステップ3207)。
あった場合、ディスクコントローラ32″は、見つかっ
たキャッシュメモリ管理テーブルの中で、最も新しいト
ランザクションIDに関するキャッシュメモリ管理テー
ブルのエントリをサーチし(ステップ3202)、リー
ド要求で読み出しが指定されたデータを含む領域のデー
タがキャッシュメモリ322″にあるかチェックする
(ステップ3203)。
322″にあれば、ディスクコントローラ32″は、キ
ャッシュメモリ管理テーブルに保持された情報に基づい
て該当するデータを取得し、そのデータをサーバ1に渡
して処理を終了する(ステップ3206)。
たキャッシュメモリ管理テーブルにより管理されるキャ
ッシュメモリ322″内のデータに該当するデータがな
かったときは、リード要求で指定されたトランザクショ
ンIDよりも古いトランザクションIDに関するすべて
のキャッシュメモリ管理テーブルについてサーチを行っ
たか判別する(ステップ3204)。サーチすべきキャ
ッシュメモリ管理テーブルがなければ、ステップ320
7でディスクユニット31aから該当するデータを読み
出してサーバ1に転送する。
理テーブルがあれば、次に新しいキャッシュメモリ管理
テーブルをサーチの対象として、ステップ3203以降
の処理を繰り返す(ステップ3205)。
いてリードデータの格納場所を判別し、そのデータをサ
ーバ1に転送することで、一貫性が維持されたデータを
サーバ1に渡すことができる。
求が発行されたときに記憶装置サブシステム3″により
実施される処理を示すフローチャートである。
データは、サーバ1からコミットの指示があるとディス
クユニット31aに書き出される。コミット指示の要求
には、リード/ライト要求と同様に、トランザクション
IDが含まれる。ディスクコントローラ32″は、コミ
ット処理の指示を受けると、キャッシュメモリ管理テー
ブル400を検索し、指定されたトランザクションID
に関連するキャッシュメモリ管理テーブルを取得する
(ステップ3301)。
得したキャッシュメモリ管理テーブルの中で、シーケン
ス番号401′の最も小さいエントリを探す(ステップ
3302)。ディスクコントローラ32″は、ステップ
3302で探したエントリを参照して、先頭キャッシュ
アドレス404、最終キャッシュアドレス405で特定
されるキャッシュメモリ322″の領域に保持されてい
るデータを、先頭LBA402、ブロック数403に従
ってディスクユニット31aに書き出す(ステップ33
03)。
了した時点で、ディスクコントローラ32″は、当該エ
ントリをキャッシュメモリ管理テーブルから削除する
(ステップ3304)。続いて、ディスクコントローラ
32″は、当該テーブルにまだエントリが残っているか
どうかチェックし(ステップ3305)、エントリが残
っている場合にはステップ3202以降の処理を繰り返
し、すべてのエントリについて処理を終了した後、当該
キャッシュメモリ管理テーブルを制御メモリ323″か
ら削除し、処理を終了する(ステップ3306)。
は、同時に実行されるトランザクションが増えると、対
応が難しくなる。例えば、第2の実施形態において、リ
ードA、ライトA、リードB、ライトBの順でトランザ
クションが発生した場合、ライトAによるライトデータ
は一旦キャッシュメモリ上に退避され、リードAが完了
した時点でディスクユニットに書き出される。ライトA
によるライトデータをキャッシュメモリからディスクに
書き込んでいる最中にリードB、ライトBのトランザク
ションが発行されると、ライトBによって書き込みが指
示されたデータも一緒にディスクユニットに書き込まれ
てしまう。このためリードBによって読み出されたデー
タの一貫性が維持されなくなってしまう可能性がある。
このような問題は、記憶装置サブシステムが、サーバか
ら要求されたコマンドがどのトランザクションに対応し
ているかを識別することができないために発生する。本
実施形態では、サーバからの要求がどのトランザクショ
ンに関連するものかを記憶装置サブシステム側で認識す
ることができ、このような問題を回避することが可能と
なる。
クションを処理する際のホストコンピュータの負荷を低
減することができる。
態における構成例を示すブロック図である。
リードアクセスの対象とされているデータ部分への更新
要求を受けたときに実施されるデータベース管理システ
ムの処理を示すフローチャートである。
ムの構成を示す簡略なブロック図である。
の一例を示すテーブル構成図である。
状態にある場合に行われるライト要求の処理の流れを示
すフローチャートである。
止解除」の要求を受け付けたときに実施される処理の流
れを示すフローチャートである。
リードアクセスの対象とされているデータ部分への更新
要求を受けたときに実施されるデータベース管理システ
ムの処理を示すフローチャートである。
ディスクユニットにデータを転送中にサーバからのリー
ド要求を受け付けたときに実施される処理の流れを示す
フローチャートである。
ムの構成を示す簡略なブロック図である。
システムにより実施されるデータの更新処理の流れを示
すフローチャートである。
成の一例を示すテーブル構成図である。
ブシステムにより実施される処理の流れを示すフローチ
ャートである。
ブシステムにより実施される処理の流れを示すフローチ
ャートである。
ときに記憶装置サブシステムにより実施される処理の流
れを示すフローチャートである。
Claims (11)
- 【請求項1】トランザクション処理が実行されるホスト
計算機と、前記トランザクション処理により前記ホスト
計算機からアクセスされるデータベースを格納した第1
の記憶装置及び前記ホスト計算機からの要求に基づいて
前記第1の記憶装置のアクセスを行う記憶制御装置とを
備える記憶装置サブシステムとを有する計算機システム
におけるデータベースアクセス方法において、 前記トランザクション処理によりデータの更新要求が発
生したときに、前記第1の記憶装置からの未完了のデー
タのリード処理が存在するか判別し、 未完了のデータの読み出し処理が存在する場合に、前記
更新要求に伴うライトデータを前記記憶装置サブシステ
ムが有する第2の記憶装置に格納して前記更新要求に伴
う前記記憶装置サブシステムへのライト処理を完了さ
せ、 前記ライト処理、及び前記未完了のリード処理が終了し
た後、前記第2の記憶装置に格納された前記ライトデー
タを前記第1の記憶装置に転送することを特徴とするデ
ータベースアクセス方法。 - 【請求項2】前記第1の記憶装置と前記第2の記憶装置
とは、前記第2の記憶装置に対する書き込みが前記第1
の記憶装置に反映される二重化された記憶装置であっ
て、前記完了させるステップは、前記ホスト計算機から
前記記憶装置サブシステムに前記第1の記憶装置と前記
第2の記憶装置との間のデータの反映の中断を指示する
ステップと、前記更新要求に関連するデータのライト要
求を第2の記憶装置を対象として発行するステップとを
含むことを特徴とする請求項1記載のデータベースアク
セス方法。 - 【請求項3】前記転送するステップは、前記第1の記憶
装置と前記第2の記憶装置との間のデータの反映を再開
させるステップを含むことを特徴とする請求項2記載の
データベースアクセス方法。 - 【請求項4】前記第2の記憶装置は、前記記憶装置サブ
システムが有するキャッシュメモリであって、前記完了
させるステップは、前記ホスト計算機から前記記憶装置
サブシステムに、前記第1の記憶装置へのデータの書き
込みの禁止を指示するステップと、前記ホスト計算機か
ら前記記憶装置サブシステムに前記更新要求に関連する
データのライト要求を発行するステップと、前記ライト
要求に応じて前記データを前記第2の記憶装置に格納す
るステップとを含むことを特徴とする請求項1記載のデ
ータベースアクセス方法。 - 【請求項5】前記転送するステップは、前記ホスト計算
機から前記記憶装置サブシステムに前記書き込みの禁止
の解除を指示するステップと、前記第2の記憶装置に格
納された前記データを前記第1の記憶装置に転送するス
テップとを含むことを特徴とする請求項4記載のデータ
ベースアクセス方法。 - 【請求項6】前記格納するステップは、前記データを格
納した前記第2の記憶装置の記憶領域を特定するための
情報と、前記データを書き込むべき前記第1の記憶装置
の記憶領域を特定するための管理情報を記録するステッ
プを含み、前記転送するステップは、前記管理情報を参
照して行われることを特徴とする請求項5記載のデータ
ベースアクセス方法。 - 【請求項7】前記管理情報は、前記ホスト計算機上で実
行される前記トランザクションの単位ごとに記録され、
前記転送するステップは、前記トランザクションの完了
ごとに、そのトランザクション内で書き込まれたデータ
を対象として行われることを特徴とする請求項6記載の
データベースアクセス方法。 - 【請求項8】前記転送するステップは、前記記憶装置サ
ブシステムにおいて前記ホスト計算機からのリード要求
を受け付けるステップと、前記管理情報に基づいて、前
記ホスト計算機に転送すべきデータが前記第1の記憶装
置及び前記第2の記憶装置のいずれに保持されているか
を判別するステップと、前記判別の結果に基づいて要求
されたデータを前記ホスト計算機に転送するステップと
を含むことを特徴とする請求項7記載のデータベースア
クセス方法。 - 【請求項9】トランザクション処理が実行されるホスト
計算機と、該ホスト計算機に接続され、トランザクショ
ン処理でアクセスされるデータベースを格納した記憶装
置サブシステムとを有する計算機システムにおいて、 前記記憶装置サブシステムは、前記データベースを二重
化して格納する第1の記憶装置及び第2の記憶装置と、
前記第1及び第2の記憶装置を制御し、前記第2の記憶
装置に対するデータの書き込みを前記第1の記憶装置に
反映し、前記第1の記憶装置と前記第2の記憶装置とを
二重化する記憶制御装置とを備え、 前記ホスト計算機は、前記データベースからのデータの
読み出しを前記第1の記憶装置を指定して行い、前記デ
ータベースへのデータの書き込みを前記第2の記憶装置
を指定して行う手段と、前記データベースへのデータの
書き込み時に、未完了の前記データベースからの読み出
し処理が存在するか判別し、未完了の読み出し処理が存
在するときに前記記憶装置サブシステムへのライト要求
に先立って前記第1の記憶装置へのデータの反映の中断
を指示してライト要求を発行し、前記未完了の読み出し
処理及び当該データの書き込み処理が終了した後に、中
断したデータの反映の再開を指示する手段とを備えるこ
とを特徴とする計算機システム。 - 【請求項10】トランザクション処理が実行されるホス
ト計算機と、該ホスト計算機に接続され、トランザクシ
ョン処理でアクセスされるデータベースを格納した記憶
装置サブシステムとを有する計算機システムにおいて、 前記記憶装置サブシステムは、前記データベースを格納
した記憶装置と、前記記憶装置を制御し、キャッシュメ
モリを有する記憶制御装置とを備え、 前記ホスト計算機は、前記データベースへのデータの書
き込み時に、未完了の前記データベースからの読み出し
処理が存在するか判別し、未完了の読み出し処理が存在
するときに前記記憶装置サブシステムへのライト要求に
先立って前記第1の記憶装置へのデータの書き込み禁止
を指示してライト要求を発行し、前記未完了の読み出し
処理及び当該データの書き込み処理が終了した後に、前
記第1の記憶装置への書き込みの再開を指示する手段と
を備え、 前記記憶制御装置は、前記禁止の指示に応答して、前記
禁止の指示を受け付けた以降に受け付けたライト要求に
伴うデータを前記キャッシュメモリに書き込んで前記ホ
スト計算機に処理の完了を報告し、前記再開の指示に応
答して、前記キャッシュメモリに書き込んだデータを前
記記憶装置に転送することを特徴とする計算機システ
ム。 - 【請求項11】トランザクション処理が実行されるホス
ト計算機と、該ホスト計算機に接続され、トランザクシ
ョン処理でアクセスされるデータベースを格納した記憶
装置サブシステムとを有する計算機システムにおいて、 前記記憶装置サブシステムは、前記データベースを格納
した記憶装置と、前記記憶装置を制御し、キャッシュメ
モリを有する記憶制御装置とを備え、 前記ホスト計算機は、前記データベースのアクセスに際
して、アクセスが発生したトランザクションを識別する
識別子を含むリード/ライト要求を発行する手段と、ト
ランザクションの完了時に前記記憶装置サブシステムに
コミットを指示する手段とを備え、 前記記憶制御装置は、前記ホスト計算機が発行したライ
ト要求に応答して、該ライト要求に伴うデータを前記キ
ャッシュメモリに書き込んで前記ホスト計算機に処理の
完了を報告する手段と、前記コミットの指示に応答し
て、完了したトランザクションにより発生したライト要
求により前記キャッシュに書き込んだデータを前記記憶
装置に転送する手段と、前記ホスト計算機が発行したリ
ード要求に応答して、当該リード要求に含まれる前記識
別子に基づき転送すべきデータが前記記憶装置及び前記
キャッシュメモリのいずれに保持されているかを判別
し、該判別の結果に従ってデータを前記ホスト計算機に
転送する手段とを備えることを特徴とする計算機システ
ム。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2000332107A JP4104281B2 (ja) | 2000-10-25 | 2000-10-25 | データベースアクセス方法 |
US09/822,273 US6658541B2 (en) | 2000-10-25 | 2001-04-02 | Computer system and a database access method thereof |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2000332107A JP4104281B2 (ja) | 2000-10-25 | 2000-10-25 | データベースアクセス方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2002132554A true JP2002132554A (ja) | 2002-05-10 |
JP4104281B2 JP4104281B2 (ja) | 2008-06-18 |
Family
ID=18808352
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2000332107A Expired - Fee Related JP4104281B2 (ja) | 2000-10-25 | 2000-10-25 | データベースアクセス方法 |
Country Status (2)
Country | Link |
---|---|
US (1) | US6658541B2 (ja) |
JP (1) | JP4104281B2 (ja) |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007172341A (ja) * | 2005-12-22 | 2007-07-05 | Toshiba Corp | 構造化文書管理システム及び同システムに適用される構造化文書管理プログラム |
JP2008262304A (ja) * | 2007-04-10 | 2008-10-30 | Nec Corp | データ複製システム、データ記憶装置、データ複製方法、及び制御プログラム |
US7539816B2 (en) | 2005-09-22 | 2009-05-26 | Fujitsu Limited | Disk control device, disk control method |
JP2009251764A (ja) * | 2008-04-02 | 2009-10-29 | Nec Corp | ジョブ管理システム、ジョブ制御方法、及びジョブ制御プログラム |
JP2011008315A (ja) * | 2009-06-23 | 2011-01-13 | Internatl Business Mach Corp <Ibm> | キャッシュ制御方法 |
JP2012168722A (ja) * | 2011-02-14 | 2012-09-06 | Toshiba Corp | 調停装置、記憶装置、情報処理装置およびプログラム |
JP2013196319A (ja) * | 2012-03-19 | 2013-09-30 | Fujitsu Ltd | ストレージシステム、ストレージ制御方法およびストレージ制御プログラム |
KR20140128823A (ko) * | 2013-04-29 | 2014-11-06 | 삼성전자주식회사 | 멀티-트랜잭션의 아토믹 라이트 방법 |
Families Citing this family (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4428993B2 (ja) * | 2003-11-27 | 2010-03-10 | 株式会社日立製作所 | ディスクアレイ装置及びディスクアレイ装置の制御方法 |
JP2005346610A (ja) | 2004-06-07 | 2005-12-15 | Hitachi Ltd | スナップショットの取得および利用のための記憶システムおよび方法 |
US7617212B2 (en) * | 2004-07-20 | 2009-11-10 | International Business Machines Corporation | System and method for controlling access to a database |
US7418567B2 (en) * | 2004-11-30 | 2008-08-26 | International Business Machines Corporation | Cache for an enterprise software system |
US8996466B2 (en) * | 2008-12-01 | 2015-03-31 | Sap Se | Extend crud to support lifecyle management and business continuity |
CN102999395B (zh) * | 2011-09-09 | 2016-05-18 | 腾讯科技(北京)有限公司 | 一种数据读写方法及系统 |
JP5290446B2 (ja) * | 2012-02-28 | 2013-09-18 | 株式会社シー・オー・コンヴ | ネットワークブートシステム |
US8930518B2 (en) * | 2012-10-03 | 2015-01-06 | Oracle International Corporation | Processing of write requests in application server clusters |
US20140143476A1 (en) * | 2012-11-16 | 2014-05-22 | Rotem Sela | Usage of cache and write transaction information in a storage device |
US20170185354A1 (en) * | 2015-12-23 | 2017-06-29 | Intel Corporation | Techniques for a Write Transaction at a Storage Device |
CN108304406B (zh) * | 2017-01-12 | 2022-10-25 | 阿里云计算有限公司 | 一种数据库读写方法、装置及电子设备 |
-
2000
- 2000-10-25 JP JP2000332107A patent/JP4104281B2/ja not_active Expired - Fee Related
-
2001
- 2001-04-02 US US09/822,273 patent/US6658541B2/en not_active Expired - Fee Related
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7539816B2 (en) | 2005-09-22 | 2009-05-26 | Fujitsu Limited | Disk control device, disk control method |
JP2007172341A (ja) * | 2005-12-22 | 2007-07-05 | Toshiba Corp | 構造化文書管理システム及び同システムに適用される構造化文書管理プログラム |
JP2008262304A (ja) * | 2007-04-10 | 2008-10-30 | Nec Corp | データ複製システム、データ記憶装置、データ複製方法、及び制御プログラム |
JP4716133B2 (ja) * | 2007-04-10 | 2011-07-06 | 日本電気株式会社 | データ複製システム、データ記憶装置、データ複製方法、及び制御プログラム |
JP2009251764A (ja) * | 2008-04-02 | 2009-10-29 | Nec Corp | ジョブ管理システム、ジョブ制御方法、及びジョブ制御プログラム |
JP2011008315A (ja) * | 2009-06-23 | 2011-01-13 | Internatl Business Mach Corp <Ibm> | キャッシュ制御方法 |
US8484423B2 (en) | 2009-06-23 | 2013-07-09 | International Business Machines Corporation | Method and apparatus for controlling cache using transaction flags |
JP2012168722A (ja) * | 2011-02-14 | 2012-09-06 | Toshiba Corp | 調停装置、記憶装置、情報処理装置およびプログラム |
JP2013196319A (ja) * | 2012-03-19 | 2013-09-30 | Fujitsu Ltd | ストレージシステム、ストレージ制御方法およびストレージ制御プログラム |
KR20140128823A (ko) * | 2013-04-29 | 2014-11-06 | 삼성전자주식회사 | 멀티-트랜잭션의 아토믹 라이트 방법 |
KR102094475B1 (ko) * | 2013-04-29 | 2020-03-27 | 삼성전자주식회사 | 멀티-트랜잭션의 아토믹 라이트 방법 |
US10642531B2 (en) | 2013-04-29 | 2020-05-05 | Samsung Electronics Co., Ltd. | Atomic write method for multi-transaction |
Also Published As
Publication number | Publication date |
---|---|
US20020059324A1 (en) | 2002-05-16 |
JP4104281B2 (ja) | 2008-06-18 |
US6658541B2 (en) | 2003-12-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8074035B1 (en) | System and method for using multivolume snapshots for online data backup | |
JP4104281B2 (ja) | データベースアクセス方法 | |
US6694413B1 (en) | Computer system and snapshot data management method thereof | |
US6658434B1 (en) | Method of and a system for recovering data in an information processing system | |
US7788453B2 (en) | Redirection of storage access requests based on determining whether write caching is enabled | |
US5375232A (en) | Method and system for asynchronous pre-staging of backup copies in a data processing storage subsystem | |
US5379398A (en) | Method and system for concurrent access during backup copying of data | |
US6732244B2 (en) | Instant virtual copy technique with expedited creation of backup dataset inventory from source dataset inventory | |
US8612703B2 (en) | Storage system performing virtual volume backup and method thereof | |
JP4839091B2 (ja) | データベース回復方法及び計算機システム | |
US5497483A (en) | Method and system for track transfer control during concurrent copy operations in a data processing storage subsystem | |
JP2557172B2 (ja) | タイムゼロ・バックアップ・コピー・プロセスにおける副ファイル状態のポーリングのための方法およびシステム | |
US7640276B2 (en) | Backup system, program and backup method | |
JP3606797B2 (ja) | 記憶装置のデータ領域間の複写処理方法、記憶システム、及びその記憶媒体 | |
US20060047926A1 (en) | Managing multiple snapshot copies of data | |
EP1199637A2 (en) | Disk controller comprising cache memory and method of controlling the cache | |
JP4681247B2 (ja) | ディスクアレイ装置及びディスクアレイ装置の制御方法 | |
JP2003223287A (ja) | 記憶装置、この記憶装置のバックアップ方法及びプログラム | |
JPH0683677A (ja) | データの増分タイム・ゼロ・バックアップ・コピーの方法及びシステム | |
JPH05210555A (ja) | ゼロ時間データ・バックアップ・コピーの方法及び装置 | |
US6912632B2 (en) | Storage system, storage system control method, and storage medium having program recorded thereon | |
JP4394467B2 (ja) | ストレージシステム、サーバ装置及び先行コピーデータ生成方法 | |
JP3882467B2 (ja) | 記憶装置システムのスナップショット管理方法 | |
JP2007172365A (ja) | データ複製システム、複製データ処理プログラムおよび複製データ処理方法 | |
US20210064244A1 (en) | Storage system and restoration method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
RD01 | Notification of change of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7421 Effective date: 20060418 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20070410 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20070607 |
|
RD02 | Notification of acceptance of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7422 Effective date: 20070607 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20070710 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20070910 |
|
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20071001 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20071005 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20071204 |
|
A911 | Transfer to examiner for re-examination before appeal (zenchi) |
Free format text: JAPANESE INTERMEDIATE CODE: A911 Effective date: 20080122 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20080219 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20080304 |
|
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 Effective date: 20080325 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20080325 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110404 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120404 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120404 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130404 Year of fee payment: 5 |
|
LAPS | Cancellation because of no payment of annual fees |