JP4813924B2 - データベース管理システム、ストレージ装置、ディザスタリカバリシステム及びデータベースのバックアップ方法 - Google Patents

データベース管理システム、ストレージ装置、ディザスタリカバリシステム及びデータベースのバックアップ方法 Download PDF

Info

Publication number
JP4813924B2
JP4813924B2 JP2006052174A JP2006052174A JP4813924B2 JP 4813924 B2 JP4813924 B2 JP 4813924B2 JP 2006052174 A JP2006052174 A JP 2006052174A JP 2006052174 A JP2006052174 A JP 2006052174A JP 4813924 B2 JP4813924 B2 JP 4813924B2
Authority
JP
Japan
Prior art keywords
database
unit
storage device
data
site
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
JP2006052174A
Other languages
English (en)
Other versions
JP2007233543A (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 JP2006052174A priority Critical patent/JP4813924B2/ja
Priority to US11/405,464 priority patent/US7587430B2/en
Publication of JP2007233543A publication Critical patent/JP2007233543A/ja
Application granted granted Critical
Publication of JP4813924B2 publication Critical patent/JP4813924B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

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/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error 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/202Error 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 processing functionality is redundant
    • G06F11/2048Error 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 processing functionality is redundant where the redundant components share neither address space nor persistent storage
    • 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/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error 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/2097Error 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 maintaining the standby controller/processing unit updated
    • 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
    • YGENERAL 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
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99951File or database maintenance
    • Y10S707/99952Coherency, e.g. same view to multiple users
    • YGENERAL 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
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99951File or database maintenance
    • Y10S707/99952Coherency, e.g. same view to multiple users
    • Y10S707/99953Recoverability

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

本発明は、データのバックアップシステムの改良に関し、特に、データベースに適したバックアップシステムに関する。
近年、二つの計算機システムを用いた、データベースのバックアップシステムが広く用いられている。データベースのバックアップとは、一方の計算機システムのデータと同じデータを作成し、他方の計算機システムに保存することである。バックアップ元の計算機システムを現用システム(または正サイト)、バックアップ先の計算機システムを待機システム(または副サイト)と呼ぶ。また、待機システムに保存するデータをバックアップデータと呼ぶ。二重化システムによるデータベースバックアップの方法として、ログ転送方法が知られている(例えば、非特許文献1)。
ログ転送方法とは、現用システムのデータ更新記録(ログ)を待機システムに転送し、待機システムでバックアップデータを作成する方法である。このログ転送方法では、バックアップ開始の段階で、現用システムのデータと待機システムのバックアップデータを同一にする。バックアップの開始後は、現用システムのデータ更新記録を待機システムに転送する。待機システムでは、転送されたデータ更新記録をもとにバックアップデータを更新し、最新のバックアップデータを作成する。
一般に、計算機システムはストレージ装置を含み、計算機システムのデータはストレージ装置に格納される。ストレージ装置には、二つの装置の間でデータを複写する複写機能(リモートコピー)を持つものが知られている(特許文献1)。このリモートコピー機能はネットワークを介してデータを転送し、一方のストレージ装置のデータを他方のストレージ装置に複写する機能である。
近年のストレージ装置では、リモートコピーを用いたディザスタリカバリ(Disaster Recovery)システムの利用が拡大している。ディザスタリカバリシステム(以下、DRシステムとする)は、運用中のサイト(正サイト)から遠隔地サイト(副サイト)にデータをリモートコピーしておき、自然災害等の障害時においてビジネスを継続することを目的としている。
上記DRシステムでは、正サイトと副サイトの位置関係を数百km以上離して配置する場合もある。このようなDRシステムでは、正サイトと副サイトを接続するネットワークの構築及び維持のためのコストが大きくなる。特に、2つのサイト間で数百kmに及ぶ広帯域幅回線(例えば、数Gbps)を維持するには、非常に多くのコストを要する。DRシステムでコスト削減を行うためには、2つのサイト間のネットワークを狭帯域幅回線(例えば、100Mbps)で構築することが必要となる。そこで、正サイトのデータベースからログだけを副サイトへ転送し、副サイトではログ適用を実施することで正サイトのデータベースの複製を行うログ転送方法(ログベース)のDRシステムが知られている。ログベースのDRシステムでは、副サイトの計算機が、リモートコピーで転送されたログを読み込んで、読み込んだログを副サイトのデータベースに適用するログ適用部が動作する。正サイトと副サイトの間の通信は、ログの転送のみで良いため、2つのサイト間のネットワークに狭帯域幅回線を用いてDRシステムを実現することができる。
特開2004−78746号公報 Cristos A.Polyzois,Hector Garcia-Molina 著、「Evaluation of remote backup algorithms for transaction processing systems」、ACM transactions on Database Systems 刊、Vol.19, No.3,1994年9月発行、第423頁−第449頁
上記ログ転送方法を用いたDRシステムでは、初期セットアップ以降の通常時においては、正サイトから副サイトへのログのみの転送ですむため、狭帯域幅回線での運用することができる。しかし、現実のデータベースの運用では、正サイトのデータベースを副サイトへ転送する必要が生じる場合がある。例えば、深夜や休日などに行うバッチ処理では、計算機の処理能力への影響を考慮してログ出力を一時的に抑止した状態で正サイトのデータベースで大量更新を行うログレスパッチを行う場合がある。バッチ処理が終了した時点では、副サイトのデータベースを正サイトのデータベースへ一致させるには、正サイトのデータベースを転送する必要が生じる。また、正サイトで障害(回線障害など)が発生してDRシステムを一時的に停止する場合、データベースの運用を継続すると、障害が復旧した時点の正サイトのデータベースと副サイトのデータベースは、一致しない。このため、正サイトのデータベースを副サイトのデータベースへ転送して副サイトのデータベースを正サイトのデータベースに一致させる必要がある。
このように、DRシステムを備えた計算機システムであっても、ログ転送方法が利用できない場合が日常的に発生する場合がある。このため、副サイトのデータベースを正サイトのデータベースに一致させる同期処理が必要になる。
正サイトと副サイトのデータベースの同期方法としては、ストレージ装置の初期コピー機能を用いる方法がある。初期コピー機能では、データベースを格納するストレージ装置のボリューム全体をシーケンシャルにコピーし、正サイトから副サイトへデータベースを転送する。この場合、大量のデータ転送が必要となるため、2つのサイト間のネットワークが狭帯域幅回線では現実的な時間で転送を完了できない、という問題がある。広帯域幅回線を用いれば、現時的な時間での転送も可能となるが、その場合は、回線コストを削減することができず、ログベースのDRシステムのメリットが失われてしまう。
2つのサイト間のネットワークに広帯域幅回線を用いずに同期処理を実現する方法としては、テープ搬送方法方が挙げられる。すなわち、同期化をする時に、正サイトのデータベースでテープメディアにバックアップを取得し、副サイトにトラック等で搬送する。副サイトでは、搬送されたテープからリストアを行い、その後、ログ適用を再開する。しかし、この方法ではトラック及び保守要員の手配やバックアップ、リストア処理が必要になり、輸送コストや人件費がかかる上に、処理が煩雑になるという問題点がある。
そこで本発明は、上記問題点に鑑みてなされたもので、正サイトと副サイト間のネットワークを狭帯域幅回線で構築しながらもデータベースの同期処理を現実的な時間で実現し、かつシステムの運用コストを抑制することを目的とする。
本発明は、データベースを格納するストレージ装置と、前記データベースへの参照要求または更新要求を受け付けて、前記ストレージ装置のデータベースを参照または更新するデータベース管理サーバを実行するサーバ計算機と、を備えたデータベース管理システムにおいて、前記データベース管理サーバは、前記更新要求に基づいて前記ストレージ装置のデータベースを読み込んでデータを更新する更新実行部と、前記更新を行ったデータ内の未使用領域を予め設定した文字または値で連続的に上書きする不要情報除去処理を実行する不要情報除去部と、前記データをストレージ装置へ書き込む書込部と、を備え、前記不要情報除去部は、前記更新の種別に基づいて前記不要情報除去処理が必要か否かを判定するとともに、前記不要情報除去処理が必要な場合には、前記更新の種別に応じて前記不要情報除去処理の態様を切り替える
また、前記ストレージ装置は、ネットワークを介して前記データベースの複製を格納する第2のストレージ装置に接続され、前記ストレージ装置は、前記データベースを前記第2のストレージ装置へ転送するリモートコピー部を有し、前記ストレージ装置は、連続した値を圧縮するデータ圧縮部を備えたネットワーク装置を介して前記ネットワークに接続される。
したがって、本発明によれば、ストレージ装置のデータベースをネットワーク装置及びネットワークを介して他の計算機やストレージ装置へ転送するときには、データベースの更新を行ったデータ内の未使用領域が予め設定した文字または値で連続的に上書きされているので、ネットワーク装置で圧縮される。このため、データベースの転送に要する時間を短縮することが可能となる。例えば、正サイトと副サイト間でデータベースの転送を行う場合では、正サイトと副サイトのネットワークを狭帯域幅回線で構築しながらもデータベースの転送(例えば、同期処理)を現実的な時間で実現することが可能となる。そして、狭帯域幅回線が利用可能となることで、システムの運用コストを抑制することができる。
以下、本発明の一実施形態を添付図面に基づいて説明する。
図1は、本発明の第1の実施形態を示し、ログ転送によるディザスタリカバリシステム(以下、DRシステム)の構成を示すブロック図で、正サイトから副サイト2へデータベースのバックアップを行う一例を示す。
図1は、正サイト(現用システム)1の正データベース(以下、正DB)119の更新差分を示すログを副サイト(待機システム)2へ送信し、副サイト2で正データベースのバックアップデータ(DB129)を生成するディザスタリカバリを行うバックアップシステムを示す。
正サイト(現用システム)1は正サーバ100と正ストレージ装置110(正外部記憶装置)から構成される。正サーバ100では、正DBMS(DataBase Management System)101が稼動しており、この正DBMS101(第1のDBMS)がユーザ端末330等から業務を受け付け、正DB119(第1のデータベース)を提供する。なお、正サーバ100は、データベース管理サーバとして機能している。
また、正サーバ100(第1のサーバ)は、ネットワーク310に接続されてユーザ端末330や副サイトの副サーバ130(第2のサーバ、バックアップ計算機)及び管理端末340と通信する。なお、管理端末340は正サイト1内に配置することができる。
正DBMS101は、正サーバ100に接続された正ストレージ装置110に格納される正DB119を管理し、ユーザ端末330等に業務を提供する。また、正DBMS101は、正DB119に更新があったときにはログを生成し、正ストレージ装置110のログ118に格納する。正ストレージ装置110は、通常の稼動状態ではログ118を副サイト2へ転送し、正DB119のバックアップを行う。
正DBMS101は、ユーザ端末330からの要求に応じて正DB119にアクセスするトランザクション実行部104と、正DB119の更新差分からログを生成し正ストレージ装置110に格納するログ管理部105と、正ストレージ装置110の正DB119をメモリ上に保持するDBバッファ102と、生成したログをメモリ上に保持するログバッファ103と、DBバッファ102に保持された更新データを正ストレージ装置110の正DB119に書き込む遅延書込部106と、を備える。
さらに、正DBMS101は、正サイト1と副サイト2の同期処理を高速化するために、正DB119の情報の意味を意識してデータ圧縮の前処理を行う不要情報除去部400と、正DBMS101の動作状態に応じて不要情報除去部400を制御する構成管理部401とを備えている。
正ストレージ装置110は、ディスク装置またはディスクアレイで構成され、正DB119とログ118を格納する。そして、正ストレージ装置110には、正サーバ100からの要求に応じて正DB119やログ118への読み書きを制御する制御部111を有する。また、制御部111は、SAN(Storage Area Network)等のストレージ装置用のネットワークを介して正サイト1内の正サーバ100に接続される。そして、制御部111は、データの圧縮機能を備えたネットワーク装置140に接続される。このネットワーク装置140は、狭帯域回線(例えば、100MbpsなどのIPネットワーク)で構成されたWAN等のネットワーク320を介して副サイト2の副ストレージ装置120(副外部記憶装置)と通信可能となっている。
正ストレージ装置110の制御部111は、正DBMS101からの要求に応じて正DB119またはログ118へのアクセス要求等の発行や、ログ転送の制御を指令するコマンド処理部112と、ログ118が更新されると副サイト2の副ストレージ装置120へ更新されたログ118を送信(リモートコピー)するリモートコピー処理部113と、メモリ上にディスク装置のデータを一時的に保持するディスクキャッシュ116と、コマンド処理部112やリモートコピー処理部113の要求に応じて正DB119やログ118へのアクセスを実行するディスクアクセス制御部117と、を備える。
なお、副サイト2の副ストレージ装置120へのログ118の送信は、同期リモートコピーの他に非同期リモートコピーで行うことができる。また、正ストレージ装置110と正サーバ100の接続は、SAN等のネットワークやI/Oインターフェースなどにより接続される。
ここで、正サイト1の正サーバ100と正ストレージ装置110の構成を図2に示す。図2において、正サーバ100は、正DBMS101の機能要素(プログラムなど)やデータを格納するメモリ11と、メモリ11に格納された機能要素を実行するCPU10と、正ストレージ装置110及びネットワーク310と接続するインターフェース12と、を備える。なお、インターフェース12は、正ストレージ装置110との接続がFC(Fibre Channel)等のSANで、ネットワーク310との接続がIPプロトコルの場合は、独立したインターフェースで構成することができる。
図2において、正ストレージ装置110は、制御部111の機能要素(プログラムなど)やデータを格納するメモリ14と、メモリ14に格納された機能要素を実行するCPU13と、正サーバ100と接続するインターフェース15と、ディスク装置17と接続するインターフェース16とを備える。なお、インターフェース15は、ネットワーク装置140にも接続される。
ネットワーク装置140は、正ストレージ装置110と正サーバ100の接続がFC(Fibre Channel)等のSANで、ネットワーク320との接続がIPプロトコルの場合は、例えば、FC−IPの変換機能を備えたルータなどで構成される。そして、ネットワーク装置140は、正ストレージ装置110から副サイト2へ送信するデータを圧縮するデータ圧縮部141を含んでいる。このデータ圧縮部141は、連続的な文字列を符号(シンボル)で置き代えて圧縮を行うStacker圧縮などの公知の手法を用いるものである。このデータ圧縮部141は、同一の文字列(データ)が連続する場合には、圧縮率を向上させることができる。また、データ圧縮部141は受信した圧縮データを元のデータに伸張する機能も有するものとする。
次に、副サイト2は、図1において、正サイト1からのログ118に基づいて副DB129を生成・更新するログ適用制御部131が稼動する副サーバ130と、正サイト1の正ストレージ装置110から送られてきたログと正DB119の複製である副DB129(第2のデータベース)を格納する副ストレージ装置120と、から構成される。なお、副サーバ130では、正サイト1のDB処理を引き継ぐための、副DBMS132(第2のDBMS)が用意されている。なお、図ではログ適用部131と副DBMS132は同一のサーバ130で稼動させているが、別のサーバで稼動させてもよい。ログ適用部131は軽い処理であるため、例えば、アプライアンスサーバで稼動させ、副サーバ130は停止させておいてもよい。
副ストレージ装置120は、ディスク装置またはディスクアレイで構成され、副DB129とログ128を格納する。そして、副ストレージ装置120には、副サーバ130からの要求に応じて副DB129やログ128への読み書きを制御する制御部121を有する。
副ストレージ装置120の制御部121は、ログ適用制御部131やネットワーク装置150からの要求に応じて副DB129またはログ128へのアクセス要求等の発行や、ログ転送の制御を指令するコマンド処理部122と、メモリ上にディスク装置のデータを一時的に保持するディスクキャッシュ126と、コマンド処理部122の要求に応じて副DB129やログ128へのアクセスを実行するディスクアクセス制御部127と、を備える。また、副ストレージ装置120の制御部121は、副サイト2が正サイト1を引き継いだときに、ログ128が更新されると正ストレージ装置110へ更新されたログ128を送信(リモートコピー)するリモートコピー処理部123を備える。
なお、コマンド処理部122は、正ストレージ装置110から同期化要求があったときには、正サイト1から受信した正DB119を、副サイト2の副DB129に書き込んで同期させる。
副ストレージ装置120は、正サイト1と同様にデータ圧縮機能とデータ伸張機能を備えたネットワーク装置150を介してネットワーク320に接続される。ネットワーク装置150は、正サイト1の正ストレージ装置110から受信した圧縮データを元のデータに伸張(復号)して副ストレージ装置120に転送する。
なお、副サイト2の副サーバ130、副ストレージ装置120、ネットワーク装置150は、図2で示した正サイト1の正サーバ100、正ストレージ装置110、ネットワーク装置140を備え、副サーバ130、副サーバ130は正サイト1と同様にCPU、メモリ、インターフェース、ディスク装置を備える。
次に、図1において、正DBMS101は、ユーザ端末330から問い合わせ(クエリ)を受信すると、トランザクション実行部104は、正DB119から参照や更新の対象となるDBページを正ストレージ装置110から読み込んで、DBバッファ102上にロードする。トランザクション実行部104は、ユーザ端末330からの要求が更新の場合は、DBバッファ102上のDBページを更新する。更新したDBページは、遅延書込部106によって正ストレージ装置110に書き込まれる。なお、DBページは、正DBMS101が管理するデータ(正DB119及び副DB129)の管理単位の一つであり、後述するように、複数の行データを含むデータ構造である。
遅延書込部106は、正DBMS101の性能を確保するため、更新されたDBページの書き込みを、DBバッファ102上の更新とは非同期に行う。遅延書込部106は、例えば、一定時間毎にDBバッファ102の更新部分を正ストレージ装置110に書き込み、あるいは、DBバッファ102のDBページに一定量以上の更新があったタイミングやユーザや管理者からの指示によって正ストレージ装置110への書き出しを実行する。また、正DB119の信頼性向上の観点から、ログ管理部105は必ず正DB119の更新差分をログバッファ103に書き込む。そして、対象となる更新がコミットされた時には、このコミットに同期して正ストレージ装置110のログ118に更新差分情報(ログ)を書き込む。
また、正DBMS101のトランザクション実行部104は、DBバッファ102上でDBページの更新を実行する度に、不要情報除去部400を起動する。不要情報除去部400は、更新が行われたDBページについて未使用の領域(不要情報)があるかを判定し、未使用領域(不要領域)がある場合にはこの領域に予め設定した同一の文字または値を書き込んで、未使用領域をクリアする。
また、正DBMS101の構成管理部401は、管理者またはユーザあるいはログ管理部105の要求などに応じて、不要情報除去部400の有効/無効を設定可能とする。これは、不要情報除去処理が、正DB119と副DB129の同期化処理のときにのみ必要な処理であり、それ以外の場合は、正サーバ100の処理能力が不要情報除去処理の分だけ低下するのを防ぐため、不要情報除去部400の機能を無効化するためである。つまり、構成管理部401は、ユーザ端末330や管理端末340からの指令があったときに不要情報除去部400の機能を有効または無効に設定する。あるいは、ログ管理部105からログ生成機能を停止する通知を受けた場合には、構成管理部401は、正サーバ100でログレスバッチ処理など正DB119の全体が更新される処理が実行されると判断し、不要情報除去部400の機能を有効に設定する。あるいは、夜間や休日などにログレスバッチ処理を周期的に繰り返す場合では、構成管理部401が所定のバッチ処理開始時間になると、不要情報除去部400を有効に設定し、バッチ処理終了時間になると不要情報除去部400を無効に設定するようにしてもよい。
<DBページの概要>
次に、DBページについて説明する。図3は、正DB119(副DB129)を構成するDBページ200の内部構造を示す説明図である。正DB119は、複数あるいは多数のDBページ200で構成される。
DBページ200内には、複数の行情報201〜203が記録される。行情報は、ヘッダ221〜223とデータ部(図中201〜203からヘッダ221〜223を除いた領域)からなる。ヘッダ221〜223には行(行情報)の長さが記録されている。データ部には、文字列や値などのデータが格納されている。なお、本実施形態の行情報201〜203は、可変長の例を示している。
ひとつのDBページ200には、行情報201〜203以外に、複数の制御情報、すなわち、リンク211〜213とトレイラ230を含む。本実施形態のDBページ200では、DBページ200の領域の終端(図中右下)アドレスにトレイラ230が配置され、DBページ200の領域の先頭(図中左上)アドレスから行情報201〜203が格納されていく。そして、リンク211〜213はトレイラ230の先頭アドレスからDBページ200の先頭アドレスへ向けて、順次格納されている。
リンク211〜213は、行情報201〜203と結び付けられており、リンク211〜213に格納される値としては、対応する行情報201〜203への(DBページ内の)オフセット値が格納される。通常、リンク211〜213には、DBページ200の大きさからトレイラ230を減じた値より小さな正の整数が記録される。例えば、リンク211〜213には、DBページ200の領域の先頭アドレスからのオフセット値が設定される。行情報を削除した場合には、削除された行情報に対応するリンクには正DBMS101から見て無効な値(例えば、負の整数)が記録される。
トレイラ230には、DBページ200で使用しているリンクの数(行情報の数)を示す使用リンク数231と、DBページ200の領域に割り当て済みのリンクの数を示す割り当てリンク数232と、DBページ200の領域内で使用されていない領域を指し示す未使用領域オフセット233と、DBページ200内の行情報のいずれかひとつに更新や削除によって未使用領域となった領域の有無を示す未使用領域フラグ240が設定される。
割り当てリンク数232は、行情報201〜203のために割り当てられたリンク211〜213の数であり、使用リンク数231は、割り当て済みのリンクの中で有効なリンクの数を表す。そのため、例えば、行情報を削除した場合には、使用リンク数231が1だけ減じられる。逆に、行情報を追加した場合には、使用リンク数231と割り当てリンク数232が加算される。
未使用領域オフセット233は、DBページ200内の未使用領域へのオフセットであり、図3の例では、最後の行情報203の終端アドレスを指す。つまり、新たに、行情報を追加する際には、未使用領域オフセット233の位置からヘッダとデータ部を書き込むことになる。
このような構造のDBページ200の行情報201〜203、ヘッダ221〜223及び制御情報は正DBMS101によって更新され、また、後述するように、不要情報除去部400もDBページ200の領域の行情報202と制御情報を更新する。
例えば、あるDBページ200に行情報を挿入する場合は、DBページ200内の空き領域に行情報を生成し、この行情報へのポインタをリンクに記録する。行情報を参照する場合には、このリンクを参照してヘッダに記載された長さのデータを行情報として読み込む。正DBMS101はオンライン性能を確保するための設計がなされているため、削除を行う場合には、リンク領域のみ変更を行い、データ本体はそのままにしておく。
例えば、行情報を削除する場合、正DBMS101は図4に示すような処理を実行する。図4は、図3に示したDBページ200の行情報202を削除した状態を示す説明図である。
行情報202を削除する場合、正DBMS101は削除対象の行情報202及びヘッダ222に対応するリンク212に所定の無効値(負値)を書き込む。これにより、ヘッダ222及び行情報202のオフセット値が無効となり、正DBMS101は、行情報202のデータにアクセスできなくなる。実際には、ヘッダ222及び行情報202はDBページ200の領域内に存在するが、アドレス情報を削除することで見かけ上データを消去したものとする。
そして、正DBMS101は、行情報202及びヘッダ222の領域が未使用となったので、未使用領域フラグ240を「1」にセットし、このDBページ200に不要な情報を含む未使用領域が発生したことを示す。なお、未使用領域フラグ240が「0」のときには、未使用領域(不要情報)がないことを示す。なお、不要情報とは、DBページ200の領域内で、リンク211〜213等から参照されない領域で、かつ、不連続な値や文字列が格納されている領域を示す。
一方、正DBMS101が行情報を更新する際には、行情報の長さが増加する場合がある。図5は、図3に示したDBページ200の行情報202を更新し、行長が増大した状態を示す説明図である。
正DBMS101は、行情報202を更新した結果、行情報202の長さが増大したので、現在の行情報202を未使用領域として新たな未使用領域に行情報202を複写して更新する。行情報202のデータ長が増大した場合、直前の行情報201の終端アドレスと、直後の行情報203の先頭アドレスの間に、更新後の行情報202’及びヘッダ222’を格納することができなくなる。
正DBMS101は、DBページ200の未使用領域オフセット233の値を読み込んで、この値が示すアドレスから書き込みを行う。つまり、図示の状態では未使用領域オフセット233の値は、DBページ200内の最後の行情報となる行情報203の終端となる。そして、正DBMS101は、この最後の行情報203の終端アドレスから、更新後のヘッダ222’と行情報202’を書き込む。そして、正DBMS101は、行情報202’のヘッダ222’の先頭アドレスのオフセットを、新たな行情報203の後の値に変更してリンク212に書き込む。また、最後の行情報は今回更新した行情報202’に変更されたので、新たな未使用領域の終端となる行情報202’の終端のアドレスのオフセットを、未使用領域オフセット233に記録する。なお、行長が変更された場合のリンク操作としては以下のようにしてもよい。すなわち、旧リンク212は負の値を記録し、新たなリンクを割り当てた上で、該リンクには行情報202’のオフセットを記録する。
このように、行情報のデータ長が増大する場合も、更新前のデータはそのまま保存されてDBページ200内に未使用領域が発生し、リンク212とポインタなどの制御情報のみが更新される。
<データ圧縮の概要>
上記図3〜図5で示したように、正DBMS101は、データの削除や更新を行う際には、古いデータを残して制御情報だけを書き換えることでDB119の処理を行っていた。このようなDB処理は、必要最低限の処理のみを行うため正DBMS101のオンライン性能を確保の点からは有効だが、同期処理のために副サイト2へ正DB119を転送する場合では、ネットワーク装置140における圧縮率を下げる要因となりうる。ネットワーク装置140のデータ圧縮部141では、同一の値や文字が連続していれば容易にデータの圧縮率を上げることができる。
そこで、本発明では、DBページ200内の未使用領域の内容と、ネットワーク装置140のデータ圧縮の特性に着目したもので、正サイト1と副サイト2の同期処理を行う前に、DBページ200内の不要情報を連続的な同一の文字や値に更新しておくものである。
図6は、本発明の概要を示す説明図である。図6において、まず図中P1のように、正サイト1の正DBMS101では、更新や削除を行う度に不要情報除去部400が起動して、DBページ200内の未使用領域に含まれる不要な情報(DBページ200における行情報202)を「0」などの所定の文字または値で連続的に上書きしておく(0でクリアする)。そして、正DB119と副DB129の同期処理の際には、不要な情報をクリアした状態の正DB119をネットワーク装置140で圧縮してから副サイト2へ転送を行う(P2)。正ストレージ装置110から送信された正DB119のデータは、図6のP2で示すように、非圧縮であり、正DBMS101が書き込んだDBページ200の内容がそのままネットワーク装置140に送られる。図6のP1で、削除された行情報202(図3参照)の領域は、所定の文字または値で連続的に上書きれた未使用領域202Aとなる。
正DB119のデータは、正サイト1のネットワーク装置140のデータ圧縮部141で圧縮される(P3)。この圧縮の際には、未使用領域202Aの前後の行情報201、行情報203の内容が不連続な値が多い場合には、圧縮率の向上は見られない。これに対して、図6のP1で所定の文字または値で連続的に上書きされた未使用領域202Aは、同一の文字または値が連続するため、ネットワーク装置140のデータ圧縮部141で、大幅に圧縮することができる(P4)。
このように、未使用領域202Aを大幅に圧縮した後に、ネットワーク装置140から狭帯域幅回線で構成されたWANなどのネットワーク320へ圧縮後のデータ201’、202A’、203’が送信される。副サイト2では、ネットワーク装置150で受信したデータを伸張して元のデータへ復元する。そして、ネットワーク装置150から転送されたデータは副ストレージ装置120に格納され、副DB129は正DB119に同期する。
このように、本発明では、DBページ200内の未使用領域に残存する不要な情報を0クリアしてから転送を行うため、特別なハードウェアや複雑な処理を加えることなく、ネットワーク装置140、150で高い圧縮率が得られることが期待できる。これにより、正ストレージ装置110と副ストレージ装置120を接続するネットワーク320を狭帯域幅回線で構築しながらもデータベースの同期処理を現実的な時間で実現し、かつ複雑な処理を必要としないので、DRシステムの運用コストを抑制することが可能となるのである。
<処理の詳細>
以下、正DBMS101の詳細な処理の一例について説明する。図7は、正DBMS101で行われるDBページ200の更新処理のフローチャートを示し、ユーザ端末330などから要求(クエリ)を受け付ける度に実行されるものである。
図7において、正DBMS101のトランザクション実行部104は、受け付けたクエリを解析し、クエリプランを生成する(500)。このクエリプラン作成により、要求された処理に必要なDBページ200を特定することができる。続いて、必要なDBページ200を正ストレージ装置110またはDBバッファ102から入力する(501)。
トランザクション実行部104は、特定されたDBページ200がDBバッファ102上にあれば、DBバッファ102から該当するDBページ200を入力し、DBバッファ102に特定したDBページ200がなければ、正ストレージ装置110からDBバッファ102へ読み込んで、トランザクション実行部104に入力する。
次に、構成管理部401において、不要情報除去部400が有効になっているか否かを判定する(502)。不要情報除去部400が無効であれば、トランザクション実行部104は、DBページ200を更新する(503)。
一方、不要情報除去部400が有効であるならば、トランザクション実行部104は、該DBページ200に関して、未使用領域の不要情報除去処理が必要かどうかを判定する(504)。すなわち、上記ステップ500で解析したクエリの種別が、行情報の削除、あるいは、リンクの張替えを伴うもの(上記図5の行長の増加)であるか否かを判定する。判定の結果、不要情報除去処理が不要であれば、トランザクション実行部104は、DBページ200の更新を行う。一方、不要情報除去処理が必要であれば、DBページ200の更新を行った後に、不要情報除去部400を呼び出す(506,507)。
次に、図8は上記図7のステップ507で呼び出される不要情報除去部400で行われる処理の一例を示すフローチャートである。
不要情報除去部400は、最初に、DBページ200に対する更新の種別を判定する(602)。DBページ200に対する更新の種別が削除であればステップ608へ進み、更新の種別が削除以外であればステップ603に進む。
更新の種別が削除の場合は、削除対象の行情報(例えば、図4のDBページ200内の行情報202)の全領域(ヘッダ222を含む)を所定の文字(または値)「0」で連続して上書きする(608)。所定の文字(または、値)を書き込む領域(未使用領域)は、図3で示したように削除対象のリンクが指し示すアドレスを未使用領域の先頭アドレスとし、この先頭アドレスにヘッダ221の値を加えたアドレスを未使用領域の終端アドレスとする。そして、未使用領域の先頭アドレスから終端アドレスまで連続的に同一の文字または値を上書きする。例えば、図4のように、行情報202を削除するときには、リンク212が指し示すアドレスからヘッダ222の値を加えたアドレスまでが未使用領域となる。なお、この時点では、リンク211は更新されていないのでヘッダ222を参照できる。
続いて、対応するリンク(例えば、図4のリンク212)の値を所定の無効な値である負値に更新する(608)。そして、不要情報除去部400は、トレイラ230の使用リンク数231の値を1だけ減じて処理を終了する。
次に、DBページ200に対する更新の種別が削除でない場合、すなわち、リンクの張替えが行われる場合はステップ603に進む。ここで、リンクの張替えとしては、上記図5の行情報202’のように、例えば、行情報のサイズ変更に伴って、更新後の行情報を別領域へコピーする場合などである。リンクの張り替えの場合は、更新後の行情報のコピー先となるオフセット値を計算する(604)。例えば、同一ページ内であるならば、未使用領域オフセット233を用いればよい。
続いて、不要情報除去部400は、上記演算で求めたオフセット値以下のアドレスに更新後の行情報をコピーする(604)。次に、更新前の行情報の全領域を所定の文字(または値)「0」で連続して上書きする(605)。さらに、不要情報除去部400は、更新前の行情報に対応するリンクの値を、上記ステップ603で求めたオフセット値に置き換える(606)。なお、未使用領域オフセット233の値は、更新後の行情報の終端アドレスを指し示すように変更して処理を終了する。
以上の処理により、削除やリンクの張り替えが発生すると、DBバッファ102に読み込まれたDBページ200は、不要情報除去部400が未使用領域を所定の値で連続的に上書きして、不要情報をクリアする。この後、遅延書込部106がDBバッファ102のDBページ200を正DB119に当該DBページ200を書き出す。
夜間のログレスバッチ処理の完了した後や、回線障害などで正サイト1のリモートコピーを一旦停止した後に、リモートコピーを再開するときなど、正DBMS101が同期処理を実行する。
この同期処理は、正DBMS101が正ストレージ装置110へ正DB119を副サイト2へ転送するように指令することで開始される。正ストレージ装置110は、正DB119の内容をネットワーク装置140からネットワーク320を介して副ストレージ装置120へ転送する。
ネットワーク装置140は、図6で示したように、データ圧縮部141が連続した値を効率よく圧縮することができるので、0クリアされたDBページ200の未使用領域202Aは極めて高い圧縮率となって、正DB119の実質的な転送量を大幅に削減できる。したがって、正ストレージ装置110と副ストレージ装置120を接続するネットワーク320を狭帯域回線で構成しても、転送する正DB119の容量を極めて小さくできるので、前記従来例に比して短時間で同期処理を完了することができるのである。例えば、深夜にログレスバッチ処理を開始して早朝に終了した場合、早朝から業務開始時刻までの間に正DB119と副DB129の同期処理を完了することができるのである。
このように、本発明では特別なハードウェアを追加することなく、かつ、管理者などの労力も必要とせずに、低コストなネットワーク320を利用しながら同期処理を行うことができるので、DRシステムの運用コストを抑制できるのである。
なお、上記不要情報除去部400の有効または無効を管理端末340等で設定する場合には、構成管理部401が管理端末340へ図9で示すような設定画面(ユーザーインターフェース)700を提供しても良い。図9は管理端末340の表示画面の一例を示す説明図である。
図9において、不要情報除去部400の有効または無効の設定は、例えば、チェックボックス701を用いて行う。このチェックボックス701をクリックなどにより選択し、図中「OK」ボタンをクリックすることで、構成管理部401は不要情報除去部400を有効にする。逆に、チェックボックス701の選択を解除すれば、構成管理部401は不要情報除去部400を無効にする。
なお、図9のユーザーインターフェースでは、不要情報除去部400の有効にした場合に、正DBMS101の処理能力に影響が生じる可能性があることを示す表示部702を設けても良い。このようなユーザーインターフェース700により、DB同期化時等に管理者が不要情報除去処理を有効にすることが可能となる。
<第2実施形態>
図10は、第2の実施形態を示し、正サイト1の正DBMS101及び正ストレージ装置110のブロック図である。本第2実施形態は、前記第1実施形態の不要情報除去部400を遅延書込部106が正DB119へDBページ200を書き出すときに機能する用にしたものであり、その他の構成は前記第1実施形態と同様である。
不要情報除去部400は、前記第1実施形態のトランザクション実行部104に代わって、遅延書込部106から呼び出される。なお、不要情報除去部400の有効または無効の設定は前記第1実施形態と同様に構成管理部401が管理する。
遅延書込部106は、DBバッファ102上のダーティページ(DBバッファ102の書き戻し対象ページ)を正ストレージ装置110へ出力するタイミングを一定時間経過後や一定の更新量があった時などに設定する。
そして、遅延書込部106がDBバッファ102上のDBページ200を正ストレージ装置110の正DB119へ書き出すときには、不要情報除去部400が呼び出される。
不要情報除去部400は、DBバッファ102から書き戻し対象ページ内を解析し、DBページ200内部の未使用領域(不要情報)を所定の文字(または値)「0」で上書きした後に、正ストレージ装置110への出力を行う。遅延書込部106から不要情報除去部400を呼び出す場合には、DBページ200の同一領域に繰り返し更新が行われる場合でも、正ストレージ装置110へDBページ200を書き出すときに1度だけ不要情報除去部400を呼び出せばよい。このため、同一のDBページ200に複数回の更新が発生する場合でも、このDBページ200に対する不要情報除去部400の呼び出し回数を削減でき、正DBMS101の処理性能への影響を最小限減にすることができる。
前記第1実施形態のように、不要情報除去部400をトランザクション実行部104から呼び出す場合には、DBページ200の更新の度に不要情報除去部400が呼び出されてしまう。これに対して、本第2実施形態では、不要情報除去部400は遅延書込部106がDBバッファ102からDBページ200を正ストレージ装置110へ書き出すときにのみ不要情報除去部400を呼び出すため、正DBMS101のオンライン性能への影響を抑制することができる。
遅延書込部106から不要情報除去部400を呼び出す場合、未使用領域の有無(不要情報)を判定するには、全てのリンクをチェックする方法が考えられる。しかし、DBページ200の更新時には、トランザクション実行部104では更新の種別が分かっているため、更新の結果により未使用領域が生成されるかを判断することができる。したがって、更新時にはトランザクション実行部104が、DBページ200に未使用領域の有無を表す未使用領域フラグ240を設定する。つまり、DBページ200を新規に作る場合、あるいは、新たにDBページ200をDBバッファ102へ読み込むときには、トランザクション実行部104がDBページ200のトレイラ230中の未使用領域フラグ240を「0」に設定する。そして、トランザクション実行部104は、DBページ200に対して未使用領域が発生する更新を行った場合にのみ、未使用領域フラグ240を1にセットする。この未使用領域フラグ240が「0」の場合は未使用領域が無いことが分かり、個々のリンク解析が不要となるため、正DBMS101のオンライン性能への影響をさらに削減することが可能となる。
次に、正DBMS101で行われる処理の一例について説明する。図11は、正DBMS101で行われるDBページ200の更新処理のフローチャートを示し、ユーザ端末330などから要求(クエリ)を受け付ける度に実行されるものである。
ステップ500、501では、前記第1実施形態の図7と同様に、正DBMS101のトランザクション実行部104は、受け付けたクエリを解析し、クエリプランを生成する(500)。そして作成したクエリプランにより、要求された処理に必要なDBページ200を特定し、必要なDBページ200を正ストレージ装置110またはDBバッファ102から入力する(501)。
次に、ステップ502も前記第1実施形態の図7と同様に、トランザクション実行部104は、構成管理部401において、不要情報除去部400が有効になっているか否かを判定し、不要情報除去部400が無効であれば、トランザクション実行部104は、DBページ200を更新し(503)、不要情報除去部400が有効であれば未使用領域の不要情報除去処理が必要かどうかを判定する(504)。
ステップ504も前記第1実施形態の図7と同様に、クエリの種別が行情報の削除、あるいは、リンクの張替えを伴うものであるか否かを判定し、不要情報除去処理が不要であれば、トランザクション実行部104は、DBページ200の更新を行う(505)。
一方、不要情報除去処理が必要と判定したときには、トランザクション実行部104がDBページ200のトレイラ230中の未使用領域フラグ240を「1」にセットする(900)。そして、トランザクション実行部104は、DBページ200の更新を行う(506)。
トランザクション実行部104では、上記の処理をユーザ端末330等からクエリを受け付ける度に実行し、DBバッファ102上のDBページ200に対して更新(あるいは参照)を実行し、更新の際に未使用領域が発生すると未使用領域フラグ240をセットしておく。つまり、本第2実施形態の場合、トランザクション実行部104は、未使用領域フラグ240をセットする点が従来例とは異なる。
次に、遅延書込部106で行われる処理の一例を、図12に示す。図12の処理は、遅延書込部106が所定のタイミングで実行するもので、例えば、一定時間毎にDBバッファ102の更新部分を正ストレージ装置110に書き込み、あるいは、DBバッファ102のDBページに一定量以上の更新があったタイミングやユーザや管理者からの指示によって正ストレージ装置110への書き出しを実行する。
遅延書込部106は、まず、デステージ(正ストレージ装置110へ書き出す)すべきダーティページ(更新済みのDBページ200)を予め設定した条件により特定する(1000)。この条件としては、例えば、ダーティページの全てをデステージの対象とする場合と、予め与えられた比率に基づいてダーティページの一部のみをデーステージする場合がある。
次に、不要情報除去部400が有効となっているかを構成管理部401に問い合わせて確認する(1001)。不要情報除去部400が無効の場合では、遅延書込部106は通常通り、対象となるDBページ200を全てデステージする(1002)。
一方、不要情報除去部400が有効になっている場合は、最初に全てのDBページ200がデステージ済みであるか否かを判定する(1003,1004)。デステージ対象のDBページ200がなければ処理を終了する(1007)。デステージの対象となるDBページ200がDBバッファ102上にある場合(デステージが未了のDBページ200)には、遅延書込部106が該DBページ200の解析を行う(1005)。
DBページ200の解析は、遅延書込部106が対象のDBページ200のトレイラ230中の未使用領域フラグ240を読み込んで、このフラグの値によってステップ1006で未使用領域の有無を判定する。
ステップ1006では、未使用領域フラグ240が「1」であれば未使用領域があると判定してステップ1009へ進み、「0」であれば未使用領域が無いと判定してステップ1007へ進む。
未使用領域が無いと判定されたステップ1007では、対象のDBページ200についてそのままデステージを行った後、ステップS1へ戻る(1008)。
一方、未使用領域がある場合のステップ1009では、不要情報除去部400を呼び出して対象のDBページ200内の未使用領域に所定の文字(例えば、「0」)を連続的に書き込む。このステップ1009の処理は、前記第1実施形態の図8と同様であり、図8のステップ602の判定は、不要情報除去部400がリンク内に所定の無効値(例えば、負値)があれば、更新種別が削除であると判定すればよい。
そして、不要情報除去処理が完了すると対象のDBページ200をデステージし(1010)、ステップS1へ戻る(1011)。
以上のように、不要情報除去部400が有効の場合には、遅延書込部106がDBページ200内のトレイラ230中の未使用領域フラグ240を読み込んで、DBページ200毎に未使用領域の有無を判定する。そして、未使用領域があれば所定の文字または値を連続的に書き込んで、同期化時の前処理を行う。これらの処理を、デステージの対象となる全てのDBページ200について実施した後に処理を完了する。
このように、本第2実施形態では、遅延書込部106が機能するときに不要情報除去部400を呼び出すようにしたので、未使用領域のあるDBページ200について更新の度に不要情報除去処理を行う必要が無くなって、正サーバ100の負荷を低減できる。これにより、サーバ100の処理能力を正DBMS101の処理に割り当てることで、トランザクション処理性能の低下を抑制できる。
なお、上記においては遅延書込部106が、ステップ1005のDBページ200の解析を行う例を示したが、不要情報除去部400がステップ1005の処理を行うようにしても良い。
<第3実施形態>
図13は、第3の実施形態を示し、前記第2実施形態の図12で示したDBページ200の解析処理(1005)と不要情報除去処理(1009)をリンク211〜213(図3参照)を解析して行うようにしたもので、その他の構成は前記第2実施形態と同様である。
前記第2実施形態では、遅延書込部106がDBページ200の未使用領域の有無の判定を未使用領域フラグ240の値に基づいて行ったが、本第3実施形態は、DBページ200の未使用領域フラグ240を用いない場合(または、DBページ200に未使用領域フラグ240がない場合)を示す。
図13は、図12のステップ1005、1006,1009の処理を、DBページ200のリンク211〜213に基づいて遅延書込部106と不要情報除去部400が行う場合のフローチャートを示す。
最初にステップ2302において、遅延書込部106は、対象のDBページ200内の全てのリンク211〜213を解析したかを否かを判定する(2302)。全てのリンク211〜213の解析が完了していれば処理を終了し(2306)、解析が未了のリンク211〜213があればステップ2303へ進む。
ステップ2303では、解析が未了のリンク211〜213があれば、遅延書込部106は該リンクを解析する。
続いて、ステップ2304では、リンク211〜213が指し示す領域(図3の行情報201〜203及びヘッダ221〜223)が未使用領域(不要情報)であるかを判定する。リンク先の領域が未使用領域であるか否かの判定は、例えば、リンク211〜213に記録されている値で判定することができる。例えば、リンクの値が所定の無効値(例えば、負の整数)であれば、未使用領域であると判定すればよい。上記図4で示したように、行情報202及びヘッダ222を削除した場合には、この行情報201及びヘッダ221が格納された先頭アドレスを指し示すリンク212は所定の負値が設定されている。
あるいは、DBページ200内の割り当てリンク数232(図3参照)と使用リンク数231を比較し、割り当てリンク数232よりも使用リンク数231が小さければ、未使用領域があると判定しても良い。
リンク先が未使用領域(不要情報)であると判定した場合にはステップ2306へ進み、未使用領域ではないと判定したときにはS2305からステップS1へ戻る。
ステップ2306では、図6で示したように、不要情報除去部400が、未使用領域を所定の文字(例えば、「0」)で連続して上書きする。
この上書きを実施する未使用領域の位置は、例えば、図6の例では、負値となっているリンク212の前後の有効なリンク211及びリンク213から求めることができる。すなわち、負値となっているリンク212の前方のリンク211から未使用領域の先頭アドレスを求め、負値となっているリンク212の後方のリンク213から未使用領域の終端アドレスを求めることができる。つまり、負値となっているリンク212の前方のリンク211からヘッダ221の値を参照し、リンク211が指し示すアドレスにヘッダ221の値を加算したものが行情報201の終端アドレスとなる。そして、この終端アドレスに1を加えたものが未使用領域の開始アドレスとなる。一方、負値となっているリンク212の後方のリンク213が指し示すアドレスから1を減じたものが未使用領域の終端アドレスとなる。なお、未使用となったリンクに負値を記録する時に、以前に記録されている値に−1を乗じている場合には、未使用領域は以下のように求めることも可能である。すなわち、記録されている値の絶対値を未使用領域の先頭アドレスとする。さらに、先頭アドレスから行長を求め、先頭アドレスに行長を加算したものが終端アドレスとなる。
このようにして求めた未使用領域の開始アドレスから終端アドレスまでの領域に所定の文字(または値)を連続して上書きする。これにより、未使用領域の開始ドレスから終端アドレスまでの領域は、同一の文字または値が連続的に格納されることになる。
以上の処理が完了した後に、現在のDBページ200をデステージして(慈雨12の1007及び1010の処理)、全てのデステージ対象のDBページ200について解析と未使用領域のクリアを行えばよい。
なお、上記では、無効なリンクがあった時に、リンク先の情報を0で上書きしたが、新たな(全体を0で上書きした)DBページ200を用意し、トレイラ230と有効なリンクとその行情報のみをコピーしてもよい。
<第4実施形態>
図14は、第4の実施形態を示し、正サイト1の正DBMS101及び正ストレージ装置110のブロック図である。本第4実施形態は、前記第1実施形態の不要情報除去部と構成管理部を正ストレージ装置110の制御部111に設けたもので、その他の構成は前記第1実施形態と同様である。
正ストレージ装置110の制御部111には、正DB119へ書き込むDBページ200中の未使用領域を所定の文字で連続的に上書きするクリアする不要情報除去部1400と、この不要情報除去部1400の有効、無効を設定する構成管理部1401が設けられる。その他の機能要素は前記第1実施形態と同様である。
不要情報除去部1400を正ストレージ装置110内に設ける場合には、不要情報除去機能の有効/無効、及び、どの領域を不要情報除去の対象とするかを構成管理部1401で設定する。本第4実施形態では、正DB119の領域に対して書き込みが行われるときに、不要情報除去部1400が起動するように構成管理部1401へ予め設定しておく。
コマンド処理部112は正DBMS101から書き込み要求を受け付けると、最初に、正DB119へ書き込むDBページ200が不要情報除去の対象であるかを判定する。
構成管理部1401で設定された領域(ここでは正DB119)に書き込みが行われた場合には、不要情報除去部1400が正DBMS101から受信したDBページ200を解析して内部に未使用領域(不要情報)があるか否かを判定する。なお、この判定は、前記第2または第3実施形態と同様にして不要情報除去部1400が実施する。
対象のDBページ200に未使用領域があれば、不要情報除去部1400を呼び出し、内部の未使用領域(不要情報)をクリアしてから、キャッシュ126に格納する。このとき、リモートコピー処理部113でリモートコピー機能が有効に設定されている場合には、リモートコピー処理部113が呼び出され、格納対象のDBページ200は、副サイト2の副ストレージ装置120に転送される。
そして、不要情報除去部1400がDBページ200の未使用領域のクリアを完了すると、コマンド処理部112はキャッシュ116上のデータを、ディスクアクセス制御部117によって、正DB119の領域に書き込む。なお、ディスクアクセス制御部117は、キャッシュ116上の更新データの量などが所定の条件となったときや所定の周期などに応じてディスク装置の所定の領域に受け付けたデータを格納する。
図15は、正ストレージ装置110の制御部111(コマンド処理部112及び不要情報除去部1400)で行われるデータ格納処理の一例を示すフローチャートである。
制御部111は、まず、正DBMS101から更新要求を受け付ける(1300)。次に、構成管理部1401に問い合わせを行って、不要情報除去部1400が有効になっているかを判定する(1301)。また、このとき、制御部111は構成管理部1401に設定された未使用領域の監視対象となるディスク装置の領域を判定する。例えば、未使用領域の監視を行うディスク装置の領域を正DB119に設定しておく。
上記判定では受け付けた更新要求が、書き込み先が正DB119の領域で、かつ、不要情報除去部1400が有効になっているときに、ステップ1302へ進んでデータ(DBページ200)の解析を行う。
一方、不要情報除去部1400が無効の場合あるいは書き込み対象が正DB119以外の場合(例えば、ログの書き込み)では、キャッシュ116へ受け付けた更新要求のデータを書き込む(1315)。そしてキャッシュ116上のデータは、ディスクアクセス制御部117により、非同期でキャッシュ116から該当する領域(ボリューム)へ書き込みが行われる。キャッシュ116に格納した後には、S0へ戻って次の更新要求を受け付ける。
上記受け付けた更新要求がディスク装置の所定の対象領域に対するもので、かつ、不要情報除去部1400が有効な場合では、DBページ200の解析を行う(1302)。
ステップ2303では、不要情報除去部1400がDBページ200を解析し、未使用領域の有無を検出する。なお、未使用領域の検出は、上記第2または第3実施形態と同様である。
ステップ1303では、上記解析の結果、更新要求に含まれるDBページ200に未使用領域があるか否かを判定する。未使用領域があればS1に進んでDBページ200内のリンク211〜213を検査する。一方、受け付けたDBページ200に未使用領域がなければ、このDBページ200をキャッシュ116に格納してからS0へ戻り、次の更新要求を受け付ける(1304,1305)
未使用領域がある場合には、DBページ200内の全てのリンク211〜213について解析を行ったか否かを判定する(1306,1307)。
DBページ200内の全リンクの解析が完了していれば、このDBページ200をキャッシュ116へ格納してからS0へ戻る(1313,1314)。解析が未了のリンクがあればステップ1308でリンクに対応する領域が未使用領域であるか否かを解析する。なお、このリンク先が未使用領域であるか否かの解析は前記第2,第3実施形態と同様である。
そして、ステップ1309では、上記解析を行ったリンク211〜213が指し示す行情報201〜203が未使用領域であるか否かを判定し、未使用領域であればステップ1311へ進んで、未使用領域に所定の文字(または値)を連続的に上書きする(1311)。そして、S1へ戻ってDBページ200内の全てのリンク211〜213について未使用領域の解析が終わるまで処理を繰り返す(1312)。
一方、解析したリンク211〜213先の領域が未使用領域でなければ、S1へ戻ってDBページ200内の全てのリンク211〜213について未使用領域の解析が終わるまで処理を繰り返す(1310)。
以上のように、正ストレージ装置110でDBページ200の未使用領域をクリアする場合は、正DBMS101からの更新要求を受け付ける度に、コマンド処理部112が不要情報除去部1400を呼び出して、未使用領域があれば同一の文字または値を連続的に上書きし、同期化時の圧縮の前処理を実行することができる。
そして、正ストレージ装置110で未使用領域のクリアを実行するので、正DBMS101が稼動する正サーバ100の処理能力が不要情報除去処理で低下するのを抑制できる。
なお、上記第4実施形態では、不要情報除去部1400の有効または無効の設定は、正DBMS101を介して管理欄末340等から行えばよい。この場合、正DBMS101は、管理欄末340等から受信した指令を正ストレージ装置110のコマンド処理部112に送って、設定を実行させることができる。
上記不要情報除去部1400の有効または無効を管理端末340等で設定する場合には、正DBMS101が管理端末340へ図16で示すような設定画面(ユーザーインターフェース)1200を提供しても良い。図16は管理端末340の表示画面の一例を示す説明図である。
図16において、不要情報除去部1400の有効または無効の設定は、例えば、チェックボックス1201を用いて行う。このチェックボックス1201をクリックなどにより選択し、図中「OK」ボタンをクリックすることで、正DBMS101は正ストレージ装置110に対して不要情報除去部1400を有効にするよう指令する。逆に、チェックボックス1201の選択を解除すれば、正DBMS101は正ストレージ装置110に対して不要情報除去部1400を無効にするよう指令する。
なお、図16のユーザーインターフェースでは、不要情報除去部1400の有効にした場合に、正ストレージ装置110の処理能力に影響が生じる可能性があることを示す表示部1202を設けても良い。このようなユーザーインターフェース1200により、DB同期化時等に管理者が不要情報除去処理を有効にすることが可能となる。
ここで、正ストレージ装置110の不要情報除去部1400では、DBページ200の解析を行うが、そのためには、正ストレージ装置110がDBページ200のフォーマットを知っている必要がある。そして、正ストレージ装置110のディスク装置17内に複数のボリュームがあり、複数種のデータベースを格納可能な場合では、設定画面1200で、チェックボックス1203,1204,1205のようにDBMSの種類を選択できるようにしても良い。そして、設定画面1200からで、どのDBMSを不要情報除去処理の対象とするかを指定する。また、不要情報除去処理の対象となるディスク装置17の領域指定も行うようにしてもよい。例えば、図16に示すLU(論理ユニット)番号やLU内の論理アドレス(LBA:Logical Block Address)を文字入力領域1206,1207,1208で指定できるようにする。これにより、管理欄末340等から不要情報除去処理を実施するDBMSの種類やディスク装置17の領域やアドレスを詳細に設定可能となる。
図17は、図14に示した正サイト1と副サイト2で構成されるDRシステムを示すブロック図である。
図17では、正ストレージ装置110内に不要情報除去部1400を有しており、上記のように正DBMS101の更新要求に応じてDBページ200の未使用領域のクリアを行う。
副サイト2は、リモートコピー機能を有する副ストレージ装置120とログ適用を行う副サーバ130からなる。ネットワーク320は、圧縮・伸張機能を有するネットワーク装置140,150が狭帯域回線のWAN等のネットワーク320を介して接続されている。
このDRシステムでは、平常時は、ログのみを正サイト1から副サイト2へ転送し、副サイト2では受信したログ128を副DB129に適用することで、副DB129を回復する。
しかし、正サイト1からログ出力がない運用を行った後に、正DB119と副DB129の同期化が必要となる場合には、構成管理部1401で不要情報除去部1400を有効にした後、正DB119を正ストレージ装置110のリモートコピー処理部113で副サイト2へリモートコピーを行うように設定する。
このとき、正DB119内の未使用領域(不要情報)が0で上書きされているため、ネットワーク装置140での圧縮率が高まるため、狭帯域幅回線であっても現実的な時間で処理が行えるのである。
図18は、上記図17に示したログベースのDRシステムで、正DB119でログレズバッチ処理を実施した後、正DB119と副DB129の同期化を行う際のタイムチャートである。
正DB119と副DB129の再同期が必要となるケースとしては、ログレスバッチがある。ログレスバッチとは、正DB119で大量の更新を含むため、そのまま実行するとログ出力がネックとなり十分なオンライン性能が得られないことから、ログ出力を一時的に停止した上で正DB119の更新を実行する形態を指す。
ログベースのDRシステムではログ118を副サイト2へ転送することが前提となるため、ログ118が副サイト2へ転送されない期間については、正DB119への更新はリモートコピーで副サイト2の副DB129で複製する。この処理について、図18を参照しながら以下に説明する。
まず、最初に正DBMS101で同期点を作成する(1600)。これは、管理欄末340等から正DBMS101に指令を行う。同期点作成の方法としては、静止化(トランザクションを決着させると共に、ダーティページを正ストレージ装置110に書き出す)や正常停止が考えられる。副サイト2ではこの同期点まで適用を行った後、副サイト2におけるログ適用を停止する(1610)。
次に、正サイト1において、正DB119が副サイト2の副DB129へリモートコピーを行うように、リモートコピー処理部113の設定を変更する(1601)。続いて、不要情報除去部1400を有効にする(1602)。
不要情報除去部1400を機能させた状態で、ログレスバッチ処理を開始する(1603)。このとき、正ストレージ装置110のリモートコピーにより、正DB119の内容は副サイト2の副DB129へ転送される設定になっているため、ログレスバッチによる更新は副サイト2の副DB129に反映される。ログレスバッチ処理の終了確認後(1604)、再び同期点の作成を行う(1605)。
続いて、正サイト1で正DBMS101の副サイト2へのリモートコピーを遮断するように、リモートコピー処理部113の設定を変更する。副サイト2では、2回目の同期点からログ適用を開始するようログ適用制御部131へ管理欄末340等から指令する(1611)。最後に、正サイト1では、正ストレージ装置110の不要情報除去部1400を無効に設定し、オンライン処理の受付を再開し、通常のログベースのDRシステムの複製処理に復帰する(1607)。
以上のように、ログレスバッチ処理の際には、不要情報除去部1400を有効にさせた状態で、正ストレージ装置110のリモートコピーにより正DB119を副サイト2の副DB129へ転送することで、同期化を短時間で完了することができる。つまり、ログレスバッチ処理で更新を行ったDBページ200は、正ストレージ装置110へ格納される際に未使用領域の0クリアが実施される。そして、更新されたDBページ200はリモートコピーにより副サイト2の副DB129へ転送される。このとき、ネットワーク装置140では、連続した文字でクリアされた未使用領域を高圧縮率で圧縮が可能となる。このため、ネットワーク320で転送する正DB119のデータ量を大幅に低減することができるので、ログレスバッチ処理の終了からログベースのDRシステムへの移行を短時間で行うことができる。
また、正ストレージ装置110に不要情報除去部1400を設けたので、正DBMS101を実行する正サーバ100は、不要情報除去処理にかかる負荷を考慮する必要が無く、ログレスバッチ処理を高速に実行することができるのである。つまり、本第3実施形態の場合、更新したDBページ200の読み込みと不要情報除去処理及び正DB119への書き込みは、正ストレージ装置110内で実行されるので、正DBMS101は、クエリの受付と更新ページのログの生成及び管理機能があればよい。
なお、上記図18のログレスバッチ処理は、前記第1実施形態〜第3実施形態の構成でも同様に実行することができる。
<第5実施形態>
図19は、第5の実施形態を示し、前記第2実施形態のDBMS101に正DB119で更新した領域を差分ビットマップに記憶する差分管理部107と、差分管理部107の情報に基づいて更新されたDBページ200を正ストレージ装置110から読み込む更新ページ入力部108とを付加したDRシステムのブロック図である。その他の構成は、前記第2実施形態と同様である。
前記第1実施形態〜第4実施形態では、ログレスバッチ処理などの正DB119の更新処理と並行して更新データを副サイト2の副DB129へ転送する場合に適した処理について説明してきた。
一方、更新が行われた正DB119の領域を記憶しておき、あるタイミングで一括して正DB119の更新差分を副サイト2の副DB129へ転送するログベースのDRシステムの一例を本第5実施形態に示す。つまり、本第5実施形態では、通常の稼働時には不要情報除去部400を無効に設定しておき、更新されたDBページ200を一括して副サイト2へ転送するときのみ不要情報除去部400を有効にするものである。
一括して正DB119の更新差分を副サイト2の副DB129へ転送する例としては、例えば、ネットワーク320の回線障害により長期間ログ転送が行えなかった場合や、副サイト2のメンテナンス(例えば、副サーバ130の交換)のために長期間、ログ適用が行えなかった場合などがある。つまり、副サイト2で適用すべきログ118が転送されていなかったり、あるいは、副サイト2でログ128を適用する前に正サイト1で新しいログ118で上書きされてしまった場合には、正DB119と副DB129の同期化が必要となる。この場合、正DB119全体を転送するのは高コストなため、予め正DB119の更新領域を記憶しておく。そして、回線障害やメンテナンス終了時に正サイト1から副サイト2へ、正DB119の更新部分のみを一括して圧縮転送する。
正DBMS101の差分管理部107は、正DBMS101の差分ビットマップなどを含んでおり、ある期間内に更新が行われた領域を記憶しておく。つまり、差分管理部107では、正DB119の領域(例えば、DBページ200)に対応する差分ビットマップに、更新が行われた領域に対応するビットを設定して更新の状態を記憶する。
更新ページ入力部108は、正DB119の一括転送実施時に、差分管理部107が持つ差分ビットマップを元に、更新が行われたDBページ200を正ストレージ装置110あるいはDBバッファ102から読み込む。なお、差分管理部107は、管理欄末340等から指令に応じて差分管理部107を有効または無効に設定することができる。あるいは、差分管理部107を定期的に有効にするようにしても良い。
そして、正DBMS101は、正DB119の一括転送を行う際には、差分管理部107の差分ビットマップから転送が必要な更新済みのDBページ200を更新ページ入力部108に入力する。全ての更新済みDBページ200の入力が完了したら、更新ページ入力部108の各DBページ200を不要情報除去部400で未使用領域のクリアを行ってから、遅延書込部106により正ストレージ装置110に書き出す。正ストレージ装置110ではリモートコピーにより未使用領域のクリアを行ったDBページ200を一括して副サイト2の副ストレージ装置120は転送し、副DB129を同期させるのである。
一括転送を行う例として、回線障害時の回復手順を図20に示す。
図20において、まず、正DBMS101では差分管理部107を有効にしておき、事前に差分管理を開始しておく(2200)。続いて、正DBMS101は回線障害を検出する(2201)。正DBMS101は、回線障害が発生したことを副サイト2のログ適用制御部131に通知しておく。また、正ストレージ装置110のリモートコピーを停止させる。
副サイト2のログ適用制御部131は、正サイト1からの回線障害を受けて、ログ適用を停止する(2220)。ここで、正サイト1の差分管理は、定期的に実施してもよいし、チェックポイントと連携させて開始させてもよい。あるいは、回線障害を検出した時か差分管理部107を有効にして差分管理を開始してもよい。また、回線障害は、正サイト1と副サイト2の間でハートビードを行って検出してもよいし、キャリアと連携して実施してもよい。
正DBMS101では、回線障害中も正DB119に対する更新または参照を受け付ける(2202)。そして、差分管理部107の差分ビットマップには、正DB119のどの領域に更新が行われたかを記憶しておく。
次に、回線障害が復旧すると、正サイト1のストレージ装置110では、リモートコピーを再開し、ログ118のリモートコピーを再接続する(2203)。この時、回線障害が短時間であれば、再接続したリモートコピーにより更新のあったログ118を副サイト2へ転送し、そのままログ適用を再開すればよい。しかし、回線障害により長期間にわたってログ118のリモートコピーを停止した場合には、副サイト2でログ128の適用が完了していないログが新しいログで上書きされている可能性があり、この場合は、正DB119を副DB129へ転送する必要が生じる。
このために、正サイト1の正DBMS101では、同期点の生成とIO受付(クエリ受付)中断を実施する(2204)。次に、正DBMS101は、差分管理を終了する(2205)。次に、正DB119へ書き込まれるDBページ200が副サイト2へリモートコピーで転送されるように、正ストレージ装置110のリモートコピー処理部113の設定を変更する(2206)。
リモートコピーの設定変更が完了した後、正DBMS101及び正ストレージ装置110では、差分管理期間に更新されたDBページ200(更新差分)の一括転送を行う。
すなわち、正DBMS101では、差分管理部107の差分ビットマップ情報を元に、正ストレージ装置110から更新されたDBページ200のみを更新ページ入力部108へ入力する(2207)。そして、正DBMS101は更新ページ入力部108に読み込んだ更新差分のDBページ200内部を解析し、内部の未使用領域(不要情報)をクリアした上で正ストレージ装置110に書き戻す(2208,2209)。
ここで、正ストレージ装置110の正DB119は、上述のようにリモートコピー設定がされているため、正DBMS101が正ストレージ装置110へ書き戻したDBページ200(更新ページ)は、副サイト2に転送される。
差分管理部107の差分ビットマップに記録された全てのDBページ200を転送し終えたら、正DB119から副サイト2の副DB129へのリモートコピーを切断する(2210)。このリモートコピーの切断を受けて、副サイト2では、ログ適用制御部131を起動して正DBMS101で設定した同期点(2204)からログ適用を開始する。最後に、正DBMS101でIO受付(クエリ受付)を再開し、正ストレージ装置110のリモートコピー処理部113を正DB119のログ118を副サイト2のログ128へリモートコピーするように設定を変更し、通常のログベースのDRシステムの複製に復帰する。
なお、図20では正DB119を副サイト2の副DB129へ転送している期間中は、IO受付(クエリ受付)を中断しているが、正サイト1の正ストレージ装置110でローカルミラー運用を行っておき、正DB119の転送時には、ローカルミラーを切断し、それぞれ更新用と転送用に分けるのであれば、正DBMS101での更新を中断する必要はない。
以上のように、回線障害でDRシステムを一時的に停止する場合や、ログレスバッチ処理でログを生成しない場合には、更新を行ったDBページ200を差分管理部107で差分ビットマップに記録しておく。なお、このときの更新時には不要情報除去部400を無効にしておく。
そして、回線障害の復旧後やログレスバッチ処理の完了後に、不要情報除去部400を有効に設定し、差分管理部107内の差分ビットマップから更新を行ったDBページ200を一括して読み出し、不要情報除去部400で未使用領域のクリアを実施して正DB119へ書き込む。正ストレージ装置110では、正DB119を副DB129へ転送するようにリモートコピー処理部113の設定を変更しておく。これにより、回線障害やログレスバッチ処理の期間中に更新されたDBページ200は未使用領域をクリアされて一括して副サイト2へ転送される。そして、前記各実施形態で述べたように、同一の文字または値で連続的に上書きされたDBページ200の未使用領域はネットワーク装置140で高い圧縮率で圧縮されるので、狭帯域回線のネットワーク320を利用しても通信時間の増大を防ぐことができる。
なお、更新されたDBページ200の一括転送が完了した後には、正ストレージ装置110のリモートコピー処理部113の設定を、ログ118が副サイト2へ転送されるように変更し、また、不要情報除去部400を無効に設定する。これにより、ログ転送によるDRシステムを再開する。
さらに、正サイト1から副サイト2へは、正DB119のうち上記期間中に更新があったDBページ200のみとなるため、正DB119の全てを副サイト2へ転送する場合に比して転送に要する時間を大幅に短縮することができる。
<第6実施形態>
図21は、第6の実施形態を示し、前記第4実施形態のDBMS101に正DB119で更新した領域を差分ビットマップに記憶する差分管理部107と、差分管理部107の情報に基づいて更新されたDBページ200を正ストレージ装置110から読み込む更新ページ入力部108とを付加したDRシステムのブロック図である。その他の構成は、前記第2実施形態と同様である。
本第6実施形態では、前記第5実施形態と同様に、通常の稼働時には不要情報除去部400を無効に設定しておき、更新されたDBページ200を一括して副サイト2へ転送するときのみ不要情報除去部400を有効にするものである。
本第6実施形態では、差分管理部107は前記第5実施形態と同様に、回線障害の発生期間やログレスバッチ処理の期間に更新されたDBページ200を記憶する。
そして、上記回線障害の復旧後やログレスバッチ処理の完了後に、更新されたDBページ200を一括して更新ページ入力部108へ読み込み、正ストレージ装置110に書き戻す。このとき、正ストレージ装置110の不要情報除去部1400を有効に設定し、リモートコピー処理部113の設定を、書き込みのあったDBページ200を副サイト2へ転送するように設定する。
更新されたDBページ200の一括転送時には、前記第5実施形態と同様に、差分管理部107での差分管理を停止する。そして、正DBMS101が差分管理部107の差分ビットマップに基づいて、差分管理を実施した期間中に更新のあったDBページ200のみを更新ページ入力部108へ読み込む。そして、正DBMS101は、更新ページ入力部108に読み込まれたDBページ200を正ストレージ装置110へ書き戻す。
正ストレージ装置110では、正DBMS101が書き戻したDBページ200について、不要情報除去部1400が未使用領域のクリアを実施し、正DB119へ書き込む。リモートコピー処理部113は、正DB119へ書き戻されたDBページ200を副サイト2へ転送する。
このとき、前記第5実施形態と同様に未使用領域があるDBページ200は、所定の文字または値で連続的に未使用領域をクリアされているので、ネットワーク装置140は高い圧縮率でDBページ200の圧縮を行うことができる。したがって、前記第5実施形態と同様に、狭帯域回線のネットワーク320を利用してもDBページ200の転送に要する通信時間の増大を防ぐことができる。
<第7実施形態>
図22は、第7の実施形態を示し、前記第5実施形態に示したDBMS101内の差分管理部107を、正サーバ100のOS1100に含まれるようにしたもので、その他の構成は、前記第5実施形態と同様である。
正サーバ100には正DBMS101を管理するOS1100が稼動する。このOS1100には、正ストレージ装置110の正DB119の更新差分情報を管理する差分管理部1107が機能する。
OS1100内部の差分管理部1107は、一定期間に受け付けた正DB119の更新領域を差分ビットマップ等に記憶しておく。正DBMS101で更新ページの一括転送を実行する際には、更新ページ入力部108は、差分管理部1107の情報に基づいて正ストレージ装置110から更新されたDBページ200のみを入力し、遅延書込部106が更新ページ入力部108のページを正ストレージ装置110へ書き戻す。このとき遅延書込部106は不要情報除去部400を呼び出し、DBページ200内部の未使用領域(不要情報)を0等の所定の文字または値で上書きしてから書き戻しを行う。
この一括転送時には、正ストレージ装置110のリモートコピー処理部113は、正DB119に書き込まれたDBページ200を副サイト2へ転送するように設定しておく。
これにより、前記第5実施形態と同様に、未使用領域があるDBページ200は、所定の文字または値で連続的に未使用領域をクリアされているので、ネットワーク装置140は高い圧縮率でDBページ200の圧縮を行うことができる。したがって、前記第5実施形態と同様に、狭帯域回線のネットワーク320を利用してもDBページ200の転送に要する通信時間の増大を防ぐことができる。
なお、図22では、OS1100が差分管理部1107を含む場合を示したが、この差分管理部を論理ボリューム(LVM)を管理するLVM層に含めてもよい。
<第8実施形態>
図23は、第8の実施形態を示し、前記第7実施形態に示したDBMS101内の不要情報除去部400及び構成管理部401を正ストレージ装置110の制御部111で実行するようにしたものである。
正ストレージ装置110の不要情報除去部1400と構成管理部1401は前記第4実施形態と同様であり、不要情報除去部1400が有効のときには、正DB119へ書き込むDBページ200について未使用領域のクリアを実施する。
OS1100内部の差分管理部1107は、一定期間に受け付けた正DB119の更新領域を差分ビットマップ等に記憶しておく。正DBMS101で更新ページの一括転送を実行する際には、更新ページ入力部108は、差分管理部1107の情報に基づいて正ストレージ装置110から更新されたDBページ200のみを入力し、遅延書込部106が更新ページ入力部108のページを正ストレージ装置110へ書き戻す。
このとき正ストレージ装置110では不要情報除去部400を有効にしておき、DBページ200内部の未使用領域(不要情報)を0等の所定の文字または値で上書きしてから正DB119へ書き戻しを行う。
この一括転送時には、正ストレージ装置110のリモートコピー処理部113は、正DB119に書き込まれたDBページ200を副サイト2へ転送するように設定しておく。
これにより、前記第5実施形態と同様に、未使用領域があるDBページ200は、所定の文字または値で連続的に未使用領域をクリアされているので、ネットワーク装置140は高い圧縮率でDBページ200の圧縮を行うことができる。したがって、前記第5実施形態と同様に、狭帯域回線のネットワーク320を利用してもDBページ200の転送に要する通信時間の増大を防ぐことができる。
<第9実施形態>
図24は、第9の実施形態を示し、前記第6実施形態に示したDBMS101の差分管理部107を、正ストレージ装置110の制御部111で実行するようにしたものである。その他の構成は、前記第6実施形態と同様である。
この場合では、正ストレージ装置110の制御部111で差分管理部1107が実行され、正DB119の更新した領域が差分ビットマップに記録される。
更新ページの一括転送の際には、まず、正DBMS101が差分管理部1107の差分管理を停止させる。正DBMS101は正ストレージ装置110に対して差分管理期間に更新されたDBページ200の未使用領域のクリアを実施するように要求する。このとき、正ストレージ装置110の不要情報除去部1400を有効にし、リモートコピー処理部113の設定を、正DB119への書き込みの際に副サイト2へ転送するように変更しておく。
正ストレージ装置110は、差分管理部1107の差分ビットマップに基づいて正DB119から更新されたDBページ200のみを読み出して不要情報除去処理を実行する。不要情報除去部1400は未使用領域をクリアしたDBページ200を正DB119へ書き戻す。
リモートコピー処理部113は、不要情報除去部400から書き込まれたDBページ200について正DB119へ書き戻し、同時に、副サイト2へ転送する。
これにより、前記第5実施形態と同様に、未使用領域があるDBページ200は、所定の文字または値で連続的に未使用領域をクリアされているので、ネットワーク装置140は高い圧縮率でDBページ200の圧縮を行うことができる。したがって、前記第5実施形態と同様に、狭帯域回線のネットワーク320を利用してもDBページ200の転送に要する通信時間の増大を防ぐことができる。
なお、本第9実施形態の場合、更新したDBページ200の読み込みと不要情報除去処理及び正DB119への書き込みは、正ストレージ装置110内で実行されるので、正DBMS101は、クエリの受付と更新ページのログの生成及び管理機能があればよい。
以上のように、本発明によれば、正サイトと副サイトを狭帯域幅回線のネットワークで接続したログベースのディザスタリカバリシステムに適用することができる。特に、正サイトと副サイトの間で、ログレスバッチ処理の完了後や回線障害復旧後にデータベースの同期化処理を実施する場合に好適である。
本発明の第1の実施形態を示し、2つのサイトでディザスタリカバリを行う計算機システムの構成を示すブロック図。 同じく、第1の実施形態を示し、正サイトのサーバ及び正ストレージ装置の構成を示すブロック図。 同じく、第1の実施形態を示し、データベースのページの構造を示す説明図。 同じく、第1の実施形態を示し、削除が行われたときのデータベースのページの内容を示す説明図。 同じく、第1の実施形態を示し、行情報の長さが増大したときのデータベースのページの内容を示す説明図。 同じく、第1の実施形態を示し、本発明の処理の流れを示す説明図。 同じく、第1の実施形態を示し、正サイトのDBMSのトランザクション実行部で実行する処理の流れを示すフローチャート。 同じく、第1の実施形態を示し、正サイトのDBMSの不要情報除去部400で実行する処理の流れを示すフローチャート。 同じく、第1の実施形態を示し、管理端末へ提供するユーザインターフェースの一例を示す画面イメージ。 第2の実施形態を示し、正サイトの正DBMS及び正ストレージ装置の構成を示すブロック図である。 同じく、第2の実施形態を示し、正サイトのDBMSのトランザクション実行部で実行する処理の一例を示すフローチャート。 同じく、第2の実施形態を示し、正サイトのDBMSの遅延書込部で実行する処理の一例を示すフローチャート。 第3の実施形態を示し、正サイトのDBMSの遅延書込部と不要情報除去部で実行する処理の一例を示すフローチャート。 第4の実施形態を示し、正サイトの正DBMS及び正ストレージ装置の構成を示すブロック図である。 同じく、第4の実施形態を示し、正サイトの正ストレージ装置の制御部で実行する処理の一例を示すフローチャート。 同じく、第4の実施形態を示し、管理端末へ提供するユーザインターフェースの一例を示す画面イメージ。 同じく、第4の実施形態を示し、正サイトと副サイトのディザスタリカバリシステムを示すブロック図。 同じく、第4の実施形態を示し、図17に示したログベースのDRシステムで、正DBMSでログレズバッチ処理を実施した後、正DBと副DBの同期化を行う際のタイムチャート。 第5の実施形態を示し、正サイトの正DBMS及び正ストレージ装置の構成を示すブロック図である。 同じく、第5の実施形態を示し、正サイトで差分管理を実行中に回線障害が発生し、回線障害回復後に正DBと副DBの同期化を行う際のタイムチャート。 第6の実施形態を示し、正サイトの正DBMS及び正ストレージ装置の構成を示すブロック図である。 第7の実施形態を示し、正サイトの正DBMS及び正ストレージ装置の構成を示すブロック図である。 第8の実施形態を示し、正サイトの正DBMS及び正ストレージ装置の構成を示すブロック図である。 第9の実施形態を示し、正サイトの正DBMS及び正ストレージ装置の構成を示すブロック図である。
符号の説明
1 主サイト
2 副サイト
100 主サーバ
101 正DBMS
102 DBバッファ
103 ログバッファ
104 トランザクション実行部
105 ログ管理部
106 遅延書込部
107 差分管理部
110 正ストレージ装置
113 リモートコピー処理部
118 ログ
119 正DB
120 副ストレージ装置
128 副ログ
129 副DB
130 副サーバ
131 ログ適用制御部
400 不要情報除去部
401 構成管理部

Claims (20)

  1. データベースを格納するストレージ装置と、
    前記データベースへの参照要求または更新要求を受け付けて、前記ストレージ装置のデータベースを参照または更新するデータベース管理サーバを実行するサーバ計算機と、を備えたデータベース管理システムにおいて、
    前記データベース管理サーバは、
    前記更新要求に基づいて前記ストレージ装置のデータベースを読み込んでデータを更新する更新実行部と、
    前記更新を行ったデータ内の未使用領域を予め設定した文字または値で連続的に上書きする不要情報除去処理を実行する不要情報除去部と、
    前記データをストレージ装置へ書き込む書込部と、
    を備え、
    前記不要情報除去部は、前記更新の種別に基づいて前記不要情報除去処理が必要か否かを判定するとともに、前記不要情報除去処理が必要な場合には、前記更新の種別に応じて前記不要情報除去処理の態様を切り替えることを特徴とするデータベース管理システム。
  2. 前記不要情報除去部は、
    前記更新実行部がデータを更新する度に、更新を行ったデータ内の未使用領域を予め設定した文字または値で連続的に上書きし、
    前記書込部は、
    前記不要情報除去部で処理した前記データをストレージ装置へ書き込むことを特徴とする請求項1に記載のデータベース管理システム。
  3. 前記更新実行部は、
    前記更新要求に基づいて前記ストレージ装置のデータベースをバッファ上に読み込んでデータを更新し、
    前記書込部は、
    前記バッファ上で更新された前記データをストレージ装置へ書き込み、
    前記不要情報除去部は、
    前記書込部が、前記バッファ上で更新されたデータをストレージ装置へ書き込むときに、更新を行ったデータ内の未使用領域を予め設定した文字または値で連続的に上書きすることを特徴とする請求項1に記載のデータベース管理システム。
  4. 前記データベース管理サーバは、
    前記不要情報除去部の機能を有効または無効に設定する構成管理部を有し、
    前記構成管理部は、ネットワークを介して接続された管理計算機に対して前記不要情報除去部の機能を有効または無効に設定するインターフェースを提供することを特徴とする請求項1に記載のデータベース管理システム。
  5. 前記ストレージ装置は、ネットワークを介して前記データベースの複製を格納する第2のストレージ装置に接続され、
    前記ストレージ装置は、
    前記データベースを前記第2のストレージ装置へ転送するリモートコピー部を有し、
    前記ストレージ装置は、連続した値を圧縮するデータ圧縮部を備えたネットワーク装置を介して前記ネットワークに接続されたことを特徴とする請求項1に記載のデータベース管理システム。
  6. 前記更新実行部は、
    前記データベースから更新を行うページを特定して読み込んで、当該ページのデータを更新し、
    前記不要情報除去部は、
    前記ページ内の未使用領域について予め設定した文字または値で連続的に上書きすることを特徴とする請求項1に記載のデータベース管理システム。
  7. 前記データベース管理サーバは、
    前記更新したデータの領域を記憶する更新差分管理部と、
    前記更新差分管理部に記憶された領域のデータを前記ストレージ装置から一括して読み込む更新データ入力部と、を有し、
    前記不要情報除去部は、前記更新データ入力部に読み込まれたデータ内の未使用領域を予め設定した文字または値で連続的に上書きすることを特徴とする請求項1に記載のデータベース管理システム。
  8. 前記更新差分管理部は、
    前記更新されたデータベースの領域に対応するビットマップを備えたことを特徴とする請求項7に記載のデータベース管理システム。
  9. 前記サーバ計算機は、前記データベース管理サーバを実行するOSを有し、
    前記OSは、
    前記更新したデータの領域を記憶する更新差分管理部を有し、
    前記データベース管理サーバは、
    前記更新差分管理部に記憶された領域のデータを前記ストレージ装置から一括して読み込む更新データ入力部と、を有し、
    前記不要情報除去部は、前記更新データ入力部に読み込まれたデータ内の未使用領域を予め設定した文字または値で連続的に上書きすることを特徴とする請求項1に記載のデータベース管理システム。
  10. データベースを格納するストレージ装置と、
    前記データベースへの参照要求または更新要求を受け付けて、前記ストレージ装置のデータベースを参照または更新するデータベース管理サーバを実行するサーバ計算機と、を備えたデータベース管理システムにおいて、
    前記データベース管理サーバは、
    前記更新要求に基づいて前記ストレージ装置のデータベースを読み込んでデータを更新する更新実行部と、
    前記更新したデータを前記ストレージ装置へ書き込む書込部と、を有し、
    前記ストレージ装置は、
    前記データベース管理サーバが書き込んだ前記データ内の未使用領域を予め設定した文字または値で連続的に上書きする不要情報除去処理を実行する不要情報除去部を、有し、
    前記不要情報除去部は、前記更新の種別に基づいて前記不要情報除去処理が必要か否かを判定するとともに、前記不要情報除去処理が必要な場合には、前記更新の種別に応じて前記不要情報除去処理の態様を切り替えることを特徴とするデータベース管理システム。
  11. 前記ストレージ装置は、
    前記不要情報除去部の機能を有効または無効に設定する構成管理部を有し、
    前記構成管理部は、ネットワークを介して接続された管理計算機に対して前記不要情報除去部の機能を有効または無効に設定するインターフェースを提供することを特徴とする請求項10に記載のデータベース管理システム。
  12. 前記ストレージ装置は、
    前記更新したデータの領域を記憶する更新差分管理部を有し、
    前記不要情報除去部は、前記更新差分管理部に記憶された領域のデータを一括して読み込んで、データ内の未使用領域を予め設定した文字または値で連続的に上書きすることを特徴とする請求項10に記載のデータベース管理システム。
  13. 前記更新差分管理部は、
    前記更新されたデータベースの領域に対応するビットマップを備えたことを特徴とする請求項12に記載のデータベース管理システム。
  14. 前記サーバ計算機は、前記データベース管理サーバを実行するOSを有し、
    前記OSは、
    前記更新したデータの領域を記憶する更新差分管理部を有し、
    前記データベース管理サーバは、
    前記不要情報除去部は、前記更新差分管理部に記憶された領域のデータを一括して読み込んで、当該データ内の未使用領域を予め設定した文字または値で連続的に上書きすることを特徴とする請求項10に記載のデータベース管理システム。
  15. サーバ計算機によって更新されたデータが書き込まれたデータベースを格納するストレージ装置において、
    前記ストレージ装置は、
    前記サーバ計算機が書き込んだ前記データ内の未使用領域を予め設定した文字または値で連続的に上書きする不要情報除去処理を実行する不要情報除去部を、有し、
    前記不要情報除去部は、前記更新の種別に基づいて前記不要情報除去処理が必要か否かを判定するとともに、前記不要情報除去処理が必要な場合には、前記更新の種別に応じて前記不要情報除去処理の態様を切り替えることを特徴とストレージ装置。
  16. 前記ストレージ装置は、
    前記不要情報除去部の機能を有効または無効に設定する構成管理部を有し、
    前記構成管理部は、ネットワークを介して接続された管理計算機に対して前記不要情報除去部の機能を有効または無効に設定するインターフェースを提供することを特徴とする請求項15に記載のストレージ装置。
  17. 第1のサイトと第2のサイトをネットワークを介して接続し、前記第1のサイトのデータを前記第2のサイトへ転送するディザスタリカバリシステムにおいて、
    前記第1のサイトは、
    第1のデータベースを格納する第1のストレージ装置と、
    前記第1のデータベースへの参照要求または更新要求を受け付けて、前記第1のストレージ装置の第1データベースを参照または更新する第1のデータベース管理サーバを実行する第1のサーバ計算機と、を備え、
    前記第1のデータベース管理サーバは、
    前記更新要求に基づいて前記第1のストレージ装置の第1のデータベースを読み込んでデータを更新する更新実行部と、
    前記更新を行ったデータ内の未使用領域を予め設定した文字または値で連続的に上書きする不要情報除去処理を実行する不要情報除去部と、
    前記データを第1のストレージ装置へ書き込む書込部と、
    前記第1のストレージ装置へ書き込まれた前記データを前記第2のサイトへ送信する転送部と、
    前記ネットワークに接続されて、連続した値を圧縮するデータ圧縮部を備えた第1のネットワーク装置と、を備え、
    前記不要情報除去部は、前記更新の種別に基づいて前記不要情報除去処理が必要か否かを判定するとともに、前記不要情報除去処理が必要な場合には、前記更新の種別に応じて前記不要情報除去処理の態様を切り替え、
    前記第2のサイトは、
    第1のサイトから受信したデータを伸張して、第2のストレージ装置へ転送する第2のネットワーク装置と、
    前記第1のストレージ装置から受信したデータを、前記第1のデータベースの複製として格納する第2のストレージ装置と、を備えたことを特徴とするディザスタリカバリシステム。
  18. 第1のサイトと第2のサイトをネットワークを介して接続し、前記第1のサイトのデータを前記第2のサイトへ転送するディザスタリカバリシステムにおいて、
    前記第1のサイトは、
    第1のデータベースを格納する第1のストレージ装置と、
    前記第1のデータベースへの参照要求または更新要求を受け付けて、前記第1のストレージ装置の第1データベースを参照または更新する第1のデータベース管理サーバを実行する第1のサーバ計算機と、を備え、
    前記第1のデータベース管理サーバは、
    前記更新要求に基づいて前記第1のストレージ装置の第1のデータベースを読み込んでデータを更新する更新実行部と、
    前記データを第1のストレージ装置へ書き込む書込部と、を有し、
    前記第1のストレージ装置は、
    前記第1のデータベース管理サーバから書き込まれたデータ内の未使用領域を予め設定した文字または値で連続的に上書きする不要情報除去処理を実行する不要情報除去部と、
    前記不要情報除去部で処理したデータを前記第1のデータベースへ書き込むアクセス制御部と、
    前記データを第2のサイトへ転送する転送部と、を有し、
    前記ネットワークに接続されて、連続した値を圧縮するデータ圧縮部を備えた第1のネットワーク装置と、を備え、
    前記不要情報除去部は、前記更新の種別に基づいて前記不要情報除去処理が必要か否かを判定するとともに、前記不要情報除去処理が必要な場合には、前記更新の種別に応じて前記不要情報除去処理の態様を切り替え、
    前記第2のサイトは、
    第1のサイトから受信したデータを伸張して、第2のストレージ装置へ転送する第2のネットワーク装置と、
    前記第1のストレージ装置から受信したデータを、前記第1のデータベースの複製として格納する第2のストレージ装置と、を備えたことを特徴とするディザスタリカバリシステム。
  19. 第1のデータベースを提供する第1のデータベース管理サーバと、前記第1のデータベースを格納する第1のストレージ装置を含む第1のサイトから前記第1のデータベースの更新差分を示すログのコピーを受け付けるとともに、第2のデータベースを格納する第2のストレージ装置と、前記第1のストレージ装置からコピーした前記ログに基づいて前記第2のデータベースを第2のサイトで回復するデータベースのバックアップ方法であって、
    前記ログに基づいて前記第2のデータベースを回復する処理と、
    前記第1のサイトで、前記第1のデータベースの同期点を作成する処理と、
    前記第2のサイトで、前記同期点までログを適用した後に、ログ適用を停止する処理と、
    前記第1のサイトで前記ログの送信を停止する処理と、
    前記第1のストレージ装置から第1のデータベースを第2のサイトへ送信するように切り換える処理と、
    前記第1のデータベースの更新を行う処理と、
    前記更新された第1のデータベースのデータについて、未使用領域を予め設定した文字または値で連続的に上書きする処理と、
    前記更新の種別に基づいて前記上書きする処理が必要か否かを判定するとともに、前記上書きする処理が必要な場合には、前記更新の種別に応じて前記上書きする処理の態様を切り替える処理と、
    前記上書きを行ったデータを含む第1のデータベースを前記第2のサイトへ送信する処理と、
    前記第1のサイトから送信された第1のデータベースをデータ圧縮する処理と、
    前記第1のデータベースの同期点を作成する処理と、
    前記第1のストレージ装置からログを第2のサイトへ送信するように切り換える処理と、
    前記第2のサイトで、前記同期点からログ適用を再開する処理と、
    を含むことを特徴とするデータベースのバックアップ方法。
  20. 第1のデータベースを提供する第1のデータベース管理サーバと、前記第1のデータベースを格納する第1のストレージ装置を含む第1のサイトから前記第1のデータベースの更新差分を示すログのコピーを受け付けるとともに、第2のデータベースを格納する第2のストレージ装置と、前記第1のストレージ装置からコピーした前記ログに基づいて前記第2のデータベースを第2のサイトで回復するデータベースのバックアップ方法であって、
    前記ログに基づいて前記第2のデータベースを回復する処理と、
    前記第1のサイトで、前記第1のデータベースについて更新領域の記憶を開始する処理と、
    前記第1のサイトの障害発生に基づいて、前記第2のサイトでログ適用を停止し、前記第1のサイトで前記ログの送信を停止する処理と、
    前記第1のサイトの障害回復に基づいて、第1のサイトからのログの送信を再開する処理と、
    前記第1のサイトで前記第1のデータベースの同期点を作成する処理と、
    前記第1のサイトで、前記第1のデータベースについて更新した領域の記憶を終了する処理と、
    前記第1のストレージ装置から第1のデータベースを第2のサイトへ送信するように切り換える処理と、
    前記第1のサイトで、前記記憶した第1のデータベースの更新領域を前記第1のストレージ装置から一括して抽出する処理と、
    前記更新された第1のデータベースのデータについて、未使用領域を予め設定した文字または値で連続的に上書きしてから第1のストレージ装置へ書き込む処理と、
    前記更新の種別に基づいて前記上書きする処理が必要か否かを判定するとともに、前記上書きする処理が必要な場合には、前記更新の種別に応じて前記上書きする処理の態様を切り替える処理と、
    前記第1のサイトから第2のサイトへ送信された第1のデータベースをデータ圧縮する処理と、
    前記抽出した第1のデータベースのデータの転送が完了した後に、前記第1のストレージ装置のログを第2のサイトへ送信するように切り換える処理と、
    前記第2のサイトで、前記同期点からログ適用を再開する処理と、
    を含むことを特徴とするデータベースのバックアップ方法。
JP2006052174A 2006-02-28 2006-02-28 データベース管理システム、ストレージ装置、ディザスタリカバリシステム及びデータベースのバックアップ方法 Expired - Fee Related JP4813924B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2006052174A JP4813924B2 (ja) 2006-02-28 2006-02-28 データベース管理システム、ストレージ装置、ディザスタリカバリシステム及びデータベースのバックアップ方法
US11/405,464 US7587430B2 (en) 2006-02-28 2006-04-18 Backup system for data base

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006052174A JP4813924B2 (ja) 2006-02-28 2006-02-28 データベース管理システム、ストレージ装置、ディザスタリカバリシステム及びデータベースのバックアップ方法

Publications (2)

Publication Number Publication Date
JP2007233543A JP2007233543A (ja) 2007-09-13
JP4813924B2 true JP4813924B2 (ja) 2011-11-09

Family

ID=38445299

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006052174A Expired - Fee Related JP4813924B2 (ja) 2006-02-28 2006-02-28 データベース管理システム、ストレージ装置、ディザスタリカバリシステム及びデータベースのバックアップ方法

Country Status (2)

Country Link
US (1) US7587430B2 (ja)
JP (1) JP4813924B2 (ja)

Families Citing this family (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4249719B2 (ja) * 2005-03-29 2009-04-08 株式会社日立製作所 バックアップシステム、プログラム及びバックアップ方法
JP4624376B2 (ja) * 2007-04-26 2011-02-02 株式会社損害保険ジャパン データのビジュアルキャビネットシステム及びそのシステムを利用したデータ表示方法
US11334851B1 (en) * 2007-05-18 2022-05-17 The Pnc Financial Services Group, Inc. Extending availability of business date driven applications
US20090190483A1 (en) * 2008-01-25 2009-07-30 Inventec Corporation Network transmission system and a testing method thereof
US20090234955A1 (en) * 2008-03-13 2009-09-17 Mark Gregory Hanley Methods and Systems for Synchronization of Multiple Applications
JP5365128B2 (ja) * 2008-10-03 2013-12-11 富士通株式会社 一括登録されるデータに係る情報システム、方法、およびプログラム
US8935223B2 (en) * 2009-04-30 2015-01-13 Oracle International Corporation Structure of hierarchical compressed data structure for tabular data
US8296517B2 (en) 2009-08-19 2012-10-23 Oracle International Corporation Database operation-aware striping technique
EP2290562A1 (en) 2009-08-24 2011-03-02 Amadeus S.A.S. Segmented main-memory stored relational database table system with improved collaborative scan algorithm
JP5492103B2 (ja) * 2011-01-25 2014-05-14 株式会社日立製作所 バックアップ装置、バックアップ方法、データ圧縮方法、バックアッププログラムおよびデータ圧縮プログラム
US20130185133A1 (en) 2012-01-15 2013-07-18 Linda Tong Recommending virtual reward offers and awarding virtual rewards
US9323798B2 (en) 2013-01-14 2016-04-26 International Business Machines Corporation Storing a key value to a deleted row based on key range density
WO2014158155A1 (en) * 2013-03-28 2014-10-02 Hewlett-Packard Development Company, L.P. Coordinating replication of data stored in a non-volatile memory-based system
US9110847B2 (en) * 2013-06-24 2015-08-18 Sap Se N to M host system copy
US9519649B2 (en) 2013-10-07 2016-12-13 International Business Machines Corporation Free space management in a database
KR101593632B1 (ko) * 2014-09-04 2016-02-12 광운대학교 산학협력단 데이터베이스 압축 방법 및 그 장치
US10055442B2 (en) * 2014-10-31 2018-08-21 Microsoft Technology Licensing, Llc Efficient updates in non-clustered column stores
US9990308B2 (en) 2015-08-31 2018-06-05 Oracle International Corporation Selective data compression for in-memory databases

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6014674A (en) * 1996-11-14 2000-01-11 Sybase, Inc. Method for maintaining log compatibility in database systems
JPH11143747A (ja) * 1997-11-11 1999-05-28 Toshiba Tec Corp プリアロケ−ションファイルの高圧縮化方法
US6567928B1 (en) * 2000-05-23 2003-05-20 International Business Machines Corporation Method and apparatus for efficiently recovering from a failure in a database that includes unlogged objects
US6651073B1 (en) * 2000-05-23 2003-11-18 International Business Machines Corporation Method and apparatus for insuring database data integrity without data recovery logging
JP2002358222A (ja) * 2001-06-04 2002-12-13 Hitachi Ltd データ二重化システム及び方法
JP2004078476A (ja) 2002-08-14 2004-03-11 Fanuc Ltd 数値制御装置
US8121978B2 (en) * 2002-11-15 2012-02-21 Sybase, Inc. Database system providing improved methods for data replication
US7337195B2 (en) * 2002-12-31 2008-02-26 International Business Machines Corporation Method and device for establishing synchronized recovery log points
US7389308B2 (en) * 2003-05-30 2008-06-17 Microsoft Corporation Shadow paging
JP4512386B2 (ja) 2004-03-05 2010-07-28 株式会社日立製作所 バックアップシステムおよび方法
JP4581500B2 (ja) 2004-06-17 2010-11-17 株式会社日立製作所 ディザスタリカバリシステム、プログラム及びデータベースのリカバリ方法
JP4484618B2 (ja) 2004-07-30 2010-06-16 株式会社日立製作所 ディザスタリカバリシステム、プログラム及びデータの複製方法

Also Published As

Publication number Publication date
JP2007233543A (ja) 2007-09-13
US20070203958A1 (en) 2007-08-30
US7587430B2 (en) 2009-09-08

Similar Documents

Publication Publication Date Title
JP4813924B2 (ja) データベース管理システム、ストレージ装置、ディザスタリカバリシステム及びデータベースのバックアップ方法
US7225307B2 (en) Apparatus, system, and method for synchronizing an asynchronous mirror volume using a synchronous mirror volume
US7472243B2 (en) Storage system and control method thereof
US7120824B2 (en) Method, apparatus and program storage device for maintaining data consistency and cache coherency during communications failures between nodes in a remote mirror pair
US8209507B2 (en) Storage device and information management system
US7747576B2 (en) Incremental update control for remote copy
KR100643179B1 (ko) 주 시스템 및 백업 시스템 간의 데이터 복원 시스템 및 그 방법
US6728736B2 (en) System and method for synchronizing a data copy using an accumulation remote copy trio
US7587564B2 (en) System, method and computer program product for managing data versions
JP4993913B2 (ja) 記憶制御装置及びそのデータ管理方法
US7539703B2 (en) Setup method for disaster recovery system
US7921273B2 (en) Method, system, and article of manufacture for remote copying of data
EP1712998B1 (en) Remote copy system and remote copy method
US7844643B2 (en) Storage management system with integrated continuous data protection and remote copy
US20060195670A1 (en) Multi-site remote-copy system
US20090106400A1 (en) Remote data copying among storage systems
KR19980024086A (ko) 컴퓨터 시스템 및 화일 관리 방법
JP2006338064A (ja) ディザスタリカバリ方法およびシステム
JP2006023889A (ja) リモートコピーシステム及び記憶装置システム
US7069400B2 (en) Data processing system
JP2006277208A (ja) バックアップシステム、プログラム及びバックアップ方法
JP2002149499A (ja) データの完全性を備えるリモートコピーシステム
US7260739B2 (en) Method, apparatus and program storage device for allowing continuous availability of data during volume set failures in a mirrored environment
US10846012B2 (en) Storage system for minimizing required storage capacity during remote volume replication pair duplication
JP2001318801A (ja) 二重系計算機システム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20080922

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20110530

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110607

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110729

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

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

R150 Certificate of patent or registration of utility model

Ref document number: 4813924

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

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees