JP4859605B2 - 情報処理システム - Google Patents

情報処理システム Download PDF

Info

Publication number
JP4859605B2
JP4859605B2 JP2006254067A JP2006254067A JP4859605B2 JP 4859605 B2 JP4859605 B2 JP 4859605B2 JP 2006254067 A JP2006254067 A JP 2006254067A JP 2006254067 A JP2006254067 A JP 2006254067A JP 4859605 B2 JP4859605 B2 JP 4859605B2
Authority
JP
Japan
Prior art keywords
journal
storage device
checkpoint
log
identification information
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.)
Expired - Fee Related
Application number
JP2006254067A
Other languages
English (en)
Other versions
JP2008077287A (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.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP2006254067A priority Critical patent/JP4859605B2/ja
Priority to US11/708,012 priority patent/US7698320B2/en
Publication of JP2008077287A publication Critical patent/JP2008077287A/ja
Application granted granted Critical
Publication of JP4859605B2 publication Critical patent/JP4859605B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1471Saving, restoring, recovering or retrying involving logging of persistent data for recovery
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • G06F11/1458Management of the backup or restore process
    • G06F11/1469Backup restoration techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • G06F11/1456Hardware arrangements for backup
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/80Database-specific techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/84Using snapshots, i.e. a logical point-in-time copy of the data

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Description

本発明は、データベース管理システム及び記憶装置システムに関し、特に、記憶装置システムのジャーナリング技術を用いてデータの回復を行うデータ回復技術に関する。
企業活動におけるデータベースの利用の普及に伴い、データベースのデータ損失を防止するため、バックアップ及びリカバリによるデータ回復技術が広く用いられている。データベースのバックアップとは、データベースを定期的にテープなどの記憶装置に複製することである。データベースのリカバリとは、まず、テープなどに記録されたバックアップデータをデータベースを復元する(以下、リストア)。そして、復元したデータベースにバックアップされた時点から最新又は過去のある時点までのデータの変更記録(以下、ログ)を適用し、データベースをトランザクションの一貫性が確保された状態に回復させることである。ログは、データベース管理システムによって生成され、データベースに対する変更操作の履歴を表す。
近年、データベースのリストアに必要な時間を短縮するために、ジャーナリング技術を利用したデータベースの回復方法が注目を集めている。また、ジャーナリング技術は、CDP(Continuous Data Protection)技術とも呼ばれ、例えば、特許文献1に開示されている。特許文献1に開示されている技術では、記憶装置システムは、データベースとログを同じ記憶装置に格納し、データに更新指示を受け付けるごとに更新履歴(以下、ジャーナル)を別の記憶装置(以下、ジャーナル記憶装置)に記録する。
また、データベース管理システムは、データベース管理システムのバッファに格納されたデータと記憶装置システムに格納されたデータを一致させるために、チェックポイント処理を実行する。記憶装置システムは、チェックポイント処理完了時にデータベース管理システムからチェックポイントコマンドを受信し、チェックポイントの識別情報と対応させたジャーナルを生成しジャーナル記憶装置に記録する。
記憶装置システムは、データベース管理システムからチェックポイントの識別情報を含むリストア指示を受信すると、リストア指示に含まれるチェックポイントの識別情報と対応するジャーナルより前にジャーナル記憶装置に記録されたジャーナルを用いてデータベース及びログを高速にリストアする。そして、データベース管理システムは、データベース及びログのリストアが完了すると、データベースにログを適用し、トランザクションの一貫性を確保して、データベースのリカバリを完了する。
特開2004−252686号公報
従来のデータベースのバックアップ及びリカバリ方法では、リストア時に、バックアップデータを取得した時点から更新されていない部分(バックアップデータとバックアップ元のデータが一致している部分)も読み出すため、データベースの規模に比例してリストアに要する時間が増大する。また、管理者によって、データベースを定期的にバックアップする必要があるなど、管理コストが大きくなってしまった。
一方、特許文献1に開示されている技術では、記憶装置システムの内部で生成したジャーナルを利用して、ホスト計算機を介さず更新されたデータのみをリストアするため、高速なリストアが可能である。また、データベースに対する更新を常時ジャーナルとして記録するため、データベースを定期的にバックアップする必要もない。
しかし、データベース又はログが更新されるたびにジャーナルを記録しなければならないため、大量の記憶容量を必要とする。例えば、多数のユーザに対してOLTP業務を提供するデータベース管理システムでは、データの更新量が多くなり、またそれに付随して大量のログを出力するため、ジャーナルを記録するために必要な記憶容量が膨大となる。
本発明の代表的な一形態では、データベース管理システムを実行する計算機と、前記計算機に接続される記憶装置システムと、を有する情報処理システムであって、前記記憶装置システムは、前記計算機から送信されるアクセス要求を処理する制御部と、第1の記憶装置と、第2の記憶装置と、第3の記憶装置と、を備え、前記第1の記憶装置は、前記データベース管理システムによってアクセスされるデータを格納するデータベースファイルと、前記データベース管理システムの制御情報を含む制御ファイルと、を格納し、前記第2の記憶装置は、前記第1の記憶装置に格納されたデータの更新履歴であるジャーナルを格納し、前記第3の記憶装置は、前記データベース管理システムによって生成され、前記データベースファイルの更新履歴であるログを記録するログファイルを格納し、前記制御部は、前記記憶装置システムと前記計算機との間で送受信されるデータ及び前記ジャーナルが、一時的に格納されるキャッシュメモリを備え、前記第1の記憶装置に格納されたデータに対する更新指示を受信したとき、前記ジャーナルを上書き可能状態として新たに生成するジャーナル制御部と、前記第1の記憶装置に格納されたデータに対する更新指示を受信したとき、前記更新対象のデータが格納されたアドレスと同じアドレスのデータが更新されることによって生成された同アドレスに対応するジャーナルが、前記キャッシュメモリに既に存在し、かつ、上書き可能状態であるか否かを判定するジャーナル上書き判定部と、前記計算機から、前記データベースファイルの回復の基点となるチェックポイントが生成されたことが前記チェックポイントの識別情報とともに通知されたとき、前記キャッシュメモリに格納された上書き可能状態のジャーナルを、上書き不可状態に変更するジャーナル永続化部と、を備え、所定のタイミングに前記キャッシュメモリに格納されているデータを前記第1の記憶装置又は前記第2の記憶装置又は第3の記憶装置に反映させるための書き込みを行い、前記ジャーナル制御部は、前記第1の記憶装置に格納されたデータに対する更新指示を受信したとき、前記同アドレスに対応するジャーナルが、前記キャッシュメモリに既に存在し、かつ、上書き可能状態である場合には、前記新たに生成されたジャーナルを前記同アドレスに対応するジャーナルに上書きし、前記同アドレスに対応するジャーナルが、前記キャッシュメモリに存在しない場合、又は、上書き不可状態である場合には、前記新たに生成されたジャーナルを前記キャッシュメモリの新たな領域に格納し、前記計算機から前記チェックポイントが生成されたことを通知されたとき、前記ジャーナル永続化部による処理の後、前記生成されたチェックポイントの識別情報と対応させた上書き不可状態のジャーナルを生成して前記キャッシュメモリに格納し、前記計算機から前記チェックポイントの識別情報を含むリストア指示を受信したとき、前記受信したリストア指示に含まれるチェックポイントの識別情報に対応するジャーナルより前に前記第2の記憶装置に記録されたジャーナルを用いて、前記データベースファイルと前記制御ファイルを含む前記第1の記憶装置に格納されたデータを復元し、前記データベース管理システムは、前記チェックポイントが生成されたとき、前記生成されたチェックポイントの識別情報と対応付けて前記ログファイルにログを記録し、前記生成されたチェックポイントの識別情報を前記制御ファイルに記録し、前記チェックポイントが生成されたことを前記チェックポイントの識別情報とともに前記記憶装置システムに通知する管理部と、回復時点を含むリカバリ指示を受け付けたとき、前記リカバリ指示に含まれる回復時点に対応するログを前記ログファイルから検索し、前記検索された回復時点に対応するログが記録された時点よりも前に記録され、かつ、最も新しいチェックポイントの識別情報を含むログを取得し、前記取得されたログに含まれるチェックポイントの識別情報を前記リストア指示とともに前記記憶装置システムに送信するログ解析部と、前記記憶装置システムによって復元された制御ファイルに記録されたチェックポイントの識別情報に対応するログから前記回復時点に対応するログまでを、前記記憶装置システムによって復元されたデータベースファイルに適用するログ適用部と、を備える。
本発明の代表的な一形態では、記憶装置システムに接続される計算機で実行されるデータベース管理システムであって、前記記憶装置システムは、前記計算機から送信されるアクセス要求を処理する制御部と、第1の記憶装置と、第2の記憶装置と、第3の記憶装置と、を備え、前記第1の記憶装置は、前記データベース管理システムによってアクセスされるデータを格納するデータベースファイルと、前記データベース管理システムの制御情報を含む制御ファイルと、を格納し、前記第2の記憶装置は、前記第1の記憶装置に格納されたデータの更新履歴であるジャーナルを格納し、前記第3の記憶装置は、前記データベース管理システムによって生成され、前記データベースファイルの更新履歴であるログを記録するログファイルを格納し、前記制御部は、前記第1の記憶装置に格納されたデータの更新指示を受信すると、前記ジャーナルを生成して前記第2の記憶装置に記録し、前記データベースファイルの回復の基点となるチェックポイントが生成されたことが前記計算機によって通知されたとき、前記生成されたチェックポイントの識別情報と対応させたジャーナルを生成して前記第2の記憶装置に記録し、前記計算機から前記チェックポイントの識別情報を含むリストア指示を受信すると、前記受信したリストア指示に含まれるチェックポイントの識別情報に対応するジャーナルより前に前記第2の記憶装置に記録されたジャーナルを用いて、前記データベースファイルと前記制御ファイルを含む前記第1の記憶装置に格納されたデータを復元し、前記データベース管理システムは、前記チェックポイントが生成されたとき、前記生成されたチェックポイントの識別情報と対応付けて前記ログファイルにログを記録し、前記生成されたチェックポイントの識別情報を前記制御ファイルに記録し、前記生成されたチェックポイントの識別情報とともに前記チェックポイントが生成されたことを前記記憶装置システムに通知する管理部と、回復時点を含むリカバリ指示を受け付けたとき、前記リカバリ指示に含まれる回復時点に対応するログを前記ログファイルから検索し、前記検索された回復時点に対応するログが記録された時点よりも前に記録され、かつ、最も新しいチェックポイントの識別情報を含むログを取得し、前記取得されたログに含まれるチェックポイントの識別情報を前記リストア指示とともに前記記憶装置システムに送信するログ解析部と、前記記憶装置システムによって復元された制御ファイルに記録されたチェックポイントの識別情報に対応するログから前記回復時点に対応するログまでを、前記記憶装置システムによって復元されたデータベースファイルに適用するログ適用部とを備える。
本発明の一形態によれば、ログファイルをジャーナリングの対象としないため、例えば、OLTP業務のように大量のログが出力される場合にジャーナルの記録に必要な容量を大幅に削減することができる。
以下に図面を参照しながら本発明の実施の形態を説明する。なお、以下の説明により本発明が限定されるものではない。
(第1の実施の形態)
図1は、第1の実施の形態のデータベース管理システム(以下、DBMS)が動作する情報処理システムのハードウェア構成図である。図1の情報処理システムは、ホスト1、記憶装置システム2、管理端末3、ユーザ端末4、ネットワーク5、及びネットワーク6を備える。
ホスト1は、パーソナルコンピュータ、ワークステーション、メインフレームなどの計算機である。ホスト1は、計算機の種類に応じたオペレーティングシステム(以下、「OS」)と、ユーザ端末4に業務を提供するDBMS10が動作する。ホスト1は、プロセッサ40、メモリ41、ローカル記憶装置42、ホストバスアダプタ43、及びネットワークアダプタ44を備える。
プロセッサ40は、所定のプログラムを実行する。メモリ41は、プロセッサ40によって実行されるOS、DBMS10、及びDBMS10が使用するデータを一時的に格納する。ローカル記憶装置42は、OS、DBMS10及びDBMS10が使用するデータを格納する。ホストバスアダプタ43は、ネットワーク5とホスト1とを接続する。ネットワークアダプタ44は、ネットワーク6とホスト1とを接続する。
記憶装置システム2は、ディスク装置などの記憶装置、又は、ディスクアレイなどの複数の記憶装置を有するシステムである。また、記憶装置システム2は、ホスト1が使用するデータ及びプログラムを格納する。そして、ホスト1からのI/O処理要求を受信し、I/O処理要求に対応した処理を実行し、処理結果をホスト1に送信する。
記憶装置システム2は、物理記憶装置56、制御装置20、及び接続インタフェース55を備える。接続インタフェース55は、物理記憶装置56と制御装置20を相互に接続する。
制御装置20は、ホスト1からのI/O要求の処理、及び物理記憶装置56の制御を実行する。制御装置20は、物理記憶装置アダプタ54、プロセッサ50、不揮発性メモリ53、キャッシュメモリ21、ネットワークアダプタ51、及びネットワークアダプタ52を備える。
プロセッサ50は、所定のプログラムを実行する。不揮発性メモリ53は、プロセッサによって実行されるプログラム、プログラムの実行に必要な情報、記憶装置システム2の設定情報及び構成情報などを格納する。キャッシュメモリ21は、ホスト1から入力されるデータ、又は、記憶装置システム2からホスト1に転送されるデータを一時的に格納する。
物理記憶装置アダプタ54は、接続インタフェース55を介して物理記憶装置56と接続する。ネットワークアダプタ51は、記憶装置システム2とネットワーク5とを接続する。ネットワークアダプタ52は、記憶装置システム2とネットワーク6とを接続する。
物理記憶装置56は、ホスト1によって使用されるデータを格納する。物理記憶装置56は、不揮発性の記憶媒体であって、例えば、磁気ディスクによって構成されるハードディスクなどである。
記憶装置システム2は、複数の物理記憶装置56によって冗長性を有するRAID構成となっている。記憶装置システム2は、複数の物理記憶装置56によって構成される記憶領域を、論理的な記憶領域に分割し論理記憶装置としてホスト1に提供する。
管理端末3は、記憶装置システム2の保守管理、及びホスト1で動作するDBMS10を管理するために使用される。情報処理システムの管理者は、記憶装置システム2の保守管理、及びDBMS10を管理する場合に、管理端末3に設定内容を入力する。管理端末3は、ネットワーク6を介して記憶装置システム2、及び、ホスト1のDBMS10に管理者が入力した内容を送信する。
ユーザ端末4は、ホスト1のDBMS10に対し、業務に応じたトランザクション処理を要求する。
ネットワーク5は、ホスト1と記憶装置システム2とを接続し、ホスト1から記憶装置システム2にI/Oの処理要求などを伝送するために使用される。ネットワーク5には、光ファイバ及び銅線などが用いられる。また、ネットワーク5では、ファイバチャネル、SCSI、TCP/IPなどの通信プロトコルが使用される。
ネットワーク6は、ホスト1、記憶装置システム2、管理端末3及びユーザ端末4を接続する。ネットワーク6は、記憶装置システム2と、管理端末3とホスト1との間で、記憶装置システム2の保守、構成、及び性能などの管理情報を通信する。また、ネットワーク6は、ユーザ端末4とホスト1との間で、I/O処理要求などを伝送するために使用される。ネットワーク6に使用されるケーブル及び通信プロトコルは、ネットワーク5と同一であっても異なっていてもよい。
図2は、第1の実施の形態の情報処理システムのソフトウェア構成図である。
ホスト1は、DBMS10を含む。DBMS10は、ユーザ端末4に要求され、業務に応じたトランザクション処理を実行する。また、DBMS10は、OSを介して記憶装置システム2に格納されたデータベース(以下、DB)にアクセスする。DBMS10は、ローカル記憶装置42又はメモリ41に格納され、プロセッサ40によって実行される。
DBMS10は、DBファイル30、制御ファイル31、ログファイル32、及び一時ファイル33などを管理する。DBファイル30、制御ファイル31、ログファイル32、及び一時ファイル33は、記憶装置システム2に格納される。
DBファイル30は、DBのデータに該当する表及び索引を格納する。制御ファイル31は、データベースの現在の状態を記録するファイルであって、DBのリカバリに必要な情報を含む。ログファイル32は、DBファイル30の更新履歴であるログを格納する。一時ファイル33は、データをソートする場合などに一時的に使用される。
DBMS10は、トランザクション管理部11、DBバッファ13、ログバッファ15、DB書き込み部12、及びログ書き込み部14を含む。
トランザクション管理部11は、ユーザ端末4から要求されたトランザクション処理に応じて記憶装置システム2のDBファイル30にアクセスする。
DBバッファ13は、ホスト1のメモリ41上に確保されるDBMS10専用の領域であって、記憶装置システム2のDBファイル30のデータを一時的に保持する。ログバッファ15は、同じくメモリ41上に確保される領域であって、生成したログを一時的に保持する。
DB書き込み部12は、DBバッファに保持された変更データを記憶装置システム2のDBファイル30に書き込む。ログ書き込み部14は、ログバッファに保持されたログを記憶装置システム2のログファイル32に書き込む。
さらに、DBMS10は、ログ解析部16及びログ適用部17を有する。ログ解析部16は、回復時点を含むDBのリカバリ指示を受信したとき、記憶装置システム2に指示する回復時点直前のリストア時点を、ログファイル32を解析し、取得する。ログ適用部17は、記憶装置システム2によってリストアされたDBファイル30に、ログファイル32に記録されたログを適用する。
記憶装置システム2は、記憶装置24、ジャーナル取得記憶装置25、ジャーナル記憶装置26、及び制御装置20を含む。記憶装置24、ジャーナル取得記憶装置25、及びジャーナル記憶装置26は、物理記憶装置56で構成された論理記憶装置である。
ジャーナル取得記憶装置25は、DBファイル30及び制御ファイル31を格納する。ジャーナル取得記憶装置25に格納されたデータは、更新されると、ジャーナル記憶装置26に更新履歴であるジャーナルが記録される。
記憶装置24は、ログファイル32及び一時ファイル33を格納する。記憶装置24は、格納されたデータのジャーナルが取得されないため、データの損失を防ぐために記憶装置24に格納されたデータをリアルタイムに別の記憶装置に複製するミラーリングの設定を行ってもよい。また、ログファイル32及び一時ファイル33は、異なる論理記憶装置に格納されてもよい。
ジャーナル記憶装置26は、ジャーナルデータ35及びスナップショットデータ34を格納する。ジャーナルデータ35は、ジャーナル取得記憶装置25に格納されたデータの更新履歴を格納する。スナップショットデータ34とは、ジャーナル取得記憶装置25に格納されたデータの、ある時点の複製である。なお、スナップショットデータ34は、ジャーナル記憶装置26でなく、他の記憶装置に格納していてもよい。
このようにDBMS10で管理するファイルを配置することによって、DBファイル30及び制御ファイル31のジャーナルのみが取得され、ログファイル32及び一時ファイル33のジャーナルは取得されないため、ジャーナル記憶装置26に必要な容量を削減することができる。
また、前述のDBMS10が管理するデータは、OSのファイルシステムを介して記憶装置システム2に格納してもよいし、ファイルシステムを介さずOSのrawデバイスを用いて記憶装置システム2に格納してもよい。
制御装置20は、コマンド処理部22及びジャーナル制御部23を構成するプログラムを不揮発性メモリ53に備える。
制御装置20は、ホスト1からのI/O処理要求をネットワークアダプタ51経由で受信すると、コマンド処理部22を構成するプログラムを実行する。
制御装置20は、受信したI/O処理要求がデータの書き込み要求の場合には、ホスト1から転送された書き込み用のデータ(以下、「書き込みデータ」)をキャッシュメモリ21又は物理記憶装置56に書き込む。また、制御装置20は、キャッシュメモリに格納された書き込みデータを物理記憶装置56に書き込む。
制御装置20は、受信したI/O処理要求がデータの読み出し要求の場合には、読み出し要求に対応するデータ(以下、読み出しデータ)を、キャッシュメモリ21又は物理記憶装置56から読み出してホスト1に転送する。また、制御装置20は、読み出しデータをキャッシュメモリ21に格納する。
なお、制御装置20は、I/O処理を実行するとき、I/O処理要求によって指定されたデータが格納された論理記憶装置のアドレスと対応する物理記憶装置56のアドレスを特定し、特定された物理記憶装置56にアクセスする。
制御装置20は、ジャーナルを作成又は更新するとき、ジャーナル制御部23を実行する。ジャーナル制御部23は、処理を実行するプログラムによって構成される。また、ジャーナル制御部23は、ホスト1から送信されたチェックポイントコマンドを受信したとき、作成したジャーナルを用いてリストアするとき、及びジャーナル取得の対象となる論理記憶装置を設定するときなどにも実行される。
制御装置20は、ホスト1からジャーナル取得開始指示を受信すると、ジャーナル取得開始指示に従って、ジャーナル取得の対象となる論理記憶装置(ジャーナル取得記憶装置25)を設定する。続いて、制御装置20は、スナップショットデータ34及びジャーナルデータ35を格納するための論理記憶装置(ジャーナル記憶装置26)を設定する。そして、制御装置20は、ジャーナル取得記憶装置25のスナップショットデータ34をジャーナル記憶装置26に格納する。
制御装置20は、ホスト1からジャーナル取得記憶装置25に対する書き込み処理要求を受信すると、まず、書き込みデータをキャッシュメモリ21に格納する。そして、書き込みデータの更新履歴であるジャーナルを作成し、キャッシュメモリ21に確保されたジャーナル格納用の所定の領域に格納する。
ジャーナルは、書き込みデータ、及びジャーナル取得記憶装置25における書き込みデータの格納位置を示すアドレスなどによって構成される。キャッシュメモリ21に格納されたジャーナルは、キャッシュメモリ21への格納と非同期にジャーナル記憶装置26に記録される。なお、制御装置20は、同じアドレスが指定される複数の書き込みデータのジャーナルをキャッシュメモリ21の異なる領域にそれぞれ格納する。
また、制御装置20は、ホスト1から、ホスト1によって管理される所定の識別情報を含むチェックポイントコマンドを受信すると、所定の識別情報に対応させたジャーナルを生成し、キャッシュメモリ21を介してジャーナル記憶装置26に格納する。チェックポイントコマンドとは、ホスト1により管理される所定の識別情報によってジャーナル取得記憶装置25の復元時点を特定するために、ホスト1が記憶装置システム2に送信するコマンドである。
さらに、制御装置20は、ホスト1から前述の所定の識別情報を含むリストア指示を受信すると、まず、ジャーナル記憶装置26に格納されたスナップショットデータ34をジャーナル取得記憶装置25にコピーする。続いて、制御装置20は、リストア指示に含まれる所定の識別情報に対応するジャーナルよりも前に記録されたジャーナルを順次読み出す。そして、制御装置20は、読み出したジャーナルをジャーナル取得記憶装置25の書き込み元のアドレスに書き込むことによって、所定の識別情報を記録した時点のジャーナル取得記憶装置25に格納されていたデータの状態をリストアする。
ここで、トランザクション処理要求を受信したDBMS10が、記憶装置システム2にデータを読み書きする手順を説明する。
DBMS10は、ユーザ端末4からトランザクション処理要求を受信すると、トランザクション管理部11を実行する。トランザクション管理部11は、トランザクション処理による参照又は更新の対象となるデータを、記憶装置システム2に格納されたDBファイル30からDBバッファ13に読み込む。
トランザクション管理部11は、トランザクション要求が更新であるとき、読み込んだDBバッファ13のデータを更新する。そして、更新履歴であるログを生成し、ログバッファ15に格納する。ログは、ログを生成したトランザクションを一意に識別する識別情報(以下、「トランザクション識別情報」)、当該ログを一意に識別するログ順次番号、更新するデータと更新されるデータなどによって構成される。
トランザクション管理部11は、トランザクション処理が完了(コミット)すると、コミットと同期してログ書き込み部14を実行する。そして、ログバッファ13に格納されたログをログファイル32に追記する。
なお、DBMS10は、処理性能を向上させるため、DBバッファ13に格納されたデータの更新及びトランザクションのコミットとは非同期にDB書き込み部12を実行し、DBバッファ13の更新されたデータをDBファイル30に書き込む。
DB書き込み部12は、DBバッファ13に一定量以上のデータが更新されたとき、又は後述するチェックポイントなどで実行される。また、トランザクション管理部11は、トランザクション要求にソート操作などの処理が含まれるときには、一時ファイル33に対して書き込み処理及び読み出し処理を実行する。
制御装置20は、DBMS10からI/O処理要求を受信すると、受信したI/O処理要求が読み出し要求の場合には、読み出しデータを物理記憶装置56又はキャッシュメモリ21から取得してDBMS10に転送する。
また、制御装置20は、受信したI/O処理要求が記憶装置24に対する書き込み要求の場合には、書き込みデータをキャッシュメモリ21に格納する。受信したI/O処理要求がジャーナル取得記憶装置25に対する書き込み要求の場合には、書き込みデータをキャッシュメモリ21に格納するとともに、書き込みデータのジャーナルを作成し、キャッシュメモリ21に格納する。なお、キャッシュメモリ21に格納された書き込みデータ及びジャーナルは、キャッシュメモリ21への格納とは非同期に物理記憶装置56に書き込まれる。
また、DBMS10は、一定時間間隔又はトランザクション数ごとにDB書き込み部12及びログ書き込み部14を実行し、DBバッファ13に格納された更新データ及びログバッファ15に格納されたログを記憶装置システム2に書き込む。このように、バッファに格納されたデータを記憶装置システム2に書き込む処理、及びその処理を実行するタイミングをチェックポイントという。
DBMS10に格納されたDBバッファ13と、記憶装置システム2に格納されたDBファイル30とは、チェックポイントで実行される書き込み処理によって内容が一致するため、チェックポイントは、DBのリカバリの基点となる。
DBMS10は、チェックポイントで実行される書き込み処理が完了すると、トランザクション管理部11を実行し、チェックポイントの識別情報を含むログを作成してログファイル32に記録する。
また、トランザクション管理部11は、DBのリカバリに利用するために、チェックポイントの識別情報を制御ファイル31又はDBファイル30のヘッダ部に書き込む。
続いて、トランザクション管理部11は、チェックポイントの識別情報をチェックポイントコマンドに含まれる所定の識別情報として、当該チェックポイントコマンドを記憶装置システム2に送信し、チェックポイントの処理を完了する。
なお、チェックポイントの識別情報は、チェックポイントを一意に識別する情報、及び、ログファイル32における、チェックポイントの識別情報を含むログの記録位置などが含まれる。また、チェックポイントの識別情報を含むログは、チェックポイントの識別情報の他に、チェックポイント時に動作中のトランザクションの数、及び当該トランザクションの状態など、DBのリカバリを開始するために必要な情報が含まれる。
制御装置20は、DBMS10からチェックポイントコマンドを受信すると、チェックポイントの識別情報に対応させたジャーナルを生成し、キャッシュメモリ21を介してジャーナル記憶装置26に格納する。
図3は、第1の実施の形態のDBのリカバリ処理手順を示すフローチャートである。DBのリカバリ処理は、管理者からリカバリ指示を受信したDBMS10における処理、及びDBMS10からのリストア指示を受信した記憶装置システム2における処理によって構成される。なお、第1の実施の形態では、管理者のオペレーションミスなどによって、DBファイル30に論理的不整合などの障害が発生した場合のリカバリ処理について説明する。
DBMS10は、障害発生直前の回復時点を表すトランザクション識別情報又はログ順次番号などを含むDBのリカバリ指示を管理者から受信する(S100)。
DBMS10は、リカバリ指示を受信すると、ログ解析部16を実行する。ログ解析部16は、ログファイル32を参照し、受信したトランザクション識別情報又はログ順次番号に対応するログを検索する。
ログ解析部16は、さらにログファイル32を解析し、検索されたログよりも前に記録され、かつ、最も新しいチェックポイントの識別情報を含むログを取得する。そして、取得されたログに含まれるチェックポイントの識別情報を、回復時点直前のチェックポイントの識別情報として取得する(S101)。
DBMS10は、取得した回復時点直前のチェックポイントの識別情報を所定の識別情報としてリストア指示に含め、当該リストア指示を記憶装置システム2に送信する(S102)。リストア指示には、チェックポイントの識別情報の他に、DBファイル30と制御ファイル31が格納されたジャーナル取得記憶装置25の識別情報(例えば論理記憶装置番号など)などが含まれる。
制御装置20は、DBMS10が送信したリストア指示を受信すると(S111)、受信したリストア指示に含まれるジャーナル取得記憶装置25の識別情報を参照する。そして、ジャーナル取得記憶装置25においてジャーナル取得設定が実行されていること、及び、ジャーナル取得記憶装置25のジャーナルがジャーナル記憶装置26に格納されていることを確認する。
続いて、制御装置20は、リストア処理を実行する(S112)。具体的には、制御装置20は、まず、ジャーナル記憶装置26に格納されていたスナップショットデータ34をジャーナル取得記憶装置25にコピーする。次に、制御装置20は、リストア指示に含まれるチェックポイントの識別情報に対応するジャーナルを取得する。そして、当該ジャーナルよりも前に記録されたジャーナルを、ジャーナル取得記憶装置25にコピーされたスナップショットデータ34に適用し、チェックポイント時点のデータを復元する。
制御装置20は、リストア処理が完了すると、その旨をDBMS10に報告する(S113)。
DBMS10は、記憶装置システム2からリストア処理の完了報告を受信すると(S103)、ログ適用部17を実行する。ログ適用部17は、リストアされた制御ファイル31に記録されたチェックポイントの識別情報を取得する。そして、取得したチェックポイントの識別情報に対応するログから、リカバリ指示に含まれる回復時点に対応するログまでを、リストアされたジャーナル取得記憶装置25に格納されたDBファイル30に適用し(S104)、処理を終了する。なお、ログの適用は、DBファイル30のヘッダ部に記録されたチェックポイントの識別情報を利用してもよい。
第1の実施の形態によれば、ログを順次追記されるログファイル32及びDBのリカバリには不必要な一時ファイル33のジャーナルが作成されないため、ジャーナル記憶装置26の容量を削減することができる。
また、第1の実施の形態によれば、図3に示した一連のDBリカバリ処理によって、トランザクション識別情報及びログ順次番号などで特定される任意の回復時点において、トランザクションの一貫性が確保された状態に、DBを高速に回復させることができる。
(第2の実施の形態)
図4は、第2の実施の形態の情報処理システムのソフトウェア構成図である。第2の実施の形態の情報処理システムのハードウェア構成は、第1の実施の形態と同じである。
ホスト1は、第1の実施の形態と同じ構成である。一方、記憶装置システム2には、第1の実施の形態の構成に加え、制御装置20に、ジャーナル上書き判定部200、ジャーナル永続化部201、及びジャーナル設定部202を構成するプログラム及び管理情報を不揮発性メモリ53に備える。その他の構成については、第1の実施の形態と同じである。
ジャーナル上書き判定部200は、処理を実行するプログラム及びジャーナル格納情報210によって構成される。ジャーナル上書き判定部200は、ジャーナル取得記憶装置25に対する書き込みデータを受信したときに実行される。そして、書き込みデータと同じアドレスが指定される書き込みデータに関するジャーナルがキャッシュメモリ21に既に存在し、かつ、キャッシュメモリ21に存在するジャーナルが上書き可能状態であるか否かを判定する。
また、ジャーナル格納情報210は、書き込みデータの格納先アドレス、書き込みデータに対応するジャーナルの格納先アドレス、及び、ジャーナルの状態などを格納する。なお、詳細は、図8にて後述する。
ジャーナル永続化部201は、ホスト1によって送信されたチェックポイントコマンドを制御装置20が受信したときに実行される。ジャーナル永続化部201は、キャッシュメモリ21に格納された上書き可能状態のジャーナルを上書き不可状態に変更する。
ジャーナル設定部202は、ジャーナル上書き判定部200及びジャーナル永続化部201を有効又は無効に設定する。ジャーナル設定部202は、ネットワークアダプタ52を介して、ホスト1又は管理端末3にジャーナル上書き判定部200及びジャーナル永続化部201を有効又は無効に設定するためのインタフェースを提供する。
以下、第2の実施の形態において、ホスト1のDBMS10及び記憶装置システム2の制御装置20によって実行される処理の概要を説明する。
制御装置20は、ジャーナル取得記憶装置25に書き込み処理要求を受信すると、ジャーナル上書き判定部200を実行する。ジャーナル上書き判定部200は、受信した書き込みデータが格納されるアドレスと同じアドレスが指定された書き込みデータに関するジャーナルがキャッシュメモリ21に存在し、当該ジャーナルが上書き可能状態であるか否かを判定する。
続いて、制御装置20は、ジャーナル制御部23を実行し、ジャーナル上書き判定部200の判定結果に基づいて、生成したジャーナルを上書き可能状態として、キャッシュメモリ21に存在するジャーナルに上書き、又は、キャッシュメモリ21の新たな領域に格納する。
また、制御装置20は、ホスト1からチェックポイントコマンドを受信すると、ジャーナル永続化部201を実行し、キャッシュメモリ21の上書き可能状態のジャーナルを上書き不可状態に変更する。
続いて、制御装置20は、ジャーナル制御部23を実行し、チェックポイントコマンドに含まれる所定の識別情報と対応させたジャーナルを生成し、キャッシュメモリ21に格納する。
制御装置20は、キャッシュメモリ21に格納されているジャーナルを、ジャーナル記憶装置26に所定のタイミングに格納する。
なお、DBMS10は、DBバッファ13の容量が超過したときにも記憶装置システム2にデータの書き込みを要求する。このとき、生成されたジャーナルをキャッシュメモリ21又はジャーナル記憶装置26に格納しなくても、チェックポイントで作成されたジャーナルを保持していれば、ログによりDBのリカバリは可能である。そこで、第2の実施の形態では、チェックポイント以外で作成されたジャーナルをキャッシュメモリ21上で上書きすることによって、ジャーナル記憶装置26の容量を削減することができる。
DBMS10は、リストアされたDBファイル30に、同じくリストアされた制御ファイル31に記録されたチェックポイントの識別情報を含むログから回復時点に対応するログまでを適用し、回復時点におけるトランザクションの一貫性が確保されたDBの状態を回復する。なお、DBのリカバリ処理は、第1の実施の形態と同じ処理である。
以下、第2の実施の形態において、ホスト1のDBMS10及び記憶装置システム2の制御装置20によって実行される処理の詳細を説明する。
図5は、第2の実施の形態のDBMS10からの書き込み処理要求を受信したときに、制御装置20によって実行される処理の手順を示すフローチャートである。
制御装置20は、DBMS10から書き込み処理要求を受信すると(S210)、書き込み処理要求の対象がジャーナル取得記憶装置25であるか否かを判定する(S211)。制御装置20は、書き込み処理要求の対象がジャーナル取得記憶装置25でなければ(S211の結果が「N」)、書き込み処理要求に含まれる書き込みデータをキャッシュメモリ21に格納する(S217)。制御装置20は、書き込み処理が終了すると、DBMS10に通知する。
一方、制御装置20は、書き込み処理要求の対象がジャーナル取得記憶装置25であった場合には(S211の結果が「Y」)、送信された書き込みデータをキャッシュメモリ21に格納する(S212)。
次に、制御装置20は、ジャーナル格納情報210を参照し、受信した書き込みデータが格納されるアドレスと同じアドレスが指定された書き込みデータに関するジャーナルがキャッシュメモリ21に存在しているか否かを判定する。(S213)
制御装置20は、キャッシュメモリ21に該当するジャーナルが存在しない場合には(S213の結果が「N」)、要求された書き込みデータに関するジャーナルを上書き可能状態として作成し、キャッシュメモリ21の新たな領域に格納する(S216)。制御装置20は、格納したジャーナルに関する情報をジャーナル格納情報210に登録し、処理を終了する。
制御装置20は、該当するジャーナルが既にキャッシュメモリ21に存在する場合には(S213の結果が「Y」)、ジャーナル格納情報210の該当するレコードを参照し、上書き可能状態であるか否かを判定する(S214)。制御装置20は、上書き可能状態でなければ(S214の結果が「N」)、S216の処理を実行する。
制御装置20は、ジャーナルが上書き可能状態であった場合には(S214の結果が「Y」)、ジャーナル格納情報210を参照し、キャッシュメモリ21に格納された該当するジャーナルに、要求された書き込みデータに関するジャーナルを上書き可能状態として上書きし、処理を終了する(S215)。
図6は、第2の実施の形態の記憶装置システム2がホスト1からチェックポイントコマンドを受信したときに実行される処理の手順を示すフローチャートである。チェックポイントコマンドは、ホスト1のDBMS10からチェックポイントの処理完了時に発行され、処理したチェックポイントの識別情報を所定の識別情報として含む。
制御装置20は、まず、ホスト1のDBMS10からチェックポイントコマンドを受信する(S220)。
そして、制御装置20は、ジャーナル格納情報210を参照及び更新し、キャッシュメモリ21に格納されている上書き可能状態のジャーナルを上書き不可状態に変更する(S221)。
次に、制御装置20は、受信したチェックポイントコマンドに含まれるチェックポイントの識別情報と対応させたジャーナルを上書き不可状態として作成し、キャッシュメモリ21に格納する(S222)。さらに、制御装置20は、作成したジャーナルに関する情報をジャーナル格納情報210に登録し、処理を終了する。なお、制御装置20は、図7にて後述するように、キャッシュメモリ上のジャーナルをジャーナル記憶装置26に非同期に書き込む。
このようにして、制御装置20は、チェックポイントコマンドを受信したときにジャーナルを上書き不可状態とすることによって、ジャーナル記憶装置26にチェックポイントコマンドを受信時のジャーナルを確実に書き込ませることができる。一方、DBバッファ13の容量が超過して記憶装置システム2に更新が要求された場合などには、ジャーナルを上書き可能状態として格納し、同じアドレスが指定された更新要求のジャーナルを上書きしていくことによって、ジャーナル記憶装置26の容量を節約することができる。
図7は、第2の実施の形態のキャッシュメモリ21にのみ格納されたデータ(以下、「ダーティデータ」)を物理記憶装置56に書き込む手順を示すフローチャートである。ダーティデータの書き込みは、一定時間間隔、又はキャッシュメモリ21のデータが一定量以上更新された場合など、所定のタイミングで実行される。
制御装置20は、キャッシュメモリ21から物理記憶装置56に書き込むダーティデータを、予め設定された条件に基づいて決定する(S230)。例えば、一定期間アクセスされていない、一定量のダーティデータを選択する。
次に、制御装置20は、書き込み対象のダーティデータがジャーナル記憶装置26に格納されるジャーナルであるか否かを判定する(S231)。制御装置20は、書き込み対象のダーティデータがジャーナル記憶装置26に格納されるジャーナルでなければ(S231の結果が「N」)、ダーティデータを格納先の物理記憶装置56に書き込み、処理を終了する(S234)。
一方、制御装置20は、書き込み対象のダーティデータがジャーナルの場合には(S231の結果が「Y」)、ジャーナル格納情報210を参照し、当該ジャーナルが上書き可能状態であるか否かを判定する(S232)。制御装置20は、当該ジャーナルが上書き不可状態の場合には(S232の結果が「N」)、S234の処理を行い、ジャーナル記憶装置26を構成する物理記憶装置56に当該ジャーナルを格納する。
また、制御装置20は、当該ジャーナルが上書き可能状態であれば(S232の結果が「Y」)、ジャーナル格納情報210を参照及び更新し、上書き可能状態のジャーナルを上書き不可状態に変更する。そして、ジャーナル記憶装置26を構成する物理記憶装置56に当該ジャーナルを格納し、本処理を終了する(S233)。
なお、制御装置20は、キャッシュメモリ21の使用可能な領域量に応じて、S233の処理を実行しなくてもよい。すなわち、キャッシュメモリの使用可能な領域が十分であれば、キャッシュメモリ21上の上書き可能状態のジャーナルを上書き不可状態に変更せず、物理記憶装置56に書き込まないことによって、ジャーナルをさらに上書きでき、使用されるジャーナル記憶領域26の容量を削減することができる。
図8は、第2の実施の形態のジャーナル格納情報210の一例を示す図である。ジャーナル格納情報210は、データ更新アドレス240、ジャーナル格納アドレス241、及び上書き可能状態242を含む。
データ更新アドレス240は、書き込みデータが格納される位置を示すアドレスが格納される。ジャーナル格納アドレス241は、書き込みデータによって作成されるジャーナルが格納される位置を示すアドレスが格納される。上書き可能状態242は、ジャーナル格納アドレス241で特定されるジャーナルが上書き可能状態であるか否かの情報を格納する。
図9は、第2の実施の形態の機能設定画面の一例を示す図である。第2の実施の形態の機能設定画面は、ジャーナル上書き判定部200及びジャーナル永続化部201の有効又は無効を設定するユーザインタフェースである。機能設定画面は、制御装置20のジャーナル設定部202によって、管理端末3などに表示される。
ジャーナル上書き判定部200及びジャーナル永続化部201は、機能設定画面のチェックボックス251又はチェックボックス250を操作することによって有効又は無効が設定される。
管理者は、特定のジャーナル取得記憶装置25に対し、ジャーナル上書き判定部200及びジャーナル永続化部201を有効に設定することができる。具体的には、チェックボックス251を操作し、設定対象のジャーナル取得記憶装置25の識別番号を文字入力領域253に入力する。そして、「OK」ボタン254を操作することによって、記憶装置システム2に設定が反映される。一方、チェックボックス251を選択すれば、ジャーナル上書き判定部200及びジャーナル永続化部201を無効に設定できる。
なお、ジャーナル設定部202は、ジャーナル上書き判定部200及びジャーナル永続化部201を有効と設定した場合に、表示部252に、機能又は効果を示すメッセージを表示してもよい。例えば、図9に示すように、トランザクション一貫性のあるDBのリカバリを可能としながらジャーナル記憶装置26の容量を削減できる旨を表示することができる。
第2の実施の形態によれば、同じアドレスを指定した書き込み処理が複数要求されるとき、ジャーナルをキャッシュメモリ21上で上書きすることによって、ジャーナルを記録するために必要な記憶容量を削減することができる。特に、ジャーナリングの対象となる物理記憶装置56に格納されるデータを連続して更新する場合に有効である。
さらに、第2の実施の形態によれば、物理記憶装置56に格納されたジャーナルを上書きするのではなく、キャッシュメモリ21上でジャーナルを上書きするため、ジャーナルの上書き処理に関し、記憶装置システム2に対する負荷を小さくすることができる。
(第3の実施の形態)
図10は、第3の実施の形態の情報処理システムのソフトウェア構成図である。第3の実施の形態の情報処理システムのハードウェア構成は、第1の実施の形態と同じである。
ホスト1は、第1の実施の形態と同じ構成である。一方、記憶装置システム2には、第2の実施の形態の構成に加え、制御装置20に、ジャーナル永続化判定部300、及びチェックポイント管理部301を構成するプログラム及び管理情報を不揮発性メモリ53に備える。その他の構成については、第2の実施の形態と同じである。
ジャーナル永続化判定部300は、ホスト1からチェックポイントコマンドを制御装置20が受信したときに実行される。ジャーナル永続化判定部300は、キャッシュメモリ21に格納された上書き可能状態のジャーナルの量が所定の閾値以上であり、かつ、ジャーナル記憶装置26の空き容量が所定の閾値以上であるか否かを判定する。
チェックポイント管理部301は、処理を実行するプログラム及びチェックポイント管理情報310によって構成される。チェックポイント管理部301は、ジャーナル永続化判定部300の判定結果に基づいて、受信したチェックポイントを有効又は無効として管理する。
チェックポイント管理情報310は、ジャーナルと対応付けられたチェックポイントの情報を格納する。なお、詳細は、図13にて後述する。
また、制御装置20は、チェックポイント管理部301を構成するプログラムを実行することによって、ネットワークアダプタ52を介して、ホスト1又は管理端末3にチェックポイント管理情報310に登録された情報を参照するインタフェースを提供する。なお、インタフェースの詳細は、図14にて後述する。
ジャーナル設定部202は、第2の実施の形態と同じく、ジャーナル上書き判定部200及びジャーナル永続化部201を有効又は無効と設定する。第3の実施の形態では、ジャーナル設定部202は、ジャーナル永続化判定部300の判定に使用する、キャッシュメモリ21に格納された上書き可能状態のジャーナルの量の閾値、及び、ジャーナル記憶装置26の空き容量の閾値を設定することも可能である。さらに、ジャーナル設定部202は、ジャーナル永続化判定部300及びチェックポイント管理部301を有効又は無効に設定する。
ジャーナル設定部202は、ネットワークアダプタ52を介して、ホスト1又は管理端末3に、ジャーナル永続化判定部300の判定に必要な閾値などの項目を設定するインタフェース、及びジャーナル永続化判定部300及びチェックポイント管理部301を有効又は無効に設定するインタフェースを提供する。なお、インタフェースの詳細は、図15にて後述する。
以下、第3の実施の形態において、ホスト1のDBMS10及び記憶装置システム2の制御装置20によって実行される処理の概要を説明する。
制御装置20は、ホスト1からチェックポイントコマンドを受信すると、ジャーナル永続化判定部300を実行する。ジャーナル永続化判定部300は、キャッシュメモリ21に格納された上書き可能状態のジャーナルの量及びジャーナル記憶装置26の空き容量に基づいて、チェックポイントコマンドの受信時点において、ジャーナルを永続化するか否かを判定する。制御装置20は、永続化しないと判定した場合には、チェックポイント管理部301を実行し、受信したチェックポイントを無効として管理する。
一方、制御装置20は、永続化すると判定した場合には、ジャーナル永続化部201を実行し、キャッシュメモリ21の上書き可能状態のジャーナルを上書き不可状態に変更する。
続いて、制御装置20は、ジャーナル制御部23を実行し、チェックポイントコマンドに含まれるチェックポイントの識別情報と対応させたジャーナルを生成し、上書き不可状態として、キャッシュメモリ21に格納する。最後に、制御装置20は、チェックポイント管理部301を実行し、受信したチェックポイントを有効として管理する。
なお、制御装置20は、キャッシュメモリ21に格納されているジャーナルを、ジャーナル記憶装置26に所定のタイミングに格納する。
DBMS10は、回復時点を含むDBのリカバリ指示を管理者から受信すると、ログ解析部16を実行し、ログファイル32を解析することによって、回復時点直前のチェックポイントの識別情報を取得する。そして、取得したチェックポイントが有効であるか否かを記憶装置システム2に問い合わせる。
制御装置20は、DBMS10からチェックポイントの識別情報の問合せを受信すると、チェックポイント管理部301を実行する。チェックポイント管理部301は、受信したチェックポイントが有効である場合には、受信したチェックポイントの識別情報は有効として応答する。一方、受信したチェックポイントが無効である場合には、受信したチェックポイントの識別情報を登録した時点よりも前であって、かつ、最も新しい有効なチェックポイントの識別情報を、DBMS10に応答する。
DBMS10は、記憶装置システム2から有効なチェックポイントの識別情報を受信すると、受信したチェックポイントの識別情報を含むリストア指示を記憶装置システム2に送信する。そして、記憶装置システム2は、受信したチェックポイントの識別情報に基づいて、ジャーナルを適用し、DBファイル30をリストアする。その後、DBMS10は、ログ適用部17によって、リストアされたDBファイル30に回復時点までのログを適用し、回復時点のDBを回復する。
以下、第3の実施の形態において、ホスト1のDBMS10及び記憶装置システム2の制御装置20によって実行される処理の詳細を説明する。
図11は、第3の実施の形態の記憶装置システム2がホスト1からチェックポイントコマンドを受信したときに実行される処理の手順を示すフローチャートである。チェックポイントコマンドは、ホスト1のDBMS10からチェックポイントの処理完了時に発行され、処理したチェックポイントの識別情報を所定の識別情報として含む。
制御装置20は、まず、ホスト1のDBMS10からチェックポイントコマンドを受信する(S310)。
制御装置20は、ジャーナル格納情報210を参照し、キャッシュメモリ21に格納された上書き可能状態のジャーナルの量が所定の閾値以上であるか否かを判定する(S311)。
制御装置20は、該当するジャーナルの量が所定の閾値以上でなければ(S311の結果が「N」)、チェックポイント管理情報310を参照及び更新し、受信したチェックポイントを無効なチェックポイントとして管理し(S316)、処理を終了する。
一方、制御装置20は、キャッシュメモリ21にある上書き可能状態のジャーナルの量が所定の閾値以上であった場合には(S311の結果が「Y」)、ジャーナル記憶装置26の空き容量が所定の閾値以上であるかを否か判定する(S312)。制御装置20は、ジャーナル記憶装置26の空き容量が所定の閾値以上でなければ(S312の結果が「N」)、受信したチェックポイントを無効なチェックポイントとして管理し(S316)、処理を終了する。
制御装置20は、ジャーナル記憶装置26の空き容量が所定の閾値以上であった場合には(S312の結果が「Y」)、ジャーナル格納情報210を参照及び更新し、キャッシュメモリ21に格納されている上書き可能状態のジャーナルを上書き不可状態とする(S313)。
次に、制御装置20は、受信したチェックポイントコマンドに含まれるチェックポイントの識別情報に対応させ、上書き不可状態としてジャーナルを作成し、キャッシュメモリ21に格納する(S314)。制御装置20は、作成したジャーナルの情報をジャーナル格納情報210に登録する。
続いて、制御装置20は、チェックポイント管理情報310を参照及び更新し、受信したチェックポイントを有効なチェックポイントとして管理し(S315)、処理を終了する。
なお、制御装置20は、第2の実施の形態と同じく、キャッシュメモリ上のジャーナルをジャーナル記憶装置26に非同期に書き込む。
図12は、第3の実施の形態のDBのリカバリ処理手順を示すフローチャートである。DBのリカバリ処理は、管理者からリカバリ指示を受信したDBMS10における処理、及びDBMS10からチェックポイントの識別情報に関する問合せ及びリストア指示を受信した記憶装置システム2による処理によって構成される。
DBMS10は、障害発生直前の回復時点を表すトランザクション識別情報又はログ順次番号などを含むDBのリカバリ指示を管理者から受信する(S320)。
DBMS10は、リカバリ指示を受信すると、ログ解析部16を実行する。ログ解析部16は、現時点までのすべてのログが記録されたログファイル32を参照し、受信したトランザクション識別情報又はログ順次番号に対応するログを検索する。
ログ解析部16は、さらにログファイル32を解析し、検索されたログよりも前に記録され、かつ、最も新しいチェックポイントの識別情報を含むログを取得する。そして、取得されたログに含まれるチェックポイントの識別情報を、回復時点直前のチェックポイントの識別情報として取得する(S321)。
DBMS10は、取得したチェックポイントの識別情報に基づいて、有効なチェックポイントを記憶装置システム2に問い合わせる(S322)。
制御装置20は、DBMS10からチェックポイントの識別情報の問合せを受信すると(S330)、チェックポイント管理情報310を参照し、受信したチェックポイントの識別情報が管理されていることを確認する。そして、受信したチェックポイントの識別情報によって特定されるチェックポイントが有効であるか否かを判定する(S331)。
制御装置20は、当該チェックポイントが有効である場合には(S331の結果が「Y」)、チェックポイントが有効である旨をDBMS10に応答する(S334)。
一方、制御装置20は、当該チェックポイントが無効であった場合には(S331の結果が「N」)、チェックポイント管理情報310を参照し、直近の有効なチェックポイントの識別情報を取得する(S332)。具体的には、受信したチェックポイントが実行されたDBと同じDBで実行された他のチェックポイントの識別情報の中から、受信したチェックポイントの識別情報を登録した時点より前であり、かつ、直近の有効なチェックポイントの識別情報を取得する。そして、制御装置20は、取得した有効なチェックポイントの識別情報をDBMS10に応答する(S333)。
DBMS10は、記憶装置システム2から有効なチェックポイントの識別情報を受信すると(S323)、取得したチェックポイントの識別情報を所定の識別情報としてリストア指示に含め、当該リストア指示を記憶装置システム2に送信する(S324)。
制御装置20は、DBMS10が送信したリストア指示を受信すると(S335)、受信したリストア指示に含まれるジャーナル取得記憶装置25の識別情報を参照する。そして、ジャーナル取得記憶装置25においてジャーナル取得設定が実行されていること、及び、ジャーナル取得記憶装置25のジャーナルがジャーナル記憶装置26に格納されていることを確認する。また、制御装置20は、チェックポイント管理情報310を参照し、受信したリストア指示で指定されたチェックポイントが有効であることを確認する(S336)。
続いて、制御装置20は、リストア処理を実行する(S337)。具体的には、制御装置20は、リストア指示に含まれる所定の識別情報であるチェックポイントの識別情報に対応するジャーナルを取得する。そして、当該ジャーナルよりも前に記録されたジャーナルを、ジャーナル取得記憶装置25にコピーされたスナップショットデータ34に適用し、チェックポイント時点のデータを復元する。さらに、制御装置20は、リストア処理の完了をDBMS10に報告する(S338)。
DBMS10は、記憶装置システム2からリストア処理の完了報告を受信すると(S325)、ログ適用部17を実行する。ログ適用部17は、リストアされた制御ファイル31に記録されたチェックポイントの識別情報を取得する。そして、取得したチェックポイントの識別情報に対応するログから、リカバリ指示に含まれる回復時点に対応するログまでを、リストアされたジャーナル取得記憶装置25に格納されたDBファイル30に適用し(S326)、処理を終了する。
図13は、第3の実施の形態のチェックポイント管理情報310の一例を示す図である。チェックポイント管理情報310は、チェックポイント識別情報340、ジャーナル格納アドレス341、時間342及びジャーナル永続化343を含む。
チェックポイント識別情報340は、管理対象のチェックポイントの識別子を格納する。ジャーナル格納アドレス341は、管理対象のチェックポイントに対応するジャーナルが格納されたアドレスを格納する。
時間342は、管理対象のチェックポイントに対応するジャーナルが作成された時刻を格納する。ジャーナル永続化343は、管理対象のチェックポイントが有効又は無効であるかを格納する。
図14は、第3の実施の形態のチェックポイント管理情報表示画面の一例を示す図である。チェックポイント管理情報表示画面は、チェックポイント管理情報310に登録されたチェックポイントの内容を問い合わせるために、ホスト1又は管理端末3などに表示される画面(ユーザインタフェース)である。チェックポイント管理情報表示画面は、制御装置20がチェックポイント管理部301を構成するプログラムを実行することによって提供される。
チェックポイント管理情報表示画面は、チェックポイント管理情報310に格納される情報と概ね同じである。具体的には、チェックポイント識別情報350、チェックポイント実行論理記憶装置番号351、チェックポイント識別情報格納論理記憶装置番号352、時間353、及びチェックポイント状態354が表示される。
チェックポイント識別情報350は、チェックポイント管理情報310に登録されたチェックポイントの識別情報である。チェックポイント実行論理記憶装置番号351は、チェックポイントを実行されたDBが格納される論理記憶装置番号である。
チェックポイント識別情報格納論理記憶装置番号352は、チェックポイントの識別情報に対応するジャーナルが格納される論理記憶装置番号である。時間353は、チェックポイントの識別情報に対応するジャーナルが作成された時間である。チェックポイント状態354は、チェックポイントが有効又は無効であるかを示す情報である
図15は、第3の実施の形態の機能設定画面の一例を示す図である。第3の実施の形態の機能設定画面は、ジャーナル永続化判定部300及びチェックポイント管理部301の有効又は無効を設定するユーザインタフェースである。機能設定画面は、制御装置20のジャーナル設定部202によって、ホスト1又は管理端末3などに表示される。機能設定画面は、第2の実施の形態の図9に示した機能設定画面と同じく、ジャーナル上書き判定部200及びジャーナル永続化部201の有効又は無効を設定することも可能である。
ジャーナル永続化判定部300とチェックポイント管理部301、及び、ジャーナル上書き判定部200とジャーナル永続化部201は、チェックボックス362、チェックボックス361、及びチェックボックス360を選択することによって有効又は無効が設定される。このとき、ジャーナル取得記憶装置25の識別番号を文字入力領域364に入力することによって、設定対象のジャーナル取得記憶装置25が指定される。そして、「OK」ボタン367を操作することによって、記憶装置システム2に設定が反映される。
管理者は、チェックボックス362を選択すると、ジャーナル永続化判定部300、チェックポイント管理部301、ジャーナル上書き判定部200、及び、ジャーナル永続化部201が有効と設定することができる。このとき、ジャーナル永続化判定部300の処理に必要な、キャッシュメモリ21に格納された上書き可能状態のジャーナルの量の閾値及びジャーナル記憶装置26の空き容量の閾値を、文字入力領域365及び366に入力して指定することが可能である。
また、管理者は、チェックボックス361を選択すると、ジャーナル永続化判定部300及びチェックポイント管理部301を無効、ジャーナル上書き判定部200及びジャーナル永続化部201を有効と設定することができる。
さらに、管理者は、チェックボックス360を選択すれば、ジャーナル永続化判定部300、チェックポイント管理部301、ジャーナル上書き判定部200、及びジャーナル永続化部201を無効と設定することができる。
なお、機能設定画面は、ジャーナル永続化判定部300及びチェックポイント管理部301を有効と設定したとき、トランザクション一貫性のあるDBのリカバリを可能としつつジャーナル記憶装置26の容量を削減可能であるが、DBリカバリの処理性能に影響が生じる可能性がある旨を表示部363に表示してもよい。
第3の実施の形態によれば、第2の実施の形態と同じく、同じアドレスが指定された書き込みデータのジャーナルをキャッシュメモリ21上で上書きすることによって、ジャーナル記憶装置26の容量を削減することができる。
また、第3の実施の形態によれば、第2の実施の形態の効果に加え、キャッシュメモリ21の状態及びジャーナル記憶装置26の空き容量に応じてチェックポイントコマンドを無効とし、ジャーナルを更に上書きする。したがって、DBファイル30内の同じデータを連続更新する場合などに、特に、ジャーナル記憶装置26の容量を大幅に削減することが可能である。
さらに、第3の実施の形態によれば、ログファイル32は、ジャーナルを取得しない記憶装置24に格納されるため、リストア処理の実行の有無に関わらず、DBファイル30の変更履歴が全て記録される。よって、回復時点に対して最新のチェックポイント処理時点のDBファイル30にリストアされなくても、DBMS10は、リストアされたDBファイル30に任意の回復時点までの必要なログを適用することができる。
そこで、第3の実施の形態では、キャッシュメモリ21に格納された上書き可能状態のジャーナルの量及びジャーナル記憶装置26の空き容量に基づいて、キャッシュメモリ21に格納されているジャーナルを、物理記憶装置56に書き込むか否かを判定する。このように、ジャーナルの物理記憶装置56に対する書き込み処理の実行を間引くことによって、ジャーナル記憶装置26の容量を第2の実施の形態よりもさらに削減することができる。
以上のように、本発明は、データベースの高速なリカバリのために、記憶装置システム内で生成するジャーナルを用いた高速なリストアを可能としながらも、ジャーナルを記録するための記憶容量の削減が望まれる情報処理システムに適用することができる。特に、大量のログが出力され、データベース内の同じデータが連続して更新されるOLTP向けの情報処理システムに好適である。
第1の実施の形態の情報処理システムのハードウェア構成図である 第1の実施の形態の情報処理システムのソフトウェア構成図である。 第1の実施の形態のDBのリカバリ処理手順を示すフローチャートである。 第2の実施の形態の情報処理システムのソフトウェア構成図である。 第2の実施の形態のDBMSからの書き込み処理要求を受信したときに、制御装置によって実行される処理の手順を示すフローチャートである。 第2の実施の形態の記憶装置システムがホストからチェックポイントコマンドを受信したときに実行される処理の手順を示すフローチャートである。 第2の実施の形態のキャッシュメモリにのみ格納されたデータを物理記憶装置に書き込む手順を示すフローチャートである。 第2の実施の形態のジャーナル格納情報の一例を示す図である。 第2の実施の形態の機能設定画面の一例を示す図である。 第3の実施の形態の情報処理システムのソフトウェア構成図である。 第3の実施の形態の記憶装置システムがホストからチェックポイントコマンドを受信したときに実行される処理の手順を示すフローチャートである。 第3の実施の形態のDBのリカバリ処理手順を示すフローチャートである。 第3の実施の形態のチェックポイント管理情報の一例を示す図である。 第3の実施の形態のチェックポイント管理情報表示画面の一例を示す図である。 第3の実施の形態の機能設定画面の一例を示す図である。
符号の説明
1 ホスト
2 記憶装置システム
3 管理端末
10 DBMS
11 トランザクション管理部
16 ログ解析部
17 ログ適用部
20 制御装置
21 キャッシュメモリ
23 ジャーナル制御部
24 記憶装置
25 ジャーナル取得記憶装置
26 ジャーナル記憶装置
30 DBファイル
31 制御ファイル
32 ログファイル
33 一時ファイル
200 ジャーナル上書き判定部
201 ジャーナル永続化部
202 ジャーナル設定部
300 ジャーナル永続化判定部
301 チェックポイント管理部

Claims (2)

  1. データベース管理システムを実行する計算機と、前記計算機に接続される記憶装置システムと、を有する情報処理システムであって、
    前記記憶装置システムは、前記計算機から送信されるアクセス要求を処理する制御部と、第1の記憶装置と、第2の記憶装置と、第3の記憶装置と、を備え、
    前記第1の記憶装置は、前記データベース管理システムによってアクセスされるデータを格納するデータベースファイルと、前記データベース管理システムの制御情報を含む制御ファイルと、を格納し、
    前記第2の記憶装置は、前記第1の記憶装置に格納されたデータの更新履歴であるジャーナルを格納し、
    前記第3の記憶装置は、前記データベース管理システムによって生成され、前記データベースファイルの更新履歴であるログを記録するログファイルを格納し、
    前記制御部は、
    前記記憶装置システムと前記計算機との間で送受信されるデータ及び前記ジャーナルが、一時的に格納されるキャッシュメモリを備え、
    前記第1の記憶装置に格納されたデータに対する更新指示を受信したとき、前記ジャーナルを上書き可能状態として新たに生成するジャーナル制御部と、
    前記第1の記憶装置に格納されたデータに対する更新指示を受信したとき、前記更新対象のデータが格納されたアドレスと同じアドレスのデータが更新されることによって生成された同アドレスに対応するジャーナルが、前記キャッシュメモリに既に存在し、かつ、上書き可能状態であるか否かを判定するジャーナル上書き判定部と、
    前記計算機から、前記データベースファイルの回復の基点となるチェックポイントが生成されたことが前記チェックポイントの識別情報とともに通知されたとき、前記キャッシュメモリに格納された上書き可能状態のジャーナルを、上書き不可状態に変更するジャーナル永続化部と、を備え、
    所定のタイミングに前記キャッシュメモリに格納されているデータを前記第1の記憶装置又は前記第2の記憶装置又は第3の記憶装置に反映させるための書き込みを行い、
    前記ジャーナル制御部は、
    前記第1の記憶装置に格納されたデータに対する更新指示を受信したとき、前記同アドレスに対応するジャーナルが、前記キャッシュメモリに既に存在し、かつ、上書き可能状態である場合には、前記新たに生成されたジャーナルを前記同アドレスに対応するジャーナルに上書きし、前記同アドレスに対応するジャーナルが、前記キャッシュメモリに存在しない場合、又は、上書き不可状態である場合には、前記新たに生成されたジャーナルを前記キャッシュメモリの新たな領域に格納し、
    前記計算機から前記チェックポイントが生成されたことを通知されたとき、前記ジャーナル永続化部による処理の後、前記生成されたチェックポイントの識別情報と対応させた上書き不可状態のジャーナルを生成して前記キャッシュメモリに格納し、
    前記計算機から前記チェックポイントの識別情報を含むリストア指示を受信したとき、前記受信したリストア指示に含まれるチェックポイントの識別情報に対応するジャーナルより前に前記第2の記憶装置に記録されたジャーナルを用いて、前記データベースファイルと前記制御ファイルを含む前記第1の記憶装置に格納されたデータを復元し、
    前記データベース管理システムは、
    前記チェックポイントが生成されたとき、前記生成されたチェックポイントの識別情報と対応付けて前記ログファイルにログを記録し、前記生成されたチェックポイントの識別情報を前記制御ファイルに記録し、前記チェックポイントが生成されたことを前記チェックポイントの識別情報とともに前記記憶装置システムに通知する管理部と、
    回復時点を含むリカバリ指示を受け付けたとき、前記リカバリ指示に含まれる回復時点に対応するログを前記ログファイルから検索し、前記検索された回復時点に対応するログが記録された時点よりも前に記録され、かつ、最も新しいチェックポイントの識別情報を含むログを取得し、前記取得されたログに含まれるチェックポイントの識別情報を前記リストア指示とともに前記記憶装置システムに送信するログ解析部と、
    前記記憶装置システムによって復元された制御ファイルに記録されたチェックポイントの識別情報に対応するログから前記回復時点に対応するログまでを、前記記憶装置システムによって復元されたデータベースファイルに適用するログ適用部と、を備えることを特徴とする情報処理システム。
  2. 前記制御部は、
    前記計算機から前記チェックポイントが生成されたことを通知されたとき、前記キャッシュメモリに格納された上書き可能状態のジャーナルの量が所定の閾値以上であって、かつ、前記第2の記憶装置の空き容量が所定の閾値以上であるか否か、を判定するジャーナル永続化判定部と、
    前記ジャーナル永続化判定部による判定結果に基づいて、前記チェックポイント生成の通知を有効又は無効に設定するチェックポイント管理部と、をさらに備え、
    前記ジャーナル永続化部は、前記ジャーナル永続化判定部による判定結果に基づいて、前記キャッシュメモリに格納された上書き可能状態のジャーナルを上書き不可状態に変更し、
    前記ジャーナル制御部は、前記計算機から前記リストア指示を受信したとき、前記受信したリストア指示に含まれるチェックポイントの識別情報によって特定されるチェックポイント生成の通知が有効か否かを判定し、
    前記特定されたチェックポイント生成の通知が有効の場合には、前記受信したリストア指示に含まれるチェックポイントの識別情報に対応するジャーナルより前に前記第2の記憶装置に記録されたジャーナルを用いて、前記第1の記憶装置に格納されたデータを復元し、
    前記特定されたチェックポイント生成の通知が無効の場合には、前記特定されたチェックポイント生成の通知よりも前に受信し、かつ、最も新しい有効なチェックポイント生成の通知に対応するチェックポイントの識別情報を取得し、前記取得されたチェックポイントの識別情報に対応するジャーナルより前に前記第2の記憶装置に記録されたジャーナルを用いて、前記第1の記憶装置に格納されたデータを復元する、ことを特徴とする請求項1に記載の情報処理システム。
JP2006254067A 2006-09-20 2006-09-20 情報処理システム Expired - Fee Related JP4859605B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2006254067A JP4859605B2 (ja) 2006-09-20 2006-09-20 情報処理システム
US11/708,012 US7698320B2 (en) 2006-09-20 2007-02-20 Database management system to reduce capacity of storage volume

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006254067A JP4859605B2 (ja) 2006-09-20 2006-09-20 情報処理システム

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2011220167A Division JP5291166B2 (ja) 2011-10-04 2011-10-04 記憶装置システム及びデータ回復方法

Publications (2)

Publication Number Publication Date
JP2008077287A JP2008077287A (ja) 2008-04-03
JP4859605B2 true JP4859605B2 (ja) 2012-01-25

Family

ID=39189940

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006254067A Expired - Fee Related JP4859605B2 (ja) 2006-09-20 2006-09-20 情報処理システム

Country Status (2)

Country Link
US (1) US7698320B2 (ja)
JP (1) JP4859605B2 (ja)

Families Citing this family (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7627619B1 (en) * 2003-12-29 2009-12-01 Emc Corporation Data verification following database write
US7536529B1 (en) 2005-06-10 2009-05-19 American Megatrends, Inc. Method, system, apparatus, and computer-readable medium for provisioning space in a data storage system
US7925630B1 (en) * 2007-03-30 2011-04-12 Symantec Corporation Method of inserting a validated time-image on the primary CDP subsystem in a continuous data protection and replication (CDP/R) subsystem
US8006061B1 (en) 2007-04-13 2011-08-23 American Megatrends, Inc. Data migration between multiple tiers in a storage system using pivot tables
US9495370B1 (en) * 2007-07-19 2016-11-15 American Megatrends, Inc. Data recovery point review in a continuous data protection system
US8543789B2 (en) * 2008-05-05 2013-09-24 Dell Products L.P. System and method for managing a storage array
US8706694B2 (en) * 2008-07-15 2014-04-22 American Megatrends, Inc. Continuous data protection of files stored on a remote storage device
US8996826B2 (en) * 2009-04-28 2015-03-31 Symantec Corporation Techniques for system recovery using change tracking
JP5432596B2 (ja) * 2009-05-29 2014-03-05 日本電信電話株式会社 ログファイル管理装置、ログファイル管理システム、ログファイル管理方法及びそのプログラム
JP5607355B2 (ja) * 2009-12-28 2014-10-15 キヤノン株式会社 情報処理装置及び情報処理装置の制御方法
US11449394B2 (en) * 2010-06-04 2022-09-20 Commvault Systems, Inc. Failover systems and methods for performing backup operations, including heterogeneous indexing and load balancing of backup and indexing resources
JP5344711B2 (ja) * 2010-08-05 2013-11-20 日本電信電話株式会社 ジャーナルデータ管理方法及びジャーナルデータ管理装置
WO2014106871A1 (en) * 2013-01-07 2014-07-10 Hitachi, Ltd. Storage system which realizes asynchronous remote copy using cache memory composed of flash memory, and control method thereof
US9489336B2 (en) * 2013-07-15 2016-11-08 Oracle International Corporation Method and system for record access in a distributed system
US10417190B1 (en) * 2014-09-25 2019-09-17 Amazon Technologies, Inc. Log-structured file system for zone block devices with small zones
JP6891533B2 (ja) * 2017-02-23 2021-06-18 日本電気株式会社 データベース装置
CN110209642A (zh) * 2018-02-05 2019-09-06 北京智明星通科技股份有限公司 信息处理的方法、装置、服务器及计算机可读介质
CN109542682B (zh) * 2018-11-16 2021-03-30 上海达梦数据库有限公司 一种数据备份方法、装置、设备和存储介质
KR102085608B1 (ko) * 2018-12-21 2020-03-06 주식회사 티맥스데이터 복구 서버 및 컴퓨터 프로그램
CN109871388A (zh) * 2019-02-19 2019-06-11 北京字节跳动网络技术有限公司 数据缓存方法、装置、终电子设备及存储介质
US11237960B2 (en) * 2019-05-21 2022-02-01 Arm Limited Method and apparatus for asynchronous memory write-back in a data processing system
CN114371810B (zh) * 2020-10-15 2023-10-27 中国移动通信集团设计院有限公司 Hdfs的数据存储方法及装置

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05265828A (ja) * 1992-03-18 1993-10-15 Mitsubishi Electric Corp バッチ処理プログラムのジャーナル採取装置
JPH1139273A (ja) * 1997-07-17 1999-02-12 Chubu Nippon Denki Software Kk 遠隔地でのバックアップ方式
US6898688B2 (en) * 2001-12-28 2005-05-24 Storage Technology Corporation Data management appliance
US6839819B2 (en) * 2001-12-28 2005-01-04 Storage Technology Corporation Data management appliance
US7778958B2 (en) * 2002-04-11 2010-08-17 Quantum Corporation Recovery of data on a primary data volume
US6947956B2 (en) * 2002-06-06 2005-09-20 International Business Machines Corporation Method and apparatus for selective caching of transactions in a computer system
US7844577B2 (en) * 2002-07-15 2010-11-30 Symantec Corporation System and method for maintaining a backup storage system for a computer system
JP3974538B2 (ja) * 2003-02-20 2007-09-12 株式会社日立製作所 情報処理システム
JP4426262B2 (ja) * 2003-11-26 2010-03-03 株式会社日立製作所 ディスクアレイ装置及びディスクアレイ装置の障害回避方法
JP2006004031A (ja) * 2004-06-16 2006-01-05 Hitachi Ltd データ処理方法およびシステム並びにストレージ装置方法およびその処理プログラム
US7529966B2 (en) * 2004-08-20 2009-05-05 Hewlett-Packard Development Company, L.P. Storage system with journaling
JP4839091B2 (ja) * 2006-01-27 2011-12-14 株式会社日立製作所 データベース回復方法及び計算機システム
JP2007280323A (ja) * 2006-04-12 2007-10-25 Hitachi Ltd 記憶システム及びデータ管理方法

Also Published As

Publication number Publication date
US20080071842A1 (en) 2008-03-20
JP2008077287A (ja) 2008-04-03
US7698320B2 (en) 2010-04-13

Similar Documents

Publication Publication Date Title
JP4859605B2 (ja) 情報処理システム
US7865678B2 (en) Remote copy system maintaining consistency
JP4800056B2 (ja) ストレージシステム及びその制御方法
US8001344B2 (en) Storage control apparatus, storage control program, and storage control method
US7774565B2 (en) Methods and apparatus for point in time data access and recovery
US7398422B2 (en) Method and apparatus for data recovery system using storage based journaling
US7472139B2 (en) Database recovery method applying update journal and database log
US11157370B2 (en) Consistent backup of a distributed database system
JP4152373B2 (ja) リモートミラーキャッシュ内の論理オブジェクトの完全性を保つシステム
KR101322991B1 (ko) 빈번한 애플리케이션-일관성있는 백업의 효율적인 생성
US8024292B2 (en) Creation of a single snapshot using a server job request
US8352422B2 (en) Data restore systems and methods in a replication environment
EP2161661B1 (en) Computer system and backup method therefor
JP4741371B2 (ja) システム、サーバ装置及びスナップショットの形式変換方法
US7640276B2 (en) Backup system, program and backup method
US20080243954A1 (en) Generating and indicating incremental backup copies from virtual copies of a data set
JP4419884B2 (ja) データ複製装置、方法及びプログラム並びに記憶システム
JP2007226347A (ja) 計算機システム、計算機システムの管理装置、及びデータのリカバリー管理方法
CN109542682B (zh) 一种数据备份方法、装置、设备和存储介质
JP2003223287A (ja) 記憶装置、この記憶装置のバックアップ方法及びプログラム
JP2008225616A (ja) ストレージシステム、リモートコピーシステム、及びデータ復元方法
JP5291166B2 (ja) 記憶装置システム及びデータ回復方法
JP2008033527A (ja) ストレージ装置、ディスク装置及びデータ復元方法
US11809385B1 (en) Efficient data backup in a distributed storage system
JP2021033671A (ja) ストレージシステムおよびリストア方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20090105

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20110728

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110809

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20111004

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: 20111025

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: 20111101

R150 Certificate of patent or registration of utility model

Ref document number: 4859605

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: 20141111

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees