JP2001134482A - データ処理システムにおいて独立したデータコピーを行う方法 - Google Patents

データ処理システムにおいて独立したデータコピーを行う方法

Info

Publication number
JP2001134482A
JP2001134482A JP2000236261A JP2000236261A JP2001134482A JP 2001134482 A JP2001134482 A JP 2001134482A JP 2000236261 A JP2000236261 A JP 2000236261A JP 2000236261 A JP2000236261 A JP 2000236261A JP 2001134482 A JP2001134482 A JP 2001134482A
Authority
JP
Japan
Prior art keywords
data
source
destination
block
track
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2000236261A
Other languages
English (en)
Other versions
JP3712922B2 (ja
Inventor
Ishay Kedem
ケデム イシャイ
Hana Moreshet
モアレシェット ハナ
Douglas E Lecrone
イー レクロン ダグラス
Bruce A Pocock
エイ ポコック ブルース
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.)
EMC Corp
Original Assignee
EMC Corp
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 EMC Corp filed Critical EMC Corp
Publication of JP2001134482A publication Critical patent/JP2001134482A/ja
Application granted granted Critical
Publication of JP3712922B2 publication Critical patent/JP3712922B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

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/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • G06F11/1458Management of the backup or restore process
    • G06F11/1466Management of the backup or restore process to make the backup process non-disruptive
    • 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/0604Improving or facilitating administration, e.g. storage management
    • G06F3/0607Improving or facilitating administration, e.g. storage management by facilitating the process of upgrading existing storage systems, e.g. for improving compatibility between host and storage device
    • 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/065Replication mechanisms
    • 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/0689Disk arrays, e.g. RAID, JBOD
    • 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)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Quality & Reliability (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Signal Processing For Digital Recording And Reproducing (AREA)

Abstract

(57)【要約】 【課題】 データ記憶装置内でソースから宛先へデータ
をコピーする改良された方法を提供する。 【解決手段】 ソースデバイス(31)から宛先デバイ
ス(33あるいは35)へデータファイルをコピーする
する方法である。ソースファイル(例えば36)および
宛先格納場所(例えば40、41)を認識する、要求ホ
ストアプリケーションからのコピーコマンドに応答して
エクステントトラック(75)が形成され、ファイルを
コピーする環境が確立する。コーリングシステムが、た
とえデータがコピーされていなくてもコピー処理が完了
したという即時の応答を受け取る。アプリケーションプ
ログラムは、ソースあるいは宛先のいずれのファイルに
もアクセスできる。コピープログラム(84)は、ファ
イルをトラック毎に宛先格納場所へ転送する。手順は、
そのトラックの転送に先行するアプリケーションによ
る、ソースまたは宛先のいずれかの特定トラックへの如
何なるデータアクセスもデータの完全性を維持するよう
適応することを保証するようになっている。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、全体的にはデータ
処理システムにおけるデータ記憶装置に関し、さらに詳
細には、一方の記憶装置から他方の記憶装置へデータを
コピーする方法に関する。
【0002】
【従来技術】従来、1つの場所、一般には「ソース場
所」から第2の場所つまり「宛先場所」へデータをコピ
ーすることはよく知られている。ある状況では、コピー
することでデータの重複を引き起こすことがある。別の
状況では、複数のコピーを提供することにより、同数の
独立したアプリケーションやプロセスがコピーされたデ
ータを独立に処理することができる。
【0003】従来のある手法において、特にパーソナル
コンピュータ使用時によく知られているように、コピー
は、別の論理ボリューム間で、または同じ論理ボリュー
ムの別のディレクトリー間でファイル単位で行われてい
る。従来の装置は、コピーされるソースとファイルへの
パス、および宛先場所へのパスを指定する「コピー」コ
マンドを使用している。その後、プロセッサはソースか
ら宛先場所にデータをコピーする。コピー中には、アプ
リケーションはソース場所あるいは宛先場所のどちらに
あるデータにもアクセスできない。
【0004】大型で複雑なデータ記憶装置を含む別のシ
ステムにおいて、アプリケーションは複数のホストプロ
セッサに作用することができる。そのような装置は多く
の場合、他のホストアプリケーションと無関係にコピー
を行う能力を備えている。すなわち、データがソースか
ら宛先へコピーされている間に、他のプログラムやプロ
セスはソースおよび宛先ファイル場所以外の場所にある
データに作用することができる。しかし、このようなシ
ステムでは、コピーが完了するまでソースファイルおよ
び宛先ファイルへの如何なるアクセスも阻止されてい
る。
【0005】米国特許出願番号08/842,953
は、ある論理ボリュームのデータが第2の論理ボリュー
ムに変換でき、それにより論理ボリューム内の全てのフ
ァイルとレコードを含む論理ボリュームのコピーを提供
するという、別の方法を開示している。この処理はプロ
セッサの処理とは無関係に行われるので、コピーコマン
ドがプロセッサに過度の負荷をかけることがなく、他の
プロセッサがデータ記憶装置内の他のデータを処理する
能力をそこなうことがない。しかし、コピー処理中に
は、前記米国特許出願番号第08/842,953にお
いて標準およびBCV論理ボリュームとし形成されてい
るソースと宛先の論理ボリュームの両者は、如何なる他
のプロセスもコピーにアクセスできないようにしてい
る。
【0006】そのようなシステムでは、データは物理ま
たは論理アドレスによって認識される。物理アドレスは
デバイス番号、トラック番号およびレコード番号の認識
を含んでいる。論理アドレスは、論理ボリューム、ファ
イルおよび、ある場合にはレコードに関連している。こ
れらの要素の各々は、等級の違いを表す「細分度」を有
している。物理デバイスの細分度については、もっとも
粗いものからきめの細かいものまで、物理ディスク、ト
ラック、セクターおよびレコードとして分類されてお
り、論理デバイスでは、要素分類は論理デバイス、ファ
イルおよびレコードである。
【0007】前記米国特許出願番号08/842,95
3において、コピーは論理ボリューム、つまりもっとも
粗い細分度で行われる。ファイルのようによりきめの細
かい細分度でデータの集合を変換することのみが要求さ
れる場合には、そのような論理ボリュームの変換は不要
な遅延を招くことになる。したがって、必要なことは、
コピー処理を開始するコピーコマンドの処理の際に最小
の遅れでもって、更に、異なるアプリケーションにより
処理するためのソースおよび宛先場所の両方の利用可能
でもって、如何なるプロセッサ処理とも無関係にデータ
をソースから宛先へコピーする方法である。
【0008】
【発明が解決しようとする課題】したがって、本発明の
目的は、データ記憶装置内でソースから宛先へデータを
コピーする改良された方法を提供することである。本発
明の別の目的は、如何なるホストプロセスとも本質的に
独立して、データをソース場所から宛先場所へコピーす
る改良された方法を提供することである。さらに、本発
明の別の目的は、ソース場所に作用するプロセスの相互
作用と、宛先場所については処理の開始に対して、最小
限の妨げでもってデータをソースから宛先へコピーする
改良された方法を提供することである。さらにまた、本
発明の別の目的は、ファイルのようなデータのサブセッ
トをソースから宛先装置へ、通常論理ボリュームによる
変換のような、より粗い細分度のデータを変換するシス
テムにおいてデータを変換する方法を提供することであ
る。
【0009】
【課題を解決するための手段】本発明によるデータ処理
システムは、ホストアプリケーションの処理中にコマン
ドを生成するホストデバイスを備えている。ホストアプ
リケーションは、データを所定のソース格納場所から所
定の宛先格納場所へコピーする処理を開始するコマンド
を生成することができる。この方法は最初は所定のソー
ス格納場所のリストと、所定の宛先格納場所のリストと
を生成することにより、処理環境を確立する。その後、
コピーが行われたことを示すメッセージがホストアプリ
ケーションに送られ、すぐにソースおよび宛先格納場所
が利用可能になる。その後、命令された方法でデータの
コピーが所定の格納場所から始まり、命令は、データを
所定の各ソース場所から所定の各宛先場所へコピーする
ことを、データが転送されたことを示すリストを更新す
ることを含んでいる。
【0010】添付の請求項は、本発明の主題を詳しく示
し、明確に主張している。本発明の種々の目的、利点お
よび新規な特徴は、同一の符号が同一の部位を示してい
る添付の図面と併せて以下の詳細な説明を読むことによ
り更に良く理解できるであろう。
【0011】
【実施例】図1には、1つまたはそれ以上のホスト装置
を有するホストアレイ21がオペレーションを制御す
る、データ処理システム20が示されている。各ホスト
装置はプログラムを処理するようになっており、以下の
説明において「ホストアプリケーション」は、特定のア
プリケーションプログラム、手順、プロセス、モジュー
ルまたはホストで処理される同様のものを意味してい
る。図1は、このような2つのアプリケーション、つま
りホストAPP Aアプリケーション22とホストAP
P Bアプリケーション23とを示している。各ホスト
アプリケーションは、単一または並行バス構造を含むい
くつかの公知の形態をとることができるシステムバス2
5上で、データ記憶装置内に格納されているデータにア
クセスして処理を行う。本説明の目的上、データ記憶装
置24はホストAPP Aアプリケーション22または
ホストAPP Bアプリケーション23のいずれかで処
理できる、全てのデータを格納できるとみなすことがで
きる。
【0012】本発明は、種々の形式および構成の多数の
ディスク記憶装置にて実施できる。以下の説明は、特定
のデータ記憶装置24、つまりシメトリックディスクア
レイ記憶装置(DASD)に関連してなされている。し
かし、本発明を実施するものとして、特に説明した実施
例を他の装置に適合することは当業者であれば容易に理
解できる。
【0013】データ記憶装置24としてのシメトリック
ディスクアレイ記憶装置は、互いに通信を行うとと共
に、一連のディスクアダプターや物理ディスクドライブ
とも通信を行うホストアダプター26とキャッシュメモ
リ27とを有している。例えば、図1には、論理ボリュ
ーム31を含む、1つまたはそれ以上の論理ボリューム
を格納する物理ディスクアレイを有する第1のディスク
アダプター(DA)30、論理ボリューム33を含むデ
ィスクアダプター32、論理ボリューム35を含むディ
スクアダプター34が示されている。データ構成は全く
随意的である、本発明の説明の目的上、物理デバイスは
論理ボリュームを格納すると想定する。しかし、従来か
ら知られているように、論理ボリュームは、単一の物理
デバイスの一部、物理デバイスの全部、複数の物理デバ
イスの一部、または複数の物理デバイスの全部を備える
ことができる。更に、このような論理デバイスは別個の
データセットやファイルを含むことがでいる。図1に
は、連続データトラックの1つのセットにある第1のフ
ァイル36と、連続データトラックの2つの分かれたセ
ット37Aと37Bに置かれているファイル37が示さ
れている。
【0014】本発明によれば、ファイル36を論理ボリ
ューム33の所定のファイル場所40へ転送し、ファイ
ル37を論理ボリューム35の連続場所41のセットへ
転送するために論理ボリューム31内の全てのデータを
転送する必要はない。むしろ、本発明によれば、ファイ
ル36にあるデータだけが論理ボリューム33へ転送さ
れ、ファイル37にあるデータだけが論理ボリューム3
5の特定の場所に転送されるのである。上記2つの特定
の転送の目的のために、論理ボリューム31はソースで
あり、故にソースデバイス31と呼ばれ、一方で論理ボ
リューム33と35は宛先であるのでDEST Aデバ
イス33およびDEST Bデバイス35と呼ばれる。
【0015】HOST APP Aアプリケーション22
がファイル36のデータを処理すると想定する。そのア
プリケーション、または要求ホストアプリケーションと
しての他の全てのアプリケーションは、HOST AP
P Bアプリケーション23での使用のためにDEST
Aデバイスにある記憶装置40にそのファイルのコピー
を作る必要性を決定できる。要求ホストアプリケーショ
ンは、例えばファイル36と、DEST Aデバイス3
3にある記憶装置40のような、そのファイルの宛先と
いったソースデバイスのファイルを認識する特別なコピ
ーコマンド(例えばFILE SMMFコマンド)を実
行することでこの結果をもたらすようになっている。
【0016】要求ホストアプリケーションとホストアダ
プター26とは、図5において更に詳しく説明するよう
に、転送のための環境を確立するために相互に作用す
る。通常数ミリセカンドである、環境を確立するために
必要な時間の間に、ソースデバイス31とDEST A
デバイス33とはロックされている。つまり、これらは
要求ホストアプリケーションを含む如何なるホストアプ
リケーションであっても利用することができない。しか
し、環境が確立されて、ホストアダプターがコピーをす
るための内部コマンドを生成すると即座にソースデバイ
ス31とDESTAデバイス33とは全てのホストアプ
リケーションと通信を行えるようになる。例えば、HO
ST APP Aと、HOST APP Bのアプリケ
ーション22と23は、ファイル36および格納場所4
0にあるコピーと相互に作用することができる。
【0017】環境が確立された直後には、DEST A
デバイス33には有効データが存在しない。しかし、以
下に詳述するように、コピープログラムは順序正しくコ
ピーを続ける。ソースデバイス31にあるファイル36
へのデータ書き込み、あるいはDEST Aデバイス3
3中の格納場所にあるファイルコピーのような、全ての
コピーからのデータの読み書きについての如何なる試み
も、データファイルの2つのコピー中のデータの完全性
が維持されるよう、関連データの優先的な転送を引き起
こす。
【0018】図2は、本発明に関連するキャッシュメモ
リ27、特に、書き込み保留スロット42とデバイスヘ
ッダー43についての部分を詳細に示している。書き込
み保留スロットやデバイスヘッダーとしてキャッシュメ
モリ内のデータ構造を使用することは本技術分野では公
知である。書き込み保留スロット44のような個々の書
き込み保留スロットは、データブロック46のデータが
その後に続いているヘッダー45を含んでいる。通常こ
のデータブロックは1つの物理トラックのデータを含む
ことができる。各ヘッダー45は、書き込み保留スロッ
ト42の1つから物理ディスクドライブの或る場所への
データの書き込み処理またはデステージ(destaging)
の必要性を示すWPフラグ46を含んでいる。一旦デー
タがキャッシュメモリ27から、例えばソースデバイス
31といった対応するデータ記憶装置へ転送されると、
システムはそのスロットについてのWPビット46をク
リアする。各ヘッダーは本発明に関係のない別の情報を
含んでいるが、ここには示していない。
【0019】デバイスヘッダー43は、シメトリックD
ASDの各論理デバイスについて1つのエントリーを含
んでいる。このような3つのエントリー、つまりデバイ
ス31にエントリー47、デバイス33にエントリー4
8、デバイス35にエントリー50が示されている。こ
れらの各エントリーは同一構成である。つまり、デバイ
スエントリー47は、デバイス31中にヘッダー51と
各シリンダーに対して複数のエントリーを含んでいる。
3つの特定エントリ、つまりシリンダー0エントリー5
2、シリンダー1エントリー52およびシリンダーnエ
ントリー54が示されている。ヘッダーは図2に示され
るように構造すなわちブロック55を有しており、以下
に詳述されている。例えばシリンダー0エントリー52
といった各シリンダーエントリーは、各々の場所がシリ
ンダー内で特定のトラックに割り当てられたトラックI
Dテーブル55を定義する場所ブロックを示す。2つの
トラックエントリーがトラックIDテーブル55中に示
されている。つまりトラック0エントリー56とトラッ
クEエントリー57であり、個々の物理デバイスについ
て各シリンダーは15のデータトラックから構成されて
いる。
【0020】デバイスエントリー48は、ヘッダー61
とシリンダーエントリーとを含むブロック60から構成
されている。図2は、トラックIDテーブル63を認識
するシリンダー0エントリー62を含んでいる3つの特
定のシリンダーエントリーを示している。トラックID
テーブル63は、本特定の実施例において3つのエント
リー、つまりトラック0エントリー64、トラック1エ
ントリー65およびトラックEエントリー66とを含ん
でいる。ブロック60中に追加のシリンダーエントリー
を含むこともできる。図2は、そのようなエントリー、
つまりシリンダー1エントリー67とシリンダーmエン
トリー68を示している。後述のようにn=mまたはn
≠mである。DEST Bデバイスエントリー50は類
似構造をもつことができる。
【0021】さらに図2を参照すると、ソースデバイス
47のヘッダーブロック51は、特定のデバイスがソー
スデバイスか、又は宛先デバイスとして作用しているか
否かで異なって解釈され得る、種々の情報アイテムを含
んでいる。図2は、ヘッダ−ブロック51がエクステン
ト・トラック・ポインタ70、セッションIDエントリ
ー71、要求バッファ72、FSMFフラグ73および
パスワードエントリー74を含んでいる特定の装置を示
している。ヘッダー51がソースデバイスと関連づけら
れる場合、パスワードエントリーは所定値をもつことが
できる。この値は、図3で詳述されるエクステント・ト
ラック75へのアドレスを含み、ヘッダー76と1つま
たはそれ以上のエクステント・バッファ77で構成され
ているので、エクステント・トラック・ポインタ70を
定義するものである。ヘッダー75とエクステントバッ
ファ77との詳細は後述する。FSMF73はデバイス
が本発明で使用されているような宛先デバイスである
か、または米国特許出願番号08/842,953に開
示されているBCVデバイスであるかを示すものであ
る。
【0022】ホストプロセッサーアレイ21と独立に作
動するコピープログラムは、本発明に重要な構成要素で
ある。このプログラムは、図4に示される特定のデータ
構造を有し、コマンドに応じて作動する。この構造は、
その要求がソースデバイスから生じたものか、あるいは
宛先デバイスから生じたものかによって別のエントリー
を包含できる。宛先デバイス処理についての要求の場合
には、ブロック81はソースデバイス番号を含み、ブロ
ック82は開始エクステントのレコード番号を含み、ブ
ロック83は終了エクステントのレコード番号を含む。
ソースデバイスについての要求の場合には、ブロック8
1は宛先デバイス番号を含み、ブロック82は宛先デバ
イス用のシリンダーアドレスを含み、ブロック83は宛
先デバイス用のヘッド認識名を含む。
【0023】本実施例において、いずれの形態であって
も要求は、データがソースから宛先デバイスへコピーさ
れる処理を開始するようにソースデバイスに関連づけさ
れているディスクアダプター内に置かれた、例えばディ
スクアダプター30の中のコピープログラム84といっ
たコピープログラムを命令する。
【0024】図5から図10に示されている処理を参照
すると、ファイルSMMFコピーコマンドは以下の処理
段階を生じるとみなすことができる。 1.要求ホストアプリケーションが、「ファイルSMM
F」コマンドを送出すると始まり、コピーコマンドが処
理されたという応答が要求ホストアプリケーションに送
られたときに終了する第1の段階。この段階中に、要求
ホストアプリケーション、ホストアダプダーおよびソー
スデバイスアダプタは、要求ホストアプリケーションに
よって定められた場所にあるエクステント・トラックに
格納するための、図3で示されるようなエクステント・
トラック構造を生成する。例えば、要求ホストアプリケ
ーションは、その後、如何なるデバイスによってもアク
セスできる図1のソースデバイス31中のトラック85
にエクステントトラックを割り当てることができる。最
大の効果をあげるために、要求ホストアプリケーション
は更に、エクステント・トラックも処理中にキャッシュ
メモリにあるようパラメータを設定できる。 2.コピー処理の要求が送出されて始まり、全てのデー
タがコピーされて終了する第2段階。この段階中に、ソ
ースデバイス中にあるコピープログラムは、選択された
宛先格納場所に、トラック毎にデータを複製する。更に
詳細には、ファイルSMMFコマンドがファイル36を
ソースとして、場所40を宛先として認識すると、ファ
イル36の各トラックは順に場所40へ転送される。フ
ァイルSMMFコマンドがファイル37を認識すると、
コピープログラムはソースデバイス31中の2つの非連
続位置37Aと37Bを、デバイス35DEST Bの
連続トラック場所41ヘ転送する。この段階の際に、ソ
ースまたは宛先デバイスのデータへのアクセスの如何な
る試みも迅速に行われる。 3.コピー処理を変更または終了できる変更/終了段
階。
【0025】シメトリックスDASDデータ記憶装置シ
ステムにおいて、ホストアダプター26のような各ホス
トアダプターと、ディスクアダプター30、32,34
のようなディスクアダプターとが、ホストアダプター2
6のコントローラー86、ディスクアダプター30のよ
うなコントローラー87、ディスクアダプター32のコ
ントローラー88、ディスクアダプター34のコントロ
ーラ89のようなコントローラーを備えている。この各
コントローラーは類似の構造であり、独自のランダムア
クセスメモリを含み、キャッシュメモリへアクセスする
マイクロプロセッサを備えている。
【0026】図5から図9は、第1処理段階に行われる
ステップと手順を、図8から図10は第2処理段階を、
図11と図12は第3処理段階を示している。本発明を
理解するために、まず最初に図1のファイル36を記憶
装置40に転送することに関する発明を説明し、その後
に別の複雑なコピー処理について示すことが有用であ
る。
【0027】要求ホストアプリケーションがファイル3
6を記憶装置40へコピーをしようとする場合、要求ホ
ストアプリケーションは、データ記憶装置24と、特に
ホストアダプター26のコントローラ86とソースデバ
イスとされたディスクアダプター30のコントローラ8
7のような、ソースと関連するアダプターコントローラ
とデバイスコントローラと相互に作用するよう、図5の
プロセス90を開始する。ステップ91において、要求
ホストコントローラは1つのトラックをエクステント・
トラックとして割り当てる。コントローラ87はステッ
プ92を用いてそのエクステント・トラックを割り当
て、の要求ホストアプリケーションへ返送されるそのト
ラックへのポインタを生成する。要求ホストアプリケー
ション中のステップ93は、図2に示されているソース
デバイス31についてのヘッダー55のブロック70の
ような、ソースデバイスヘッダ構成にポインタを置く。
【0028】ステップ94において、要求ホストアプリ
ケーションはセッションIDを生成する処理を開始す
る。ホストアダプタ26のコントローラ86のようなホ
ストアダプターコントローラは、そのセッションIDを
確立することによってステップ95で応答する。更に詳
細には、プロテクションビットを含むデータブロック
は、各トラックIDテーブルと関連している。データブ
ロックは、各トラックに一行で、各セッションに一列の
2次元の配列とみなすことができる。シメトリックスデ
ィスクアレイ記憶装置において、各行は2バイト幅で最
大16セッションを定義するものである。このアレイは
PBヘッダー96として各トラックIDテーブルに置か
れている。以下の説明において、特定のPBビット位置
は、xがシリンダ内のトラックを示し、yがセッション
番号を示すPB(x、y)の形態で認識できる。ステッ
プ95において、セッション作成中にコントローラ87
は、どの「y」列が利用できるかを判定する。一つが利
用できる場合、コントローラ87は選択されたPBビッ
ト列に関連するセッション認識番号を確立する。この割
当は、ソースおよび宛先デバイスに関連する各PBヘッ
ダ96に適用される。個別のセッションを確立すること
で、部分的に重なる領域があっても、並行して進めるこ
とができる複数のコピー処理が可能になり、例えば、フ
ァイル36をDEST Aのデバイス33へコピーし、
ファイル36を含む別の集合を別の指定デバイスへコピ
ーしたいというような場合である。
【0029】セッションが確立されてPB列ビットが決
定されると、制御は、要求ホストアプリケーションがエ
クステント・トラックを確立するステップ97へ進む。
最初に、要求ホストアプリケーションは、この特定のセ
ッションへ割り当てられたエクステント・トラック85
のような、エクステント・トラックを読み取る。最初の
段階において、エクステント・トラックにはデータがな
い。しかしながら、以下で理解できようにステップ97
の処理は所定セッション中に繰り返すことができる。つ
まり、ステップ97は、新しいコマンドに必要な新しい
エクステントを追加したり、以前に規定された無効のエ
クステントを削除するというような種々のハウスキーピ
ング処理を行う。
【0030】次に、要求ホストアプリケーションは、エ
クステント・リストを再分類する。特定の装置におい
て、エクステント・リストには分類フィールドとしてシ
リンダーブロックヘッド方式のアドレスが含まれてい
る。つまり、処理を探索するために最小要求で最も効率
的なデータ転送が、シリンダーおよびトラックによって
命令される。その後、ステップ97で図3に示される構
成に従ってエクステント・トラックが形成される。
【0031】図3を参照すると、エクステント・トラッ
クのヘッダー76は、エクステント・トラックがロック
されているかどうかを示すロックステータスエントリー
を含んでいる。複数のホスト環境において、SMFID
エントリ101は、エクステント・トラック75を生成
したり、最新更新したりするホストアプリケーションを
認識する。エントリ102は、エクステント・トラック
75に含まれるエクステント・バッファ77の番号を認
識する。ブロック103は、図1のソースデバイス31
のようなソースデバイスを認識する。パスワードエント
リ104は、ホストソースまたは宛先デバイスが要求を
確認できるようにする。TODフィールド105は、エ
クステント・トラックが形成され時間を含んでいる。こ
の情報はホストアプリケーションによって利用可能であ
る。フィールド106は、1つの実施例においてトラッ
ク中の最初のレコード示す、常時ゼロの最初のエクステ
ントを示している。最後のエクステントエントリ107
は、最初のエクステントエントリ106のエクステント
に関連する最後に使用されたエントリを認識するもので
ある。PBオフセット・ベクトルエントリ108は、最
初と最後のエクステント要素、あるいは特定のセッショ
ンのバッファを認識するエントリの番号を含んでいる。
他のエントリも同様にヘッダ75に含まれているが、エ
ントリ101と105と同様に、それらはホスト処理の
制御情報を提供するものであり本発明には関連しない。
【0032】図3のエクステント・トラック75のよう
な、各エクステント・トラックは更に、エクステントバ
ッファ77のような、1つあるいはそれ以上のエクステ
ント・バッファを含んでいる。要求ホストアプリケーシ
ョンのコマンドが、ソースデバイス31のファイル36
をDEST Aデバイス33の場所40へ転送するもの
である場合、エクステント・トラックには唯一のエクス
テントバッファが含まれる。このエクステントバッファ
77は、本発明の見地から、ソース開始場所110を含
む一定の情報を有している。本特定の装置において、こ
れはリンダ・ブロック・ヘッダ・アドレス方式の開始場
所である。エントリ111は、エクステントのコピー処
理に含まれるトラック番号、すなわち、ファイル36の
トラックの全番号を含んでいる。保護ビットオフセット
エントリ112は、セッションに合わせて調整される特
定のPB列位置を認識する。
【0033】各エクステントバッファ77は、エクステ
ント・トラックが最初に書き込まれた時に設定されるN
WE EXTENTフラグ、特定のエクステントの削除
が要求されたときに設定されるREMOVE EXTE
NTフラグ、およびソースデバイスコントローラによっ
て設定されるINVALID EXTENTフラグを含
んでいるフラグフィールド113を有している。フラグ
フィールドは、本特定の発明とは関連しない目的で使用
されるの別のフラグを含んでいる。
【0034】エントリ114と115は集合的に宛先デ
バイスを定める。特に、エントリ115は宛先デバイス
番号を定め、一方でエントリ114はDEST Aデバ
イス33における格納場所の初期場所を定める。エント
リ116はセッションIDを格納し、エントリ117は
エクステントバッファ77内の全ての先行するバイトに
ついてのEXTENT CRCコードを含んでいる。
【0035】図5に戻ると、ステップ97で一旦エクス
テント・トラックが作成されると、エクステント・トラ
ックをトラック85へ書き込み、その後、データ記憶装
置24への転送を要求する確立エクステントシステムを
実行する。その後に、要求ホストアプリケーションは、
ステップ120で示される待機状態になる。
【0036】待機状態120の間に、データ記憶装置2
4と、特に宛先デバイスコントローラ88は、図6に示
されているように環境を確立してコピー処理を開始する
よう応答する。一旦この処理がステップ121において
終了すると、ステータスは要求ホストアプリケーション
へ戻される。図5のステップ122は、ステータスを受
け取り、どちらか一方のファイルコピーへのI/O要求
を生成することを含んでいてもいなくても、要求ホスト
アプリケーションが処理を継続できるようにしている。
例えば、要求ホストアプリケーションは、ファイル36
またはDESTAデバイス33中の場所40のそのコピ
ーへアクセスすることができる。もしくは、要求ホスト
アプリケーションは、HOST APP Bアプリケー
ション23のような第2のアプリケーションが、DES
T Bデバイス33のコピー場所40といった宛先デバ
イスのコピーへアクセスできるようにしてもよい。
【0037】ホストアダプター26のような、データ記
憶装置24中のホストアダプターがエスタブリッシュ・
エクステント・システムコールを受け取ると、宛先デバ
イスコントローラ88のような宛先デバイスコントロー
ラはシステムコールを受け取り、図6のステップ123
において種々のパラメーターを確認する。そのような確
認としては、最初のアドレスが有効なアドレスであり、
特に図3のデバイス開始場所114のデバイスヘッダー
に記録されているアドレスと同じものかを確かめること
を挙げることができる。更に別の多くのテストを、シス
テムコールの状況と内容を確認するために行うことがで
きる。
【0038】確認したと想定すると、制御は、ホストア
ダプターがDEST Aデバイス31のような宛先デバ
イスをロックするステップ124へ進む。ステップ12
5において、ホストアダプターコントローラ86は、図
2の要求バッファ72のATTNフラグのようなソース
デバイスについての要求バッファにATTN信号を入力
する。ステップ126は、宛先デバイスへのデータ転送
をもたらす要求レコードを形成する。要求レコードは、
図4で示されるデータ構造を有しており、ブロックつま
りフィールド81のソースデバイス番号、ブロックつま
りフィールド82の開始エクステントレコード番号、お
よびブロックつまりフィールド83の最終エクステント
レコード番号とを含んでいる。
【0039】その後、制御は図7に示される手順127
に進む。宛先デバイスが物理デバイスを反映する場合に
は、詳述しないが当業者には公知の手順で関連のミラー
デバイスを全て確実に不活性にする。ステップ130
は、付加的な変動がそのエクステント・トラックで起こ
らないように、ステップ130において関連のエクステ
ントトラックを選択してロックする。宛先デバイスの各
トラックに対して、ステップ131は多くの機能を果た
す。まず第1に、ヘッダ61の値を利用して、ヘッダー
61が宛先デバイスと関連していることと、宛先デバイ
スと関連する各トラックの間接(IND)ビット位置1
32がクリアされていることとを確定する。次に、各宛
先トラックに対して、ステップ131はINDフラグを
設定して、キャッシュポインタへの間接アドレスを設定
する。間接アドレスは、コピーされるソースデバイス中
のトラックのアドレスのことである。デバイスへ書き込
み中である場合、それらはクリアされる。更に詳細に
は、本発明のこの装置は、要求ホストアプリケーション
がデータを完全に壊すような作動をすることはない。こ
の想定に対して、如何なる書込み中の処理もコピーファ
イルに置かれるので無関係である。書き込み中フラグを
クリアすることで、データがコピーファイルトラックを
上書きすることを確実に防ぐことができる。各宛先トラ
ックに設定されているインキャッシュフラグ133はい
ずれもクリアされる。この時点でシステムは、ソースデ
バイス31へのエクステント・トラックの転送へ影響す
る、書き込み中ビットをセットできる。
【0040】一旦この全ての情報が宛先デバイスに関連
するトラックIDへ転送されると、セッション列のプロ
テクションビットが、ステップ135においてソースデ
バイスに関する全てのエクステントの各トラックへセッ
トされる。ステップ136は、図3に示されるフラグフ
ィールド113のNEW EXTENTフラグをリセッ
トする。その後、CRCフィールドがステップ137で
更新され、エクステント・トラック75のような、エク
ステント・トラックがステップ132において書き込み
中になるようにセットされる。宛先デバイスコントロー
ラー88は、ステップ140を利用してステップ130
においてロックされたエクステント・トラックを解除す
る。その後、他の確立エクステント・トラックシステム
コールはエクステントトラックを変更できる。ステップ
141において、宛先デバイスコントローラー88は肯
定応答をソースデバイス31と関連するディスクアダプ
ターへ送る。ステップ142は、図6のステップ126
で生成された要求をキャンセルする。
【0041】その後、制御は宛先デバイスのロックを解
除する図6のステップ143へ戻る。その後、ステップ
144においてホストアダプターコントローラー86は
ステータスをホストへ送り、ソースデバイス31のよう
なソースデバイスを、HOST A APPアプリケー
ション22のようなホストアプリケーションへ再接続す
る。
【0042】ここで明らかになるように、図6と7のス
テップは如何なるデータの物理転送も引き起こさない。
それでもやはり、宛先デバイスがステップ143におい
てロック解除され、ソースデバイスがステップ145に
おいて再接続される場合には、如何なるホストアプリケ
ーションもソースデバイス31のファイルを変更する可
能性があり、例えばファイル36や他の如何なるアプリ
ケーションも、DEST Aデバイス33の場所40に
格納されたファイルコピーのデータにアクセスできるの
である。
【0043】図8は、図1に示されるコピープログラム
の処理を示す。ステップ150において、ソースデバイ
スコントローラー87が図3におけるエクステント・ト
ラック75のような、エクステント・トラックを読み取
る。ステップ151はエクステント・トラック75から
のデータを最初の宛先トラック場所を得るために利用
し、ステップ152は宛先デバイスを認識しており、こ
れら2つのアイテムが、特に図1のデータ記憶装置24
内の最初の宛先トラックを位置決めする。
【0044】ステップ153は、宛先デバイスの定義さ
れたエクステントについての各トラックに関する、図2
のトラックIDテーブル63のINDフラグ132のよ
うなINDフラグをテストするループの第1段階であ
る。このテストは、特定のトラックをソースから宛先へ
コピーする必要があるか否かを決定する。本説明におい
て以下で明らかになるように、別の機能が個々のトラッ
クの転送に影響してしまうことがある。トラックのデー
タがソースデバイスから宛先デバイスへ転送されていな
いと、ステップ154は、制御をそのトラックをコピー
するステップ155へ、例えば、ソースデバイス31の
トラックから、DEST A宛先デバイスの関連する、
または所定のトラックへ転送する。ステップ156は宛
先デバイスのINDビットをクリアし、ステップ157
は、ソースデバイス31のトラックについてのヘッダー
96の関連PBビットをクリアする。
【0045】INDフラグをクリアすることで、宛先デ
バイスのトラックを処理するアプリケーションがトラッ
クをコピーすることを確実に防ぐことができる。ソース
デバイスのPBビットをクリアすることで、ホストアプ
リケーションがソースデバイス31のトラックにアクセ
スしてもトラックがコピーされることを確実に防ぐこと
ができる。ステップ160において、処理される付加的
なトラックがある場合には、制御は次のトラックを認識
するためにステップ161へ進み、その制御はステップ
153へ戻る。
【0046】ステップ154でINDビットがセットさ
れていないと判定されると、コピーは行われず、制御は
直接ステップ160へ進む。全てのトラックが順次確認
されて、エクステントが転送されコピープログラムが終
了したとみなされる。
【0047】前述のように、第2の処理段階は、たとえ
データが実際にコピーされる前に、ホストアプリケーシ
ョンがソースデバイスファイル36や宛先デバイスファ
イル40へアクセスできても、コピー中はデータの完全
性を保証する。図9は、アプリケーションからの書き込
み要求に対する応答を示しており、例えば、HOSTA
PP Aアプリケーション21がソースデバイス31の
ファイル36へ書き込みを行う場合に起こるものであ
る。読み取り要求はデータを変更することはないので、
通常通り処理される。書き込み要求については、ホスト
アダプター26が書き込み要求を、例えばファイル36
に書き込むためにソースディスクアダプター30といっ
たソースディスクアダプターへ送る。コントローラー8
7はステップ170でその要求を受け取り、ステップ1
71でソースデバイスと関係している関連PBビットを
テストする。例えば、ソーストラックIDテーブル56
の関連ヘッダー96にあるPBビットである。所定の列
のPBビットはデバイスの全てのトラックに集合的に対
応する。しかし、列のセットビットはコピーされるこの
ようなファイル、または他のデータサブセットを認識で
きる。つまり、PBビット位置は、ソースデバイスの所
定のソース格納場所のリストを構成する。同様に、宛先
デバイストラックIDテーブルのINDビット位置は、
宛先デバイス中の所定の宛先格納場所のリストをもたら
すのである。
【0048】通常の処理中に、図2のトラックIDテー
ブル56のような、ソースデバイストラックIDテーブ
ルのPBビットがクリアされる場合、トラックがエクス
テントにないか、あるいはすでに転送されているので、
ステップ172はエクステントにあるか、あるいは通常
の方法で書き込み処理を終了するためにステップ173
へ進む。その後、ステップ174は書き込み要求を送出
したホストアプリケーション、例えば図1のHOST
APP A22のようなアプリケーションに肯定応答を
送る。
【0049】トラックにPBビットがセットされると、
トラックはファイルに存在しており、依然転送される必
要があるので、ステップ172は制御をステップ175
へ進める。ステップ175は、ソースデバイスにロック
があることを保証し、ステップ176を利用して、ソー
スホストアプリケーションから書き込まれた単一トラッ
クを認識しながら図8のコピープログラムを要求する。
図8のコピープログラムは、ソースデバイスからの単一
トラックを宛先デバイスに書き込み、さらにソースデバ
イスに対するトラックIDテーブルのPBビットや、宛
先デバイスに対する関連INDをクリアすることによっ
て応答する。コピープログラムが、この単一トラックの
転送を完了すると、ステップ177はソースデバイスを
ロック解除するので、直ちに全てのアプリケーションが
再度利用できるようになる。つまり、図9は、転送され
たソースファイルに対する書き込み要求がホストアプリ
ケーションから送られてきた場合に、データの完全性を
保証するプロセスを示している。
【0050】図10は、HOST APP Bアプリケ
ーション23のようなホストアプリケーションが、宛先
ホストアプリケーションとして、DEST Aデバイス
33のファイルコピー40のような宛先デバイスへアク
セスをしようとする場合に生じる処理を示している。宛
先デバイスのコントローラ、例えば、DEST A宛先
デバイス33のコントローラ88は、ステップ180で
宛先ホストアプリケーションから読み書き要求を受け取
る。その後、コントローラ88は、ステップ181を使
って関連の宛先デバイストラックIDテーブル、例え
ば、トラックIDテーブル64へアクセスし、ビット位
置132でINDビットをテストする。INDビット位
置は、宛先トラックが図7のステップ131で設定中に
エクステントの一部である場合には既にセットされてい
る。
【0051】INDビットがセットされると、読み取り
要求の場合にはデータが最新のものであること、書き込
み要求の場合にはコピープログラムが通常モードの処理
において新しいデータを上書きしないことを保証する必
要がある。つまり、ステップ182はステップ183へ
制御を進めるのである。ステップ183は、宛先デバイ
スを確実にロックする。その後、ステップ184は要求
をソースデバイスへ送り、ソースデバイスディスクアダ
プター30にあるファイル36のコピープログラムとい
ったコピープログラムを開始する。この要求は、図4で
示される基本構造をもっている。しかし、要求が宛先デ
バイスで起こる場合には、フィールド81は宛先デバイ
ス番号を含んでおり、フィールド82と83とはシリン
ダーアドレスや、宛先デバイスのためのヘッド識別子を
含んでいる。その単一トラックがコピーされると、ステ
ップ185は宛先デバイスのロックを解除する。
【0052】トラックのINDビットがクリアされる
と、トラックはエクステントにないか、またはすでにコ
ピーされている。この条件に合致すると、ステップ18
2は、ステップ183、184および185を飛び越え
て制御をステップ186へ進める。その後、ステップ1
86は読み書き処理を行い、ステップ187の宛先ホス
トアプリケーションへ肯定応答を送る。
【0053】次に、終了/変更段階について言及する
と、図11はエクステント・トラックからエクステント
・バッファを削除するプロセスを示している。まず最初
に、要求中のホストアプリケーションがステップ190
を利用して図2のエクステント・トラック75のような
エクステント・トラックを読み取る。次に、要求中のホ
ストアプリケーションが、図3のフラグフィールド11
3にあるような、対応するエクステント・バッファにR
EMOVE EXTENTフラグをセットする。これが
完了すると、ステップ192がエクステント・トラック
をキャッシュメモリ27へ書き込む。その後、要求中の
ホストアプリケーションがステップ193においてRE
MOVE EXTENTSシステムコールを送出する。
【0054】ホストアダプターと宛先デバイスアダプタ
ー、例えば、ホストアダプター25と宛先デバイスアダ
プター30が応答する。まず最初に、ホストアダプター
は図6のステップ123から126に示されているのと
同じプロセスを用いて、要求レコードを、図12で示さ
れているように応答する宛先デバイスアダプターへ送
る。
【0055】図12を参照すると、ステップ195がエ
クステントを選択して、対応するエクステント・トラッ
クをロックするので、他のアプリケーションはそのエク
ステント・トラックを変更できない。ステップ196
は、対応するエクステント・バッファのフラグフィール
ドにINVALID EXTENTビットをセットす
る。例えば、図3のフラグフィールド113のINVA
LID EXTENTフラグである。ステップ197
は、データの完全性を維持するためにEXTENTSC
RCを更新する。ステップ200において、宛先デバイ
スアダプターがソースデバイスの全てのPBビットをク
リアする。例えば、図2のトラックIDテーブル55を
有するPBヘッダーである。ステップ201は、宛先デ
バイスのトラックIDテーブルの全てのINDフラグを
リセットする。特定の例として、トラックIDテーブル
63のINDフラグ132のセットを挙げることができ
る。ステップ202において、宛先ディスクアダプター
30のコントローラー88が、エクステント・バッファ
77のフラグフィールド133のREMOVE EXT
ENTフラグのようなREMOVE EXTENTフラ
グをクリアする。ステップ203は、ソースデバイス3
1に更新したコピーを生成するために、ソースエクステ
ント・トラックを書き込み状態にして、図3のEXTE
NT CRCフィールド117のようなEXTENT
CRCフィールドを更新する。
【0056】一旦、図12の手順が完了すると、図11
のステップ204に示される待機状態にある要求ホスト
アプリケーションへ応答が送られる。この応答により、
要求ホストアプリケーションは後続のハウスキーピング
やプロセスのためにステップ205のエクステントトラ
ックを読み取る。ステップ206において、要求ホスト
アプリケーションが終了したエクステントを全て削除
し、その後、前述のようにステップ207でエクステン
ト・リストを再分類する。ステップ210は更新された
エクステント・トラックをキャッシュメモリ27へ書き
込む。
【0057】ステップ211は、プロセスが完了したか
否かを判定する。つまり、ソースデバイスコントローラ
87は、全てのINVALID EXTENTフラグ、
例えばエクステントバッファ77のフラグフィールド1
13にある無効エクステントフラグがセットされたか否
かをテストする。セットされていれば、ステップ211
は212へ進み、処理を完了する前にセッションID削
除のシステムコールを送出する。そうでなければ、図1
1のプロセスは、システムコールを送出することなく終
了するのでコピーが行われたセッションはアクティブ状
態のままとなる。
【0058】図示されていないが、特定のデバイスを削
除するセッションIDシステムコールは、関連のエクス
テントから全てのPBビット、例えば、ソースデバイス
に割り当てられたコラム位置のPBビットをクリアし、
そのPBコラムやセッション位置を他に利用できるよう
にする。
【0059】これまでは、ソースデバイスの一連の連続
データトラックにある単一のファイルが宛先デバイスの
連続トラックへ転送される処理について説明した。特
に、ソースデバイス31のファイル36と、DEST
A宛先デバイス33の記憶装置場所40との間の処理に
ついてである。これと同じ手法で実行される他の多種多
様な転送がある。実際には、更に複雑なデータ転送を可
能にするのは前述の構成および処理である。
【0060】例えば、図1のファイル37は、連続デー
タトラック場所の2つの組、つまり、場所37Aと37
Bにあるように示されている。ファイル37は単一のソ
ースデバイス中にあるので、図5から図7に示されるエ
クステントの設定は、ヘッダ76のようなヘッダと2つ
のエクステントバッファ77とを有する、図5の形態の
エクステントトラックを生成できる。第1のエクステン
ト・バッファは連続トラック37Aの開始場所と、図3
のフィールド110と111に対応するフィールド中の
セットにおけるトラック番号を認識する。第2のエクス
テント・バッファは、連続トラック37Bの開始場所
と、フィールド110と111に対応する連続セットの
トラック番号を含むことができる。宛先開始場所、例え
ば宛先開始場所114は、第1のエクステントバッファ
77にある場所40の開始トラック場所や、連続トラッ
クの第2セットと関連する開始場所からの第1のエクス
テント中のトラック番号による番号オフセットを含んで
いる。
【0061】単一のコーピーコマンドや一連のコピーコ
マンドが、ファイル36を格納場所40へ、ファイル3
7を格納場所41へ転送するよう要求をすることもでき
る。この場合、エクステント・トラックの設定は、ファ
イル36と37の両者が同一ソースデバイスの重複しな
い位置にあるので、単一のエクステント・トラックを再
度生成することになる。図1に示される特定の実施例に
おいて、エクステント・トラック75が3つのエクステ
ント・バッファを含んでいる。第1のエクステント・バ
ッファは、ファイル36を格納場所40へ転送する情報
を含んでいる。第2、第3のエクステントバッファは、
トラックセット37Aと37Bをそれぞれの位置と格納
場所40へ転送する情報を含んでいる。
【0062】転送は、単一セッション内でも行うことが
できる。例えば、図1のファイル36と37を格納場所
40と41へ転送するのに加えて、デバイス33の格納
場所230のファイルをデバイス35の格納場所231
へ転送する要求があると想定する。このプロセスが単一
エクステントトラック設定で定義される場合、デバイス
43は、ファイル230を認識するデバイス33のソー
スデバイスエントリを付加することことにより、図2に
示されるように変更される。その新しいソースデバイス
は、格納場所230と宛先格納場所231を認識するエ
クステント・トラックを含むことができる。つまりこの
特定の実施例において、論理デバイス33は、ファイル
36を受け取る宛先デバイスとしてのみならず、ファイ
ル230のソースデバイスとして動作し、本発明を実施
する結果として、更に複雑な処理も依然単一セッション
内で起こり得るのである。
【0063】前述のように単一のセッションは、通常利
用可能なスペースにより制限された、またはデバイスヘ
ッダに割り当てられた所望の数の転送を行うことができ
る。しかし、単一のセッションは、データが重複してい
るファイルの転送には利用できない。例えば、図1でフ
ァイル36をDEST Aデバイスの格納場所40とD
EST Bデバイス35の格納場所41の両者に転送し
ようとする場合には重複が起こる。ソースのエクステン
トが重複している場合、別々のセッションを使用する必
要がある。この場合、別個のセッションが使用され、転
送における如何なる両義性も解決するよう別個のPBコ
ラム位置が割り当てられる。
【0064】つまり本発明は、例えば完全な論理ボリュ
ームによる転送といった、一般的に所定の荒さの細分度
のデータを転送するデータ記憶装置での使用に特に適用
できる方法を提供する。特に、本発明は、データサブセ
ットを移動できるようにして無関係なデータ転送を削除
するものである。更に、本発明は、これらの転送が他の
ホストアプリケーションに対して最小限の妨げで行われ
るようにしている。前述のように、ホストアプリケーシ
ョンは、転送のための処理環境を確立することに専念で
きる。一旦その環境が確立されると、一般的に数ミリセ
カンドのうちに、要求ホストアプリケーションは他のプ
ロセスを継続することが可能になる。実際の転送が起こ
っている間に動作を妨げることがない。アプリケーショ
ンが続行できるようにすることで、ソースにあるファイ
ル、または宛先にあるファイルコピーのいずれかにアプ
リケーションによるアクセスが可能となる。コピー中
に、それらの位置を含んでいる可能性のある転送が起こ
り得る。本システムは、データの完全性のために、その
転送を更新する方法を提供するものである。更に、本方
法は、ホストアプリケーションが、単一のファイルを単
一の宛先へコピーするものから、データ記憶装置の中の
複数の物理デバイスに置かれている複数のファイルを含
むコピー要求までの範囲の複雑性を有しているコピー要
求範囲を定めることができるようにしている。
【0065】本発明は、特定のデータ記憶装置の構成を
備える特定の装置に関連して説明されている。INDフ
ラグのような特定のフラグが定義されている。図5から
12は、特定の処理手順を開示している。本発明の目的
がある程度または完全に達成できるのであれば、これら
フラグの定義や処理手順は変更でき、他のものは特定の
データ記憶装置の構成および容量次第で省略できること
が分かる。
【0066】前述および他の変更を、本発明から逸脱す
ることなく開示されたシステム対して行い得ることが明
らかである。つまり、添付の請求の範囲は、本発明の真
の精神と範疇内での変更や修正を全てカバーすることが
意図されているのである。
【図面の簡単な説明】
【図1】本発明を実行するのに適するデータ記憶装置を
備えるデータ処理システムのブロック図である。
【図2】図1で示したキャッシュメモリのより詳細な説
明である。
【図3】図2のキャッシュメモリ内のエクステント・ト
ラックのさらに詳細な図である。
【図4】本発明で有用な要求についてのデータ構造であ
る。
【図5】コピーが行われるホストアレイとデータ記憶装
置との間の相互作用を示す。
【図6】図5で示されたプロセスの一部の、より詳細な
フローチャートである。
【図7】図6で示されたプロセスの一部の、より詳細な
フローチャートである。
【図8】本発明に有用なコピープログラムを示す。
【図9】所定のソース格納場所への書き込み要求に対す
るシステムの応答を示す。
【図10】所定の宛先格納場所への読み書き要求に対す
る応答を示す。
【図11】エクステント・トラックを削除する手順のフ
ローチャートである。
【図12】図11で示したプロセスの一部の、より詳細
なフローチャートである。
───────────────────────────────────────────────────── フロントページの続き (72)発明者 ハナ モアレシェット アメリカ合衆国 マサチューセッツ州 01701フレミンガム グローヴ ストリー ト 676 (72)発明者 ダグラス イー レクロン アメリカ合衆国 マサチューセッツ州 01748ホプキントン ファルコン リッジ ドライヴ 6 (72)発明者 ブルース エイ ポコック アメリカ合衆国 フロリダ州 32780 テ ィタウスヴィル ウィスパーリング レー ン 6369

Claims (7)

    【特許請求の範囲】
  1. 【請求項1】 ホストアプリケーションの処理中にコマ
    ンドを生成するホストデバイスを備えたデータ処理シス
    テムにおいて、所定の格納場所を認識しているホストア
    プリケーションからのコマンドに応じて、所定のソース
    格納場所から所定の宛先格納場所へデータをコピーする
    方法であって; A)所定のソース格納場所のリストと所定の宛先格納場
    所のリストとを生成することにより処理環境を確立する
    段階と、 B)ホストアプリケーションに使用可能なソースおよび
    宛先格納場所を作る段階と、 C)所定の格納場所からのデータを、 i)所定のソース場所から所定の宛先場所へデータをコ
    ピーし、 ii)データが転送されたことを示すリストを更新す
    る、ことでコピーする段階と、を備えることを特徴とす
    る方法。
  2. 【請求項2】 さらに、前記コピーが完了した後に、前
    記処理環境を削除する段階を備えることを特徴とする請
    求項1に記載の方法。
  3. 【請求項3】 ホストアプリケーションが、前記命令さ
    れたコピー処理中に、認識されたソース格納場所へ書き
    込み要求を送出するものであって、前記方法が、 i)前記命令されたコピー処理を中断する段階と、 ii)ソース格納場所から関連の宛先格納場所へデータ
    をコピーする段階と、 iii)コピー処理を再び可能にする段階と、を備える
    ことを特徴とする請求項2に記載の方法。
  4. 【請求項4】 ホストアプリケーションが、前記コピー
    処理中に、認識された宛先格納場所への読み書き要求の
    1つを生成するものであって、前記方法が、 i)前記命令されたコピー処理を中断する段階と、 ii)関連のソース格納場所から認識された宛先格納場
    所へデータをコピーする段階と、 iii)前記命令されたコピー処理を再び可能にする段
    階と、を備えることを特徴とする請求項2に記載の方
    法。
  5. 【請求項5】 データが第1の細分度の第1ブロックに
    おいてデータ記憶装置に格納されており、通常、より粗
    い第2の細分度のブロックにおいてコピーされ、前記ソ
    ースおよび宛先格納場所がソースおよび宛先デバイスに
    位置されているものであって、中間の細分度の第3ブロ
    ックのコピーを可能にする前記方法は、 i)ソース格納場所の前記第1のリスト生成が、各第1
    ブロックが第3ブロックにあるか否かの指示を有する、
    ソースデバイスについての第2ブロックに含まれる全て
    の第1ブロックのリストを生成することを含み、 ii)宛先格納場所の前記第2のリスト作成が、各第1
    ブロックが前記ソースデバイスからの第3ブロックを受
    け取ることになっているか否かの指示を有する、ソース
    デバイスについての第2ブロックに含まれている全ての
    第1ブロックのリストを生成することを含む、ことを特
    徴とする請求項2に記載の方法。
  6. 【請求項6】 ホストアプリケーションが、前記コピー
    処理中に、ソース格納場所にある認識された第1のデー
    タブロックへ書き込み要求を送出するものであって、前
    記方法は、 i)前記命令されたコピー処理を中断する段階と、 ii)前記ソース格納場所の前記認識された第1ブロッ
    クのデータを、前記宛先格納場所の前記認識された第1
    データブロックへコピーする段階と、 iii)前記第1および第2リストにある前記関連第1
    ブロック指示をクリアする段階と、 iv)前記命令されたコピー処理を再び可能にする段階
    と、を備えることを特徴とする請求項5に記載の方法。
  7. 【請求項7】 ホストアプリケーションが、前記コピー
    処理中に、宛先格納場所にある認識された第1のデータ
    ブロックへの1つの読み書き要求を送出するものであっ
    て、前記方法は、 i)前記命令されたコピー処理を中断する段階と、 ii)前記ソース格納場所の前記認識された第1ブロッ
    クのデータを、前記宛先格納場所の前記認識された第1
    データブロックへコピーする段階と、 iii)前記第1および第2リストにある前記関連第1
    ブロック指示をクリアする段階と、 iv)前記命令されたコピー処理を再び可能にする段階
    と、を備えることを特徴とする請求項5に記載の方法。
JP2000236261A 1999-06-29 2000-06-29 データ処理システムにおいて独立したデータコピーを行う方法 Expired - Lifetime JP3712922B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US09/342608 1999-06-29
US09/342,608 US6363385B1 (en) 1999-06-29 1999-06-29 Method and apparatus for making independent data copies in a data processing system

Publications (2)

Publication Number Publication Date
JP2001134482A true JP2001134482A (ja) 2001-05-18
JP3712922B2 JP3712922B2 (ja) 2005-11-02

Family

ID=23342533

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000236261A Expired - Lifetime JP3712922B2 (ja) 1999-06-29 2000-06-29 データ処理システムにおいて独立したデータコピーを行う方法

Country Status (3)

Country Link
US (2) US6363385B1 (ja)
EP (1) EP1065585A3 (ja)
JP (1) JP3712922B2 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008159045A (ja) * 2006-12-20 2008-07-10 Internatl Business Mach Corp <Ibm> サポート・プロセッサによる最適化されたデータ・マイグレーションのための方法、システム、およびプログラム
JP2009230239A (ja) * 2008-03-19 2009-10-08 Hitachi Ltd テープ装置のデータ移行方法およびテープ管理システム

Families Citing this family (39)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6363385B1 (en) * 1999-06-29 2002-03-26 Emc Corporation Method and apparatus for making independent data copies in a data processing system
US7099875B2 (en) * 1999-06-29 2006-08-29 Emc Corporation Method and apparatus for making independent data copies in a data processing system
US6757797B1 (en) * 1999-09-30 2004-06-29 Fujitsu Limited Copying method between logical disks, disk-storage system and its storage medium
US7099900B1 (en) 2000-09-13 2006-08-29 Veritas Operating Corporation Mapping driver for use in data backup systems
US7363447B1 (en) 2001-08-07 2008-04-22 Symantec Operating Corporation System and method for providing safe data movement using third party copy techniques
US6721851B2 (en) * 2001-08-07 2004-04-13 Veritas Operating Corporation System and method for preventing sector slipping in a storage area network
US7281081B1 (en) * 2001-08-07 2007-10-09 Symantec Operating Corporation System and method for preventing sector slipping in a storage area network
JP3993773B2 (ja) 2002-02-20 2007-10-17 株式会社日立製作所 ストレージサブシステム、記憶制御装置及びデータコピー方法
US7340489B2 (en) * 2002-04-10 2008-03-04 Emc Corporation Virtual storage devices
US7039659B2 (en) * 2002-06-25 2006-05-02 Emc Corporation Method and apparatus for making differential independent data copies in a data processing system
EP1396792B1 (en) * 2002-09-06 2005-06-15 Sun Microsystems, Inc. Memory copy command specifying source and destination of data executed in the memory controller
US7395283B1 (en) * 2003-11-10 2008-07-01 Emc Corporation Method and apparatus for making independent data copies in a data processing system
US7146475B2 (en) 2003-11-18 2006-12-05 Mainstar Software Corporation Data set level mirroring to accomplish a volume merge/migrate in a digital data storage system
JP4412989B2 (ja) * 2003-12-15 2010-02-10 株式会社日立製作所 複数の記憶システムを有するデータ処理システム
US7627619B1 (en) * 2003-12-29 2009-12-01 Emc Corporation Data verification following database write
US7433899B2 (en) * 2004-03-01 2008-10-07 International Business Machines Corporation Apparatus, system, and method for managing multiple copy versions
US7240131B1 (en) 2004-03-08 2007-07-03 Emc Corporation Method and apparatus for improving the process of making independent data copies in a data processing system
US7428557B2 (en) * 2004-03-22 2008-09-23 Microsoft Corporation Efficient data transfer to/from storage medium of computing device
US20050240727A1 (en) * 2004-04-23 2005-10-27 Shishir Shah Method and system for managing storage area networks
US7669190B2 (en) * 2004-05-18 2010-02-23 Qlogic, Corporation Method and system for efficiently recording processor events in host bus adapters
JP4488807B2 (ja) * 2004-06-25 2010-06-23 株式会社日立製作所 ボリューム提供システム及び方法
JP4575059B2 (ja) * 2004-07-21 2010-11-04 株式会社日立製作所 ストレージ装置
US20060064531A1 (en) * 2004-09-23 2006-03-23 Alston Jerald K Method and system for optimizing data transfer in networks
US7213116B2 (en) * 2005-03-24 2007-05-01 Hitachi, Ltd. Method and apparatus for mirroring objects between storage systems
JP2007179273A (ja) * 2005-12-27 2007-07-12 Sony Corp ファイル転送システム、ファイル記憶装置、ファイル記憶方法及びプログラム
US8725533B2 (en) * 2006-03-09 2014-05-13 International Business Machines Corporation Policy-driven relocation of electronic healthcare records in a network environment
JP4475320B2 (ja) * 2007-11-15 2010-06-09 株式会社デンソー 車両用記憶管理装置
US20110065451A1 (en) * 2009-09-17 2011-03-17 Ydreams-Informatica, S.A. Context-triggered systems and methods for information and services
US8671265B2 (en) 2010-03-05 2014-03-11 Solidfire, Inc. Distributed data storage system providing de-duplication of data using block identifiers
US9054992B2 (en) 2011-12-27 2015-06-09 Solidfire, Inc. Quality of service policy sets
US9838269B2 (en) 2011-12-27 2017-12-05 Netapp, Inc. Proportional quality of service based on client usage and system metrics
US20150244795A1 (en) 2014-02-21 2015-08-27 Solidfire, Inc. Data syncing in a distributed system
US10133511B2 (en) 2014-09-12 2018-11-20 Netapp, Inc Optimized segment cleaning technique
US9836229B2 (en) 2014-11-18 2017-12-05 Netapp, Inc. N-way merge technique for updating volume metadata in a storage I/O stack
US9830103B2 (en) * 2016-01-05 2017-11-28 Netapp, Inc. Technique for recovery of trapped storage space in an extent store
US10929022B2 (en) 2016-04-25 2021-02-23 Netapp. Inc. Space savings reporting for storage system supporting snapshot and clones
US10642763B2 (en) 2016-09-20 2020-05-05 Netapp, Inc. Quality of service policy sets
JP6767319B2 (ja) * 2017-07-31 2020-10-14 株式会社ソニー・インタラクティブエンタテインメント 情報処理装置およびファイルコピー方法
CN112748857B (zh) 2019-10-30 2024-04-26 伊姆西Ip控股有限责任公司 用于存储管理的方法、电子设备和计算机程序产品

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0635781A (ja) * 1992-07-17 1994-02-10 Mitsubishi Electric Corp 記録データオンライン回復装置
JPH0922374A (ja) * 1995-07-05 1997-01-21 Hitachi Ltd 異種ファイルへのアクセスを可能とする情報処理システム及びその制御方法

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4866611A (en) * 1987-01-29 1989-09-12 International Business Machines Corporation Method for automatically reconciling entries on two copies of independently maintained electronic calendars
US5307481A (en) * 1990-02-28 1994-04-26 Hitachi, Ltd. Highly reliable online system
US5241670A (en) * 1992-04-20 1993-08-31 International Business Machines Corporation Method and system for automated backup copy ordering in a time zero backup copy session
US5566326A (en) * 1993-09-28 1996-10-15 Bull Hn Information Systems Inc. Copy file mechanism for transferring files between a host system and an emulated file system
US5434994A (en) 1994-05-23 1995-07-18 International Business Machines Corporation System and method for maintaining replicated data coherency in a data processing system
NZ503211A (en) * 1995-08-21 2001-12-21 Cornel Sirbu Smart card processing done in periphery before sending encrypted access code to computer terminal
US5680640A (en) * 1995-09-01 1997-10-21 Emc Corporation System for migrating data by selecting a first or second transfer means based on the status of a data element map initialized to a predetermined state
US6101497A (en) * 1996-05-31 2000-08-08 Emc Corporation Method and apparatus for independent and simultaneous access to a common data set
US6363385B1 (en) * 1999-06-29 2002-03-26 Emc Corporation Method and apparatus for making independent data copies in a data processing system
US6446175B1 (en) * 1999-07-28 2002-09-03 Storage Technology Corporation Storing and retrieving data on tape backup system located at remote storage system site

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0635781A (ja) * 1992-07-17 1994-02-10 Mitsubishi Electric Corp 記録データオンライン回復装置
JPH0922374A (ja) * 1995-07-05 1997-01-21 Hitachi Ltd 異種ファイルへのアクセスを可能とする情報処理システム及びその制御方法

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008159045A (ja) * 2006-12-20 2008-07-10 Internatl Business Mach Corp <Ibm> サポート・プロセッサによる最適化されたデータ・マイグレーションのための方法、システム、およびプログラム
JP2009230239A (ja) * 2008-03-19 2009-10-08 Hitachi Ltd テープ装置のデータ移行方法およびテープ管理システム

Also Published As

Publication number Publication date
US20020073090A1 (en) 2002-06-13
US6363385B1 (en) 2002-03-26
US7031966B2 (en) 2006-04-18
JP3712922B2 (ja) 2005-11-02
EP1065585A2 (en) 2001-01-03
EP1065585A3 (en) 2003-08-06

Similar Documents

Publication Publication Date Title
JP2001134482A (ja) データ処理システムにおいて独立したデータコピーを行う方法
US7099875B2 (en) Method and apparatus for making independent data copies in a data processing system
JP4199993B2 (ja) スナップショット取得方法
US5619690A (en) Computer system including a computer which requests an access to a logical address in a secondary storage system with specification of a local address in the secondary storage system
JP4248510B2 (ja) 計算機システム、ディスク装置およびデータ更新制御方法
JP4252139B2 (ja) 記憶装置システム
US6542960B1 (en) System and method for parity caching based on stripe locking in raid data storage
JPH07111689B2 (ja) ログを用いてシャドー組に記憶されるデータを管理する方法及び装置
US20060218346A1 (en) Data duplication system, data duplication method and program
JP2002149454A (ja) 論理ディスク上でのトランザクション・サポート
JP2002132554A (ja) データベースアクセス方法
US7395283B1 (en) Method and apparatus for making independent data copies in a data processing system
US7039659B2 (en) Method and apparatus for making differential independent data copies in a data processing system
JP3134864B2 (ja) システム結合装置のリカバリシステムおよびリカバリプログラムを記録した記録媒体
JP2001084180A (ja) ファイル管理装置
JP2924786B2 (ja) 疎結合多重計算機システムにおける共有ファイルの排他制御システム、排他制御方法、および排他制御プログラムを記憶する媒体
JP3043662B2 (ja) データバックアップ方式
JP2001290713A (ja) 記憶装置システム及びそのバックアップ取得方法
JP2004227594A (ja) 計算機システムおよび二次記憶装置
JP2001290607A (ja) デバイスドライバのコマンドキューイング制御方法及びコンピュータシステム
US20230004326A1 (en) Storage system control method and storage system
JPH0235537A (ja) 多重化ボリューム更新制御方式
JP2001014219A (ja) キャッシュ制御方法及びその装置
JP2003241901A (ja) ディスク共用制御方法および装置
JP2001344188A (ja) ディスクアレイ装置

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20040607

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20040907

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20040910

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20041207

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20050818

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

Ref document number: 3712922

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20090826

Year of fee payment: 4

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

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

Free format text: PAYMENT UNTIL: 20100826

Year of fee payment: 5

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

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

Free format text: PAYMENT UNTIL: 20110826

Year of fee payment: 6

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

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

Free format text: PAYMENT UNTIL: 20110826

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20120826

Year of fee payment: 7

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

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

Free format text: PAYMENT UNTIL: 20120826

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20130826

Year of fee payment: 8

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

EXPY Cancellation because of completion of term