JP4755487B2 - データ読出しシステム、データ読出し装置およびデータ読出し方法 - Google Patents

データ読出しシステム、データ読出し装置およびデータ読出し方法 Download PDF

Info

Publication number
JP4755487B2
JP4755487B2 JP2005338888A JP2005338888A JP4755487B2 JP 4755487 B2 JP4755487 B2 JP 4755487B2 JP 2005338888 A JP2005338888 A JP 2005338888A JP 2005338888 A JP2005338888 A JP 2005338888A JP 4755487 B2 JP4755487 B2 JP 4755487B2
Authority
JP
Japan
Prior art keywords
data
file
area
temporary storage
storage area
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
JP2005338888A
Other languages
English (en)
Other versions
JP2007148546A (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 JP2005338888A priority Critical patent/JP4755487B2/ja
Priority to US11/339,465 priority patent/US7672980B2/en
Publication of JP2007148546A publication Critical patent/JP2007148546A/ja
Application granted granted Critical
Publication of JP4755487B2 publication Critical patent/JP4755487B2/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
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/061Improving I/O performance
    • G06F3/0613Improving I/O performance in relation to throughput
    • 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/1448Management of the data involved in backup or backup restore
    • G06F11/1451Management of the data involved in backup or backup restore by selection of backup contents
    • 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
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0646Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
    • G06F3/0647Migration mechanisms
    • G06F3/0649Lifecycle management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0656Data buffering arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0683Plurality of storage devices
    • G06F3/0685Hybrid storage combining heterogeneous device types, e.g. hierarchical storage, hybrid arrays
    • 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/99955Archiving or backup

Description

本発明は、ディスクから順次読出しによりデータを読み出し、読み出したデータをファイル単位で出力する技術に関するものである。
従来、バックアップ実行時等、ディスク上に記録されているデータを読み出す際に、ディスク上の記録位置に関係なくファイル単位で順に読み出す技術がある(非特許文献1参照)。
また、ディスクの先頭から順次読出しによりデータを読み出し、読み出したデータをバックアップ装置に記録する技術がある。
VERITAS Software Corporation著「VERITAS NetBackupTM5.0 システム管理者ガイド Vol.1 UNIX」VERITAS Software Corporation出版、2004年7月、P.118−120
しかしながら、非特許文献1に記載された技術によれば、読出したデータをファイル単位で出力することができるが、ファイル単位でのデータの読出しの処理に時間がかかる。そのため、ディスクの性能が高く、バックアップ装置の性能が低い環境であれば有効な技術であるが、近年、バックアップ装置として、高速にデータを書き込むことが可能な磁気テープ記憶装置が開発されている状況を考慮すると、ディスクからの読み出し待ちが発生し、バックアップ装置の性能が充分に発揮されないという問題がある。
また、ディスクの先頭から順次読出しによりデータを読み出す技術によれば、ディスクの先頭から順にデータを読み出すことにより、ディスク側の最大の性能を確保することができるが、ファイル単位でのアクセスではないため、バックアップ装置には、読み出したデータがファイル単位で記録されず、データをファイル単位でリストアすることが難しいという問題がある。
そこで、本発明は、バックアップ実行時等、ディスク上に記録されているデータ領域のデータを読み出す際、順次読出しによってディスクからデータを読み出した際にディスクが高い性能を発揮する(ディスクから高速にデータを読み出すことができる)ということを考慮し、ディスクからデータを高速に読み出すとともに、ファイル単位でデータ出力することを可能とすることを目的とする。
前記目的を達成するために、本発明のデータ読出しシステムは、読出し対象となるデータを格納するデータ領域を含んだディスク装置と、データのバックアップ領域を含んだテープ装置と、前記データ領域のデータを読み出し、前記バックアップ領域に当該データを出力するデータ読出し装置とを含んで構成されるデータ読出しシステムであって、前記ディスク装置が、前記データ領域に格納されているデータに該当するファイルに関する情報と、前記データ領域を構成する各データブロックに対応する当該ファイルに関する情報の位置情報とを管理し、前記データ読出し装置が、前記データ領域から読み出したデータを一時的に格納する一時記憶領域と、処理部とを備え、前記処理部が、前記データ領域を構成するデータブロックを順次に読み出す際に、当該データブロックに対応する前記ファイルに関する情報の位置情報を参照して、読出し位置のデータに該当する前記ファイルに関する情報の位置を特定し、当該特定された位置の前記ファイルに関する情報を参照して、前記一時記憶領域へのデータの出力位置を算出し、前記データ領域から読み出したデータを前記算出した出力位置に出力し、当該出力したデータに該当するファイルが前記一時記憶領域においてすべて揃ったか否かを判定し、すべて揃ったと判定した場合に、当該ファイルをファイル単位で前記バックアップ領域に出力する構成とした。
かかる構成によれば、データ読出し装置は、データ領域から順次読出しにより、高速にデータを読み出し、読み出したデータをバックアップ領域にファイル単位で出力することが可能となる。
本発明により、ディスクから高速にデータを読み出し、読み出したデータのファイル単位での出力が可能となる。
(第1の実施形態)
本発明を実施するための最良の形態を図面に基づいて詳細に説明する。
図1は、本発明のデータ読出し装置(以下、サーバともいう)の動作例を説明する図である。
図1には、PBN(physical block number):ファイル情報変換テーブル(101)と、Inode情報テーブル(104)と、データ領域(107)と、一時記憶領域(109)と、バックアップ領域(110)とが示されている。
データ領域(107)は、バックアップ対象データが保存されている領域である。
また、一時記憶領域(109)は、データを一時的に保存しておく領域である。
さらに、バックアップ領域(110)は、バックアップデータの保存先の領域である。
また、図1にはサーバが示されていないが、ここでは、サーバがデータ領域(107)からデータを読出し、バックアップ領域(110)に保存データを出力する構成を想定する。
PBN:ファイル情報変換テーブル(101)は、PBN(102)とファイル情報へのポインタ(103)とを含んで構成される。ここで、PBNとは、物理ブロック番号のことであり、本発明では、ファイルシステムでの最小割当単位でのディスク先頭からの相対位置番号をあらわす。また、ファイル情報へのポインタ(103)は、ファイルに関する情報(ファイル情報)が記録されている領域の先頭アドレスを格納するものである。ファイル情報は、Inode情報テーブル(104)によって管理されている。このPBN:ファイル情報変換テーブル(101)を用いることで、データ領域(107)上におけるデータの記録位置からファイル情報を参照することができる。PBN:ファイル情報変換テーブル(101)についての(図3を用いた)詳細な説明は後記する。
Inode情報テーブル(104)は、ファイルシステムの一部であり、ファイル情報を管理するものである。このInode情報テーブル(104)は、ファイル名(105)と、エクステント情報(106)とを含んで構成されている。ここで、エクステントとは、データ領域(107)上に記憶領域として割り当てられる論理的な単位のことである。また、エクステント情報(106)は、エクステントに関する情報であり、ここでは、各ファイルが、データ領域のどこにいくつに分割されて記録されているかを管理するものとする。ここでは、Inode情報テーブル(104)を用いることとしているが、ファイル情報等のメタデータが記録されている領域であればInode情報テーブルの代わりに用いることが可能である。Inode情報テーブル(104)についての(図4を用いた)詳細な説明は後記する。また、エクステントを単にデータということもある。
以下、図1を参照しながら、本発明のサーバの動作について順に説明する。
サーバ210(図2参照)は、ファイル作成・削除・拡張・縮小等のファイルの記録位置が変更になるときには、Inode情報を変更するが、この際に、変更された記録位置に該当するPBN:ファイル情報変換テーブル(101)も変更する。これにより、常にデータ領域(107)の記録位置からファイル情報(エクステント情報(106))へ簡単・高速にアクセスすることができるようになる。
バックアップを開始すると、サーバ210(図2参照)は、データ領域(107)のデータを先頭から順に読み出していく。ここでは、分かりやすく表現するために、データ領域の一部を拡大したもの(108)とバックアップ領域の一部を拡大したもの(111)を使って説明する。なお、バックアップ領域とは、高速なテープ装置やディスク装置をさすものである。サーバ210(図2参照)は、データ領域(107)のデータを順に読み出した際、PBN:ファイル情報変換テーブル(101)を用いて、各々の記録位置からファイル情報(エクステント情報(106))を参照し、読み出したファイルが分割されている場合は、一時記憶領域(109)へ保存する。一時記憶領域(109)のファイルがすべてそろった際(複数のエクステントに分割されたファイルに関して、その全エクステントが揃った際)には、そのファイルをバックアップ領域(110)へ出力する。読み出したファイルが分割されていない場合は、一時記憶領域(109)を使用せず、そのまま、バックアップ領域(110)へ出力する。これをデータ領域(107)の最後まで繰り返すことにより、データ領域(107)からデータを順次読出ししながらもファイル単位でバックアップ領域(110)へデータを出力できる。
具体的な例を用いて説明すると、Inode情報テーブル(104)上では、File.A、File.Dは分割されておらず、File.B、File.Cは各々2つに分割されてデータ領域(107)に記録されている。記録順序としては、データ領域の一部を拡大したもの(108)に示されているように、File.B_2,File.A_1,File.B_1,File.C_1,File.D_1,File.C_2の順で記録されているとする。
バックアップ動作時には、まず、サーバ210(図2参照)は、データ領域(107)からFile.B_2を読み出す。サーバ210(図2参照)は、PBN:ファイル情報変換テーブル(101)上でPBN(102)の値が「0」である場合のファイル情報へのポインタ(103)を参照すると、Inode情報テーブル(104)上のFile.Bのエクステント情報(106)を取得することができる。サーバ210(図2参照)は、File.Bのエクステント情報(106)を参照すると、このFile.Bが分割されていると判定し、データ領域(107)から読み出したデータであるFile.B_2を一時記憶領域(109)の該当箇所へ保存する。一時記憶領域(109)の該当箇所を算出する方法についての(図6を用いた)詳細な説明は、後記する。
次に、サーバ210(図2参照)は、次のデータであるFile.A_1を読み出す。サーバ210(図2参照)は、PBN:ファイル情報変換テーブル(101)上でPBN(102)の値が「1(前回読出し時の「0」に1加算した値)」である場合のファイル情報へのポインタ(103)を参照すると、Inode情報テーブル(104)上のFile.Aのエクステント情報(106)を取得することができる。サーバ210(図2参照)は、File.Aのエクステント情報(106)を参照すると、このFile.Aが分割されていないと判定し、データ領域(107)から読み出したデータであるFile.A_1をFile.Aとしてバックアップ領域(110)へ出力する。
次に、サーバ210(図2参照)は、次のデータであるFile.B_1を読み出す。サーバ210(図2参照)は、同様な方法により、File.Bが分割されていると判定し、一時記憶領域(109)へ出力する。また、サーバ210(図2参照)は、File.Bが一時記憶領域(109)にすべて揃ったと判定し、データ領域(107)から読み出したデータであるFile.B_1およびFile.B_2をFile.Bとして一時記憶領域(109)からバックアップ領域(110)へ出力する。また、サーバ210(図2参照)がファイルをすべて読み出したか否かを判定する方法についての(図6を用いた)詳細な説明は、後記する。
次に、サーバ210(図2参照)は、次のデータであるFile.C_1を読み出す。サーバ210(図2参照)は、同様な方法により、File.Cが分割されていると判定し、データ領域(107)から読み出したデータであるFile.C_1を一時記憶領域(109)へ出力する。
次に、サーバ210(図2参照)は、次のデータであるFile.D_1を読み出す。サーバ210(図2参照)は、同様な方法により、File.Dが分割されていないと判定し、データ領域(107)から読み出したデータであるFile.D_1をFile.Dとしてバックアップ領域(110)へ出力する。
次に、サーバ210(図2参照)は、次のデータであるFile.C_2を読み出す。サーバ210(図2参照)は、同様な方法により、File.Cが分割されていると判定し、また、同様な方法により、一時記憶領域(109)へ出力する。また、サーバ210(図2参照)は、File.Cが一時記憶領域(109)にすべて揃ったと判定し、データ領域(107)から読み出したデータであるFile.C_1およびFile.C_2をFile.Cとして一時記憶領域(109)からバックアップ領域(110)へ出力する。
以上のような動作を繰り返すことにより、バックアップ領域の一部を拡大したもの(111)に示されているように、データ領域(107)から順次データを読み出してバックアップ領域(110)へファイル単位で出力できる。
図2は、本発明のデータ読出しシステムの全体構成を示した説明図である。
図2に示すように、データ読出しシステム(200A)は、サーバ(210)と、ディスク装置(211)と、テープ装置(212)とを含んで構成される。
ディスク装置(211)は、PBN:ファイル情報変換テーブル(101)と、データ領域(107)と、Inode情報テーブル(104)とを含んで構成される。データ領域(107)は、データの読出し対象となる領域であり、Inode情報テーブル(104)は、ファイル情報を管理するテーブルであり、PBN:ファイル情報変換テーブル(101)は、データ領域(107)内での先頭からの位置(以降PBNと表記する)と、そこに格納されているデータに関連するファイル情報へのポインタとを管理するテーブルである。
テープ装置(212)は、バックアップ領域(110)を含んで構成される。バックアップ領域(110)は、サーバ(210)がデータ領域(107)から読み出したデータの出力先の領域である。
サーバ(210)は、制御部(処理部)(202)と、一時記憶領域(109)とを含んで構成される。一時記憶領域(109)は、データ領域(107)上に分割記録されたファイルを一時退避しておく領域である。制御部(202)は、ファイル書込み制御部(203)と、一時記憶制御部(204)と、バックアップ制御部(205)と、一時記憶領域使用量算出部(206)とを含む各種制御部を制御するものである。
ファイル書込み制御部(203)は、ファイルの記録位置が変更される際にPBN:ファイル情報変換テーブル(101)を更新する処理を行うものである。
一時記憶制御部(204)は、ファイルを一時的に記録するためのエリア(一時記憶領域(109))の確保・解放等を制御するものである。
バックアップ制御部(205)は、データ領域(107)からデータを読み出し、一時記憶領域(109)を使用しながらバックアップ領域(110)にデータの書き込みを行うものである。
一時記憶領域使用量算出部(206)は、一時記憶領域(109)の使用量を算出するものである。一時記憶領域(109)の使用量を計算する必要がない場合などは、この一時記憶領域使用量算出部(206)はなくてもよい。
データ領域(107)としては、ディスク上にファイルシステムが構築されていることを想定している。また、バックアップ実行時は、ディスク上のデータが更新されない静的な状態であることを想定している。
サーバ(210)、ディスク装置(211)およびテープ装置(212)の各部位間で入出力する情報について図2を参照して説明する。サーバ(210)は、読込みを行う物理アドレスおよび読込みサイズをディスク装置(211)へ渡す。サーバ(210)から読込みを行う物理アドレスおよび読込みサイズを受け取ると、ディスク装置(211)は、該当エリアに記録されている内容を入手し、サーバ(210)に渡す。また、サーバ(210)は、ファイル内容およびファイル関連情報(ファイル名等のファイルシステム上に記録された関連情報)を順次テープ装置(212)へ渡して、該当ファイルのバックアップを行う。なお、テープ装置(212)は、サーバ(210)と同一ハードウェア(同一筐体)である場合と、ネットワークで接続された別サーバ(別装置)である場合とがあるが、やり取りする情報は変わらない。
図3は、前記したPBN:ファイル情報変換テーブル(101)(図1参照)の構成を示す図である。PBN:ファイル情報変換テーブル(101)は、PBN(102)と、ファイル情報へのポインタ(103)とを含んで構成される。PBN:ファイル情報変換テーブル(101)には、データ領域(107)(図1参照)に対してファイルシステム上の最低割り当て単位毎にエントリが作成される。ファイル情報へのポインタ(103)は、ファイル情報の先頭アドレスとして図4の各エントリの先頭アドレスを格納することにより、各PBNがどのファイルに割り当てられているかを簡単に求められるようにする。未割り当て領域には、例えば、ゼロまたは、最大値等固定の値を設定して判別可能な状態にする。ここでは、PBN:ファイル情報変換テーブル(101)中にPBN(102)が便宜上表示してあるが、ファイル情報へのポインタ(103)の領域サイズが固定長であれば、相対位置でファイル情報へのポインタ(103)の格納位置を判断することができるため、PBN:ファイル情報変換テーブル(101)上にPBN(102)のエリアを確保しない構成としてもよい。
図4は、前記したInode情報テーブル(104)(図1参照)の構成を示す図であり、本発明に必要なファイル情報を格納しているテーブルである。Inode情報テーブル(104)は、ファイル名(105)と、エクステント情報(106)とを含んで構成される。また、エクステント情報(106)は、ファイル分割数(エクステント数(403))とエクステント先頭位置・ブロック数(404,405)とを含んで構成される。Inode情報テーブル(104)は、ファイルシステムにより構造が異なる可能性もあるが、ここでは本処理に最低限必要の項目のみ記載されている。また、ここでは、エクステント先頭位置・ブロック数が便宜上2つ示してある(エクステント先頭位置・ブロック数(404,405))。例えば、File.Bに関する情報が2行目に管理されているが、File.B_1に関する情報がエクステント先頭位置・ブロック数(404)に、File.B_2に関する情報がエクステント先頭位置・ブロック数(405)に格納されているとし、各ファイルの先頭から末尾までのエクステント情報が、Inode情報テーブル(104)の左から順に格納されているものとする。
図5は、一時記憶領域(109)を管理するテーブル(一時記憶領域管理テーブル(501))の構成を示す図である。一時記憶領域管理テーブル(501)は、ファイル情報アドレス(502)と、データ一時記憶領域先頭アドレス(503)と、ブロック数(504)とを含んで構成される。
ファイル情報アドレス(502)は、Inode情報テーブル(104)(図4参照)の各エントリの先頭アドレスを格納するものである。
データ一時記憶領域先頭アドレス(503)は、一時記憶領域(109)の先頭アドレスを格納するものである。例えば、仮想記憶領域がデータを格納するためのエリア(データ一時保管領域)として割り当てられた場合、割り当てられた一時仮想記憶領域の先頭アドレスをデータ一時記憶領域先頭アドレス(503)に格納すれば、このデータ一時記憶領域先頭アドレス(503)を参照することで、仮想記憶領域のデータを読み書きすることが可能となり、物理メモリの細分化を防止でき、有効に物理メモリが利用できるようになる。
図6は、バックアップ制御部(205)(図2参照)の処理の流れを示すフローチャートである。図6を参照して(適宜図1乃至図5参照)、バックアップ制御部(205)(図2参照)が行う処理(データ領域(107)からデータを読み出し、ファイル単位にデータをバックアップ領域(110)に出力する処理)について説明する。
まず、バックアップ制御部(205)は、バックアップの処理を開始する(S601)。そして、最初の領域に読出し位置を設定する(S602)。つまり、読出し位置を「0」に設定する。
次に、バックアップ制御部(205)は、データ領域(107)の最後まで読み出したか否かを判定する(S603)。データ領域(107)の最後まで読み出した場合(S603でYes)は、処理を終了する(S604)。データ領域(107)の最後まで読み出していない場合(S603でNo)は、PBN:ファイル情報変換テーブル(101)から情報を入手する(S605)。
例えば、読出し位置として設定されている値が「0」であれば、PBN(102)の値が「0」であるエントリのファイル情報へのポインタ(103)をPBN:ファイル情報変換テーブル(101)から取得する。このとき、ファイル情報へのポインタ(103)の値が「10000」であるので、Inode情報テーブル(104)で管理されるファイル情報のうち、先頭アドレスが「10000」のエリアからファイル情報(ファイル名(105)およびエクステント情報(106))を入手する。File.Bの先頭アドレスが「10000」であれば、File.Bのファイル情報を入手できる。また、例えば、読出し位置として設定されている値が「1」であれば、同様な方法により、先頭アドレスが「10004」のエリアからファイル情報を入手する。File.Aの先頭アドレスが「10004」であれば、File.Aのファイル情報を入手できる。
次に、バックアップ制御部(205)は、複数エクステントであるか否かを判定する(S606)。つまり、読出し位置に設定されている領域のデータに該当するファイル(該当ファイル)が分割されてデータ領域(107)に格納されているか否かを判定する。具体的には、S605で入手したファイル情報のエクステント数(403)が「1」であれば分割されていないと判定し、「2」以上であれば分割されていると判定する。例えば、読出し位置として設定されている値が「0」であれば、前記したようにFile.Bのファイル情報を入手でき、エクステント数(403)が「2」であるので、該当ファイル(File.B)が分割されていると判定する。また、例えば、読出し位置として設定されている値が「1」であれば、前記したようにFile.Aのファイル情報を入手でき、エクステント数(403)が「1」であるので、該当ファイル(File.A)が分割されていないと判定する。
バックアップ制御部(205)は、複数エクステントではないと判定した場合(S606でNo)、該当ファイルをバックアップ領域(110)へ出力し(S607)、次の領域に読出し位置を設定して(S617)、S603に戻る。例えば、読出し位置として設定されている値が「1」であれば、前記したように該当ファイル(File.A)が分割されていないと判定するので、読出し位置のデータをデータ領域(107)から読み出し、バックアップ領域(110)に出力する。また、このとき、読出し位置として設定されている値が「1」であるため、読出し位置が「1」のエリアに格納されているデータ(File.A_1)をバックアップ領域(110)に出力し、現在の読出し位置「1」に「1」を加算して読出し位置を「2」に設定し、S603に戻る。
バックアップ制御部(205)は、複数エクステントであると判定した場合(S606でYes)、該当ファイルが出力済みか否かを判定する(S608)。つまり、該当ファイルがバックアップ領域(110)へ出力済みか否かを判定する。該当ファイルが出力済みか否かを判定する方法(S608)としては、例えば、一時記憶領域(109)の全データを出力した時点のデータ領域(107)の記録位置を出力済み判定位置として記録しておき、この出力済み判定位置と、S605で入手したファイル情報のエクステント先頭位置(404,405)とを比較して、出力済み判定位置より前の位置にファイルの一部が含まれていれば(出力済み判定位置より前の位置にエクステントが存在すれば)、そのファイルについては出力済みであると判定する方法がある。例えば、出力済み判定位置が「1」に設定されており、S605でファイル情報(File.B)を入手した場合、ファイル情報のエクステント先頭位置(405)が「0」のエクステントが存在する(図4のFile.Bのデータを参照)ので、出力済み判定位置より前の位置にファイルの一部が存在することになり、File.Bについては「出力済」であると判定することができる。また、同様に、出力済み判定位置が「0」に設定されており、S605でファイル情報(File.A)を入手した場合、ファイル情報のエクステント先頭位置(404,405)が「0」より前の位置のエクステントが存在しない(図4のFile.Aのデータを参照)ので、出力済み判定位置より前の位置にファイルの一部が存在しないことになり、File.Aについては「未出力」であると判定することができる。
バックアップ制御部(205)は、出力済であると判定した場合(S608で出力済)、次の領域に読出し位置を設定して(S617)、S603に戻る。
バックアップ制御部(205)は、未出力であると判定した場合(S608で未出力)、一時記憶領域割当処理を行う(S609)。つまり、データ領域(107)から読み出したデータを一時記憶領域(109)に格納するための領域を割り当てる処理を行う。一時記憶領域割当処理についての詳細な説明(図8を用いた説明)は、後記する。次に、バックアップ制御部(205)は、一時記憶領域割当処理(S609)のリターン情報を判定する(S610)。
バックアップ制御部(205)は、S609からのリターン情報が割当不可であると判定した場合(S610で割当不可)、該当ファイルが出力済であるか否かを判定する。つまり、該当ファイルがバックアップ領域(110)へ出力済みか否かを判定する。該当ファイルが出力済みか否かを判定する方法(S615)としては、例えば、現在の読出し位置より前の位置にファイルの一部が含まれていれば、そのファイルについては出力済みであると判定する方法がある。例えば、現在の読出し位置が「2」に設定されており、S605でファイル情報(File.B)を入手した場合、ファイル情報のエクステント先頭位置(405)が「0」のエクステントが存在する(図4のFile.Bのデータを参照)ので、現在の読出し位置より前の位置にファイルの一部が存在することになり、File.Bについては「出力済」であると判定することができる。
バックアップ制御部(205)は、該当ファイルが出力済であると判定した場合(S615で出力済)、次の領域に読出し位置を設定し(S617)、S603に戻る。
バックアップ制御部(205)は、該当ファイルが未出力であると判定した場合(S615で未出力)、該当ファイルをすべて読出し、バックアップ領域出力を行い(S616)、次の領域に読出し位置を設定し(S617)、S603に戻る。例えば、現在の読出し位置が「0」に設定されており、S605でファイル情報(File.B)を入手した場合、ファイル情報のエクステント先頭位置(404,405)が「0」より前の位置のエクステントが存在しない(図4のFile.Bのデータを参照)ので、現在の読出し位置より前の位置にファイルの一部が存在しないことになり、File.Bについては「未出力」であると判定することができる。そして、バックアップ制御部(205)は、Inode情報テーブル(104)(図4参照)のFile.Bのデータを参照して、File.Bのデータをデータ領域(107)から順に読み出し(図4のFile.Bの左から順に読み出し)、バックアップ領域(110)に出力する。具体的には、エクステント先頭位置(404)が「2」のエリアのデータ(File.B_1)、エクステント先頭位置(405)が「0」のエリアのデータ(File.B_2)を順に読み出し、バックアップ領域(110)に出力する。
バックアップ制御部(205)は、S609からのリターン情報が全出力実施であると判定した場合(S610で全出力実施)、出力済み判定位置を変更する(S611)。つまり、一時記憶領域(109)の全ファイルを出力したと判定した場合、出力済み判定位置を現在の読出し位置に変更する(S611)。これにより、出力済み判定位置より前の位置にエクステントが存在すれば、そのエクステントの該当ファイルはバックアップ領域(110)に出力済みであることが分かる。次に、S612に進む。
また、バックアップ制御部(205)は、S609からのリターン情報が割当可であると判定した場合(S610で割当可)、S612に進む。
S612では、バックアップ制御部(205)は、ファイル内の相対位置を算出し、該当する一時記憶領域にデータを読み出す(S612)。つまり、読み出し位置のデータを読み出し、そのデータの該当ファイルの先頭からの相対位置を、Inode情報テーブル(104)の各エクステントブロック数を加算して求め、該当ファイルに割り当てられた一時記憶領域(109)の該当する位置へ記録する。例えば、現在の読出し位置が「0」に設定されており、S605でファイル情報(File.B)を入手した場合、バックアップ制御部(205)は、データ領域(107)からFile.B_2を読み出す。File.B_2の該当ファイルの先頭からの相対位置は、File.B_2よりも前の部分に相当するエクステントのブロック数の合計を求めればよい。File.B_2よりも前の部分に相当するのは、File.B_1だけであるので、Inode情報テーブル(104)上のFile.B_1のブロック数(エクステント先頭位置・ブロック数(404)参照)である「1」を合計値として算出する。この合計値を、S609によって通知された該当ファイルの先頭アドレスに加算して、得られたアドレスを読み出したデータの該当位置とする。
次に、バックアップ制御部(205)は、該当ファイルに関して全領域の読み出しを終了したか否かを判定する(S613)。つまり、S612の読み出しによって、該当ファイルの一時記憶領域(109)への読み出しがすべて終了したか否かを判定する。この判定方法としては、現在の読出し位置のデータより後の位置に該当ファイルの分割されたデータがあるか否かを、Inode情報テーブル(104)を参照して判定する方法などがある。例えば、現在の読出し位置が「2」に設定されており、S605でファイル情報(File.B)を入手した場合、バックアップ制御部(205)は、データ領域(107)からFile.B_1を読み出す。File.B_1のエクステント先頭位置は「2」であり(先頭位置・ブロック数(404)参照)、File.B_2のエクステント先頭位置は「0」である(先頭位置・ブロック数(405)参照)。したがって、ファイル情報(File.B)の中には、File.B_1より後の位置に該当ファイルの分割されたデータがない(エクステント先頭位置がFile.B_1のエクステント先頭位置「2」以下であるエクステントがない)と判定され、該当ファイルの一時記憶領域(109)への読み出しがすべて終了したと判定する。
バックアップ制御部(205)は、該当ファイルに関して全領域の読み出しを終了していないと判定した場合(S613でNo)、次の領域に読出し位置を設定し(S617)、S613に戻る。
バックアップ制御部(205)は、該当ファイルに関して全領域の読み出しを終了したと判定した場合(S613でYes)、該当ファイルをバックアップ領域(110)へ出力して、一時記憶領域(109)を解放し、一時記憶領域管理テーブル(501)から(該当ファイルの)データを削除する(S614)。そして、次の領域に読出し位置を設定し(S617)、S603に戻る。
図7は、ファイル書込み制御部(203)の処理の流れを示すフローチャートである。図7を参照して(適宜図1乃至図5参照)、ファイル書込み制御部(203)(図2参照)が行う処理について説明する。これは、ファイル領域の確保、拡張、縮小、削除等の変更があった時にInode情報テーブル(104)とPBN:ファイル情報変換テーブル(101)を更新する処理である。ファイル領域に関する処理が必要となった場合に本処理を行う。
ファイル書込み制御部(203)は、処理を開始し(S701)、ファイル領域の確保・拡張処理か否かを判定する(S702)。確保・拡張処理の場合(S702でYes)、ファイル書込み制御部(203)は、更に確保か拡張かを判定する(S703)。
確保の場合(S703で確保)、ファイル書込み制御部(203)は、空き領域から領域確保し、Inode情報テーブル(104)へエントリ追加およびエクステント情報(106)を設定し(S706)、PBN:ファイル情報変換テーブル(101)中の確保されたエントリへファイル情報アドレスを設定し(S709)、処理を終了する(S711)。ファイル情報アドレスは、Inode情報テーブル(104)のファイル情報へのポインタ(103)に設定される。
拡張の場合(S703で拡張)、ファイル書込み制御部(203)は、空き領域から領域確保し、Inode情報テーブル(104)の該当ファイルのエントリのエクステント情報を設定し(S705)、PBN:ファイル情報変換テーブル(101)中の確保されたエントリへファイル情報アドレスを設定し(S709)、処理を終了する(S711)。ファイル情報アドレスは、Inode情報テーブル(104)のファイル情報へのポインタ(103)に設定される。
確保・拡張ではない場合(S702でNo)、更に削除か縮小かそれ以外の処理かを判定する(S704)。削除の場合、使用領域を解放し、Inode情報テーブル(104)の該当エントリを削除し(S707)、PBN:ファイル情報変換テーブル(101)中の削除・縮小されたエントリのファイル情報アドレスを削除し(S710)、処理を終了する(S711)。ファイル情報アドレスは、Inode情報テーブル(104)のファイル情報へのポインタ(103)から削除される。
縮小の場合、縮小した領域を解放し、Inode情報テーブル(104)の該当エントリのエクステント情報を更新し(S708)、PBN:ファイル情報変換テーブル(101)中の削除・縮小されたエントリのファイル情報アドレスを削除し(S710)、処理を終了する(S711)。ファイル情報アドレスは、Inode情報テーブル(104)のファイル情報へのポインタ(103)から削除される。
図8は、一時記憶制御部(204)の処理の流れを示すフローチャートである。図8を参照して(適宜図1乃至図5参照)、一時記憶制御部(204)(図2参照)が行う処理について説明する。これは、図6で説明した一時記憶領域割当処理(S609)の詳細である。
一時記憶制御部(204)は、処理を開始し(S801)、リターン情報に割当可を設定し(S802)、一時記憶領域(109)にファイルがあるか否かを判定する(S803)。つまり、読出し位置のデータの該当ファイルが一時記憶領域(109)に存在するか否かを判定する。この判定方法としては、一時記憶領域管理テーブル(501)に該当ファイルのファイル情報アドレス(502)が存在するか否かにより判定する方法などがある。
一時記憶制御部(204)は、一時記憶領域(109)上に該当ファイルがあると判定した場合(S803でYes)、該当ファイルの先頭アドレスおよびリターン情報を通知し(S804)、処理を終了する(S813)。
一時記憶制御部(204)は、一時記憶領域(109)上に該当ファイルがないと判定した場合(S803でNo)、ファイルサイズが、一時記憶領域(109)より大きいか否かを判定する(S805)。ファイルサイズが一時記憶領域(109)より大きい場合(S805でYes)、リターン情報に割当不可を設定し(S806)、リターン情報を通知し(S807)、処理を終了する(S813)。
一時記憶制御部(204)は、ファイルサイズが一時記憶領域(109)以下の場合、(S805でNo)、ファイルサイズ以上の空きが(一時記憶領域(109)に)あるか否かを判定する(S808)。ファイルサイズ(必要な容量)を算出する方法としては、Inode情報テーブル(104)のエクステントブロック数の合計より算出することが可能である。
一時記憶制御部(204)は、ファイルサイズ以上の空きがないと判定した場合(S808でNo)、一時記憶領域のファイル全出力処理を行い(S809)、リターン情報に全出力実施を設定する(S810)。一時記憶領域のファイル全出力処理についての詳細な説明(図9を用いた説明)は、後記する。この処理により、一時記憶領域(109)上に確保しているファイルのデータをすべて順次に読み出し、バックアップ領域(110)に出力し、一時記憶領域(109)に空き領域を確保した状態で、S811に進む。
一時記憶制御部(204)は、ファイルサイズ以上の空きがあると判定した場合(S808でYes)、一時記憶領域(109)に該当ファイルの領域を確保し、一時記憶領域管理テーブル(501)にデータを登録する(S811)。確保した領域の先頭アドレスおよびリターン情報を通知し(S812)、処理を終了する(S813)。なお、必要に応じて(例えば、算出したファイルサイズに基づいて)、ディスク等の記憶領域に仮想記憶の領域を割り当て、順次読出し可能な形でディスク上に記録することにより、性能向上とより大きな領域確保を実現することもできる。この場合、データ一時記憶領域先頭アドレス(503)に仮想記憶領域のアドレスを格納すれば、このデータ一時記憶領域先頭アドレス(503)を参照することで、仮想記憶領域のデータを読み書きすることが可能となる。
また、S610,S611,S615,S616,S805〜S810の処理は、一時記憶領域(109)が十分に取れる場合は、無くともよい。
図9は、一時記憶制御部(204)(図2参照)による一時記憶領域のファイル全出力処理(S809)(図8参照)の流れを表すフローチャートである。図9を参照して(適宜図1乃至図5参照)、一時記憶領域(109)が不足した場合に一時記憶領域(109)内の情報をすべてバックアップ領域(110)に出力する処理について説明する。これは、図8で説明した一時記憶領域のファイル全出力処理(S809)の詳細である。
まず、一時記憶制御部(204)は、一時記憶領域のファイル全出力処理(S809)を開始する(S901)。そして、一時記憶制御部(204)は、一時記憶領域管理テーブル(501)の最初のデータを読み出すよう設定する(S902)。一時記憶制御部(204)は、一時記憶領域管理テーブル(501)からデータを読み出し(S903)、一時記憶領域(109)に保存ファイルがないか否かを判定する(S904)。
一時記憶制御部(204)は、一時記憶領域(109)に保存ファイルがない(一時記憶領域管理テーブル(501)のデータがすべて読込み済みであった)と判定した場合(S904でYes)、処理を終了する(S905)。
一時記憶制御部(204)は、一時記憶領域(109)に保存ファイルがある(一時記憶領域管理テーブル(501)に未読込みデータがあった)と判定した場合(S904でNo)、ファイル未読出し部分の読出し・保存・バックアップ領域への出力処理を行う(S906)。つまり、一時記憶制御部(204)は、一時記憶領域管理テーブル(501)から読み出したデータに該当するファイルの未読出し部分をデータ領域(107)から読み出してファイルの情報がすべてそろったところでバックアップ領域(110)へ出力する。該当するファイルの未読出し部分をデータ領域(107)から読み出す方法としては、読み出した一時記憶領域管理テーブル(501)のデータのファイル情報アドレス(502)を用いて、Inode情報テーブル(104)のエクステント先頭位置(404,405)を参照し、現在の読出し位置よりも後の位置に存在するエクステントについて未読出しであると判定してデータを読み出す方法などが考えられる。
一時記憶制御部(204)は、該当ファイルを一時記憶領域(109)から解放し、一時記憶領域管理テーブル(501)から該当ファイルのデータを削除し(S907)、一時記憶領域管理テーブル(501)の次のデータを読み出すよう設定して(S908)、S903に戻る。
図10は、一時記憶領域使用量算出部(206)(図2参照)の処理の流れを表すフローチャートである。図10を参照して(適宜図1乃至図5参照)、一時記憶領域の必要最大サイズを出力する処理について説明する。この処理は、一時記憶領域使用量算出部(206)が、データ領域(107)の先頭から順にPBN:ファイル情報変換テーブル(101)を利用して該当するファイル情報を読み込み、必要な一時記憶領域を求める。これにより、事前に必要な一時記憶領域のサイズを算出できる。
まず、一時記憶領域使用量算出部(206)は、一時記憶領域の使用量を算出する処理を開始する(S1001)。そして、最大一時領域サイズ、一時領域サイズを(記録しておくエリアを)初期化し、最初の領域に読出し位置を設定する(S1002)。
次に、一時記憶領域使用量算出部(206)は、データ領域(107)の最後まで読み出したか判定する(S1003)。データ領域の最後の場合(データをすべて読み出し終わっていた場合)(S1003でYes)、処理を終了する(S1004)。最後まで読み出していない場合、該当するファイル情報(ファイル名(105)およびエクステント情報(106))を読み出し(S1005)、読出し位置のデータが複数エクステントか否かを(エクステント数(403)を参照して)判定する(S1006)。
一時記憶領域使用量算出部(206)は、読出し位置のデータが複数エクステントでないと判定した場合(S1006でNo)、一時記憶領域(109)を使用しないため、次の領域に読出し位置を設定して(S1013)、S1003に戻る。
一時記憶領域使用量算出部(206)は、読出し位置のデータが複数エクステントであると判定した場合(S1006でYes)、読出し位置のデータが該当ファイルのエクステント中で最小PBNが記録されているエクステントか否かを判定する(S1007)。つまり、読出し位置のデータが該当ファイルのエクステント中で最初に読出し位置として設定されるエクステント(該当ファイルのエクステント中でエクステント先頭位置(404,405)が最小のエクステント)であるか否かを判定する。
一時記憶領域使用量算出部(206)は、読出し位置のデータが最小PBNのエクステントであると判定した場合(S1007でYes)、一時領域サイズに該当ファイルサイズを加算し(S1009)、最大一時領域サイズが一時記憶領域サイズより小さいか否かを判定する(S1010)。ここで、一時領域サイズに該当ファイルサイズを加算しているのは、最小PBNのエクステントを一時記憶領域(109)に読み出すときに、該当ファイルサイズ分の領域が一時記憶領域(109)に確保され、一時記憶領域(109)の使用量がその分増加するからである。
一時記憶領域使用量算出部(206)は、最大一時領域サイズが一時記憶領域サイズ以上であると判定した場合(S1010でNo)、次の領域に読出し位置を設定して(S1013)、S1003に戻る。
また、一時記憶領域使用量算出部(206)は、最大一時領域サイズが一時記憶領域サイズより小さいと判定した場合(S1010でYes)、最大一時領域サイズを一時領域サイズで置き換え(S1011)、次の領域に読出し位置を設定して(S1013)、S1003に戻る。
一時記憶領域使用量算出部(206)は、読出し位置のデータが最小PBNのエクステントでないと判定した場合 (S1007でNo)、読出し位置のデータが該当ファイルのエクステント中で最大PBNが記録されているエクステントか否かを判定する(S1008)。つまり、読出し位置のデータが該当ファイルのエクステント中で最後に読出し位置として設定されるエクステント(該当ファイルのエクステント中でエクステント先頭位置(404,405)が最大のエクステント)であるか否かを判定する。
一時記憶領域使用量算出部(206)は、読出し位置のデータが最大PBNのエクステントでないと判定した場合 (S1008でNo)、次の領域に読出し位置を設定して(S1013)、S1003に戻る。
一時記憶領域使用量算出部(206)は、最大PBNのエクステントであると判定した場合 (S1008でYes)、一時領域サイズから該当ファイルサイズを減算し(S1012)、次の領域に読出し位置を設定して(S1013)、S1003に戻る。ここで、一時領域サイズから該当ファイルサイズを減算しているのは、最大PBNのエクステントを一時記憶領域(109)に読み出した後、該当ファイルサイズ分の領域が一時記憶領域(109)から解放され、一時記憶領域(109)の使用量がその分減少するからである。
以上の処理を行うことにより、一時記憶領域使用量算出部(206)は、事前に必要な一時記憶領域のサイズを算出できる。例えば、バックアップ制御部(205)が、S601の後に、この一時記憶領域使用量算出部(206)を呼び出し、一時記憶領域使用量算出部(206)による必要な一時記憶領域(109)のサイズの算出結果に基づいて、前記したS610,S611,S615,S616,S805〜S810の処理を行わないように制御することで、処理時間を短縮することが可能となる。なお、読出し位置のデータが最大PBNのエクステントか否かを判定する処理(S1008)の方法としては、例えば、S613で説明した該当ファイルに関して全領域の読み出しを終了したか否かを判定する処理と同じ方法を利用することが考えられる。また、最小PBNのエクステントか否かを判定する処理(S1007)の方法についても、同様の方法を利用することが考えられる。
(第2の実施形態)
本実施形態は、第1の実施形態で説明したサーバの機能をディスク装置の機能として内蔵することにより、ディスク装置がバックアップ機能を持つ構成である。ディスク装置内にボリューム管理機能およびファイルシステムを取り込む事により、ディスク装置へアクセスする部位からは、ボリューム上にファイルシステムが作られているようなシステムを前提として、そのシステムに対して、第1の実施形態の内容を組み込むことにより、ディスクを順次読込みしながらも、ディスク装置の上位からは、ファイル単位でデータおよび、ファイル情報の読出しが可能となる。
図11は、本発明のデータ読出しシステムの全体構成を示した説明図である(第2の実施形態)。データ読出しシステム(200B)は、サーバ(1101)と、ディスク装置(1106)と、テープ装置(1120)とを含んで構成されている。
サーバ(1101)は、オペレーティングシステム(1103)上でバックアップアプリケーション(1102)が動作する構造となっているが、オペレーティングシステム(1103)の機能の一部であるファイルシステム(1109)がディスク装置(1106)側にあり、ファイルシステム(1109)へのアクセスは、ドライバ(1104)を通してアクセスする構造となっている。また、バックアップアプリケーション(1102)は、ドライバ(1104)を通して取得したファイル単位のデータをテープ装置(1120)のバックアップ領域(1105)に出力する。
ディスク装置(1106)は、指示受付部(1108)がドライバ(1104)からの指示を受け付けて、Inode情報(1107)等のファイル関連のメタデータを持ったファイルシステム(1109)を通してデータ領域(1119)へアクセスする。バックアップ制御処理部(1111)内のPBN:ファイル情報変換テーブル(1112)および一時記憶領域(1113)は、それぞれ第1の実施形態で説明したPBN:ファイル情報変換テーブル(101)および一時記憶領域(109)と同様な構成である。また、バックアップ制御処理部(1111)内の制御部(1114)(ファイル書込み制御部(1115)、一時記憶制御部(1116)、バックアップ制御部(1117)および一時記憶領域使用量算出部(1118))についても、第1の実施形態で説明した制御部(202)と同様な機能を有しており、ファイル単位でのデータ読出しおよび、ファイル情報の読出しが行えるようになっている。また、ディスク装置(1106)は、ボリューム管理(1110)を備えることでボリューム管理の機能も有する構成となっている。
サーバ(1101)のバックアップアプリケーション(1102)およびドライバ(1104)とディスク装置(1106)の指示受付部(1108)間では、NDMP(Network Data Management Protocol)相当のプロトコルによる入出力を行うことにより、ファイル情報および、ファイルデータの入出力を行うことにより、ディスクを順次アクセスしながらファイル単位でバックアップすることができる。
本発明のデータ読出し装置(サーバ)の動作例を説明する図である(第1の実施形態)。 本発明のデータ読出しシステムの全体構成を示した説明図である(第1の実施形態)。 記録位置とファイル情報へのアドレスを格納しているテーブルである。 ファイル情報を格納しているテーブルである。 一時記憶領域の管理情報を格納しているテーブルである。 バックアップ制御部の処理の流れを示すフローチャートである。 ファイル書込み制御部の処理の流れを示すフローチャートである。 一時記憶制御部の処理の流れを示すフローチャートである。 一時記憶制御部の一時記憶領域のファイル全出力処理の流れを表すフローチャートである。 一時記憶領域使用量算出部の処理の流れを表すフローチャートである。 本発明のデータ読出しシステムの全体構成を示した説明図である(第2の実施形態)。
符号の説明
101 PBN:ファイル情報変換テーブル
103 ファイル情報へのポインタ
104 Inode情報テーブル
106 エクステント情報
107 データ領域
109 一時記憶領域
110 バックアップ領域
200A,200B データ読出しシステム
202 制御部
203 ファイル書込み制御部
204 一時記憶制御部
205 バックアップ制御部
206 一時記憶領域使用量算出部
210 サーバ(データ読出し装置)
211 ディスク装置
212 テープ装置
403 エクステント数
404,405 エクステント先頭位置・ブロック数
501 一時記憶領域管理テーブル
502 ファイル情報アドレス
503 データ一時記憶領域先頭アドレス
504 ブロック数

Claims (15)

  1. 読出し対象となるデータを格納するデータ領域を含んだディスク装置と、データのバックアップ領域を含んだテープ装置と、前記データ領域のデータを読み出し、前記バックアップ領域に当該データを出力するデータ読出し装置とを含んで構成されるデータ読出しシステムであって、
    前記ディスク装置は、
    前記データ領域に格納されているデータに該当するファイルに関する情報と、前記データ領域を構成する各データブロックに対応する当該ファイルに関する情報の位置情報とを管理し、
    前記データ読出し装置は、
    前記データ領域から読み出したデータを一時的に格納する一時記憶領域と、処理部とを備え、
    前記処理部は、
    前記データ領域を構成するデータブロックを順次に読み出す際に、
    当該データブロックに対応する前記ファイルに関する情報の位置情報を参照して、読出し位置のデータに該当する前記ファイルに関する情報の位置を特定し、当該特定された位置の前記ファイルに関する情報を参照して、前記一時記憶領域へのデータの出力位置を算出し、前記データ領域から読み出したデータを前記算出した出力位置に出力し、当該出力したデータに該当するファイルが前記一時記憶領域においてすべて揃ったか否かを判定し、すべて揃ったと判定した場合に、当該ファイルをファイル単位で前記バックアップ領域に出力する
    ことを特徴とするデータ読出しシステム。
  2. 前記データ読出し装置は、前記一時記憶領域を管理する情報をさらに管理し、
    前記一時記憶領域を管理する情報は、前記一時記憶領域に確保されたファイル領域の先頭アドレス情報を含み、
    前記処理部は、
    前記一時記憶領域に確保されたファイル領域の先頭アドレス情報を参照して、前記記憶領域に、前記データ領域から読み出したデータに該当するファイルが存在するか否かを判定し、
    前記該当するファイルが前記一時記憶領域に存在しないと判定した場合、前記一時記憶領域に前記該当するファイルの領域を確保し、当該確保した領域の先頭アドレスを前記一時記憶領域に確保されたファイルの先頭アドレス情報に登録し、前記確保した領域の先頭アドレスにファイル内の相対位置を加算して、前記出力位置を算出し、
    前記該当するファイルが前記一時記憶領域に存在すると判定した場合、前記一時記憶領域に確保されたファイルの先頭アドレスを参照して、前記該当するファイルの前記一時記憶領域に確保されたファイルの先頭アドレスを取得し、取得した当該ファイルの先頭アドレスにファイル内の相対位置を加算して、前記出力位置を算出する
    ことを特徴とする請求項1に記載のデータ読出しシステム。
  3. 前記ディスク装置が管理する前記ファイルに関する情報は、
    前記データ領域に存在するデータの先頭位置と、当該データのブロック数とを含み、
    前記処理部は、
    前記一時記憶領域に前記該当するファイルの領域を確保する際、
    前記データのブロック数を合計してファイルサイズを算出し、当該算出したファイルサイズ分の領域をファイルの領域として前記一時記憶領域に確保し、
    前記ファイル内の相対位置を算出する際、
    前記データの先頭位置を参照して、前記該当するファイルのデータのうち、前記読出し位置のデータよりも前の位置に存在するデータについての前記データのブロック数を合計して前記ファイル内の相対位置を算出し、
    前記出力したデータに該当するファイルが前記一時記憶領域においてすべて揃ったか否かを判定する際、
    前記データの先頭位置を参照して、前記該当するファイルのデータのうち、前記読出し位置のデータが最後の位置に存在する場合に、前記出力したデータに該当するファイルが前記一時記憶領域においてすべて揃ったと判定する
    ことを特徴とする請求項2に記載のデータ読出しシステム。
  4. 前記一時記憶領域を管理する情報は、前記ファイルに関する情報の位置情報をさらに含み、
    前記処理部は、
    前記算出したファイルサイズ分の領域をファイルの領域として前記一時記憶領域に確保するに際し、
    前記算出したファイルサイズと前記一時記憶領域のサイズとを比較し、前記算出したファイルサイズが前記一時記憶領域のサイズより大きいと判定した場合、前記データの先頭位置を参照して前記読出し位置のデータに該当するファイルのデータを前記データ領域からすべて読み出し、読み出した当該ファイルのデータをファイル単位で前記バックアップ領域に出力し、
    前記算出したファイルサイズと前記一時記憶領域の空きのサイズとを比較し、前記算出したファイルサイズが前記一時記憶領域の空きのサイズより大きいと判定した場合、一時記憶領域を管理する情報に含まれる前記ファイルに関する情報の位置情報により特定された前記ファイルに関する情報を取得し、当該ファイルに関する情報内の前記データの先頭位置を参照して前記一時記憶領域に存在するデータに該当するファイルのデータを前記データ領域からすべて読み出し、読み出した当該ファイルのデータをファイル単位で前記バックアップ領域に出力し、
    前記算出したファイルサイズが前記一時記憶領域のサイズ以下であり、前記算出したファイルサイズが前記一時記憶領域の空きのサイズ以下であると判定した場合、前記算出したファイルサイズ分の領域をファイルの領域として前記一時記憶領域に確保する
    ことを特徴とする請求項3に記載のデータ読出しシステム。
  5. 前記処理部は、
    前記データ領域のデータを順次に読み出す前に、
    前記データ領域のデータを順次に読み出した場合に使用する前記一時記憶領域の使用量のうち、最大の使用量に相当する一時記憶領域使用量を算出し、
    前記一時記憶領域使用量が前記一時記憶領域よりも大きい場合に、
    前記データ領域のデータを順次に読み出す際に前記算出したファイルサイズと前記一時記憶領域のサイズとの比較を行う
    ことを特徴とする請求項4に記載のデータ読出しシステム。
  6. 読出し対象となるデータを格納するデータ領域を含んだディスク装置と、データのバックアップ領域を含んだテープ装置と、前記データ領域のデータを読み出し、前記バックアップ領域に当該データを出力するデータ読出し装置とを含んで構成されるデータ読出しシステムに使用されるデータ読出し装置であって、
    前記ディスク装置は、
    前記データ領域に格納されているデータに該当するファイルに関する情報と、前記データ領域を構成する各データブロックに対応する当該ファイルに関する情報の位置情報とを管理し、
    前記データ読出し装置は、
    前記データ領域から読み出したデータを一時的に格納する一時記憶領域と、処理部とを備え、
    前記処理部は、
    前記データ領域を構成するデータブロックを順次に読み出す際に、
    当該データブロックに対応する前記ファイルに関する情報の位置情報を参照して、読出し位置のデータに該当する前記ファイルに関する情報の位置を特定し、当該特定された位置の前記ファイルに関する情報を参照して、前記一時記憶領域へのデータの出力位置を算出し、前記データ領域から読み出したデータを前記算出した出力位置に出力し、当該出力したデータに該当するファイルが前記一時記憶領域においてすべて揃ったか否かを判定し、すべて揃ったと判定した場合に、当該ファイルをファイル単位で前記バックアップ領域に出力する
    ことを特徴とするデータ読出し装置。
  7. 前記データ読出し装置は、前記一時記憶領域を管理する情報をさらに管理し、
    前記一時記憶領域を管理する情報は、前記一時記憶領域に確保されたファイル領域の先頭アドレス情報を含み、
    前記処理部は、
    前記一時記憶領域に確保されたファイル領域の先頭アドレス情報を参照して、前記記憶領域に、前記データ領域から読み出したデータに該当するファイルが存在するか否かを判定し、
    前記該当するファイルが前記一時記憶領域に存在しないと判定した場合、前記一時記憶領域に前記該当するファイルの領域を確保し、当該確保した領域の先頭アドレスを前記一時記憶領域に確保されたファイルの先頭アドレス情報に登録し、前記確保した領域の先頭アドレスにファイル内の相対位置を加算して、前記出力位置を算出し、
    前記該当するファイルが前記一時記憶領域に存在すると判定した場合、前記一時記憶領域に確保されたファイルの先頭アドレスを参照して、前記該当するファイルの前記一時記憶領域に確保されたファイルの先頭アドレスを取得し、取得した当該ファイルの先頭アドレスにファイル内の相対位置を加算して、前記出力位置を算出する
    ことを特徴とする請求項6に記載のデータ読出し装置。
  8. 前記ディスク装置が管理する前記ファイルに関する情報は、
    前記データ領域に存在するデータの先頭位置と、当該データのブロック数とを含み、
    前記処理部は、
    前記一時記憶領域に前記該当するファイルの領域を確保する際、
    前記データのブロック数を合計してファイルサイズを算出し、当該算出したファイルサイズ分の領域をファイルの領域として前記一時記憶領域に確保し、
    前記ファイル内の相対位置を算出する際、
    前記データの先頭位置を参照して、前記該当するファイルのデータのうち、前記読出し位置のデータよりも前の位置に存在するデータについての前記データのブロック数を合計して前記ファイル内の相対位置を算出し、
    前記出力したデータに該当するファイルが前記一時記憶領域においてすべて揃ったか否かを判定する際、
    前記データの先頭位置を参照して、前記該当するファイルのデータのうち、前記読出し位置のデータが最後の位置に存在する場合に、前記出力したデータに該当するファイルが前記一時記憶領域においてすべて揃ったと判定する
    ことを特徴とする請求項7に記載のデータ読出し装置。
  9. 前記一時記憶領域を管理する情報は、前記ファイルに関する情報の位置情報をさらに含み、
    前記処理部は、
    前記算出したファイルサイズ分の領域をファイルの領域として前記一時記憶領域に確保するに際し、
    前記算出したファイルサイズと前記一時記憶領域のサイズとを比較し、前記算出したファイルサイズが前記一時記憶領域のサイズより大きいと判定した場合、前記データの先頭位置を参照して前記読出し位置のデータに該当するファイルのデータを前記データ領域からすべて読み出し、読み出した当該ファイルのデータをファイル単位で前記バックアップ領域に出力し、
    前記算出したファイルサイズと前記一時記憶領域の空きのサイズとを比較し、前記算出したファイルサイズが前記一時記憶領域の空きのサイズより大きいと判定した場合、一時記憶領域を管理する情報に含まれる前記ファイルに関する情報の位置情報により特定された前記ファイルに関する情報を取得し、当該ファイルに関する情報内の前記データの先頭位置を参照して前記一時記憶領域に存在するデータに該当するファイルのデータを前記データ領域からすべて読み出し、読み出した当該ファイルのデータをファイル単位で前記バックアップ領域に出力し、
    前記算出したファイルサイズが前記一時記憶領域のサイズ以下であり、前記算出したファイルサイズが前記一時記憶領域の空きのサイズ以下であると判定した場合、前記算出したファイルサイズ分の領域をファイルの領域として前記一時記憶領域に確保する
    ことを特徴とする請求項8に記載のデータ読出し装置。
  10. 前記処理部は、
    前記データ領域のデータを順次に読み出す前に、
    前記データ領域のデータを順次に読み出した場合に使用する前記一時記憶領域の使用量のうち、最大の使用量に相当する一時記憶領域使用量を算出し、
    前記一時記憶領域使用量が前記一時記憶領域よりも大きい場合に、
    前記データ領域のデータを順次に読み出す際に前記算出したファイルサイズと前記一時記憶領域のサイズとの比較を行う
    ことを特徴とする請求項9に記載のデータ読出し装置。
  11. 読出し対象となるデータを格納するデータ領域を含んだディスク装置と、データのバックアップ領域を含んだテープ装置と、前記データ領域のデータを読み出し、前記バックアップ領域に当該データを出力するデータ読出し装置とを含んで構成されるデータ読出しシステムにおけるデータ読出し方法であって、
    前記ディスク装置は、
    前記データ領域に格納されているデータに該当するファイルに関する情報と、前記データ領域を構成する各データブロックに対応する当該ファイルに関する情報の位置情報とを管理し、
    前記データ読出し装置は、
    前記データ領域から読み出したデータを一時的に格納する一時記憶領域と、処理部とを備え、
    前記処理部は、
    前記データ領域を構成するデータブロックを順次に読み出す際に、
    当該データブロックに対応する前記ファイルに関する情報の位置情報を参照して、読出し位置のデータに該当する前記ファイルに関する情報の位置を特定し、当該特定された位置の前記ファイルに関する情報を参照して、前記一時記憶領域へのデータの出力位置を算出し、前記データ領域から読み出したデータを前記算出した出力位置に出力し、当該出力したデータに該当するファイルが前記一時記憶領域においてすべて揃ったか否かを判定し、すべて揃ったと判定した場合に、当該ファイルをファイル単位で前記バックアップ領域に出力する
    ことを特徴とするデータ読出し方法。
  12. 前記データ読出し装置は、前記一時記憶領域を管理する情報をさらに管理し、
    前記一時記憶領域を管理する情報は、前記一時記憶領域に確保されたファイル領域の先頭アドレス情報を含み、
    前記処理部は、
    前記一時記憶領域に確保されたファイル領域の先頭アドレス情報を参照して、前記記憶領域に、前記データ領域から読み出したデータに該当するファイルが存在するか否かを判定し、
    前記該当するファイルが前記一時記憶領域に存在しないと判定した場合、前記一時記憶領域に前記該当するファイルの領域を確保し、当該確保した領域の先頭アドレスを前記一時記憶領域に確保されたファイルの先頭アドレス情報に登録し、前記確保した領域の先頭アドレスにファイル内の相対位置を加算して、前記出力位置を算出し、
    前記該当するファイルが前記一時記憶領域に存在すると判定した場合、前記一時記憶領域に確保されたファイルの先頭アドレスを参照して、前記該当するファイルの前記一時記憶領域に確保されたファイルの先頭アドレスを取得し、取得した当該ファイルの先頭アドレスにファイル内の相対位置を加算して、前記出力位置を算出する
    ことを特徴とする請求項11に記載のデータ読出し方法。
  13. 前記ディスク装置が管理する前記ファイルに関する情報は、
    前記データ領域に存在するデータの先頭位置と、当該データのブロック数とを含み、
    前記処理部は、
    前記一時記憶領域に前記該当するファイルの領域を確保する際、
    前記データのブロック数を合計してファイルサイズを算出し、当該算出したファイルサイズ分の領域をファイルの領域として前記一時記憶領域に確保し、
    前記ファイル内の相対位置を算出する際、
    前記データの先頭位置を参照して、前記該当するファイルのデータのうち、前記読出し位置のデータよりも前の位置に存在するデータについての前記データのブロック数を合計して前記ファイル内の相対位置を算出し、
    前記出力したデータに該当するファイルが前記一時記憶領域においてすべて揃ったか否かを判定する際、
    前記データの先頭位置を参照して、前記該当するファイルのデータのうち、前記読出し位置のデータが最後の位置に存在する場合に、前記出力したデータに該当するファイルが前記一時記憶領域においてすべて揃ったと判定する
    ことを特徴とする請求項12に記載のデータ読出し方法。
  14. 前記一時記憶領域を管理する情報は、前記ファイルに関する情報の位置情報をさらに含み、
    前記処理部は、
    前記算出したファイルサイズ分の領域をファイルの領域として前記一時記憶領域に確保するに際し、
    前記算出したファイルサイズと前記一時記憶領域のサイズとを比較し、前記算出したファイルサイズが前記一時記憶領域のサイズより大きいと判定した場合、前記データの先頭位置を参照して前記読出し位置のデータに該当するファイルのデータを前記データ領域からすべて読み出し、読み出した当該ファイルのデータをファイル単位で前記バックアップ領域に出力し、
    前記算出したファイルサイズと前記一時記憶領域の空きのサイズとを比較し、前記算出したファイルサイズが前記一時記憶領域の空きのサイズより大きいと判定した場合、一時記憶領域を管理する情報に含まれる前記ファイルに関する情報の位置情報により特定された前記ファイルに関する情報を取得し、当該ファイルに関する情報内の前記データの先頭位置を参照して前記一時記憶領域に存在するデータに該当するファイルのデータを前記データ領域からすべて読み出し、読み出した当該ファイルのデータをファイル単位で前記バックアップ領域に出力し、
    前記算出したファイルサイズが前記一時記憶領域のサイズ以下であり、前記算出したファイルサイズが前記一時記憶領域の空きのサイズ以下であると判定した場合、前記算出したファイルサイズ分の領域をファイルの領域として前記一時記憶領域に確保する
    ことを特徴とする請求項13に記載のデータ読出し方法。
  15. 前記処理部は、
    前記データ領域のデータを順次に読み出す前に、
    前記データ領域のデータを順次に読み出した場合に使用する前記一時記憶領域の使用量のうち、最大の使用量に相当する一時記憶領域使用量を算出し、
    前記一時記憶領域使用量が前記一時記憶領域よりも大きい場合に、
    前記データ領域のデータを順次に読み出す際に前記算出したファイルサイズと前記一時記憶領域のサイズとの比較を行う
    ことを特徴とする請求項14に記載のデータ読出し方法。
JP2005338888A 2005-11-24 2005-11-24 データ読出しシステム、データ読出し装置およびデータ読出し方法 Expired - Fee Related JP4755487B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2005338888A JP4755487B2 (ja) 2005-11-24 2005-11-24 データ読出しシステム、データ読出し装置およびデータ読出し方法
US11/339,465 US7672980B2 (en) 2005-11-24 2006-01-26 System, apparatus and method for reading data

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005338888A JP4755487B2 (ja) 2005-11-24 2005-11-24 データ読出しシステム、データ読出し装置およびデータ読出し方法

Publications (2)

Publication Number Publication Date
JP2007148546A JP2007148546A (ja) 2007-06-14
JP4755487B2 true JP4755487B2 (ja) 2011-08-24

Family

ID=38120151

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005338888A Expired - Fee Related JP4755487B2 (ja) 2005-11-24 2005-11-24 データ読出しシステム、データ読出し装置およびデータ読出し方法

Country Status (2)

Country Link
US (1) US7672980B2 (ja)
JP (1) JP4755487B2 (ja)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8412856B2 (en) * 2009-10-26 2013-04-02 Sony Computer Entertainment America Llc. File input/output scheduler using immediate data chunking
US8812450B1 (en) 2011-04-29 2014-08-19 Netapp, Inc. Systems and methods for instantaneous cloning
US8539008B2 (en) 2011-04-29 2013-09-17 Netapp, Inc. Extent-based storage architecture
US8745338B1 (en) 2011-05-02 2014-06-03 Netapp, Inc. Overwriting part of compressed data without decompressing on-disk compressed data
US8600949B2 (en) 2011-06-21 2013-12-03 Netapp, Inc. Deduplication in an extent-based architecture
JP6248761B2 (ja) * 2014-03-31 2017-12-20 富士通株式会社 記憶装置、データ記憶プログラム、およびデータ記憶方法
US9910617B2 (en) * 2015-12-01 2018-03-06 International Business Machines Corporation Data updating in a file system

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5315708A (en) * 1990-02-28 1994-05-24 Micro Technology, Inc. Method and apparatus for transferring data through a staging memory
US5487160A (en) * 1992-12-04 1996-01-23 At&T Global Information Solutions Company Concurrent image backup for disk storage system
JP3507132B2 (ja) * 1994-06-29 2004-03-15 株式会社日立製作所 フラッシュメモリを用いた記憶装置およびその記憶制御方法
US5835953A (en) * 1994-10-13 1998-11-10 Vinca Corporation Backup system that takes a snapshot of the locations in a mass storage device that has been identified for updating prior to updating
JP4160642B2 (ja) * 1995-09-08 2008-10-01 株式会社日立製作所 ネットワークデータ転送方法
US6289389B1 (en) * 1997-06-03 2001-09-11 Lextron Systems, Inc. Enhanced integrated data delivery system
US5953729A (en) * 1997-12-23 1999-09-14 Microsoft Corporation Using sparse file technology to stage data that will then be stored in remote storage
JPH11219311A (ja) * 1998-02-04 1999-08-10 Hitachi Ltd ファイルアクセス方法
JP3510782B2 (ja) * 1998-03-12 2004-03-29 シャープ株式会社 動画像記録方法、再生方法、編集方法および装置
US6038636A (en) * 1998-04-27 2000-03-14 Lexmark International, Inc. Method and apparatus for reclaiming and defragmenting a flash memory device
JP2001100927A (ja) * 1999-09-29 2001-04-13 Nec Corp ファイル管理システム,ファイル管理方法および記録媒体
WO2002065275A1 (en) * 2001-01-11 2002-08-22 Yottayotta, Inc. Storage virtualization system and methods
US6912630B1 (en) * 2001-03-30 2005-06-28 Emc Corporation Method and apparatus for computing file storage elements for backup and restore
JP3760804B2 (ja) * 2001-06-13 2006-03-29 日本電気株式会社 バックアップシステム
US6721851B2 (en) * 2001-08-07 2004-04-13 Veritas Operating Corporation System and method for preventing sector slipping in a storage area network
JP4288037B2 (ja) * 2002-02-25 2009-07-01 インターナショナル・ビジネス・マシーンズ・コーポレーション 記録ディスクを用いた記録装置、記録システムおよびそのバックアップ方法
JP4601969B2 (ja) * 2004-01-27 2010-12-22 株式会社日立製作所 ファイル入出力制御装置
JP4244836B2 (ja) * 2004-03-24 2009-03-25 日本電気株式会社 コンピュータシステム、そのバックアップ/リストア方法、ホストコンピュータ、プログラム

Also Published As

Publication number Publication date
US7672980B2 (en) 2010-03-02
JP2007148546A (ja) 2007-06-14
US20070130431A1 (en) 2007-06-07

Similar Documents

Publication Publication Date Title
JP4755487B2 (ja) データ読出しシステム、データ読出し装置およびデータ読出し方法
US6275910B1 (en) Storage device and method for data sharing
JP5452233B2 (ja) フラッシュドライブの寿命の延長
US8452930B2 (en) Methods and apparatus for backup and restore of thin provisioning volume
JP4402103B2 (ja) データ記憶装置、そのデータ再配置方法、プログラム
JP5141402B2 (ja) ストレージシステム,コピー制御方法およびコピー制御装置
JPWO2002056179A1 (ja) 仮想ドライブを使用したパーティションの再生成方法、データ処理装置及びデータ記憶装置
JP2001101046A (ja) 情報処理装置及びその方法、コンピュータ可読メモリ
US11221989B2 (en) Tape image reclaim in hierarchical storage systems
JP3407628B2 (ja) 計算機システム
JP2000122902A (ja) ログ構造記憶先にデ―タを書き込む方法、媒体及びデ―タ記憶システム
JPWO2007099636A1 (ja) ファイルシステム移行方法、ファイルシステム移行プログラム及びファイルシステム移行装置
JP7344352B2 (ja) ファイルストレージシステム及びファイルストレージシステムの管理方法
JP4765967B2 (ja) 情報処理装置及び情報処理方法並びにプログラム
US9841930B2 (en) Storage control apparatus and storage control method
JP3384258B2 (ja) 計算機システム
JP2009205591A (ja) アクセスモジュール、情報記録モジュール、及び情報記録システム
JP5665518B2 (ja) データベースシステム、その情報処理方法、およびそのプログラム
JP7262977B2 (ja) 記録装置及びその制御方法、並びにプログラム
JP2010152781A (ja) バックアップサーバ装置、バックアップ/リストアプログラム、およびバックアップ/リストア方法
JP2014059760A (ja) ストレージ装置、ストレージ装置の制御方法、及びストレージ装置の制御プログラム
JP6911732B2 (ja) 情報処理装置、情報処理方法、およびプログラム
JP4480592B2 (ja) ファイルシステム
KR100630213B1 (ko) 데이터 저장시스템에서 데이터 버퍼 제어 블록을 이용한로그 우선 출력 프로토콜 수행 방법
CN116107510A (zh) 一种文件管理方法、设备和存储介质

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20080708

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20110131

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110215

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110404

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

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

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

Free format text: PAYMENT UNTIL: 20140603

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees