-
HINTERGRUND DER ERFINDUNG
-
Die
vorliegende Erfindung betrifft eine Technik zum Kopieren von Daten
zwischen Speichersystemen ohne Beteiligung einer CPU und eine Technik zum
Anordnen/Umordnen eines logischen Volumens auf RAID-Gruppen in einem
Speichersystem. Die vorliegende Erfindung betrifft ferner ein Speichersystem
in einem Informationsverarbeitungssystem oder dergleichen sowie
ein Computersystem mit einer Funktion zum Erzeugen einer Kopie in
einem Volumen gespeicherter Daten.
-
Eine
Technik zum entfernten Kopieren existiert als eine der Techniken,
bei denen Daten zwischen Speichersystemen kopiert werden.
-
Beim
entfernten Kopieren erfolgt das Schreiben von Daten in duplizierter
Weise ohne Beteiligung einer CPU zwischen mehreren Speichersystemen, die
sich an physikalisch entfernten Orten befinden. Darin sind Speichersysteme,
die an einer Primärstelle
bzw. einer Sekundärstelle
angeordnet sind, durch eine zweckgebundene Leitung oder eine öffentliche Leitung
miteinander verbunden. Auch wird ein logisches Volumen, das die
gleiche Kapazität
aufweist wie ein logisches Volumen, das auf dem Speichersystem der
Primärstelle
existiert und zu einem Objekt des Kopierens gemacht wird (nachstehend
als logisches Volumen des Kopierursprungs bezeichnet), auf dem Speichersystem
der Sekundärstelle
als ein logisches Volumen gebildet, das mit dem logischen Volumen
des Kopierursprungs gepaart ist (und nachstehend als ein logisches
Volumen des Kopierziels bezeichnet wird). Dann werden Daten des
logischen Volumens des Kopierursprungs der Primärstelle in das logische Volumen
des Kopierziels kopiert. Auch werden in dem Fall, in dem das Aktualisieren
von Daten des logischen Volumens des Kopierursprungs der Primärstelle
von einer CPU vorgenommen wird, die aktualisierten Daten zum Speichersystem
der Sekundärstelle übertragen
und dann in das logische Volumen des Kopierziels geschrieben. Demgemäß wird bei
der Technik zum entfernten Kopieren der duplizierte Zustand eines
logischen Volumens immer an der Primärstelle und der Sekundärstelle
gehalten.
-
Daher
ist es selbst dann, wenn die Verwendung der Primärstelle infolge von Naturkatastrophen in
der Art von Erdbeben und Überflutungen
oder von künstlichen
Katastrophen, wie Feuer und Terrorismus, unmöglich wird, möglich, den
Dienst durch die Verwendung des logischen Volumens auf dem Speichersystem
der Sekundärstelle
schnell wieder einzuleiten.
-
Eine
bekannte Technik, die für
das entfernte Kopieren relevant ist, ist eine in
US-A-5 155 845 offenbarte
Technik. Die bekannte Technik zum Ausführen des Kopierens von Daten
zwischen Speichersystemen umfasst auch eine Technik zum migratorischen
Kopieren (oder migratorischen Kopieren von Daten), die in
US-A-5 680 640 offenbart
ist.
-
Gemäß der bekannten
migratorischen Kopiertechnik wird in dem Fall, in dem ein neues
Speichersystem an Stelle eines bisher von einem Kunden verwendeten
Speichersystems eingeführt
wird, eine Verarbeitung zum Kopieren von Daten eines logischen Volumens
auf dem alten Speichersystem in das neue Speichersystem in der folgenden
Weise verwirklicht.
-
Insbesondere
wird das Ziel der Verbindung einer CPU vom alten Speichersystem
zum neuen Speichersystem geändert.
Ferner werden das neue Speichersystem und das alte Speichersystem
verbunden. Während
eine Ein-/Ausgabeanforderung von der CPU empfangen wird, liest das
neue Speichersystem Daten aus einem logischen Volumen auf dem alten
Speichersystem und kopiert die gelesenen Daten in ein logisches
Volumen auf dem neuen Speichersystem (d. h. es führt ein migratorisches Kopieren
aus).
-
Weil
mit dieser Technik das Kopieren von Daten zwischen den logischen
Volumen des neuen und des alten Speichersystems ohne Beteiligung
der CPU ausgeführt
werden kann, wird eine zur Zeit der Datenmigration der CPU auferlegte
Last beseitigt, wodurch die Datenmigration selbst dann ermöglicht wird,
wenn der Dienst ausgeführt
wird.
-
In "A Case for Redundant
Arrays of Inexpensive Disks (RAID)", Proc. ACM SIGMOD, Juni 1988, G. A.
Patterson, G. Gibson und R. H. Katz von der University of California,
Berkeley, USA wurde eine Taxonomie von fünf Organisationen von Platten-Arrays
als RAID-Niveaus zum Beurteilen der Speicherkosten, der Leistungsfähigkeit
und der Zuverlässigkeit
jedes RAID-Niveaus gegeben. Die RAID-Niveaus ergeben sich aus der
Klassifikation eines Verfahrens zur Bildung eines redundanten Arrays
in dem Fall, in dem ein Speichersystem unter Verwendung kostengünstiger
Plattenvorrichtungen aufgebaut wird. Daher wird das Verfahren zur
Bildung eines redundanten Arrays in Übereinstimmung mit einem Datenzuordnungsverfahren
und einem Verfahren zum Erzeugen redundanter Daten klassifiziert.
Die RAID-Niveaus 1, 3 und 5 in der Taxonomie von fünf Organisationen
werden gegenwärtig
auf viele Produkte angewendet. Diese RAID-Niveaus haben die folgenden
Eigenschaften.
-
RAID
1 (gespiegelte Platten): Die gleichen Daten werden von verschiedenen
Plattenvorrichtungen gehalten. Weil Daten dupliziert werden, ist
die Zuverlässigkeit
hoch, die Speicherkosten sind jedoch verdoppelt.
-
RAID
3: Daten werden in Einheiten mehrerer Bytes unterteilt, so dass
sie mehreren Datenplattenvorrichtungen zugeordnet werden. Redundante
Daten oder Prüfdaten
werden durch eine Exklusiv-ODER-Operation unterteilter Daten erzeugt
und auf einer anderen oder einer redundanten Platte gespeichert.
Weil alle Plattenvorrichtungen für
die Ein-/Ausgabe
von Daten synchron arbeiten, wird in dem Fall, in dem die Ein-/Ausgabe
langer oder großer
Daten ausgeführt
wird, eine ausgezeichnete Funktionsweise erhalten. Andererseits
ist RAID 3 für eine
Online-Transaktionsverarbeitung oder dergleichen nicht geeignet,
wobei auf kurze Dateneinheiten wahlfrei zugegriffen wird.
-
RAID
5: Daten werden in Einheiten von Blöcken unterteilt, und die Datenblöcke werden
mehreren Plattenvorrichtungen verteilt zugeordnet. Redundante Daten
werden durch eine Exklusiv-ODER-Operation unterteilter Daten erzeugt
und an vorbestimmten Positionen auf Speichergeräten gespeichert. Beim RAID
5 werden jeweilige redundante Blöcke
den Plattenvorrichtungen verteilt zugeordnet, so dass alle Plattenvorrichtungen
die redundanten Blöcke
aufweisen. Daher wird eine Last, die der Plattenvorrichtung zur
Zeit des Zugriffs auf einen redundanten Block auferlegt wird, verteilt.
Wenn der Datenblock aktualisiert wird, wird ein Plattenzugriff erzeugt,
um den entsprechenden redundanten Block neu zu berechnen, wodurch
die Leistungsfähigkeit beeinträchtigt wird.
Dies wird als Schreibzusatzaufwand bezeichnet.
-
RAID
5 ist dadurch gekennzeichnet, dass, falls die Größe der Daten, worauf zuzugreifen
ist, die Größe des Blocks
nicht übersteigt,
der Zugriff auf nur eine Plattenvorrichtung genügt und daher die mehreren Plattenvorrichtungen,
anders als bei RAID 3, unabhängig
arbeiten können.
Daher ist RAID 5 für
eine Online-Transaktionsverarbeitung geeignet, bei der auf verhältnismäßig kleine
Daten wahlfrei zugegriffen wird.
-
Wie
vorstehend erwähnt
wurde, werden die Eigenschaften in den Aspekten Zuverlässigkeit,
Kosten und Leistungsfähigkeit
entsprechend jedem RAID-Niveau bereitgestellt. Bei tatsächlichen
Diensten ist es bevorzugt, dass das optimale RAID-Niveau unter Berücksichtigung
dieser Eigenschaften und entsprechend der Eigenschaft des Diensts
ausgewählt
wird.
-
Eine
Anordnung von Speichergeräten,
die ein bestimmtes RAID-Niveau verwirklichen, oder eine Anordnung
von Teilbereichen von Speichergeräten wird als RAID-Gruppe bezeichnet,
und ein RAID-Niveau wird durch diese RAID-Gruppe verwirklicht. Ein
logisches Volumen, das eine CPU zu einem Objekt der Ein-/Ausgabe
macht, wird im Allgemeinen durch Speichergeräte auf eine RAID-Gruppe abgebildet.
-
Auch
existiert eine Technik zum Erhalten des Backups konsistenter Daten,
ohne die Aktualisierung eines Volumens zu unterbrechen.
-
Es
ist allgemein bekannt, dass das Backup als Mittel zum Verhindern,
dass wichtige Daten vollkommen verloren gehen, wenn ein Fehler in
einem Speichergerät
erzeugt wird, erhalten wird. Es ist allgemein üblich, dass zum Gewährleisten
der Konsistenz von Daten, die einem Backup unterzogen werden, eine
Schreib/Lese-Verarbeitung für
das entsprechende Volumen während
einer Zeit, zu der das Backup erhalten wird, unterbrochen wird.
Dementsprechend ergibt sich das Problem, dass während der Zeit, zu der das
Backup erhalten wird, eine Verarbeitung, die ein Volumen verwendet,
das zu einem Backup-Objekt
gemacht ist, unterbrochen werden muss. Gemäß einem bekannten Verfahren
zum Lösen
dieses Problems wird eine Kopie eines Volumens in einem Speichergerät erzeugt,
so dass (1) normalerweise Daten des Originalvolumens und Daten des Kopiervolumens
miteinander übereinstimmend
gemacht werden, (2) während
einer Zeit, zu der das Backup erhalten wird, die Daten des Originalvolumens
und die Daten des Kopiervolumens nicht übereinstimmend gemacht werden
(und daher das Kopiervolumen das Originalvolumen zu einem bestimmten
Zeitpunkt darstellt, wenn die Konsistenz angenommen wird), und (3)
das Kopiervolumen für
das Backup verwendet wird. Dadurch ist es möglich, konsistente Daten als
Backupdaten zu erhalten, ohne die Verarbeitung zu unterbrechen,
wenn das Backup erhalten wird.
-
In
US-A-5 742 792 ist
ein entferntes Spiegelschema offenbart, das auf zwei Speichersystemen arbeitet
und die Möglichkeit
aufweist, individuelle Volumen, einen Bereich solcher Volumen oder
sie alle adaptiv zu kopieren. In
EP-A-0
672 985 ist ein weiteres entferntes Teil- oder Gesamtvolumen-Datenkopiersystem
offenbart, das sich auf die vorliegende Erfindung bezieht.
-
ZUSAMMENFASSUNG DER ERFINDUNG
-
Weil
bei der herkömmlichen
Technik zum entfernten Kopieren die Einheit eines Kopierobjekts ein
logisches Volumen ist, wie vorstehend erwähnt wurde, ergeben sich folgende
Probleme in Hinblick auf die Wirksamkeit.
-
Insbesondere
kann es den Fall geben, in dem ein zu einem Objekt des Kopierens
gemachtes logisches Volumen Daten enthält, deren Kopie nicht unbedingt
erforderlich ist. Beispielsweise brauchen in dem Fall, in dem ein
Teilbereich eines logischen Volumens als ein Arbeitsbereich definiert
wird, so dass er vorübergehend
zum Sortieren verwendet wird, Daten des Arbeitsbereichs nicht kopiert
zu werden. Jedoch werden gemäß der herkömmlichen
Technik des entfernten Kopierens, bei der das Kopieren in Einheiten
eines logischen Volumens ausgeführt
wird, auch unnötige
Daten kopiert, wodurch ein Zusatzaufwand hervorgerufen wird, der
nicht notwendigerweise essenziell ist. Weil ein Speichersystem einer
Primärstelle
und ein Speichersystem einer Sekundärstelle in einem großen Abstand
von einigen zehn Kilometern bis einigen hundert Kilometern voneinander
angeordnet sind, ist der durch das Kopieren unnötiger Daten hervorgerufene
Zusatzaufwand groß,
wodurch die Antwortzeit für
die CPU und der Durchsatz des Speichersystems stark beeinträchtigt werden.
Auch können
in dem Fall, in dem nur ein Teil eines logischen Volumens der Primärstelle,
das zu einem Objekt des Kopierens gemacht ist, verwendet wird, nicht verwendete
Abschnitte, die in einem logischen Volumen an der Sekundärstelle,
gepaart mit dem zum Objekt des Kopierens gemachten logischen Volumen und
mit der gleichen Kapazität
wie das logische Volumen, das zum Objekt des Kopierens gemacht ist,
erzeugt werden, eine erhebliche unnötige Kostenbelastung für die CPU
und das Speichersystem darstellen.
-
Auch
treten solche Probleme der herkömmlichen
Technik des entfernten Kopierens in ähnlicher Weise bei der vorstehend
erwähnten
herkömmlichen migratorischen
Kopiertechnik auf.
-
Daher
besteht eine Aufgabe der vorliegenden Erfindung ferner darin, die
Wirksamkeit des Kopierens in der Art eines entfernten Kopierens
oder eines migratorischen Kopierens zwischen Speichersystemen ohne
Beteiligung einer CPU zu verbessern.
-
Weil
andererseits im Stand der Technik ein logisches Volumen auf eine
RAID-Gruppe abgebildet wird, wie vorstehend erwähnt wurde, ist es nicht möglich, ein
logisches Volumen verteilt auf mehreren RAID-Gruppen anzuordnen.
-
Dementsprechend
gibt es in dem Fall, in dem jeder Datensatz oder jede Datei in einem
logischen Volumen eine andere Zugriffseigenschaft hat, eine Möglichkeit,
dass das RAID-Niveau einer RAID-Gruppe, worauf dieses logische Volumen
angeordnet ist, und/oder Speichergeräte, welche die RAID-Gruppe bilden, für einen
bestimmten Datensatz und eine bestimmte Datei geeignet sind, jedoch nicht
für eine
andere geeignet sind.
-
Daher
besteht eine andere Aufgabe der vorliegenden Erfindung darin, ein
logisches Volumen verteilt auf mehreren RAID-Gruppen anzuordnen/umzuordnen,
so dass Datensätze
oder Dateien in einem logischen Volumen auf RAID-Gruppen angeordnet
werden, die für
ihre Zugriffseigenschaften geeignet sind.
-
Bei
der existierenden Technik zum Erhalten des Backups konsistenter
Daten, ohne das Aktualisieren für
ein Volumen zu unterbrechen, wird eine Kopie des Volumens in einem
Speichergerät
erzeugt, so dass (1) normalerweise Daten des Originalvolumens und
Daten des Kopiervolumens miteinander übereinstimmend gemacht werden,
(2) während
einer Zeit, zu der das Backup erhalten wird, die Daten des Originalvolumens
und die Daten des Kopiervolumens nicht übereinstimmend gemacht werden
(und daher das Kopiervolumen das Originalvolumen zu einem bestimmten
Zeitpunkt darstellt, wenn die Konsistenz angenommen wird), und (3)
das Kopiervolumen für
das Backup verwendet wird. Bei diesem Verfahren ist die Einheit
eines Objekts des Kopierens jedoch ein Volumen. Daher ist es selbst in
dem Fall, in dem Daten in Einheiten eines spezifizierten Bereichs (beispielsweise
eines Datensatzes oder einer Datei) in einem Volumen benötigt werden,
notwendig, eine Kopie des gesamten Volumens zu erzeugen. Dementsprechend
ergibt sich ein Problem, dass eine unnötige Kopie erzeugt wird, wodurch
(1) Speichergeräten
eine zusätzliche
Belastung auferlegt wird und (2) zusätzliche Zeit benötigt wird.
-
Zum
Lösen der
vorstehend erwähnten
Aufgabe sieht die vorliegende Erfindung beispielsweise vor: ein
Verfahren zum entfernten Kopieren zum Ausführen eines entfernten Kopierens
zwischen zwei Speichersystemen, die als externe Speicher einer CPU
verwendet werden, die eine Anforderung zum Zugriff auf ein logisches
Volumen ausgibt, dadurch gekennzeichnet, dass in einem der zwei
Speichersysteme, das als ein Kopierursprung dient, die Bezeichnung
eines Teilbereichs eines logischen Volumens auf dem Kopierursprungsspeichersystem
akzeptiert wird und Daten des bezeichneten akzeptierten Teilbereichs
des logischen Volumens zu einem logischen Volumen auf dem anderen
der zwei Speichersysteme als ein Kopierziel ohne Beteiligung der CPU übertragen
werden, während
in dem Kopierzielspeichersystem die von dem Kopierursprungsspeichersystem übertragenen
Daten des Teilbereichs in das logische Volumen auf dem Kopierzielspeichersystem
geschrieben werden.
-
Weil
gemäß einem
solchen Verfahren nur ein Teilbereich des logischen Volumens dem
entfernten Kopieren unterzogen werden kann, ist es möglich, unnötigen Zusatzaufwand
zu beseitigen, der bisher durch das Kopieren von Daten hervorgerufen
wurde, deren Kopie nicht benötigt
wird.
-
Zum
Lösen der
vorstehend erwähnten
Aufgabe sieht die vorliegende Erfindung auch ein migratorisches
Kopierverfahren zum Ausführen
eines migratorischen Kopierens vor, mit dem Daten zwischen zwei
Speichersystemen migrieren, die als externe Speicher einer CPU verwendet
werden, welche eine Anforderung zum Zugriff auf ein logisches Volumen ausgibt,
dadurch gekennzeichnet, dass in einem der zwei Speicher systeme,
das als ein Kopierziel dient, die Bezeichnung eines Teilbereichs
eines logischen Volumens auf dem anderen der zwei Speichersysteme,
das als ein Kopierursprung dient, akzeptiert wird, Daten des bezeichneten
akzeptierten Teilbereichs des logischen Volumens auf dem Kopierursprungsspeichersystem
aus dem logischen Volumen auf dem Kopierursprungsspeichersystem
ohne Beteiligung der CPU gelesen werden und die gelesenen Daten
in ein logisches Volumen auf dem Kopierzielspeichersystem geschrieben
werden.
-
Weil
gemäß einem
solchen Verfahren nur ein Teilbereich des logischen Volumens dem
migratorischen Kopieren unterzogen werden kann, ist es möglich, unnötigen Zusatzaufwand
zu beseitigen, der bisher durch das Kopieren von Daten hervorgerufen wurde,
deren Kopie nicht benötigt
wird.
-
Zum
Lösen der
vorstehend erwähnten
Aufgabe sieht die vorliegende Erfindung ferner beispielsweise ein
Verfahren zum Anordnen eines logischen Volumens auf RAID-Gruppen
in einem Speichersystem, das als ein externer Speicher einer CPU
verwendet wird, welche eine Anforderung zum Zugriff auf ein logisches
Volumen ausgibt und mit mehreren RAID-Gruppen versehen ist, vor,
dadurch gekennzeichnet, dass in dem Speichersystem die Bezeichnung
der Entsprechung von Teilbereichen des logischen Volumens zu den
RAID-Gruppen akzeptiert wird und jeder Teilbereich des logischen
Volumens in Übereinstimmung
mit der akzeptierten Bezeichnung auf der entsprechenden RAID-Gruppe
angeordnet wird, oder dass in dem Speichersystem eine Zugriffseigenschaft
für jeden
Teilbereich des logischen Volumens festgestellt wird und jeder Teilbereich
auf einer RAID-Gruppe umgeordnet wird, die entsprechend den für diesen
Teilbereich festgestellten Zugriffseigenschaften definiert ist.
-
Mit
diesem Verfahren wird die Anordnung/Umordnung nicht in Einheiten
eines logischen Volumens, sondern für jeden Teilbereich eines logischen
Volumens, ermöglicht,
so dass jeder Teilbereich eines logischen Volumens auf einer gewünschten
RAID-Gruppe oder einer RAID-Gruppe, die für die Zugriffseigenschaften
dieses Teilbereichs geeignet ist, angeordnet/umgeordnet werden kann.
-
Zum
Lösen des
vorstehend erwähnten
Problems in Zusammenhang mit der Erzeugung eines unnötigen Kopierens,
das sich dadurch ergibt, dass die Einheit eines Objekts des Kopierens
ein Volumen ist, d. h. des Problems, dass (1) eine zusätzliche
Belastung Speichergeräten
auferlegt wird und (2) zusätzliche
Zeit beansprucht wird, weil es notwendig ist, eine Kopie eines gesamten
Volumens selbst in dem Fall zu erzeugen, in dem Daten in Einheiten
eines spezifizierten Bereichs (beispielsweise eines Datensatzes
oder einer Datei) in dem Volumen benötigt werden, verwendet die
vorliegende Erfindung das folgende Verfahren.
-
Im
Allgemeinen kennt ein Speichergerät nicht den Aufbau eines von
einem Host verwalteten Dateisystems und ist daher nicht in der Lage,
zu wissen, in welchem Bereich Daten existieren, die einen Datensatz
oder eine Datei bilden. Gemäß der vorliegenden
Erfindung sind Mittel bereitgestellt, mit denen der Host das Speichergerät über den
Bereich informiert. Das Speichergerät verwendet diese Mittel zum Erzeugen
einer Kopie nur eines Bereichs in der Art eines Datensatzes oder
einer Datei, der unbedingt erforderlich ist. Daher werden die zusätzliche
Belastung und der zusätzliche
Zeitaufwand verringert.
-
Diese
Aufgaben werden in vorteilhafter Weise im Wesentlichen dadurch gelöst, dass
die in den unabhängigen
Ansprüchen
dargelegten Merkmale angewendet werden. Weitere Verbesserungen werden
durch die Unteransprüche
bereitgestellt.
-
KURZBESCHREIBUNG DER ZEICHNUNG
-
1 ist
ein Blockdiagramm, in dem die Konstruktion eines Informationssystems
gemäß einer
ersten Ausführungsform
der vorliegenden Erfindung dargestellt ist,
-
die 2A und 2B sind
Diagramme zum Erklären
logischer Speichergeräte
gemäß der ersten
Ausführungsform
der vorliegenden Erfindung,
-
3 ist
ein Diagramm, in dem Tabellen dargestellt sind, die von Speichersystemen
gemäß der ersten
Ausführungsform
der vorliegenden Erfindung gehalten werden,
-
4 ist
ein Flussdiagramm, in dem der Ablauf einer entfernten Kopierpaarerzeugungsverarbeitung
gemäß der ersten
Ausführungsform
der vorliegenden Erfindung dargestellt ist,
-
5 ist
ein Flussdiagramm, in dem der Ablauf einer Schreibverarbeitung gemäß der ersten Ausführungsform
der vorliegenden Erfindung dargestellt ist,
-
6 ist
ein Flussdiagramm, in dem der Ablauf einer Verarbeitung zum Schalten
des Betriebs gemäß der ersten
Ausführungsform
der vorliegenden Erfindung dargestellt ist,
-
7 ist
ein Blockdiagramm, in dem die Konstruktion von Speichersystemen
gemäß einer zweiten
Ausführungsform
der vorliegenden Erfindung dargestellt ist,
-
8 ist
ein Flussdiagramm, in dem der Ablauf einer Verarbeitung zum migratorischen
Kopieren gemäß der zweiten
Ausführungsform
der vorliegenden Erfindung dargestellt ist,
-
9 ist
ein Blockdiagramm, in dem die Konstruktion eines Speichersystems
gemäß einer dritten
Ausführungsform
der vorliegenden Erfindung dargestellt ist,
-
10 ist ein Diagramm, in dem Tabellen dargestellt
sind, die von einem Kopierursprungsspeichersystem gemäß einer
fünften
Ausführungsform der
vorliegenden Erfindung gehalten werden,
-
11 ist ein Diagramm, in dem Tabellen dargestellt
sind, die von einem Kopierzielspeichersystem gemäß der fünften Ausführungsform der vorliegenden
Erfindung gehalten werden,
-
12 ist ein Flussdiagramm, in dem der Ablauf einer
Verarbeitung zum Schalten des Betriebs gemäß der fünften Ausführungsform der vorliegenden
Erfindung dargestellt ist,
-
13 ist ein Blockdiagramm, in dem die Konstruktion
eines Systems gemäß einer
siebten Ausführungsform
der vorliegenden Erfindung dargestellt ist,
-
14 ist ein Diagramm, in dem Steuerinformationen
dargestellt sind, welche ein Steuerprozessor benötigt, wenn die vorliegende
Erfindung verwirklicht wird,
-
15 ist ein Diagramm, in dem der Aufbau von Differenzinformationen
in den Steuerinformationen dargestellt ist,
-
16 ist ein Flussdiagramm, in dem der Ablauf einer
Verarbeitung dargestellt ist, wenn eine Paarerzeugungsanforderung
von einem Host empfangen wird,
-
17 ist ein Flussdiagramm, in dem der Ablauf einer
Verarbeitung dargestellt ist, wenn eine Paarunterteilungsanforderung
von dem Host empfangen wird,
-
18 ist ein Flussdiagramm, in dem der Ablauf einer
Verarbeitung dargestellt ist, wenn eine Ausdehnungsaktualisierungsanforderung
von dem Host empfangen wird,
-
19 ist ein Flussdiagramm, in dem der Ablauf einer
Verarbeitung dargestellt ist, wenn eine Schreibanforderung von dem
Host empfangen wird,
-
20 ist ein Flussdiagramm, in dem der Ablauf einer
Paarerzeugungskopierverarbeitung dargestellt ist,
-
21 ist ein Flussdiagramm, in dem der Ablauf einer
Paarunterteilungskopierverarbeitung dargestellt ist,
-
22 ist ein Flussdiagramm, in dem der Ablauf einer
Ausdehnungsaktualisierungskopierverarbeitung dargestellt ist,
-
23 ist ein Blockdiagramm, in dem die Konstruktion
eines Systems gemäß einer
achten Ausführungsform
der vorliegenden Erfindung dargestellt ist,
-
24 ist ein Diagramm, in dem Steuerinformationen
dargestellt sind, welche ein Steuerprozessor benötigt, wenn die vorliegende
Erfindung verwirklicht wird,
-
25 ist ein Diagramm, in dem der Aufbau von Differenzinformationen
in den Steuerinformationen dargestellt ist,
-
26 ist ein Flussdiagramm, in dem der Ablauf einer
Verarbeitung dargestellt ist, wenn eine Paarerzeugungsanforderung
von einem Host empfangen wird,
-
27 ist ein Flussdiagramm, in dem der Ablauf einer
Verarbeitung dargestellt ist, wenn eine Paarunterteilungsanforderung
von dem Host empfangen wird,
-
28 ist ein Flussdiagramm, in dem der Ablauf einer
Verarbeitung dargestellt ist, wenn eine Schreibanforderung von dem
Host empfangen wird,
-
29 ist ein Flussdiagramm, in dem der Ablauf einer
Paarerzeugungskopierverarbeitung dargestellt ist,
-
30 ist ein Flussdiagramm, in dem der Ablauf einer
Paarunterteilungskopierverarbeitung dargestellt ist,
-
31 ist ein Blockdiagramm, in dem die Konstruktion
eines Systems gemäß einer
neunten Ausführungsform
der vorliegenden Erfindung dargestellt ist,
-
32 ist ein Diagramm, in dem Steuerinformationen
dargestellt sind, welche ein Steuerprozessor benötigt, wenn die vorliegende
Erfindung verwirklicht wird,
-
33 ist ein Diagramm, in dem der Aufbau von Differenzinformationen
in den Steuerinformationen dargestellt ist,
-
34 ist ein Flussdiagramm, in dem der Ablauf einer
Verarbeitung dargestellt ist, wenn eine Paarerzeugungsanforderung
von einem Host empfangen wird,
-
35 ist ein Flussdiagramm, in dem der Ablauf einer
Verarbeitung dargestellt ist, wenn eine Ausdehnungsunterteilungsanforderung
von dem Host empfangen wird,
-
36 ist ein Flussdiagramm, in dem der Ablauf einer
Verarbeitung dargestellt ist, wenn eine Ausdehnungskopplungsanforderung
von dem Host empfangen wird,
-
37 ist ein Flussdiagramm, in dem der Ablauf einer
Paarerzeugungskopierverarbeitung dargestellt ist,
-
38 ist ein Flussdiagramm, in dem der Ablauf einer
Verarbeitung dargestellt ist, wenn eine Schreibanforderung von dem
Host empfangen wird,
-
39 ist ein Flussdiagramm, in dem der Ablauf einer
Ausdehnungsunterteilungskopierverarbeitung dargestellt ist,
-
40 ist ein Flussdiagramm, in dem der Ablauf einer
Ausdehnungskopplungskopierverarbeitung dargestellt ist, und
-
41 ist ein Blockdiagramm, in dem die Konstruktion
von Systemen gemäß einer
zehnten und einer elften Ausführungsform
der vorliegenden Erfindung dargestellt ist.
-
DETAILLIERTE BESCHREIBUNG DER AUSFÜHRUNGSFORMEN
-
Ausführungsformen
der vorliegenden Erfindung werden nun beschrieben.
-
I. Erste Ausführungsform
-
Zuerst
wird eine erste Ausführungsform
der vorliegenden Erfindung beschrieben.
-
Die
erste Ausführungsform
betrifft ein entferntes Kopieren. 1 zeigt
ein Beispiel des Aufbaus eines Informationssystems, in dem das entfernte
Kopieren ausgeführt
wird.
-
Eine
oder mehrere CPUs 120 und ein oder mehrere Speichersysteme 100 sind
an einer Primärstelle
angeordnet, wo ein Hauptdienst ausgeführt wird.
-
Die
CPU 120 führt
ein Anwendungsprogramm aus, um eine Anforderung zur Ein-/Ausgabe von
Daten eines logischen Volumens 104 zum Speichersystem 100 der
Primärstelle
auszugeben. Das logische Volumen 104 besteht aus logischen
Speichergeräten,
die von der CPU 120 erkannt werden.
-
Das
Speichersystem 100 ist durch einen oder mehrere Zwischensteuerungswege 160 mit
einem Speichersystem 110 einer Sekundärstelle verbunden. Das Speichersystem 100 besteht
aus einer oder mehreren Steuerungen 101 und einem oder mehreren
Speichergeräten 103.
Die Steuerung 101 führt
die Übertragung
von Daten zwischen der CPU 120 und dem Speichergerät 103 aus.
In der Steuerung 101 sind ein oder mehrere Prozessoren
zum Ausführen
von Mikroprogrammen, ein Cache-Speicher zum Zwischenspeichern von
Daten des Speichergeräts 103,
ein Speicher zum Speichern verschiedener Tabellen (welche später erwähnt werden) usw.
bereitgestellt. Die CPU 120, die Steuerung 101 und
das Speichergerät 103 kommunizieren
durch einen oder mehrere Hostübertragungswege 130 zur Verbindung
zwischen der CPU 120 und der Steuerung 101 und
durch einen oder mehrere Speichergeräte-Übertragungswege 102 zur
Verbindung zwischen der Steuerung 101 und dem Speichergerät 103 miteinander,
um eine Ein-/Ausgabe auszuführen.
-
Die
Sekundärstelle
zum Halten von Backup-Daten oder einer Duplikatkopie von in dem
Speichersystem 100 der Primärstelle gespeicherten Daten
hat einen Aufbau, der jenem der Primärstelle ähnelt. Eine CPU 140 und
das Speichersystem 110 sind an der Sekundärstelle
angeordnet. Das Speichersystem 110 besteht aus einer oder
mehreren Steuerungen 111 und einem oder mehreren Speichergeräten 113.
Die Steuerung 111 führt
die Übertragung
von Daten zwischen der CPU 140 und dem Speichergerät 113 aus.
In der Steuerung 111 sind ein oder mehrere Prozessoren
zum Ausführen
von Mikroprogrammen, ein Cache-Speicher zum Zwischenspeichern von
eingegebenen bzw. ausgegebenen Daten für das Speichergerät 113,
ein Speicher zum Speichern verschiedener Tabellen (welche später erwähnt werden)
usw. bereitgestellt.
-
Der
Prozessor in der Steuerung 101 oder 111 führt jede
Verarbeitung der Steuerung 101 oder 111 in Übereinstimmung
mit einem Programm aus, das vorab in dem in dieser Steuerung bereitgestellten Speicher
gespeichert wurde. Die Verarbeitung wird später erwähnt.
-
Zum
Erleichtern des Verständnisses
der folgenden Beschreibung werden jene Bestandteile der Primärstelle
und der Sekundärstelle,
die an der Primärstelle
existieren, welche als ein Datenkopierursprung dient, mit (S) bezeichnet,
und die Bestandteile der Sekundärstelle,
die als ein Datenkopierziel dient, mit (T) bezeichnet. Beispielsweise
werden die CPU 120 der Primärstelle als CPU (S) 120 bezeichnet
und die CPU 140 der Sekundärstelle als CPU (T) 140 bezeichnet.
-
Bei
einer solchen Konstruktion hält
das Speichersystem (T) 110 eine Kopie der Daten des Speichersystems
(S) 100. Insbesondere werden Daten in diesem Bereich eines
logischen Volumens (S) 104, das von der CPU (S) 120 als
ein einem entfernten Kopieren zu unterziehendes Objekt bezeichnet
ist, von der Steuerung (S) 101 über den Zwischensteuerungsweg 160 zur
Steuerung (T) 111 übertragen.
Die Steuerung (T) 111 speichert die von der Steuerung (S) 101 empfangenen
Daten in dem in der Steuerung (T) 111 bereitgestellten
Cache-Speicher und informiert anschließend die Steuerung (S) 101 über den Abschluss.
Dann schreibt die Steuerung (T) 111 die Daten vom Cache-Speicher
in das Speichergerät
(T) 113.
-
Wenn
das Schreiben von der CPU (S) 120 für diesen Bereich des logischen
Volumens (S) 104 des Speichersystems (S) 100,
der zum Objekt des entfernten Kopierens gemacht wurde, geschieht, speichert
die Steuerung (S) 101 Schreibdaten im Speichergerät (S) 103,
während
die Schreibdaten über
den Zwischensteuerweg 160 zur Steuerung (T) 111 übertragen
werden. Die Steuerung (T) 111 speichert die von der Steuerung
(S) 101 empfangenen Daten in dem in der Steuerung (T) 111 bereitgestellten
Cache-Speicher und informiert anschließend die Steuerung (S) 101 über den
Abschluss. Dann schreibt die Steuerung (T) 111 die Daten
aus dem Cache-Speicher in einen vorbestimmten Bereich des Speichergeräts (T) 113.
-
Mit
dem vorstehenden Vorgang werden die Schreibdaten von der CPU (S) 120 in
das Speichersystem (T) 110 geschrieben, wodurch ein duplizierter Zustand
beim Speichersystem (S) 100 aufrechterhalten wird. Die
vorstehende Verarbeitung wird zwischen der Steuerung (S) 100 und
der Steuerung (T) 111 ohne Beteiligung der CPU (S) 120 ausgeführt.
-
Wie
vorstehend beschrieben wurde, werden gemäß der ersten Ausführungsform
nur Daten in jenem Bereich des logischen Volumens (S) 104,
der zum Objekt des entfernten Kopierens gemacht ist, zur Sekundärstelle übertragen,
wo die Daten im Speichergerät
(T) 113 des Speichersystems (T) 110 gespeichert
werden. Der zum Objekt des entfernten Kopierens gemachte Bereich
stellt einen Bereich dar, dessen Kopie wirklich benötigt wird.
Ein solcher Bereich umfasst beispielsweise einen Datensatz unter Einschluss
von Datenbankdaten, eines Datenbankprotokolls, einer Prüfpunktdatei
usw. und eine Datei.
-
Gemäß der ersten
Ausführungsform
wird nun eine als ein logisches Speichergerät bezeichnete Einheit eingeführt, um
eine Verarbeitung an einem zu einem Objekt eines entfernten Kopierens
gemachten Bereich zu erleichtern. Das logische Speichergerät wird nun
beschrieben.
-
2A zeigt einen Adressraum einer RAID-Gruppe (S) 205,
die durch mehrere (oder vier) Speichergeräte (S) 103 gebildet
ist, welche durch die Steuerung (S) 101 verwaltet werden,
und 2B zeigt einen Adressraum einer
RAID-Gruppe (T) 215, die durch mehrere (oder vier) Speichergeräte (T) 113 gebildet
ist, welche durch die Steuerung (T) 111 verwaltet werden.
-
Logische
Speichergeräte
(S) 200 werden durch Dividieren des Adressraums der RAID-Gruppe (S) 205 durch
jede feste Länge
erhalten, und logische Speichergeräte (T) 210 werden
durch Dividieren des Adressraums der RAID-Gruppe (T) 215 durch
jede feste Länge
erhalten. Es ist nicht unbedingt erforderlich, dass die Größe oder
Kapazität
des logischen Speichergeräts
(S) 200 mit derjenigen der logischen Speichergeräte (T) 210–212 identisch
ist. Jedes logische Speichergerät
(S) 200 wird unter Verwendung ihrer laufenden Nummer in
dem Speichersystem (S) 100 verwaltet, und jedes der logischen
Speichergeräte
(T) 210–212 wird
unter Verwendung ihrer laufenden Nummer in dem Speichersystem (T) 110 verwaltet. Ähnlich werden
jedes logische Volumen und jedes Speichergerät unter Verwendung ihrer laufenden Nummern
in jedem logischen Speichersystem verwaltet. Auch werden die Steuerungen
mit ihren Steuerungsnummern verwendet, und sie kommunizieren unter
Verwendung dieser Nummern miteinander.
-
Ein
logisches Volumen wird auf logische Speichergeräte abgebildet, deren Anzahl
der Kapazität
des logischen Volumens entspricht.
-
Wenngleich
die Kapazität
des logischen Speichergeräts 200 von
einem Benutzer festgelegt werden kann, muss sie kleiner oder gleich
der Kapazität
des minimalen logischen Volumens 104 sein, welche das Speichersystem 100 unterstützt. Auch
ist es bevorzugt, dass die Kapazität des logischen Speichergeräts 200 so
klein wie möglich
gemacht wird, um einen nutzlosen Bereich zu verkleinern.
-
Nachfolgend
wird das in dem so aufgebauten Informationssystem ausgeführte entfernte
Kopieren detailliert beschrieben.
-
Zuerst
werden Daten beschrieben, welche die Steuerungen (S) 101 und
(T) 111 halten, um das entfernte Kopieren auszuführen.
-
Jede
der Steuerungen (S) 101 und (T) 111 hält Informationstabellen 300 logischer
Volumen und Informationstabellen 310 logischer Speichergeräte, wie
in 3 dargestellt ist.
-
Die
Informationstabelle 300 logischer Volumen ist eine Tabelle
zum Zuordnen eines auf der eigenen Seite gebildeten logischen Volumens 104 oder eines
entsprechenden Speichersystems zu logischen Speichergeräten 200.
Die Tabelle 300 existiert für jedes logische Volumen 104.
-
Jede
Informationstabelle 300 logischer Volumen besteht aus einer
Nummer 301 jedes logischen Speichergeräts 200, auf das das
entsprechende logische Volumen 104 abgebildet ist, einem
Logikadressbereich 308, der einen Adressbereich in dem
logischen Volumen angibt, das auf das logische Speichergerät 200 abgebildet
ist, Kopievorhandenseins-/Nichtvorhandenseinsinformationen 302, welche
angeben, ob das logische Speichergerät 200 einen Teil eines
zu einem Objekt eines entfernten Kopierens gemachten Bereichs aufweist,
einem Kopieradressenbereich 305, der jeden Abschnitt des
zum Objekt des entfernten Kopierens gemachten Bereichs angibt, welchen
das logische Speichergerät 200 aufweist,
Emulationsinformationen 303, welche den Emulationstyp und
die Kapazität
des entsprechenden logischen Volumens 104 angeben, Original/Kopie-Informationen 304,
welche angeben, ob das entsprechende logische Volumen ein Kopierursprung
(Original) oder ein Kopierziel (Kopie) ist, einem Kopierzeiger 306 und
einem Paarzustand 307.
-
Die
Tabelle 300 ist als eine Tabelle mit mehreren Einträgen gebildet,
wobei die Nummer 301 des logischen Speichergeräts, der
Logikadressbereich 308, die Kopievorhandenseins-/Nichtvorhandenseinsinformationen 302 und
der Kopieradressbereich 305 ein indexierter Eintrag sind.
Dann wird ein Verfahren zum Bestimmen der Adresse des logischen
Speichergeräts 200 anhand
der Adresse des von der CPU 120 bezeichneten logischen
Volumens 104 unter Verwendung eines Beispiels beschrieben.
-
Nun
wird angenommen, dass ein logisches Volumen 104 eine Kapazität von 4n
mit verwendeten Adressen von 0 bis 4n – 1 aufweist und auf logische Speichergeräte 200 abgebildet
wird, die mit Nummern von 0 bis 3 versehen sind und jeweils eine
Kapazität
von n aufweisen. Dann werden die Nummer 301 des logischen
Speichergeräts
und der Logikadressbereich 308 in einem Eintrag mit einem
Index 0 mit 0 bzw. 0 bis n – 1
gespeichert, jene in einem Eintrag mit einem Index 1 mit 1 bzw.
n bis 2n – 1
gespeichert usw.
-
Dementsprechend
kann festgestellt werden, welches logische Speichergerät 200 eine
von der CPU 120 bezeichnete logische Adresse aufweist,
indem die bezeichnete logische Adresse durch die Kapazität des logischen
Speichergeräts 200 dividiert wird.
Insbesondere gibt der Quotient der Division einen Eintrag an, in
dem eine vorgesehene Nummer 301 des logischen Speichergeräts gespeichert
ist, und der Rest gibt eine Adresse in dem logischen Speichergerät 200 an.
-
Auch
kann festgestellt werden, ob die von der CPU 120 bezeichnete
logische Adresse in dem Bereich enthalten ist, der zum Objekt des
entfernten Kopierens gemacht ist, indem einfach mit einem Kopieradressbereich 305 in
dem Eintrag, in dem die so erhaltene vorgesehene Nummer 301 des
logischen Speichergeräts
gespeichert ist, verglichen wird. Folglich ermöglicht das Einführen der
Einheiten logischer Speichergeräte
das einfache Ausführen
einer Verarbeitung an einem Fernkopierbereich und das Verringern
von Zusatzaufwand, verglichen mit dem Fall, in dem die Einheiten
logischer Speichergeräte
nicht eingeführt
sind.
-
Die
Original/Kopie-Informationen 304 in der Informationstabelle 300 logischer
Volumen geben an, ob das entsprechende logische Volumen das logische
Volumen (S) 104 ist, d. h. ein Kopierursprungsvolumen (ursprüngliches
Volumen), oder das logische Volumen (T) 114, d. h. ein
Kopierzielvolumen (Kopiervolumen) ist, falls das entsprechende logische
Volumen ein logisches Volumen ist, das ein Paar bildet (nachstehend
als ein "Fernkopierpaar" bezeichnet), welches
durch ein logisches Volumen, welches zu einem Objekt gemacht ist,
das einem entfernten Kopieren unterzogen wird, und durch ein logisches
Volumen des Ziels des entfernten Kopierens bereitgestellt ist.
-
Der
Paarzustand 307 gibt an, in welchen Zustand das Fernkopierpaar
versetzt ist. Der Zustand des Paars umfasst einen Simplexzustand,
der angibt, dass das entsprechende logische Volumen kein logisches
Volumen ist, das ein Fernkopierpaar bildet, einen Kopieausführungszustand,
in dem das Kopieren vom logischen Volumen (S) 104 zum logischen
Volumen (T) 114 ausgeführt
wird, einen Duplexzustand, in dem eine Operation in einem duplizierten
Zustand vorgenommen wird, einen Aufhebungszustand, in dem der Inhalt
des logischen Volumens (S) 104 und jener des logischen
Volumens (T) 114 nicht übereinstimmen,
usw. Der Kopierzeiger 306 gibt an, wohin das Kopieren für die ein
Fernkopierpaar bildenden logischen Volumen (S) 104 und
(T) 114 oder das Kopieren vom erstgenannten zum letztgenannten
ausgeführt
werden soll. Die Emulationsinformationen 303 sind gespeicherte
Informationen des logischen Volumens (S) 104 zum Emulieren
eines logischen Volumens eines Hauptrechners. Es gibt mehrere Emulationstypen
für das
logische Volumen 104 des Hauptrechners, und die Kapazität und das
Format (einschließlich
der Spurlänge,
der Anzahl der Zylinder, der Größe einer
Lücke zwischen
Datensätzen usw.)
unterscheiden sich für
jeden Emulationstyp. Daher werden in dem Fall, in dem das logische
Volumen 104 des Hauptrechners zu einem Objekt des entfernten
Kopierens gemacht wird, diese Informationen gespeichert, um das
Format zwischen dem logischen Volumen (S) 104 und dem logischen
Volumen (T) 114 übereinstimmend
zu machen. Im Fall eines offenen Systems existiert dieser Emulationstyp
nicht, weshalb nur die Kapazität
des logischen Volumens (S) 104 gespeichert wird. Wie später erwähnt wird, werden
nur die logischen Speichergeräte 210,
die der Kapazität
des dem entfernten Kopieren unterzogenen Bereichs entsprechen, auf
das logische Volumen (T) 114 abgebildet. Daher werden für alle Nummern 301 logischer
Speichergeräte
in der Informationstabelle 300 logischer Volumen für das von
der Steuerung (T) 111 gehaltene logische Volumen (T) 114 die Kopievorhandenseins-/Nichtvorhandenseinsinformationen 302 mit "ENTFERNTE KOPIE VORHANDEN" gespeichert, die
Original/Kopie-Informationen 304 mit "KOPIERZIEL" gespeichert und der Kopieradressbereich 305 mit
einem von der Steuerung (S) 101 bezeichneten Fernkopier-Adressbereich gespeichert.
-
Die
Emulationsinformationen 303 (der Emulationstyp und die
Kapazität)
der Informationstabelle 300 logischer Volumen des logischen
Volumens (T) 114, die von der Steuerung (T) 111 gehalten
wird, sind mit den Emulationsinformationen 303 (dem Emulationstyp
und der Kapazität)
der Informationstabelle 300 logischer Volumen für das logische
Volumen (S) 104 gespeichert, die von der Steuerung (S) 101 gehalten
wird. Hier sei bemerkt, dass in der Informationstabelle 300 logischer
Volumen für
das logische Volumen (T) 114 die Kapazität des logischen Volumens
(S) 114 als die Emulationsinformationen 303 gespeichert
ist.
-
Die
Informationstabelle 310 logischer Speichergeräte ist eine
Tabelle zum Zuordnen der logischen Speichergeräte 200 zu den Speichergeräten 103.
In dem Fall, in dem das entsprechende logische Speichergerät 200 zu
einem Objekt des entfernten Kopierens gemacht wird, ordnet die Tabelle 300 das logische
Speichergerät 200 dem
logischen Volumen 114 der entgegengesetzten Seite zu. Die
Tabelle 310 existiert für
jedes logische Speichergerät 200.
-
Jede
Informationstabelle 310 logischer Speichergeräte, die
von der Steuerung (S) 101 gehalten wird, besteht aus einer
Speichergerätenummer 311 jedes
Speichergeräts
(S) 103, auf das das entsprechende logische Speichergerät (S) 200 abgebildet ist,
einem Adressbereich 312, der einen Adressbereich des auf
das Speichergerät
(S) 103 abgebildeten entsprechenden logischen Speichergeräts (S) 200 angibt,
RAID-Niveau-Informationen 313,
welche ein RAID-Niveau angeben, das einer durch die Speichergeräte (S) 103 gebildeten
RAID-Gruppe 205 zugewiesen ist, und einer Paarsteuerungsnummer 314 und
einer Paarlogikvolumennummer 315, um in dem Fall, in dem
das entsprechende logische Speichergerät 200 einen Teil eines
zu einem Objekt eines entfernten Kopierens gemachten Bereichs aufweist,
die Steuerung (T) 111 und das logische Volumen (T) 114 des
Speichersystems (T) 110, das ein Ziel des entfernten Kopierens
ist, zu spezifizieren. In jeder Informationstabelle 310 logischer
Speichergeräte,
die von der Steuerung (T) 111 gehalten wird, sind die Speichergerätenummer 311 und
der Adressbereich 312 mit einer Speichergerätenummer
und einem Adressbereich jedes Speichergeräts (T) 113, auf das
das entsprechende logische Speichergerät (T) 210 abgebildet
ist, gespeichert. Auch sind die RAID-Niveau-Informationen 313 mit
einem RAID-Niveau gespeichert, das der durch die Speichergeräte (T) 113 gebildeten
RAID-Gruppe 215 zugeordnet ist. Ferner ist die Paarsteuerungsnummer 314 in
jeder Informationstabelle 310 logischer Speichergeräte, die
von der Steuerung (T) 111 gehalten wird, mit einer Steuerungsnummer der
Steuerung (S) 101 gespeichert, und die Paarlogikvolumennummer 315 ist
mit einem Nullwert gespeichert.
-
Eine
von der CPU 120 bezeichnete logische Adresse wird in eine
Nummer eines logischen Speichergeräts 200 und eine Adresse
auf diesem logischen Speichergerät 200 umgewandelt,
wie vorstehend erwähnt
wurde. Welchem Speichergerät 103 diese
logische Adresse tatsächlich
entspricht, wird durch eine Informationstabelle 310 logischer
Speichergeräte,
entsprechend der durch die Umwandlung erhaltenen Nummer des logischen
Speichergeräts
bestimmt. Falls der Zugriff von der CPU 120 in diesem Fall
ein Schreibzugriff ist, wird der Bezug auf die RAID-Niveau-Informationen 313 der
Informationstabelle 310 logischer Speichergeräte gemacht, um
redundante Daten entsprechend dem RAID-Niveau zu erzeugen, und die
erzeugten redundanten Daten werden auch in das Speichergerät 103 geschrieben.
Für dieses
Verfahren kann ein Verfahren verwendet werden, das beispielsweise
in D. A. Patterson, G. Gibson und R. H. Katz, "A Case for Redundant Arrays of Inexpensive
Disks (RAID)", Proc.
ACM SIGMOD, Juni 1988, offenbart ist. Wie später erwähnt wird, wird in dem Fall,
in dem das entfernte Kopieren zu der Zeit eines Schreibzugriffs
von der CPU 120 ausgeführt
wird, die Untersuchung auf der Grundlage der Informationstabelle 300 logischer
Volumen des logischen Volumens (S) 104 in Bezug darauf,
ob das zu einem Zugriffsobjekt gemachte logische Speichergerät (S) 200 einen
Teil eines zu einem Objekt eines entfernten Kopierens gemachten
Bereichs aufweist, getroffen. In dem Fall, in dem der Teil des zum
Objekt des entfernten Kopierens gemachten Bereichs enthalten ist,
werden die Steuerungsnummer 314 und die Nummer 315 des
logischen Volumens eines Ziels des entfernten Kopierens anhand der
Informationstabelle 310 logischer Speichergeräte, entsprechend
dem entsprechenden logischen Speichergerät (S) 200, untersucht,
um durch den Zwischensteuerungsweg 160 auf ein vorgesehenes logisches
Volumen (T) 114 zuzugreifen.
-
Als
nächstes
werden die Einzelheiten eines Vorgangs zum Ausführen des entfernten Kopierens beschrieben.
Dieser Vorgang beinhaltet drei Verarbeitungen, nämlich eine Verarbeitung zur
Erzeugung eines Fernkopierpaars, eine Verarbeitung zur Zeit des
Schreibens von der CPU 120 zum Speichersystem (S) 100 und
eine Verarbeitung zum Schalten des Betriebs vom Speichersystem (S) 100 zum
Speichersystem (T) 110. Nachfolgend wird jede dieser Verarbeitungen
beschrieben.
-
(i) Fernkopierpaarerzeugungsverarbeitung
-
4 zeigt
den Ablauf der Fernkopierpaarerzeugungsverarbeitung.
-
Zuerst
werden in Schritt 400 ein zu einem Objekt des entfernten
Kopierens gemachtes logisches Volumen 104 und ein zu einem
Objekt des entfernten Kopierens gemachter Bereich an der Primärstelle
bezeichnet, wie dargestellt ist. Die Bezeichnung wird durch einen
Benutzer der Steuerung (S) 101 von außerhalb des Speichersystems
(S) 100, beispielsweise durch die CPU (S) 120,
ein externes Endgerät
(nachstehend als "SVP:
Dienstprozessor" bezeichnet),
das mit der Steuerung (S) 101 verbunden ist, oder dergleichen
vorgenommen. Hier wird angenommen, dass ein dem entfernten Kopieren
zu unterziehender Datensatz und eine Adresse davon auf einem logischen
Volumen 104 dem Benutzer vorab bekannt sind. Wenn die Bezeichnung
einer Nummer des logischen Volumens 104, das zum Objekt des
entfernten Kopierens gemacht ist, und des zum Objekt des entfernten
Kopierens gemachten Bereichs durch die Steuerung (S) 101 vorgenommen wurde,
arbeitet die Steuerung (S) 101 durch das vorstehend erwähnte Verfahren,
so dass die Definition "KOPIERURSPRUNG" in die Original/Kopie-Informationen 304 einer
Informationstabelle 300 logischer Volumen, entsprechend
der bezeichneten Nummer des logischen Volumens 104 vorgenommen
wird und durch den Fernkopierbereich definierte Adressen in dem
Kopieradressbereich 305 gespeichert werden. Anschließend wird
in Schritt 401 eine Anforderung zur Fernkopierpaarerzeugung,
begleitet von Parametern, einschließlich mindestens eines Emulationstyps, der
Kapazität
des entsprechenden logischen Volumens 104 und des zum Objekt
des entfernten Kopierens gemachten Bereichs, von der Steuerung (S) 101 an
die Steuerung (T) 111 ausgegeben. In Bezug auf den Wert
jedes Parameters werden der Emulationstyp und die Kapazität des entsprechenden
logischen Volumens 104 anhand der Emulationsinformationen 303 bestimmt
und wird ein Fernkopieradressbereich unter Bezugnahme auf den Kopieradressbereich 305 bestimmt.
-
Wenn
die Anforderung zur Fernkopierpaarerzeugung empfangen wird, weist
die Steuerung (T) 111 ein logisches Volumen (T) zu (Schritt 410).
Insbesondere wird zuerst ein nicht verwendetes logisches Volumen
(T) 114 gewährleistet.
Dieses logische Volumen kann in einer solchen Weise gewährleistet
werden, dass ein nicht verwendetes logisches Volumen von außerhalb
bezeichnet wird oder die Steuerung (T) 111 ein nicht verwendetes
logisches Volumen zuweist. Als nächstes
werden nicht verwendete logische Speichergeräte (T) 210 dem logischen
Volumen (T) 114 zugewiesen, so dass der von der Steuerung (S) 101 als
das Objekt des entfernten Kopierens bezeichnete Bereich in Bezug
auf die Kapazität
beteiligt ist. Ferner wird die Definition als das "KOPIERZIEL" in die Original/Kopie-Informationen 304 einer
Informationstabelle 300 logischer Volumen, entsprechend dem
logischen Volumen (T) 114, eingegeben. Auch wird eine Nummer
jedes logischen Speichergeräts (T) 120,
das dem logischen Volumen (T) 114 zugeordnet ist, in den
Nummern 301 logischer Speichergeräte der Informationstabelle 300 logischer
Volumen, entsprechend dem früher
zugewiesenen logischen Volumen (T) 114, gespeichert. Überdies
wird "KOPIE VORHANDEN" in den Kopievorhandenseins-/Nichtvorhandenseinsinformationen 302 der
Informationstabelle 300 logischer Volumen gespeichert.
-
Ferner
wird der von der Steuerung (S) 101 empfangene Logikadressbereich,
der den zum Objekt des entfernten Kopierens gemachten Bereich enthält, auf
jedes zugeordnete logische Speichergerät (T) 210 abgebildet.
Die abgebildeten logischen Adressen werden in dem Logikadressbereich 308 der Informationstabelle 300 logischer
Volumen in einem diesem logischen Speichergerät (T) 210 entsprechenden
Eintrag gespeichert. Auch wird der Kopieradressbereich 305 der
Informationstabelle 300 logischer Volumen in einem jedem
zugewiesenen logischen Speichergerät (T) 210 entsprechenden
Eintrag mit diesem Adressbereich des zum Objekt des entfernten Kopierens
gemachten Bereichs, der in dem Logikadressbereich enthalten ist,
welcher auf dieses logische Speichergerät (T) 210 abgebildet
ist, gespeichert. Beispielsweise sei der Fall angenommen, in dem
die Adressen n bis 4n – 1
des logischen Volumens (S) 104 der zum Objekt des entfernten
Kopierens gemachte Bereich sind und zwei mit i und j nummerierte
logische Speichergeräte,
die jeweils eine Kapazität
von 2n aufweisen, dem logischen Volumen (T) zugewiesen sind, so
dass Adressen n bis 3n – 1
auf das i-nummerierte
logische Speichergerät (T) 210 abgebildet
sind und Adressen 3n bis 5n – 1 auf
das j-nummerierte logische Speichergerät (T) 210 abgebildet
sind. In diesem Fall werden der Bereich von n bis 3n – 1 im Logikadressbereich 308 und im
Kopieradressbereich 305 in einem mit 0 indexierten Eintrag
der Informationstabelle 300 logischer Volumen und bei dem
die Nummer 301 des logischen Speichergeräts i ist,
gespeichert, und der Bereich von 3n bis 5n – 1 und der Bereich von 3n
bis 4n – 1
jeweils im Logikadressbereich 308 und im Kopieradressbereich 305 in
einem mit 1 indexierten Eintrag, bei dem die Nummer 301 des
logischen Speichergeräts
j ist, gespeichert.
-
Bei
der vorstehend erwähnten
Verarbeitung wird die Zuweisung so vorgenommen, wie beispielsweise
in den 2A und 2B dargestellt
ist. Darin sind zwei vernetzte logische Speichergeräte (T) 211 und 212 einem
logischen Volumen (T) 114 zugeordnet, das für diesen
Bereich gebildet ist, welcher zu einem Objekt des entfernten Kopierens
gemacht ist, auf das zwei logische Speichergeräte (S) 201 und 202 abgebildet
sind. Wie in dem dargestellten Beispiel können die logischen Speichergeräte (T) 210 an physikalisch
beabstandeten Positionen in den Speichergeräten (T) 113 angeordnet
werden.
-
Wenngleich
dies in den 2A und 2B nicht
dargestellt ist, können
sich die logischen Speichergeräte
(T) 210 an getrennten RAID-Gruppen (T) 215 befinden.
Nun speichert die Steuerung (T) 111 den Emulationstyp und
die Kapazität,
die von der Steuerung (S) 101 empfangen wurden, in den
Emulationsinformationen 303 der Informationstabelle 300 logischer
Volumen des logischen Volumens (T) 114.
-
Anschließend oder
in Schritt 411 informiert die Steuerung (T) 111 die
Steuerung (S) 101 über den
Abschluss der Verarbeitung. Die Steuerung (S) 101, die
von der Steuerung (T) 111 über den Abschluss der Verarbeitung
informiert wurde, arbeitet so, dass die Nummer des von der Steuerung
(T) 111 zugewiesenen logischen Volumens (T) 114 an
der Paarlogikvolumennummer 315 der Informationstabelle 310 logischer
Speichergeräte,
entsprechend einem logischen Speichergerät 200 unter Einschluss eines
Teils des zum Objekt des entfernten Kopierens gemachten Bereichs
gespeichert wird. Die Nummer des logischen Volumens (T) 114 kann
durch den Benutzer von außen
an die Steuerung (S) 101 übergeben werden. Wenn die Steuerung
(T) 111 andernfalls die Informationen über den Verarbeitungsabschluss übergibt,
kann die Steuerung (T) 111 die Steuerung (S) 101 gleichzeitig über die
Nummer des logischen Volumens (T) 114 informieren.
-
Wenn
die Fernkopierpaarerzeugung in Schritt 411 abgeschlossen
wird, arbeitet die Steuerung (S) 101 so, dass der zum Objekt
des entfernten Kopierens gemachte Bereich auf dem logischen Volumen
(S) 104 in das logische Volumen (T) 114 kopiert
wird, wobei der Paarzustand 307 der Informationstabelle 300 logischer
Volumen des logischen Volumens (S) 104 in einen Kopieausführungszustand versetzt
wird (Schritt 402). Insbesondere wird in Übereinstimmung
mit dem Wert des Kopierzeigers 306 ein unkopierter Bereich
in dem Bereich, der zum Objekt des entfernten Kopierens gemacht
ist, zur Steuerung (T) 111 des Speichersystems (T) 110 übertragen,
wobei eine logische Adresse dieses Bereichs zu einem Übertragungsziel
gemacht ist. Die Steuerung (T) 111 speichert alle Daten
in einem Speichergerät
(T) 113, auf das ein logisches Speichergerät (T) 210 abgebildet
ist, das mit der logischen Adresse des Übertragungsziels versehen ist.
Wenn das Kopieren fortschreitet, wird der Kopierzeiger 306 aktualisiert.
Zu einem Zeitpunkt, zu dem das Kopieren des zum Objekt des entfernten
Kopierens gemachten Bereichs abgeschlossen ist, wird der Paarzustand 307 der
Informationstabelle 300 logischer Informationen des logischen
Volumens (S) 104 in einen Duplexzustand versetzt.
-
Mit
dem vorstehend Erwähnten
ist die Fernkopierpaarerzeugungsverarbeitung abgeschlossen.
-
In
dem Fall, in dem, wenn ein Teilbereich des logischen Volumens (S) 104 bereits
zu einem Objekt des entfernten Kopierens gemacht wurde, der andere
Bereich desselben logischen Volumens (S) 104 neu zu einem
Objekt des entfernten Kopierens zu machen ist, wird eine Verarbeitung ähnlich jener,
die vorstehend erwähnt
wurde, ausgeführt,
so dass ein neues logisches Volumen (T) 114 für den neuen
Bereich zugeordnet wird, der zum Objekt des entfernten Kopierens
gemacht ist.
-
Bei
der vorstehend erwähnten
Verarbeitung kann der Fall auftreten, in dem die logischen Speichergeräte (T) 210 keinem
der Speichergeräte
(T) 113 zugeordnet werden können, auch wenn eine Anforderung
einer Fernkopierpaarerzeugung von der Steuerung (S) 101 vorgenommen
wird. Beispielsweise kann der Fall, in dem eine Kapazität, die einem
zu einem Objekt des entfernten Kopierens gemachten Bereich entspricht,
nicht existiert, oder der Fall, in dem ein bezeichneter Emulationstyp
noch nicht definiert worden ist, erwogen werden. In einem solchen Fall
informiert die Steuerung (T) 111 die Steuerung (S) 101 darüber, dass
es unmöglich
ist, eine Kopie zu erzeugen.
-
Vorstehend
wurde beschrieben, dass die Bezeichnung eines zu einem Objekt des
entfernten Kopierens gemachten Bereichs nur an die Steuerung (S) 101 übergeben
wird und die Steuerung (T) 111 dann von der Steuerung (S) 101 informiert
wird. Der Benutzer kann jedoch den zum Objekt des entfernten Kopierens
gemachten Bereich nicht nur der Steuerung (S) 101 sondern
auch der Steuerung (T) 111 mitteilen. Auch in diesem Fall
nimmt die Steuerung (T) 111 die Zuordnung eines logischen
Volumens 114 durch das vorstehend erwähnte Verfahren vor. Als ein
logisches Volumen (T) 114 eines Kopierziels kann der Benutzer
eine Nummer eines nicht verwendeten logischen Volumens (T) 114 in
dem Speichersystem (T) 110 sowohl der Steuerung (S) 101 als
auch der Steuerung (T) 111 mitteilen.
-
Bei
der vorstehend erwähnten
Verarbeitung werden nur die minimalen logischen Speichergeräte (T) 200,
die zum Speichern des zum Objekt des entfernten Kopierens gemachten
Bereichs benötigt
werden, dem logischen Volumen (T) 114 der Bezeichnung des
fernen Kopierens zugeordnet. Entsprechend den Umständen kann
jedoch der Fall auftreten, in dem es geeignet ist, eine dem logischen
Volumen (S) 104 entsprechende Kapazität zuzuweisen. Dieser Fall entspricht
beispielsweise dem Fall, in dem ein als ein Objekt des entfernten
Kopierens bezeichneter Bereich den größeren Teil des Bereichs des
logischen Volumens (S) 104 abdeckt, dem Fall, in dem eine
ausreichende Kapazität
in dem Speichersystem (T) 110 gewährleistet werden kann, oder
dergleichen. Wenn die dem logischen Volumen (S) 104 entsprechende
Kapazität
demgemäß dem logischen Volumen
(T) 114 zugewiesen wird, ist es möglich, den Aufwand bzw. die
Zeit für
eine Arbeit zur Zeit des Schaltens von der Primärstelle zur Sekundärstelle
zu verringern, wie später
beschrieben wird. Dementsprechend wird der Benutzer in die Lage
versetzt, die Bezeichnung in Bezug darauf vorzunehmen, ob nur eine
den minimalen logischen Speichergeräten (T) 210 entsprechende
Kapazität,
die für
den von der Steuerung (S) 101 bezeichneten Bereich als
Objekt des entfernten Kopierens benötigt wird, als die Kapazität des logischen
Volumens (T) 114 zugewiesen werden sollte, oder ob eine
dem logischen Volumen (S) 104 entsprechende Kapazität als die
Kapazität des
logischen Volumens (T) 114 gewährleistet werden sollte, und
die Steuerung (T) 111 gewährleistet die Kapazität des logischen
Volumens (T) 114 in Übereinstimmung
mit der Bezeichnung des Benutzers. Diese Bezeichnung des Benutzers
kann zur Steuerung (S) 101 übertragen werden, so dass die Steuerung
(T) 111 dann durch die Steuerung (S) informiert wird. Andernfalls
kann die Bezeichnung direkt zur Steuerung (T) 111 übertragen
werden.
-
(ii) Schreibverarbeitung
-
Als
nächstes
wird eine Schreibverarbeitung beschrieben. Diese Verarbeitung wird
zur Zeit des Schreibens von der CPU 120 in das Speichersystem (S) 100 ausgeführt. 5 zeigt
den Ablauf der Schreibverarbeitung.
-
Wenn
eine Anforderung zum Schreiben von der CPU 120 zum Speichersystem
(S) 100 empfangen wird (Schritt 500), schreibt
die Steuerung (S) 101 die von der CPU (S) 120 übertragenen
Schreibdaten in den Cache-Speicher der Steuerung (S) 101 (Schritt 501).
Anschließend
wird der Bezug auf die Informationstabelle 300 logischer
Volumen und die Informationstabelle 310 logischer Speichergeräte vorgenommen,
so dass die Schreibdaten in ein Speichergerät (S) 103 geschrieben
werden, das einer logischen Adresse entspricht.
-
Falls
als nächstes
oder in Schritt 502 die von der CPU (S) 102 empfangene
Schreibanforderung eine Schreibanforderung für ein logisches Volumen ist,
für das
die Definition "KOPIERURSPRUNG" als die Original/Kopie-Informationen 304 der
Informationstabelle 300 logischer Volumen vorgenommen ist, wird
beurteilt, ob diese Schreibanforderung das Schreiben in einen Bereich
ist, der zu einem Objekt des entfernten Kopierens gemacht ist. Insbesondere wird
eine Nummer eines logischen Speichergeräts, einschließlich eines
Bereichs, worauf zuzugreifen ist, weiter anhand der Informationstabelle 300 logischer Volumen
bestimmt, so dass die Untersuchung auf der Grundlage der Kopievorhandenseins-/Nichtvorhandenseinsinformationen 302 der
Informationstabelle 300 logischer Volumen in Bezug darauf
vorgenommen wird, ob das entsprechende logische Speichergerät (S) 200 einen
Teil des zum Objekt des entfernten Kopierens gemachten Bereichs
aufweist.
-
Falls
das entsprechende logische Speichergerät (S) 200 einen Teil
des zum Objekt des entfernten Kopierens gemachten Bereichs aufweist,
wird die Untersuchung auf der Grundlage des Kopieradressbereichs 305 in
Bezug darauf vorgenommen, ob der Bereich, auf den die CPU (S) 120 zugreift,
in dem Bereich enthalten ist, der zum Objekt des entfernten Kopierens
gemacht ist. Falls der Bereich, auf den die CPU (S) 120 zugreift,
in dem Bereich enthalten ist, der zum Objekt des entfernten Kopierens
gemacht ist, werden die Schreibdaten über den Zwischensteuerungsweg 160 auf
der Grundlage eines vorbestimmten Protokolls zur Steuerung (T) 111 übertragen (Schritt 503).
Insbesondere geschieht das Schreiben von der Steuerung (S) 101 für ein durch
die Steuerung (T) 111 definiertes logisches Volumen (T) 114. Eine
Steuergerätenummer
und eine Nummer eines logischen Volumens des Schreibziels sind in
der Informationstabelle 310 logischer Speichergeräte der Steuerung
(S) 101 aufgezeichnet. Weil ein tatsächliches Beispiel des vorbestimmten
Protokolls beispielsweise im Fall eines Hauptrechners ein CKD-Protokoll
und im Fall eines offenen Systems ein Faserkanalprotokoll aufweist,
werden diese Protokolle verwendet. Eine Adresse für das Schreiben
von der Steuerung (S) 101 zur Steuerung (T) 111 gleicht einer
Adresse für
das Schreiben von der CPU 120 zum logischen Volumen (S) 104.
-
Andererseits
informiert die Steuerung (T) 111 die Steuerung (S) 101 über den
Abschluss des Schreibens (Schritt 511) zu einem Zeitpunkt,
zu dem die von der Steuerung (S) 101 empfangenen Schreibdaten
im Cache gespeichert sind (Schritt 510). Anschließend wird
auf die Informationstabelle 300 logischer Volumen und die
Informationstabelle 310 logischer Speichergeräte Bezug
genommen, um das Schreiben zu einem Speichergerät (T) 113 auszuführen, das
einer logischen Adresse entspricht. Die Steuerung (S) 101,
die von der Steuerung (T) 111 über den Abschluss des Schreibens informiert
wurde, informiert die CPU 120 über den Abschluss des Schreibens
(Schritt 504), wodurch die Schreibverarbeitung abgeschlossen
wird. Eine solche Schreibverarbeitung wird auch ausgeführt, wenn
ein Kopierpaar erzeugt wird. Insbesondere wird anhand der Kopievorhandenseins-/Nichtvorhandenseinsinformationen 302 und
des Kopierzeigers 306 beurteilt, ob ein zum Zugriffsobjekt
gemachter Bereich bereits kopiert wurde, und Schreibdaten werden
zur Steuerung (T) 111 übertragen,
wenn der Bereich bereits dem Kopieren unterzogen wurde. Auch in
dem Fall, in dem die Schreibanforderung von der CPU 120 das
Schreiben in einen anderen Bereich als den zum Objekt des entfernten
Kopierens gemachten Bereich ist (Schritt 502), geht der
Fluss zu Schritt 504, wo die CPU 120 über den
Abschluss des Schreibens informiert wird, wodurch die Schreibverarbeitung
abgeschlossen wird.
-
(iii) Verarbeitung zum Schalten des Betriebs
vom
-
Speichersystem
(S) 100 zum Speichersystem (T) 110 Diese Verarbeitung
wird in dem Fall ausgeführt,
in dem die Verwendung des Speichersystems (S) 100 infolge
eines Desasters oder dergleichen unmöglich wird.
-
Wenn
die Verwendung des Speichersystems (S) 100 unmöglich wird,
ist es notwendig, dass die Sekundärstelle den Dienst übernimmt.
Zu diesem Zweck wird eine CPU 140 zuerst mit dem Speichersystem
(T) 110 verbunden. Falls möglich, wird die CPU (S) 120,
die mit dem Speichersystem (S) 100 verbunden wurde, als
die zu verbindende CPU 140 verwendet. Falls die Verbindung
der CPU (S) 120 unmöglich
ist und eine CPU (T) 140 bereits existiert hat, kann diese
CPU (T) 140 verwendet werden. Auch kann, falls erforderlich,
eine neue CPU (T) 140 installiert und verbunden werden.
-
In
der vorliegenden Verarbeitung wird der Inhalt der Informationstabelle 300 logischer
Volumen des logischen Volumens (S) 114, der in der Steuerung
(T) 111 gespeichert ist, zuerst in Schritt 601 erhalten,
wie in 6 dargestellt ist. Insbesondere
wird der Inhalt der Informationstabelle 300 logischer Volumen
von der CPU (T) 140 oder von einem SVP oder dergleichen,
der mit der Steuerung (T) 111 verbunden ist, gelesen. Der
Inhalt der Informationstabelle 300 logischer Volumen umfasst
die Kapazität
des logischen Volumens (T) 114, die Kapazität des logischen
Volumens (S) 104, den Fernkopier-Adressbereich, den Emulationstyp
usw.
-
Wie
zuvor erwähnt
wurde, hat das logische Volumen (T) 114 nur eine Kopie
eines Teilbereichs des logischen Volumens (S) 104. Daher
ist es erforderlich, dass das logische Volumen (T) auf der Grundlage
der Informationstabelle 300 logischer Volumen des logischen
Volumens (T) 114 in einen physikalisch und logisch widerspruchsfreien
Zustand und in einen verwendbaren Zustand überführt wird. Für den physikalisch widerspruchsfreien
Zustand wird die Kapazität
des logischen Volumens (T) 114 gleich der Kapazität des logischen
Volumens (S) 104 gemacht. Für den logisch widerspruchsfreien
Zustand werden Datensatz- und Dateiverwaltungsinformationen, wie
VTOC- oder i-Knoten-Informationen, verwendet, um Datensatz- und Dateiverwaltungsinformationen
zu löschen,
die nicht in dem logischen Volumen (T) 114 existieren.
Diese Verarbeitungen werden nachfolgend beschrieben.
-
Zuerst
wird ein Verfahren beschrieben, um die Kapazität des logischen Volumens (S) 104 und die
Kapazität
des logischen Volumens (T) 114 aneinander anzugleichen.
-
Diese
Verarbeitung ist nur dann erforderlich, wenn es einen Unterschied
zwischen der Kapazität des
logischen Volumens (S) 104 und der Kapazität des logischen
Volumens (T) 114 gibt. Auch wird diese Verarbeitung ansprechend
auf eine Benutzeranforderung ausgeführt.
-
Nun
weist der Benutzer die Steuerung (T) 111 an, die Kapazität des logischen
Volumens (T) 114 nach Bedarf zu erweitern (Schritt 602).
Die Steuerung (T) 111 erhält zuerst eine Differenz zwischen
der Kapazität
des logischen Volumens (S) und der Kapazität des logischen Volumens (T).
Insbesondere werden der Emulationstyp und die Kapazität des logischen
Volumens (S) 104 von der Informationstabelle 300 logischer
Volumen des logischen Volumens (T) 114 erhalten. Ferner
wird auf der Grundlage der Informationstabelle 300 logischer
Volumen des logischen Volumens (T) 114 die Kapazität des logischen
Volumens (T) 114 anhand der Anzahl und der Kapazität der logischen
Speichergeräte 210,
die dem logischen Volumen (T) 114 zugewiesen sind, erhalten.
-
Die
CPU (T) 140 oder der SVP weist die Steuerung (T) 111 an,
logische Speichergeräte 210 mit
einer Kapazität,
die der Kapazitätsdifferenz
entspricht, zuzuordnen.
-
Die
angewiesene Steuerung (T) 111 sucht nach logischen Speichergeräten 210 in
nicht verwendeten Zuständen,
um logische Speichergeräte 210 zuzuordnen,
die der bezeichneten Kapazität
entsprechen. An dieser Stelle sei bemerkt, dass das Spurformat des
zugeordneten logischen Speichergeräts 210 mit dem Emulationstyp
vereinbar sein muss. Für
diese Anforderung ist es notwendig, dass das nicht verwendete logische
Speichergerät 210 vorab
formatiert wird. Auch ist es in dem Fall, in dem kein nicht verwendetes
logisches Speichergerät 210 existiert,
notwendig, diesem Rechnung zu tragen, beispielsweise indem zusätzlich Speichergeräte 113 installiert
werden.
-
Als
nächstes
werden logische Adressen, die auf dem logischen Volumen (S) 104 existiert
haben, diesen neu zugeordneten logischen Speichergeräten 210 zugeordnet.
Insbesondere wird ein Adressbereich unter Ausschluss eines Adressbereichs,
der bereits zugeordnet wurde (d. h. ein Adressbereich in einem zu
einem Objekt des entfernten Kopierens gemachten Bereich) der Reihenfolge
nach abgebildet. Beispielsweise werden in dem Fall, in dem der Bereich
von 2n bis 3n – 1
in den logischen Adressen 0 bis 4n – 1 in dem logischen Volumen
(S) 104 der zum Objekt des entfernten Kopierens gemachte
Bereich ist, zwei logische Speichergeräte 210 neu zugewiesen
(wobei ihre logischen Speichergerätenummern auf i und j gesetzt
sind), so dass logische Adressen 0 bis 2n – 1 dem mit i nummerierten
logischen Speichergerät 210 zugewiesen
werden und logische Adressen 3n bis 4n – 1 dem mit j nummerierten
logischen Speichergerät 210 zugewiesen
werden.
-
Die
Nummer und der Logikadressbereich des neu zugewiesenen logischen
Speichers 210 werden in der Nummer 301 des logischen
Speichergeräts
und dem Kopieradressbereich 305 der Informationstabelle 300 logischer
Volumen gespeichert.
-
Es
kann der Fall auftreten, in dem mehrere logische Volumen (T) 114 für ein logisches
Volumen (S) 104 existieren. Wie bereits zuvor beschrieben wurde,
entspricht dieser Fall dem Fall, in dem ein anderer Bereich, der
zu einem Objekt des entfernten Kopierens gemacht ist, neu zu einem
logischen Volumen (S) 104 hinzugefügt ist, in dem ein zu einem
Objekt des entfernten Kopierens gemachter Bereich bereits existiert
hat. In einem solchen Fall werden logische Speichergeräte (T) 210,
die einem durch Subtrahieren des Gesamtwerts der Kapazitäten aller
logischer Volumen (T) 114 von der Kapazität des logischen
Volumens (S) 104 erhaltenen Wert entsprechen, einem logischen
Volumen (T) 114 neu zugewiesen und logische Adressen angewendet,
die nicht auf alle logischen Volumen (T) 114 abgebildet
sind, aber auf dem logischen Volumen (S) 104 bereits existiert
haben.
-
Auch
wird ein logisches Volumen (T) 114 durch eine Ansammlung
der logischen Speichergeräte
(T) 210 gebildet, die allen logischen Volumen (T) 114 zugeordnet
sind, und ihm wird eine Nummer zugewiesen. Die Nummer des logischen
Volumens, die zuzuweisen ist, kann eine der Nummern logischer Volumen
sein, die bisher für
die logischen Volumen (T) 114 verwendet wurden, oder sie
kann von außen durch
den Benutzer angegeben werden.
-
Wenn
die Erweiterung des logischen Volumens (T) 114 auf diese
Weise abgeschlossen ist, ändert
der Benutzer die Dateiverwaltungsinformationen (Schritt 603).
Dies wird ausgeführt,
um Datensatz- und Dateiverwaltungsinformationen logisch widerspruchsfrei
zu machen. Im Allgemeinen umfassen die Dateiverwaltungsinformationen
Nummern logischer Volumen, die Namen gespeicherter Datensätze und
Dateien, Adressen in logischen Volumen usw. Die Änderung der Dateiverwaltungsinformationen wird
ausgeführt,
indem jene Informationen von Datensätzen und Dateien gelöscht werden,
die in den Dateiverwaltungsinformationen gespeichert sind, welche
nicht in dem Bereich enthalten sind, der zum Objekt des Kopierens
gemacht ist (oder die in einem anderen Bereich als dem zum Objekt
des Kopierens gemachten Bereich enthalten sind), wodurch eine Definitionsänderung
vorgenommen wird, so dass der andere Bereich zu einem nicht verwendeten
Bereich gemacht wird.
-
Insbesondere
werden Adressen außerhalb des
zum Objekt des entfernten Kopierens gemachten Bereichs zuerst auf
der Grundlage des Kopieradressbereichs 305 der in der Steuerung
(T) 111 gehaltenen Informationstabelle 300 logischer
Volumen bestimmt. Als nächstes
werden die Dateiverwaltungsinformationen auf Datensätze und
Dateien durchsucht, die in einem anderen Bereich als dem zum Objekt
des entfernten Kopierens gemachten Bereich enthalten sind. Falls
solche Datensätze
und Dateien existieren, werden ihre Verwaltungsinformationen gelöscht, so
dass der andere Bereich zu einem nicht verwendeten Bereich gemacht
wird, wodurch die Dateiverwaltungsinformationen aktualisiert werden.
-
Genau
gesagt, wird die CPU 140 veranlasst, ein Hilfsprogramm
mit der vorstehend erwähnten Funktion
auszuführen.
Wenn die vorstehend erwähnte
Verarbeitung abgeschlossen ist, wird der Dienst an der Sekundärstelle
in Schritt 604 neu gestartet.
-
Vorstehend
wurde die erste Ausführungsform
der vorliegenden Erfindung beschrieben.
-
Die
vorstehende Beschreibung wurde unter der Annahme gegeben, dass die
Kapazitäten
logischer Speichergeräte
in jedem Speichersystem zueinander gleich sind. In jedem Speichersystem
können
die Kapazitäten
logischer Speichergeräte
jedoch voneinander verschieden gemacht werden. In diesem Fall ist
es notwendig, dass die vorstehende Verarbeitung unter Berücksichtigung
der Kapazitäten der
individuellen logischen Speichergeräte ausgeführt wird.
-
Als
nächstes
wird eine zweite Ausführungsform
der vorliegenden Erfindung beschrieben.
-
II. Zweite Ausführungsform
-
Gemäß der zweiten
Ausführungsform
wird ein migratorisches Kopieren ausgeführt, bei dem Daten zwischen
neuen und alten Speichersystemen migrieren.
-
Die
Beschreibung wird nun unter der Annahme gegeben, dass das migratorische
Kopieren von einem Speichersystem 1100 zu einem Speichersystem 1000 ausgeführt wird,
wie in 7 dargestellt ist. Das Speichersystem 1000,
das als ein Kopierziel dient, hat eine Steuerung 1010 und
Speichergeräte 1030,
und das Speichersystem 1100, das als ein Kopierursprung
dient, hat eine Steuerung 1110 und Speichergeräte 1130.
-
Nachfolgend
werden das als der Kopierursprung dienende Speichersystem 1100 und
seine Bestandteile mit (S) bezeichnet und das als das Kopierziel
dienende Speichersystem 1000 und seine Bestandteile mit
(T) bezeichnet.
-
An
einer Anfangsstufe wird in dem Fall, in dem das migratorische Kopieren
auszuführen
ist, eine CPU 1200 in einen Zustand versetzt, in dem sie mit
dem Speichersystem (S) 1100, d. h. dem Speichersystem,
das als der Datenmigrations-Kopierursprung
dient, verbunden ist. Das neue Speichersystem (T) 1000 wird
darin übertragen,
und der Verbindungsweg von der CPU 1200 zum Speichersystem (S) 1100 wird
geändert,
so dass die Verbindung zu dem Speichersystem (T) 1000 beeinflusst
wird. Auch werden die Steuerung (T) 1010 und die Steuerung (S) 1110 mit
einem Zwischensteuerungsweg 1600 verbunden. Dieser Zustand
ist in 7 dargestellt. Wie das in Zusammenhang
mit der vorstehend erwähnten
ersten Ausführungsform
dargestellte Speichersystem 100 ist das Speichersystem
(T) 1000 ein Speichersystem, in dem die Steuerung (T) 1010 ein logisches
Volumen (T) 104 durch logische Speichergeräte 200 verwaltet,
die in Zusammenhang mit der ersten Ausführungsform beschrieben und
dargestellt sind, und Informationstabellen 300 logischer
Volumen und Informationstabellen 310 logischer Speichergeräte (siehe 3)
darin hält.
Andererseits braucht die Steuerung (S) 1110 des Speichersystems (S) 1100 diese
Tabellen nicht zu halten. Dementsprechend kann das als der Kopierursprung
dienende Speichersystem das herkömmliche
Speichersystem sein.
-
8 zeigt
den Verarbeitungsablauf für
ein migratorisches Kopieren.
-
Zu
Beginn existieren in dem Speichersystem (T) 1000 keine
Daten, die zu einem Objekt eines Zugriffs durch die CPU 1200 gemacht
sind, sie existieren jedoch im Speichersystem (S) 1100.
Ungültige Daten
sind im Speichersystem (T) 1000 gespeichert. Zuerst bezeichnet
in einem solchen Zustand ein Benutzer Parameter in der Art der Nummer
des logischen Volumens, des Emulationstyps und der Kapazität eines
logischen Volumens 104 für die Steuerung (T) 1000 und
weist die Steuerung (T) 1010 an, das logische Volumen (T) 104 zuzuweisen
(Schritt 701). In Schritt 710 weist die Steuerung
(T) 1010 das logische Volumen (T) 104 entsprechend
dem Befehl des Benutzers zu. Insbesondere werden logische Speichergeräte 200 in
nicht verwendeten Zuständen
zugewiesen, um eine Kapazität,
die größer oder
gleich der Kapazität
des bezeichneten logischen Volumens ist, bereitzustellen, und die
Nummern der Speichergeräte
davon werden in Übereinstimmung
mit der Zuweisungsreihenfolge in den Nummern 301 der logischen Speichergeräte der Informationstabelle 300 logischer Volumen
gespeichert. Schließlich
werden der bezeichnete Emulationstyp und die Kapazität in den Emulationsinformationen 303 gespeichert,
wodurch die Zuweisung des logischen Volumens (T) 104 abgeschlossen
wird. Zu dieser Zeit wird angenommen, dass der Benutzer die Kapazität des logischen
Volumens (T) 104 bezeichnen kann. Dementsprechend ist es
möglich,
ein logisches Volumen (T) 104 mit einer beliebigen Kapazität zu bilden,
welches einen zu einem Objekt des Kopierens gemachten Bereich aufweist.
-
Wenn
die Zuweisung des logischen Volumens (T) 104 abgeschlossen
ist, ändert
der Benutzer Dateiverwaltungsinformationen eines logischen Volumens
(S) 114 des Kopierursprungs (Schritt 702). Insbesondere
werden die Dateiverwaltungsinformationen auf Datensätze und
Dateien durchsucht, die in einem anderen Bereich als dem zum Objekt
des migratorischen Kopierens gemachten Bereich enthalten sind, so
dass Verwaltungsinformationen der herausgesuchten Datensätze und
Dateien gelöscht
werden.
-
Anschließend oder
in Schritt 703 wird das logische Volumen (S) 114 des
Kopierursprungs in einen von der CPU 1200 getrennten Off-line-Zustand versetzt,
so dass darauf nicht zugegriffen werden kann. Anschließend oder
in Schritt 704 wird die Steuerung (T) 1010 angewiesen,
ein migratorisches Kopieren mit mindestens einer Steuerungsnummer
und einer Nummer eines logischen Volumens des Kopierursprungs, einer
Nummer eines logischen Volumens des Ziels des migratorischen Kopierens
und einem Bereich des Objekts des migratorischen Kopierens als Parameter
auszuführen.
-
Wenn
die Anweisung für
den Beginn des migratorischen Kopierens empfangen wird, leitet die Steuerung
(T) 1010 das migratorische Kopieren von dem bezeichneten
Bereich des bezeichneten logischen Volumens (S) 114 des
Speichersystems (S) 1100 ein (Schritt 711). Vor
dem migratorischen Kopieren wird der Kopierzeiger 306 der
Informationstabelle 300 logischer Volumen zuerst initialisiert,
d. h. eine führende
Adresse des zum Objekt des migratorischen Kopierens gemachten Bereichs
wird im Kopierzeiger 306 gespeichert. "MIGRATORISCHE KOPIE VORHANDEN" wird in den Kopievorhandenseins-/Nichtvorhandenseinsinformationen 302 für ein logisches
Speichergerät 200,
einschließlich
eines Teils des Bereichs, der zum Objekt des migratorischen Kopierens
gemacht ist, gespeichert. Auch wird der Kopieradressbereich 305 für jene logische Adressen
des Bereichs des Objekts des migratorischen Kopierens gespeichert,
die in einem Logikadressbereich enthalten sind, der auf das entsprechende
logische Speicher gerät 200 abgebildet
ist. Beispielsweise werden, vorausgesetzt, dass logische Adressen
m (0 < m < k – 1) bis
n (k – 1 < n) für den zum
Objekt des migratorischen Kopierens gemachten Bereich bezeichnet
sind, die logischen Adressen m bis k – 1 in dem Kopieradressbereich 305 eines
logischen Speichergeräts
(T) 200 gespeichert, worauf die logischen Adressen 0 bis
k – 1
abgebildet sind. Anschließend
wird der Paarzustand 307 der Informationstabelle 300 logischer
Volumen in einen Migratorisches-Kopieren-Ausführungszustand versetzt. Auch
werden die bezeichnete Steuerungsnummer und die Logikvolumennummer
in der Paarsteuerungsnummer 314 und der Paarlogikvolumennummer 315 der
Informationstabelle 310 logischer Speichergeräte gespeichert.
-
Wenn
die vorstehend erwähnte
Verarbeitung abgeschlossen ist, leitet die Steuerung (T) 1010 das Kopieren
des zum Objekt des migratorischen Kopierens gemachten Bereichs ein.
Die Steuerung (T) 1010 liest Daten von einem vorbestimmten
Bereich des logischen Volumens (S) 114 in einer Reihenfolge vom
Anfang des bezeichneten Bereichs entsprechend dem Wert des Kopierzeigers
und schreibt die Daten in ein Speichergerät (T) 1030, das ein
der gelesenen logischen Adresse entsprechendes logisches Speichergerät (T) 200 bildet.
Die Kopievorhandenseins-/Nichtvorhandenseinsinformationen 302 in der
Informationstabelle 300 logischer Volumen, die dem logischen
Speichergerät
(T) 200, dessen Kopie abgeschlossen ist, entspricht, werden
zu "KOPIE NICHT
VORHANDEN" gemacht.
Wenn die Kopie des gesamten Bereichs schließlich abgeschlossen ist, wird
der Paarzustand zu einem Simplexzustand gemacht, wodurch das migratorische
Kopieren abgeschlossen wird.
-
Nach
der Anweisung zum migratorischen Kopieren bringt der Benutzer die
Daten des logischen Zielvolumens (T) 104 für das migratorische
Kopieren des Speichersystems (T) 1000 in einen Online-Zustand
für die
CPU 1200, um den Dienst wiedereinzuleiten (Schritt 705).
Nach dem Wiedereinleiten des Diensts wird die CPU 1200 in
die Lage versetzt, eine Ein- /Ausgabeanforderung
an das Speichersystem (T) 1000 auszugeben.
-
In
dem Fall, in dem eine Anforderung zur Ein-/Ausgabe für einen
Bereich, der noch nicht dem Kopieren unterzogen wurde, von der CPU 1200 an das
Speichersystem (T) 1000 ausgegeben wird, wird die folgende
Verarbeitung ausgeführt.
-
Insbesondere
verwendet die Steuerung (T) 1010 die Kopievorhandenseins-/Nichtvorhandenseinsinformationen 302,
den Kopieradressbereich 305, den Paarzustand 307 und
den Kopierzeiger 306, um zu untersuchen, ob eine Zugriffsadresse von
der CPU 1200 in einen Bereich fällt, der noch nicht dem Kopieren
unterzogen wurde. Falls dies der Fall ist, liest die Steuerung (T) 1010 die
entsprechenden Daten aus dem Speichersystem (S) 1100, um
sie in einem Cache-Speicher der Steuerung (T) 1010 zu speichern,
und behandelt den Zugriff von der CPU 1200 unter Verwendung
der gespeicherten Daten.
-
Vorstehend
wurde die zweite Ausführungsform
der vorliegenden Erfindung beschrieben.
-
Auch
in der zweiten Ausführungsform
wurde die Beschreibung unter der Annahme gegeben, dass die Kapazitäten logischer
Speichergeräte
in jedem Speichersystem einander gleich sind. In jedem Speichersystem
können
die Kapazitäten
logischer Speichergeräte
jedoch voneinander verschieden gemacht werden. In diesem Fall ist
es notwendig, dass die vorstehende Verarbeitung unter Berücksichtigung der
Kapazitäten
der individuellen logischen Speichergeräte ausgeführt wird.
-
Als
nächstes
wird eine dritte Ausführungsform
der vorliegenden Erfindung beschrieben.
-
III. Dritte Ausführungsform
-
Gemäß der dritten
Ausführungsform
wird ein logisches Volumen auf mehreren RAID-Gruppen verteilt angeordnet/umgeordnet.
-
9 zeigt
die Konstruktion eines Speichersystems gemäß der dritten Ausführungsform.
-
Wie
dargestellt, hat ein Speichersystem 1001 gemäß der vorliegenden
Ausführungsform
eine Steuerung 1011 und mehrere Speichervorrichtungen 1031,
welche mehrere RAID-Gruppen 205 bilden. Das Speichersystem 1001 ist
mit einer CPU 1201 verbunden.
-
Wie
das in Zusammenhang mit der vorstehend erwähnten ersten Ausführungsform
dargestellte Speichersystem 100 ist das Speichersystem 1001 ein
Speichersystem, in dem die Steuerung 1011 ein logisches
Volumen 104 durch logische Speichergeräte 200 verwaltet,
die in Zusammenhang mit der ersten Ausführungsform beschrieben und
dargestellt sind, und Informationstabellen 300 logischer
Volumen und Informationstabellen 310 logischer Speichergeräte (siehe 3)
darin hält.
-
Wie
vorstehend erwähnt
wurde, werden die logischen Speichergeräte 200 erhalten, indem
für jede
der RAID-Gruppen 205 der Adressraum dieser RAID-Gruppe
durch jede feste Länge
dividiert wird. Dementsprechend ist ein logisches Speichergerät 200 sicher
ein Teil des Adressraums einer RAID-Gruppe 205 und erstreckt
sich nie über
die Adressräume
mehrerer RAID-Gruppen 205. Gemäß der vorliegenden Ausführungsform
wird ein logisches Speichergerät 200,
das ein logisches Volumen 104 bildet, aus einer RAID-Gruppe 205 ausgewählt, wodurch
es ermöglicht
wird, ein logisches Volumen für jeden
Bereich des Volumens auf jeder RAID-Gruppe anzuordnen. Die Einzelheiten
werden nun beschrieben.
-
Bei
der Bildung eines bestimmten logischen Volumens 104 bezeichnet
ein Benutzer mindestens eine logische Volumennummer, einen Bereich
des logischen Volumens 104 und eine Nummer einer RAID-Gruppe 205,
worin dieser Bereich zu speichern ist. Die Bezeichnung des Benutzers
wird der Steuerung 1011 zugeführt. Nach dem Empfang der Bezeichnung
weist die Steuerung 1011 nicht verwendete logische Speichergeräte 200 von
der bezeichneten RAID-Gruppe 205 zu, um eine Kapazität bereitzustellen,
die größer oder
gleich der Kapazität
des bezeichneten Bereichs ist, und sie bildet einen Logikadressbereich,
einschließlich
des bezeichneten Bereichs, auf die zugewiesenen logischen Speichergeräte 200 ab.
Falls die nicht verwendeten logischen Speichergeräte 200 nicht
existieren, informiert die Steuerung 1011 den Benutzer
darüber,
dass die Zuweisung nicht möglich
ist.
-
Nummern
der zugewiesenen logischen Speichergeräte 200 werden in den
Nummern 301 logischer Speichergeräte der Informationstabelle 300 logischer
Volumen entsprechend der Reihenfolge der Zuweisung gespeichert.
Anschließend
informiert die Steuerung 1011 den Benutzer über den
Logikadressbereich, der auf die zugewiesenen logischen Speichergeräte 200 abgebildet
wurde. Dadurch wird der Benutzer in die Lage versetzt, den nächsten Bereich in
Bezug auf den mitgeteilten Logikadressbereich zu bezeichnen, so
dass keine Überlappung
von Bereichen erzeugt wird.
-
Falls
das logische Volumen 104 bereits betrieben wurde, so dass
gültige
Daten in dem bezeichneten Bereich gespeichert sind, ist es notwendig,
logische Speichergeräte 200,
in denen die gültigen
Daten gespeichert sind, umzuordnen. Für diese Umordnung ist es notwendig,
dass nicht nur die Abbildung logischer Adressen der logischen Speichergeräte 200 geändert wird,
sondern dass auch Daten von logischen Speichergeräten, in
denen sich gültige
Daten befinden, in neu zugewiesene logische Speichergeräte 200 kopiert
werden. Insbesondere existiert in dem Fall, in dem das logische
Volumen 104 bereits gültige
Daten gehalten hat, die entsprechende Tabelle 300 logischer
Volumen. Auf diese Weise speichert die Steuerung 1011 nach
dem Zuweisen logischer Speichergeräte 200 des Kopierziels
von der bezeichneten RAID-Gruppe 205 die Nummer des logischen Speichergeräts 200 des
Kopierziels in der Paarlogikvolumennummer 315 einer Informationstabelle 310 logischer
Speichergeräte
eines logischen Speichergeräts 200 des
Kopierursprungs und gibt "KOPIE VORHANDEN" in die Kopievorhandenseins-/Nichtvorhandenseinsinformationen 302 für das logische Speichergerät 200 des
Kopierursprungs in der Informationstabelle 300 logischer
Volumen ein. Dieser Vorgang wird für alle logischen Speichergeräte 200 des
Kopierziels ausgeführt.
Schließlich
wird der Kopierzeiger 306 initialisiert oder auf die Adresse
0 gesetzt, um das Kopieren von der führenden Adresse eines führenden
logischen Speichergeräts 200 des Kopierursprungs
einzuleiten, und der Paarzustand 307 wird in einen Kopieausführungszustand
versetzt, um das Kopieren einzuleiten. Wenn das Kopieren in Bezug
auf ein bestimmtes logisches Speichergerät 200 abgeschlossen
ist, wird die in der Informationstabelle 300 logischer
Volumen registrierte Nummer 301 des logischen Speichergeräts des Kopierursprungs zu
einer Nummer eines logischen Speichergeräts des Kopierziels umgeschrieben,
die in der Paarlogikvolumennummer 315 der Informationstabelle 310 logischer
Speichergeräte
des logischen Speichergeräts 200 des
Kopierursprungs gespeichert wird, und die Kopievorhandenseins-/Nichtvorhandenseinsinformationen 302 in
einem Eintrag mit dieser Nummer des logischen Speichergeräts werden
auf "KOPIE NICHT
VORHANDEN" gesetzt.
Nun gibt es für
von der CPU 1201 gesendete Schreibdaten den Fall, in dem "KOPIE VORHANDEN" als die Kopievorhandenseins-/Nichtvorhandenseinsinformationen 302 in einer
Informationstabelle 300 logischer Volumen für ein logisches
Speichergerät 200 gesetzt
ist, worauf ein Schreibbereich in der Informationstabelle 300 logischer
Volumen abgebildet ist. In diesem Fall ist es notwendig, die Schreibdaten
folgendermaßen
in ein logisches Speichergerät 200 des
Kopierziels zu schreiben.
-
Insbesondere
wird die Untersuchung auf der Grundlage der Informationstabelle 300 logischer
Volumen, genauer gesagt der Kopievorhandenseins-/Nichtvorhandenseinsinformationen 302 für das logische
Speichergerät 200 mit
dem darauf abgebildeten Schreibbereich und dem Kopierzeiger 306 in
Bezug darauf getroffen, ob der Schreibbereich ein Bereich, der bereits
einem Kopieren unterzogen wurde, ein Bereich, der noch nicht einem
Kopieren unterzogen wurde, oder ein anderer Bereich als ein zu einem
Objekt des Kopierens gemachter Bereich ist. Falls der Schreibbereich
ein Bereich ist, der bereits dem Kopieren unterzogen wurde, werden
die Daten in ein logisches Speichergerät 200 des Kopierziels
geschrieben, das durch eine Nummer des logischen Speichergeräts des Kopierziels
angegeben ist, die in der Paarlogikvolumennummer 315 einer
Informationstabelle 310 logischer Speichergeräte für das logische
Speichergerät 200,
worauf der Schreibbereich abgebildet ist, gespeichert ist. Falls
der Schreibbereich ein Bereich, der noch nicht dem Kopieren unterzogen
wurde, oder ein anderer Bereich als ein zu einem Objekt des Kopierens
gemachter Bereich ist, werden die Schreibdaten in das logische Speichergerät 200 geschrieben,
auf das der Schreibbereich abgebildet ist.
-
Andererseits
werden in dem Fall, in dem es einen Lesezugriff von der CPU 1201 gibt,
Daten aus einem logischen Speichergerät 200 des Kopierziels gelesen,
falls ein Lesebereich oder ein dem Lesen zu unterziehender Bereich
ein Bereich ist, der bereits dem Kopieren unterzogen wurde, und
aus einem logischen Speichergerät 200 des
Kopierursprungs gelesen, falls der Lesebereich ein Bereich, der
noch nicht dem Kopieren unterzogen wurde, oder ein anderer Bereich
als ein zu einem Objekt des Kopierens gemachter Bereich ist. Während eine
Ein-/Ausgabeanforderung von der CPU 1201 auf diese Weise
verarbeitet wird, wird das Kopieren ausgeführt. Wenn das Kopieren für den gesamten
Bereich abgeschlossen ist, wird der Paarzustand in einen Simplexzustand
(oder einen Kopierpaar-Nichtvorhandenseinszustand) versetzt, wodurch
die Rekonstruktion des logischen Volumens 104 abgeschlossen
wird.
-
Vorstehend
wurde die dritte Ausführungsform
der vorliegenden Erfindung beschrieben.
-
Nachstehend
wird eine vierte Ausführungsform
der vorliegenden Erfindung beschrieben.
-
IV. Vierte Ausführungsform
-
Gemäß der vorstehend
erwähnten
dritten Ausführungsform
wurde ein logisches Volumen 104 entsprechend der Bezeichnung
einer Nummer eines logischen Volumens, eines Bereichs des logischen Volumens 104 und
einer Nummer einer RAID-Gruppe 205, in der dieser Bereich
zu speichern ist, durch den Benutzer umgeordnet. Gemäß der stattdessen vorgeschlagenen
vierten Ausführungsform
werden ein Zugriffsmuster und statistische Informationen in der
Art von Betriebsinformationen für
jedes logische Speichergerät 200 erhalten,
so dass ein logisches Volumen 104 automatisch oder manuell
anhand der Merkmale der erhaltenen Informationen umgeordnet wird.
Die Einzelheiten werden nun beschrieben.
-
Gemäß der vierten
Ausführungsform
werden die Leserate und die Schreibrate eines wahlfreien Zugriffs,
die Leserate und die Schreibrate eines sequenziellen Zugriffs, die
Verwendungsrate eines logischen Speichergeräts 200 usw. für jedes
logische Speichergerät 200 erhalten.
Diese statistischen Informationen werden bei einer bestimmten festen
Periode untersucht, um die optimale Anordnung logischer Speichergeräte 200 zu
berechnen. Ein Beispiel eines Verfahrens zum Bestimmen der optimalen
Anordnung umfasst das Bestimmen der Verwendungsrate jeder RAID-Gruppe 205 anhand
der Summe der Verwendungsraten logischer Speichergeräte 200,
welche diese RAID-Gruppe 205 bilden. Falls die Verwendungsraten
der jeweiligen RAID-Gruppen 205 eine große Dispersion
oder eine große
Differenz aufweisen, werden die logischen Speichergeräte 200 auf den
RAID-Gruppen 205 umgeordnet, so dass die Verwendungsraten
angeglichen werden.
-
Zu
dieser Zeit wird die Anordnung unter zusätzlicher Berücksichtigung
eines Zugriffsmusters bestimmt. Beispielsweise wird in dem Fall,
in dem häufig
ein zufälliger
Zugriff vorgenommen wird, das Verkürzen einer Antwortzeit wichtig.
Daher wird ein einem solchen Zugriff unterzogenes logisches Speichergerät in einer
RAID-Gruppe angeordnet, die durch schnelle Speichergeräte kleiner
Kapazität
gebildet ist und ein RAID-Niveau von RAID 1 aufweist. In dem Fall,
in dem ein sequenzieller Zugriff häufig ausgeführt wird, wird der Durchsatz
(oder die Anzahl der E/A-Verarbeitungen je Zeiteinheit) wichtig.
Daher wird ein einem solchen Zugriff unterzogenes logisches Speichergerät in einer
RAID-Gruppe angeordnet, die ein RAID-Niveau von RAID 5 aufweist.
Bei einer solchen Anordnung werden viele Speichergeräte gleichzeitig
betrieben, um den Durchsatz zu verbessern.
-
Eine
Verarbeitung zum Bestimmen der vorstehend erwähnten Umordnung kann durch
einen in der Steuerung 101 bereitgestellten Prozessor oder ein
externes Endgerät,
das mit der Steuerung 101 verbunden ist, ausgeführt werden.
-
Anschließend an
die Bestimmung der neuen Anordnung logischer Speichergeräte 200 wird
das Kopieren in ähnlicher
Weise wie gemäß der dritten Ausführungsform
ausgeführt,
so dass die Anordnung logischer Speichergeräte 200 tatsächlich geändert wird.
-
Vorstehend
wurde die vierte Ausführungsform
der vorliegenden Erfindung beschrieben.
-
Nachstehend
wird eine fünfte
Ausführungsform
der vorliegenden Erfindung beschrieben.
-
V. Fünfte
Ausführungsform
-
Weil
es gemäß der vorstehend
erwähnten ersten
Ausführungsform
notwendig ist, ein logisches Volumen 104 vorab in mehrere
logische Speichergeräte 200 zu
unterteilen, muss ein Speicherbereich zum Gewährleisten von Informationstabellen 310 logischer
Speichergeräte
größer sein,
wenn die Kapazität
des logischen Speichergeräts 200 verkleinert wird.
Hierdurch wird die Wirksamkeit in dem Fall beeinträchtigt,
in dem nur ein Teil des logischen Volumens 104 zu einem
Objekt des entfernten Kopierens gemacht ist.
-
Dementsprechend
wird gemäß der fünften Ausführungsform
ein entferntes Kopieren verwirklicht, bei dem das vorstehend erwähnte Problem
gelöst
ist.
-
Der
Aufbau eines Informationssystems gemäß der fünften Ausführungsform ähnelt jenem, der in 1 dargestellt
ist. Die fünfte
Ausführungsform unterscheidet
sich jedoch in der Hinsicht, dass die Steuerung (S) 101 und
die Steuerung (T) 111 an Stelle des logischen Volumens
und der Informationstabelle 300 logischer Volumen und der
Informationstabelle 310 logischer Speichergeräte, die
in 3 dargestellt sind, mit in den 10 und 11 dargestellten
Tabellen versehen sind. Die Einzelheiten werden nun beschrieben.
-
Zuerst
werden von der Steuerung (S) 101 gehaltene Tabellen beschrieben.
-
Die
Steuerung (S) 101 hält
Informationstabellen 800 logischer Volumen, RAID-Gruppenverwaltungstabellen 840,
Gruppentabellen 820 und Paarverwaltungstabellen 830,
wie in 10 dargestellt ist.
-
Die
Informationstabelle 800 logischer Volumen und die Gruppentabelle 820 sind
für jedes
logische Volumen bereitgestellt. Die RAID-Gruppenverwaltungstabelle 840 ist
für jede
RAID-Gruppe bereitgestellt. Nun wird gemäß der fünften Ausführungsform der Bereich des
logischen Volumens 104 in Gruppen gleicher Größe unterteilt,
und diese Gruppen werden sequenziell nummeriert. Beispielsweise wird
die Gruppierung im Fall eines offenen Systems in Bezug auf die Anzahl
der Blöcke
ausgeführt
und im Fall eines Hauptrechners in Bezug auf die Anzahl der Zylinder
oder die Anzahl der Spuren ausgeführt, und die Gruppen werden
in einer Sequenz von einer Gruppe, die eine führende Adresse aufweist, mit
0, 1, ... nummeriert.
-
Die
Informationstabelle 800 logischer Volumen besteht aus einer
RAID-Gruppennummer 801, welche eine Nummer einer ein logisches
Volumen 104 bildenden RAID-Gruppe 205 angibt,
einem Adressbereich 802, welcher einen Adressbereich des
logischen Volumens in der RAID-Gruppe 205 angibt, Emulationsinformationen 803,
Original/Kopie-Informationen 804 und einer Gruppentabellennummer 805.
-
Der
Adressbereich in der RAID-Gruppe 205 ist ein Adressbereich
auf Speichergeräten 103,
welche die RAID-Gruppe 205 bilden, d. h. eine führende Adresse
und die Anzahl der Blöcke.
Ein durch diesen Adressbereich angegebener Bereich bildet ein logisches
Volumen 104. Weil gemäß der fünften Ausführungsform ein
logisches Volumen 104 durch einen gemeinsamen Adressbereich
von Speichergeräten 103,
welche eine RAID-Gruppe bilden, definiert ist, werden eine führende Adresse
dieses gemeinsamen Adressbereichs und die Anzahl der Blöcke darin
in dem Adressbereich 802 gespeichert.
-
Die
Emulationsinformationen 803 und die Original/Kopie-Informationen 804 gleichen
den Emulationsinformationen 303 und den Original/Kopie-Informationen 304 (siehe 3),
welche in Zusammenhang mit der ersten Ausführungsform dargestellt sind.
Falls das entsprechende logische Volumen 104 zu einem Objekt
des Kopierens gemacht wird, wird "KOPIERURSPRUNG" in den Original/Kopie-Informationen 804 gespeichert.
In diesem bestimmten Fall wird der Wert der Gruppentabellennummer 805 gültig.
-
Die
Gruppentabellennummer 805 wird mit einer Nummer einer Gruppentabelle 820,
die dem logischen Volumen zugewiesen ist, gespeichert.
-
Die
RAID-Gruppen-Verwaltungstabelle 840 ist eine Tabelle zum
Zuordnen einer RAID-Gruppe 205 zu Speichergeräten 103.
Die Tabelle 840 besteht aus Speichergerätenummern 841, die
mit Nummern von Speichergeräten 103 gespeichert
sind, welche eine RAID-Gruppe 205 bilden, einem RAID-Niveau 842,
das mit dem RAID-Niveau der RAID-Gruppe gespeichert ist, und einem
Leeradressbereich 843, wodurch ein nicht verwendeter Bereich
der RAID-Gruppe 205 dargestellt ist.
-
Die
Gruppentabelle 820 ist eine Tabelle, durch die jede der
Gruppen eines logischen Volumens 104, dem diese Gruppentabelle 820 zugewiesen
ist, einer Paarverwaltungstabelle 830 zugeordnet ist, die
ein logisches Volumen 114 eines Kopierziels dieser Gruppe
verwaltet. Die Tabelle 820 speichert eine Paarverwaltungstabellennummer 821,
die jeder Gruppe zugeordnet ist. Indem ein Zugriff auf die Gruppentabelle 820 vorgenommen
wird, wobei eine Gruppennummer als ein Index genommen wird, ist
es möglich,
eine Paarverwaltungstabellennummer der entsprechenden Gruppe zu
kennen.
-
Die
Paarverwaltungstabelle 830 ist eine Tabelle zum Zuordnen
eines logischen Volumens 104 des Kopierursprungs zu einem
logischen Volumen 114 eines Kopierziels. Die Tabelle 830 besteht
aus einer Nummer 831 einer Steuerung der entgegengesetzten
Seite, die mit einer Nummer einer Kopierzielsteuerung (T) 111 gespeichert
ist, einer Nummer 832 eines logischen Volumens der entgegengesetzten Seite,
die mit einer Nummer eines logischen Volumens (T) 114 eines
Kopierzielspeichersystems (T) 110 gespeichert ist, einer
Nummer 833 eines logischen Volumens der eigenen Seite,
die mit einer Nummer eines logischen Volumens (S) 104 des
Kopierursprungs gespeichert ist, einer führenden Adresse 834 eines
Kopierursprungs und einer letzten Adresse 835 eines Kopierursprungs,
die mit einer führenden
und einer letzten Adresse des logischen Volumens (S) 104 gespeichert
sind, welche zu einem Objekt des Kopierens gemacht sind, einem Paarzustand 836,
wodurch der Zustand eines Kopierpaars angegeben ist, und einem Kopierzeiger 837,
wodurch der Fortschritt des Kopierens dargestellt wird.
-
Die
Gruppentabellen 820 und die Paarverwaltungstabellen 830 werden
in einer zuvor in dem System definierten Anzahl gehalten, und die
Anzahl wird anhand der Speicherkapazität der Steuerung (S) 101 und
der maximalen Anzahl von Paaren bestimmt. Auch werden diese Tabellen
dynamisch zugewiesen und geöffnet,
je nach dem, wie es erforderlich ist. Insbesondere wird eine nicht
verwendete Tabelle zugewiesen, wenn ein Paar erzeugt wird. Wenn das
Paar freigegeben wird, wird die Tabelle geöffnet oder wieder in einen
nicht verwendeten Zustand zurückgeführt. Dementsprechend
besteht keine Befürchtung,
dass eine Speicherressource großer
Kapazität
für das
Speichern der Gruppentabellen 820 und der Paarverwaltungstabellen 830 verbraucht wird.
-
Als
nächstes
werden von der Steuerung (T) 111 gehaltene Tabellen beschrieben.
-
Die
Steuerung (T) 111 hält
in 11 dargestellte Informationstabellen 900 logischer
Volumen und die in 10 dargestellten RAID-Gruppenverwaltungstabellen 840.
-
Die
Informationstabelle 900 logischer Volumen ist für jedes
logische Volumen (T) 114 bereitgestellt. Die Tabelle 900 besteht
aus einer Nummer 905 einer Steuerung des Kopierursprungs,
die mit einer Nummer einer Steuerung (S) 110 als Kopierursprung des
logischen Volumens (T) 114 gespeichert ist, einer Nummer 906 eines
logischen Volumens des Kopierursprungs, die mit einer Nummer eines
logischen Volumens (S) 104 eines Kopierursprungsspeichersystems
(S) 100 gespeichert ist, und einem Kopieradressbereich 907,
der mit einem Adressbereich des logischen Volumens (S) 104 des
Kopierursprungs gespeichert ist, der zu einem Objekt des Kopierens gemacht
ist. Wenngleich die Tabelle 900 ferner eine RAID-Gruppennummer 901,
einen Adressbereich 902, Emulationsinformationen 903 und
Original/Kopie-Informationen 904 hält, ähneln ihre Inhalte jenen, die
in 10 dargestellt sind.
-
Als
nächstes
werden die Einzelheiten eines Vorgangs zum Ausführen des entfernten Kopierens beschrieben.
Wie gemäß der ersten
Ausführungsform
weist dieser Vorgang drei Verarbeitungen, nämlich eine Verarbeitung zur
Erzeugung eines Fernkopierpaars, eine Verarbeitung zur Zeit des
Schreibens von der CPU 120 zum Speichersystem (S) 100 und eine
Verarbeitung zum Schalten des Betriebs vom Speichersystem (S) 100 zum
Speichersystem (T) 110. Nachfolgend wird jede dieser Verarbeitungen beschrieben.
-
(i) Fernkopierpaarerzeugungsverarbeitung
-
Die
Fernkopierpaarerzeugungsverarbeitung wird unter Verwendung von 4,
die in der Beschreibung der ersten Ausführungsform verwendet wird,
beschrieben.
-
In
Schritt 400 aus 4 übergibt
ein Benutzer eine Anweisung zur Fernkopierpaarerzeugung zusammen
mit Informationen, ähnlich
jenen gemäß der ersten
Ausführungsform,
an die Steuerung (S) 101.
-
Wenn
die Anweisung zur Fernkopierpaarerzeugung in Schritt 400 empfangen
wird, weist die Steuerung (S) 101 eine Nicht-verwendete-Paare-Verwaltungstabelle 830 zu.
Falls es keine Nicht-verwendete-Paare-Verwaltungstabelle 830 gibt,
ist es nicht möglich,
ein Kopierpaar neu zu erzeugen, und die Steuerung (S) 101 informiert
den Benutzer daher darüber,
wodurch die Verarbeitung abgeschlossen wird. In diesem Fall ist
es notwendig, dass der Benutzer ein bereits erzeugtes Kopierpaar freigibt,
wodurch eine Paarverwaltungstabelle 830 geöffnet wird.
-
Als
nächstes
oder wenn eine Paarverwaltungstabelle 830 gewährleistet
wird, wird die Nummer einer Kopierzielsteuerung (T) 111,
die vom Benutzer gegeben wird, in der Nummer 831 einer
Steuerung der entgegengesetzten Seite der Paarverwaltungstabelle 830 gespeichert,
und eine Nummer eines logischen Volumens (S) 104 des Kopierursprungs
wird in der Nummer 833 des eigenseitigen logischen Volumens
davon gespeichert. Auch werden eine führende Kopieradresse (Kopfadresse)
und eine letzte Kopieradresse (Endadresse), die vom Benutzer übergeben
werden, in der führenden
Adresse 834 des Kopierursprungs bzw. der letzten Adresse 835 des
Kopierursprungs der Paarverwaltungstabelle 830 gespeichert.
Als nächstes
wird in dem Fall, in dem das durch die gegenwärtige Anweisung zur Fernkopierpaarerzeugung
zum Kopierursprung gemachte logische Volumen 104 zuerst
der Erzeugung eines Fernkopierpaars unterzogen wird, eine nicht verwendete
Gruppentabelle 820 diesem logischen Volumen zugewiesen.
Auch wird eine Nummer der nun zugewiesenen Paarverwaltungstabelle 830 in
einem Eintrag gespeichert, der einer Gruppe entspricht, welche einen
Abschnitt eines zu einem Objekt des entfernten Kopierens gemachten
Bereichs aufweist, und ein Nullwert wird in einem Eintrag gespeichert,
der einer Gruppe in einem anderen Bereich als dem zum Objekt des
entfernten Kopierens gemachten Bereich entspricht. Weil jede Gruppe
eine feste Länge
hat, werden logische Adressen, die jeder Gruppe entsprechen, eindeutig
durch eine Gruppennummer definiert.
-
Nun
wird ein Verfahren zum Bestimmen von Gruppennummern in dem zum Objekt
des entfernten Kopierens gemachten Bereich und außerhalb
des zum Objekt des entfernten Kopierens gemachten Bereichs beschrieben.
Beispielsweise wird im Fall eines Hauptrechners, falls angenommen
wird, dass eine Gruppe aus n Spuren besteht und n Spuren je Zylinder
existieren, eine Spur mit einer Zylinderadresse a adressiert, und
eine Kopfadresse b gehört
zu einer Gruppe a. Im Fall eines offenen Systems gehört andererseits,
falls eine Gruppe durch n Blöcke
gebildet ist, ein Block m zu einer Gruppe, die durch einen ganzzahligen
Teil des Quotienten m ÷ n
nummeriert ist. Demgemäß wird die
logische Adresse des zum Objekt des entfernten Kopierens gemachten
Bereichs in eine Gruppennummer umgewandelt, um Gruppennummern in
dem zum Objekt des entfernten Kopierens gemachten Bereich und außerhalb
des zum Objekt des entfernten Kopierens gemachten Bereichs zu bestimmen.
-
Als
nächstes
wird eine Nummer der nun zugewiesenen Gruppentabelle 820 in
der Gruppentabellennummer 805 einer Informationstabelle 800 logischer
Volumen, entsprechend dem für
die Fernkopierpaarerzeugung angewiesenen logischen Volumen, gespeichert,
und "KOPIERURSPRUNG" wird in den Original/Kopie-Informationen 804 davon
gespeichert.
-
In
Schritt 401 wird eine Anforderung zur Fernkopierpaarerzeugung
an die Steuerung (T) 111 ausgegeben. Parameter, die zusammen
mit der Anforderung zur Fernkopierpaarerzeugung zur Steuerung (T) 111 übertragen
werden, ähneln
jenen gemäß der ersten
Ausführungsform.
-
Beim
Empfang der Anforderung zur Paarerzeugung weist die Steuerung (T) 111 nun
ein nicht verwendetes logisches Volumen 114 als ein logisches
Volumen (T) 114 zu (Schritt 410). Zu dieser Zeit
wird eine Kapazität,
die dem von der Steuerung (S) 101 als das Objekt des entfernten
Kopierens bezeichneten Bereich entspricht, folgendermaßen dem logischen
Volumen (T) 114 zugewiesen. Insbesondere bezieht sich die
Steuerung (T) 111 auf die Leeradressbereiche 843 von
RAID-Gruppen verwaltungstabellen 840, um zu beurteilen,
ob die erforderliche Kapazität
von einer bestimmten RAID-Gruppe (T) 215 gewährleistet
werden kann. Falls dies möglich ist,
wird die erforderliche Kapazität
von einem Leerbereich gewährleistet,
und der Leeradressbereich wird entsprechend aktualisiert. Eine nicht
verwendete Informationstabelle 900 logischer Volumen wird
so zugewiesen, dass eine Nummer der RAID-Gruppe 215 und
der Adressbereich, der gewährleistet
wurde, in der RAID-Gruppennummer 901 und dem Adressbereich 902 gespeichert
werden. Falls der Leeradressbereich 843, der der erforderlichen
Kapazität entspricht,
nicht existiert, wird eine Suche nach einer zuweisbaren RAID-Gruppe
(T) 215 ausgeführt,
und die Tabelle 900 wird der RAID-Gruppe zugewiesen. Andernfalls
kann der Benutzer eine zuweisbare RAID-Gruppe 215 vorab
bezeichnen.
-
Wenn
das logische Volumen (T) 114 des Kopierziels so zugewiesen
wird, werden der von der Steuerung (S) 101 empfangene Emulationstyp
und die Kapazität
des logischen Volumens (S) 104 des Kopierursprungs in den
Emulationsinformationen 903 der Informationstabelle 900 logischer
Volumen, entsprechend dem zugewiesenen logischen Volumen (T) 114,
gespeichert, und "KOPIERZIEL" wird in den Original/Kopie-Informationen 904 gespeichert. Auch
werden eine Nummer der Kopierursprungssteuerung (S) 101 und
eine Nummer des logischen Volumens (S) 104 des Kopierursprungs
in der Nummer 905 der Kopierursprungssteuerung bzw. in
der Nummer 906 des logischen Volumens des Kopierursprungs
der Informationstabelle 900 logischer Volumen gespeichert.
Ferner wird ein Adressbereich des zum Objekt des entfernten Kopierens
gemachten Bereichs im Kopieradressbereich 907 gespeichert.
In Schritt 411 informiert die Steuerung (T) 111 die
Steuerung (S) 101 über
die Nummer des zugewiesenen logischen Volumens (T) 114.
In Schritt 402 speichert die Steuerung (S) 101 die
von der Steuerung (T) 111 empfangene Nummer des logischen
Volumens (T) 114 in der Nummer 832 eines logischen
Volumens der entgegengesetzten Seite der Paar verwaltungstabelle 830,
macht den Paarzustand 836 zum Kopieausführungszustand und speichert
den Wert der führenden
Kopieradresse 834 im Kopierzeiger 837, um eine
Kopierverarbeitung einzuleiten. Die Kopierverarbeitung wird ähnlich wie
gemäß der ersten
Ausführungsform
ausgeführt,
während
der Kopierzeiger 837 aktualisiert wird.
-
Nun
wurde in dem Fall, in dem ein Teilbereich eines bestimmten logischen
Volumens 104 bereits zu einem Objekt des entfernten Kopierens
gemacht wurde und der andere Bereich neu zu einem Objekt des entfernten
Kopierens zu machen ist, eine Gruppentabelle 820, die dem
entsprechenden logischen Volumen 104 entspricht, bereits
gewährleistet, weshalb
nur eine Paarverwaltungstabelle 830 neu zugewiesen wird,
um die vorstehend erwähnten
Informationen zu speichern. Auch wird eine Nummer der neu zugewiesenen
Paarverwaltungstabelle 830 in einem Eintrag in der Gruppentabelle 820 gespeichert,
der der Gruppennummer einer den neu zugewiesenen Bereich des Objekts
des entfernten Kopierens aufweisenden Gruppe entspricht. Die anschließende Verarbeitung ähnelt jener,
die bis jetzt beschrieben wurde.
-
(ii) Schreibverarbeitung
-
Als
nächstes
wird eine Verarbeitung in dem Fall beschrieben, in dem eine Schreibanforderung von
der CPU 120 an das Speichersystem (S) 100 ausgegeben
wird.
-
Der
Unterschied der vorliegenden Ausführungsform gegenüber der
ersten Ausführungsform
in Bezug auf eine Schreibverarbeitung liegt in einem Verfahren zum
Beurteilen, ob ein zu einem Objekt des Schreibens gemachter Bereich
in einem Kopierbereich liegt. Gemäß der vorliegenden Ausführungsform
werden die Original/Kopie-Informationen 804 einer Informationstabelle 800 logischer
Volumen, entsprechend einem logischen Volumen (S) 104,
das zu einem Zugriffsobjekt gemacht ist, betrachtet, um zu untersuchen,
ob das logische Volumen (S) 104 ein Fernkopierpaar als "KOPIERURSPRUNG" bildet. Falls es
ein Fernkopierpaar als "KOPIERURSPRUNG" bildet, wird die
Gruppentabellennummer 805 betrachtet, so dass eine Gruppennummer,
einschließlich
Adressen, auf die zuzuweisen ist, als ein Index zum Zugreifen auf
eine Gruppentabelle 820 verwendet wird. Dann ist eine Nummer
einer Paarverwaltungstabelle 830 bekannt. Daher wird auf
die durch diese Nummer angegebene Paarverwaltungstabelle 830 zugegriffen.
Die Beurteilung, ob ein Paarzustand ein Kopieausführungszustand
ist, wird anhand des Paarzustands 836 vorgenommen. In dem
Fall, in dem der Paarzustand ein Kopieausführungszustand ist, wird die
Untersuchung, ob die Adressen, auf die zuzugreifen ist, in einem
Bereich enthalten sind, der bereits dem Kopieren unterzogen wurde,
anhand der Werte der führenden
Kopieradresse 834 und des Kopierzeigers 837 vorgenommen.
Falls die Adressen in diesem Bereich enthalten sind, werden Schreibdaten
zum Speichersystem (T) 110 übertragen und dann geschrieben.
In dem Fall, in dem der Paarzustand ein Duplexzustand ist, wird
die Beurteilung auf der Grundlage der führenden Kopieradresse 834 und
der letzten Kopieradresse 835 in Bezug darauf vorgenommen,
ob die Adressen, auf die zuzugreifen ist, in diesem Bereich enthalten
sind. Falls die Adressen in diesem Bereich enthalten sind, werden
die Schreibdaten zum Speichersystem (T) 110 übertragen
und dann geschrieben.
-
(iii) Verarbeitung für das Schalten des Betriebs
vom
-
Speichersystem
(S) 100 zum Speichersystem (T) 110 Wenn es unmöglich wird,
das Speichersystem (S) 100 zu verwenden, ist es notwendig,
dass die Sekundärstelle
den Dienst übernimmt.
Zu diesem Zweck wird zuerst eine CPU 140 mit dem Speichersystem
(T) 110 verbunden.
-
Zu
dieser Zeit wird nur ein Teilbereich eines logischen Volumens (S) 104 von
einem logischen Volumen (T) 114 gehalten. Falls notwendig,
wird das logische Volumen (T) 114 daher in Bezug auf die
Kapazität
erweitert, so dass es mit der Kapazität des logischen Volumens (S) 104 übereinstimmt.
-
Gemäß der fünften Ausführungsform
wird ein logisches Volumen, das eine erforderliche Kapazität erfüllt, dem
Speichersystem (T) 110 neu zugewiesen, und Daten des logischen
Speichervolumens (T) 114 des Fernkopierziels werden in
das neu zugewiesene logische Volumen kopiert. Nachfolgend wird das
logische Speichervolumen (T) 114 des Fernkopierziels als
ein logisches Volumen A 114 bezeichnet, und das neu zugewiesene
logische Volumen 114 wird als ein logisches Volumen B 114 bezeichnet.
-
Der
Ablauf der vorliegenden Verarbeitung für das Schalten des Betriebs
wird nun unter Verwendung von 12 beschrieben.
-
Wie
dargestellt ist, liest ein Benutzer zuerst Kapazitätsinformationen
des logischen Volumens A 114 von der CPU 140 oder
einem externen Endgerät, das
mit der Steuerung (T) 111 verbunden ist (Schritt 1001).
Als nächstes
wird beurteilt, ob das logische Volumen A 114 unverändert verwendet
werden sollte oder ob das logische Volumen A 114 in einer
in Bezug auf die Kapazität
erweiterten Form verwendet werden sollte, so dass es dem logischen
Volumen (S) 104 entspricht.
-
In
dem Fall, in dem die Erweiterung benötigt wird, werden die Emulationsinformationen 903 einer Informationstabelle 900 logischer
Volumen, entsprechend dem logischen Volumen A 114, gelesen,
um den Emulationstyp und die Kapazität des logischen Volumens (S) 104 zu
erhalten, und der Benutzer weist die Steuerung (T) 111 auf
der Grundlage der erhaltenen Informationen an, ein logisches Volumen
B 114 neu zuzuweisen. Zu dieser Zeit weist der Benutzer
mindestens den Emulationstyp zu. Ferner weist der Benutzer bei Bedarf
die Nummer des logischen Volumens zu.
-
In
Schritt 1010 weist die Steuerung (T) 111 das logische
Volumen B 114 des bezeichneten Emulationstyps und der bezeichneten
Kapazität
zu. Die Zuweisung des neuen logischen Volumens B 114 ist jedoch
nicht unbedingt erforderlich. Beispielsweise kann ein auf dem Speichersystem 110 der
Sekundärstelle
definiertes logisches Volumen 114 verwendet werden.
-
Anschließend oder
in Schritt 1003 weist der Benutzer das Kopieren von Daten
vom logischen Volumen A 114 in das logische Volumen B 114 an.
Zu dieser Zeit betrachtet der Benutzer den Kopieradressbereich 907 der
gelesenen Informationstabelle 900 logischer Volumen, um
einen zu kopierenden Bereich zu bezeichnen.
-
Beim
Empfang der Anweisung vom Benutzer kopiert die Steuerung (T) 111 Daten
des bezeichneten Bereichs vom logischen Volumen A 114 in
das logische Volumen B 114. Weil Adressen auf dem logischen
Volumen (S) 104 des Fernkopierursprungs im Kopieradressbereich 907 gespeichert
sind, wird das Kopieren für
einen Bereich des logischen Volumens B 114 ausgeführt, der
diesen Adressen entspricht. Beispielsweise werden, vorausgesetzt,
dass Adressen m bis n im Kopieradressbereich 907 gespeichert sind,
Daten des logischen Volumens A 114 in einen Bereich des
logischen Volumens B 114 kopiert, der Adressen m bis n
entspricht.
-
Wenn
das Kopieren abgeschlossen ist, werden Dateiverwaltungsinformationen
in ähnlicher
Weise wie gemäß der ersten
Ausführungsform
aktualisiert (Schritt 1004), und der Betrieb an der Sekundärstelle
wird anschließend
eingeleitet (Schritt 1005).
-
Gemäß der fünften Ausführungsform
werden, nachdem das Kopieren vom logischen Volumen A 114 in
das logische Volumen B 114 abgeschlossen ist, die Dateiverwaltungsinformationen
aktualisiert, und der Betrieb an der Sekundärstelle wird dann eingeleitet.
Das Aktualisieren der Dateiverwaltungsinformationen und das anschließende Einleiten
des Betriebs können
jedoch in der Mitte des Kopierens möglich sein. Dies kann verwirklicht
werden, indem auf das logische Volumen A 114 zugegriffen
wird, falls das logische Volumen A 114 bereits einem Kopieren unterzogen
wurde, und indem auf das logische Volumen B 114 zugegriffen
wird, falls das logische Volumen A 114 noch nicht dem Kopieren
unterzogen wurde.
-
Vorstehend
wurde die fünfte
Ausführungsform
der vorliegenden Erfindung beschrieben.
-
Nachstehend
wird eine sechste Ausführungsform
der vorliegenden Erfindung beschrieben.
-
VI. Sechste Ausführungsform
-
Gemäß der sechsten
Ausführungsform
wird ein migratorisches Kopieren ausgeführt, wobei Daten wie gemäß der zweiten
Ausführungsform
zwischen neuen und alten Speichersystemen migrieren.
-
Gemäß der sechsten
Ausführungsform
unterscheidet sich das in 7 dargestellte
Speichersystem (T) 1000 von jenem gemäß der zweiten Ausführungsform
darin, dass die Steuerung (T) 1010 die Informationstabellen 800 logischer
Volumen, die RAID-Gruppenverwaltungstabellen 840, die Gruppentabellen 820 und
die Paarverwaltungstabellen 830 (siehe 10) hält,
die in Zusammenhang mit der fünften
Ausführungsform
beschrieben wurden, und eine Verarbeitung unter Verwendung dieser
Tabellen ausführt.
-
Nachfolgend
werden die Einzelheiten des migratorischen Kopierens mit Bezug auf 8 beschrieben,
welche in der Beschreibung der zweiten Ausführungsform verwendet wurde.
-
Weil
der Unterschied der Verarbeitung gemäß der sechsten Ausführungsform
von jener gemäß der zweiten
Ausführungsform
in einem Verfahren zum Zuweisen eines logischen Volumens 104 in Schritt 710 und
im Kopieren in Schritt 711 liegt, wird diesen Punkten in
der folgenden Beschreibung Wichtigkeit verliehen.
-
In
der Anweisung zum Zuweisen eines logischen Volumens 104 eines
migratorischen Kopierziels in Schritt 701 bezeichnet ein
Benutzer mindestens einen Emulationstyp und eine zuzuweisende Kapazität. In Schritt 710 weist
die Steuerung (T) 1010, die angewiesen wird, ein logisches
Volumen (T) 104 zuzuweisen, das logische Volumen (T) 104 in ähnlicher
Weise wie bei der Zuweisung des logischen Volumens B 114 gemäß der fünften Ausführungsform zu.
Als das logische Volumen des migratorischen Kopierziels kann der
Benutzer ein logisches Volumen 104 bezeichnen, das bereits
auf dem Speichersystem (T) 1000 definiert wurde.
-
In
Schritt 711 weist die Steuerung (T) 1010, die
die Anweisung zum Einleiten des migratorischen Kopierens empfängt, eine
Nicht-Verwendete-Paare-Verwaltungstabelle 830 zu, speichert
eine Nummer der Steuerung (S) 1110 des migratorischen Kopierursprungs
und eine Nummer eines logischen Volumens (S) 114 des migratorischen
Kopierursprungs in der Nummer 831 einer Steuerung der entgegengesetzten
Seite bzw. der Nummer 833 eines logischen Volumens der
entgegengesetzten Seite der Paarverwaltungstabelle 830,
speichert eine Nummer des logischen Volumens (T) 104 des
migratorischen Kopierziels in der Nummer 833 des logischen
Volumens der eigenen Seite, eine führende Adresse und eine letzte
Adresse eines zu einem Objekt des migratorischen Kopierens gemachten
Bereichs in der führenden
Kopieradresse 834 bzw. der letzten Kopieradresse 835,
speichert eine führende
Adresse des migratorischen Kopierens im Kopierzeiger 837 der
Paarverwaltungstabelle 830 und macht den Paarzustand 836 zu "MIGRATORISCHES KOPIEREN
WIRD AUSGEFÜHRT".
-
Als
nächstes
wird eine nicht verwendete Gruppentabelle 820 zugewiesen
und eine Nummer der vorstehend zugewiesenen Paarverwaltungstabelle 830 in
der Nummer 821 der Paarverwaltungstabelle gespeichert,
welche einer Gruppe entspricht, die einen Abschnitt des zum Objekt
des migratorischen Kopierens gemachten Bereichs aufweist. Eine Nummer
der zugewiesenen Gruppentabelle wird in der Gruppentabellennummer 805 einer
Informationstabelle 800 logischer Volumen, entsprechend
dem logischen Volumen (T) 104, gespeichert, und "KOPIERZIEL" wird in den Original/Kopie-Informationen 804 gespeichert.
-
Wenn
die vorstehend erwähnte
Verarbeitung abgeschlossen ist, führt die Steuerung (T) 1010 das Kopieren
durch Lesen von Daten aus dem logischen Volumen (S) 114 in
einer Reihenfolge von einer durch den Kopierzeiger 837 angegebenen Adresse
und durch Speichern der gelesenen Daten in dem logischen Volumen
(T) 104 aus.
-
Wenn
das migratorische Kopieren abgeschlossen ist, wird NULL in den Original/Kopie-Informationen 804 der
Informationstabelle 800 logischer Volumen, entsprechend
dem logischen Volumen (T) 104, gespeichert, um anzugeben,
dass ein Paar nicht erzeugt wird. Auch wird NULL in der Gruppentabellennummer 805 gespeichert.
Die Gruppentabelle 820 und die Paarverwaltungstabelle 830 werden
geöffnet,
so dass sie in nicht verwendete Zustände versetzt werden.
-
In
dem Fall, in dem es einen Zugriff von der CPU 1200 auf
ein logisches Volumen 104 unter einem migratorischen Kopieren
gibt, wird die folgende Verarbeitung ausgeführt.
-
Insbesondere
wird anhand der Original/Kopie-Informationen 804 der
entsprechenden Informationstabelle 800 logischer Volumen
untersucht, ob das einem Zugriff unterzogene logische Volumen 104 ein Objekt
des migratorischen Kopierens ist. Falls die Original/Kopie-Informationen 804 "KOPIERZIEL" angeben, wird die
Gruppentabellennummer 805 betrachtet, um auf die entsprechende
Gruppentabelle 820 zuzugreifen. Eine Gruppennummer, auf
die Adressen, auf die zuzugreifen ist, abgebildet sind, wird als
ein Index verwendet, um auf die Gruppentabelle zuzugreifen, wodurch
die entsprechende Paarverwaltungstabellennummer erhalten wird. Der
Zugriff auf die entsprechende Paarverwaltungstabelle 830 wird
vorgenommen, um den Kopierzeiger 837 zu betrachten. Falls
die Adresse, auf die zuzugreifen ist, vor dem Kopierzeiger 837 liegt,
wurde bereits kopiert, und es wird daher auf das logische Volumen
(T) 104 zugegriffen. Falls sie hinter dem Kopierzeiger
liegt, wurde noch nicht kopiert, so dass das Kopieren mit dem Zugriff
von der CPU 1200 durch Lesen vorgesehener Daten aus dem
logischen Volumen (S) 114 vorgenommen wird. Beim Lesen
der Daten aus dem logischen Volumen (S) 114 wird eine Leseanforderung für das logische
Volumen (S) des Speichersystems 1100 auf der Grundlage
der Nummer 831 einer Steuerung der entgegengesetzten Seite
und der Nummer 832 eines logischen Volumens der entgegengesetzten
Seite der Paarverwaltungstabelle 830 ausgegeben, um die
vorgesehenen Daten zu lesen.
-
Vorstehend
wurde die sechste Ausführungsform
der vorliegenden Erfindung beschrieben.
-
Gemäß der ersten
und der fünften
Ausführungsform,
die vorstehend beschrieben wurden, kann nur ein Teilbereich eines
logischen Volumens (oder ein Bereich davon, der zu einem Objekt
des entfernten Kopierens gemacht ist) einem entfernten Kopieren
unterzogen werden. Daher ist es möglich, unnötigen Zusatzaufwand zu beseitigen,
der bisher durch das Kopieren von Daten hervorgerufen wurde, deren
Kopie nicht erforderlich ist. Auch verwendet bei diesem entfernten
Kopieren ein Kopierzielspeichersystem nur eine diesem Teilbereich
entsprechende Kapazität,
so dass das Kopierzielspeichersystem nicht eine Kapazität verwenden
muss, die einem logischen Volumen des Kopierursprungs entspricht, wenngleich
eine solche Forderung im Stand der Technik gemacht wurde.
-
Gemäß der zweiten
und der sechsten Ausführungsform,
die vorstehend beschrieben wurden, kann nur ein Teilbereich eines
logischen Volumens (oder ein Bereich davon, der zu einem Objekt
des migratorischen Kopierens gemacht ist) einem migratorischen Kopieren
unterzogen werden. Daher ist es möglich, unnötigen Zusatzaufwand zu beseitigen, der
bisher durch das Kopieren von Daten hervorgerufen wurde, deren Kopie
nicht erforderlich ist. Auch verwendet bei diesem migratorischen
Kopieren ein Kopierzielspeichersystem nur eine diesem Teilbereich
entsprechende Kapazität,
so dass das Kopierzielspeichersystem nicht eine Kapazität verwenden muss,
die einem logischen Volumen des Kopierursprungs entspricht, wenngleich
eine solche Forderung im Stand der Technik gemacht wurde.
-
Gemäß der dritten
und der vierten Ausführungsform,
die vorstehend beschrieben wurden, wird eine Anordnung/Umordnung
nicht in Einheiten eines logischen Volumens, sondern für jeden
Teilbereich eines logischen Volumens ermöglicht, so dass jeder Teilbereich
eines logischen Volumens auf einer gewünschten RAID-Gruppe oder einer
RAID-Gruppe, die für
die Zugriffseigenschaften dieses Teilbereichs geeignet ist, angeordnet/umgeordnet
werden kann.
-
Gemäß jeder
der vorstehenden Ausführungsformen
wird jede Verarbeitung in einer solchen Weise ausgeführt, dass
ein Logikadressbereich eines logischen Volumens, das zu einem Objekt
eines entfernten Kopierens, eines migratorischen Kopierens oder
einer Anordnung auf RAID-Gruppen gemacht ist, in logische Speichergeräte oder
Blöcke
unterteilt wird, um es zu ermöglichen,
dass die Verarbeitung einfach und mit hoher Geschwindigkeit ausgeführt wird.
Jede Verarbeitung kann jedoch in einer solchen Weise ausgeführt werden,
dass der Logikadressbereich des zum Objekt des entfernten Kopierens,
des migratorischen Kopierens oder der Anordnung auf RAID-Gruppen gemachten
logischen Volumens vielmehr direkt verwaltet wird, als in logische Speichergeräte oder
Blöcke
unterteilt zu werden.
-
VII. Siebte Ausführungsform
-
13 ist ein Blockdiagramm eines Systems gemäß einer
siebten Ausführungsform
der vorliegenden Erfindung. Das System weist einen Host 1300,
eine Steuerung 1312 und Speichergeräte 1313 auf. Der Host 1300 gibt
entsprechend einer Benutzeranweisung oder einem Benutzerprogramm
verschiedene Anforderungen an die Steuerung 1312 aus. Die
Speichergeräte 1313 speichern
Daten. Die Steuerung 1312 führt das Lesen von Daten aus
dem Speichergerät 1313 oder
das Schreiben von Daten in das Speichergerät 1313 entsprechend
einer Anforderung vom Host 1300 aus.
-
Die
Steuerung 1312 besteht aus Steuerprozessoren 1301,
einem Steuerspeicher 1309 und einem Cache-Speicher 1311.
-
Der
Steuerprozessor 1301 steuert die Steuerung 1312.
Eine Paarerzeugungsverarbeitung 1302, eine Paarunterteilungsverarbeitung 1303,
eine Ausdehnungsaktualisierungsverarbeitung 1304, eine Schreibverarbeitung 1305,
eine Paarerzeugungskopierverarbeitung 1306, eine Paarunterteilungs kopierverarbeitung 1307 und
eine Ausdehnungsaktualisierungskopierverarbeitung 1308 werden
in dem Steuerprozessor 1301 ausgeführt. Der Steuerspeicher 1309 speichert
Steuerinformationen, wie Paarinformationen 1310, die vom
Steuerprozessor 1301 benötigt werden, um die Steuerung 1312 zu
steuern. Der Cache-Speicher 1311 speichert vom Host 1300 empfangene
Daten und aus dem Speichergerät 1313 gelesene
Daten zwischen.
-
14 zeigt die Datenstruktur der Paarinformationen 1310.
Die Paarinformationen 1310 bestehen aus einem Verwendungshinweiszeichen 1400, einer
Originalvolumennummer 1401, einer Kopiervolumennummer 1402,
einem Paarzustand 1403, Differenzinformationen 1404 und
Ausdehnungsinformationen 1405. Das Verwendungshinweiszeichen 1400 ist
ein Hinweiszeichen, welches angibt, ob die entsprechenden Paarinformationen 1310 verwendet werden,
d. h. ob Informationen in den entsprechenden Paarinformationen 1310 gültig sind.
Wenn das Verwendungshinweiszeichen 1400 "1" ist, wird die Gültigkeit angegeben. Wenn es "0" ist, wird die Ungültigkeit angegeben. Die Originalvolumennummer 1401 gibt
eine Nummer eines Volumens an, das als ein Original dient, wenn
eine Kopie des Volumens entsprechend einer Anforderung vom Host 1300 zu erzeugen
ist. Die Kopiervolumennummer 1402 gibt eine Nummer eines
Volumens an, das mit einer Kopie von Daten eines Volumens gespeichert
wird, das als ein Original dient, wenn eine Kopie des Volumens entsprechend
einer Anforderung vom Host 1300 zu erzeugen ist. Der Paarzustand 1403 gibt
an, bis wohin ein Volumenkopiererzeugungsprozess fortgeschritten
ist. Der Paarzustand 1403 hat vier Werte "WIRD ERZEUGT", "ERZEUGUNG ABGESCHLOSSEN", "WIRD GETEILT" und "UNTERTEILUNG ABGESCHLOSSEN". Die Differenzinformationen 1404 sind
Informationen, welche Orte darstellen, an denen Daten zwischen einem
durch die Originalvolumennummer 1401 angegebenen Volumen
und einem durch die Kopiervolumennummer 1402 angegebenen
Volumen verschieden sind. Die Ausdehnungsinformationen 1405 sind
Informationen, welche einen Ort in einem Volumen angeben, in dem
ein Bereich in der Art eines Datensatzes oder einer Datei gespeichert
ist. Die Ausdehnungsinformationen 1405 bestehen aus einem
Verwendungshinweiszeichen 1406, einer Anfangsadresse 1407 und
einer Endadresse 1408. Das Verwendungshinweiszeichen 1406 ist
ein Hinweiszeichen, welches angibt, ob die entsprechenden Ausdehnungsinformationen 1405 gültig sind. Wenn
das Verwendungshinweiszeichen 1406 "1" ist, wird
die Gültigkeit
angegeben. Wenn es "0" ist, wird die Ungültigkeit
angegeben. Die Anfangsadresse 1407 ist eine Adresse, welche
einen äußersten
Anfang eines Bereichs in der Art eines Datensatzes oder einer Datei
angibt, und die Endadresse 1408 ist eine Adresse, welche
ein äußerstes
Ende des Bereichs in der Art eines Datensatzes oder einer Datei angibt.
-
15 zeigt die Struktur der Differenzinformationen 1404.
Die Differenzinformationen 1404 bestehen aus drei Arten
von Bitmaps, welche Erzeugungsausführungs-Differenzinformationen 1500,
Unterteilungsausführungs-Differenzinformationen 1501 und
Aktualisierungsausführungs-Differenzinformationen 1502 umfassen.
Ein Bit entspricht einer Spur. Wenn der Bitwert "0" ist,
wird angegeben, dass Daten der entsprechenden Spur zwischen einem
durch die Originalvolumennummer 1401 angegebenen Volumen
und einem durch die Kopiervolumennummer 1402 angegebenen
Volumen übereinstimmen.
Wenn der Bitwert "1" ist, wird angegeben,
dass Daten der entsprechenden Spur nicht übereinstimmen. Natürlich kann
ein Bit auf eine andere Einheit angewendet werden (oder es kann
bewirkt werden, dass es damit übereinstimmt).
-
16 zeigt den Ablauf der Paarerzeugungsverarbeitung 1302.
Der Host 1300 gibt eine Paarerzeugungsanforderung an die
Steuerung 1312 aus, wenn die Steuerung 1312 veranlasst
wird, die Kopie eines bestimmten Volumens zu erzeugen. Wenn er die
Paarerzeugungsanforderung vom Host 1300 empfängt, leitet
der Steuerprozessor 1301 eine Paarerzeugungsverarbeitung 1302 ein.
Die Paarerzeugungsanforderung hat zwei Parameter, d. h. eine Volumennummer
eines Volumens, dessen Kopie zu erzeugen ist (als ein Originalvolumen
bezeichnet), und eine Volumennummer eines Volumens, in dem kopierte
Daten zu speichern sind (als ein Kopiervolumen bezeichnet).
-
In
Schritt 1600 werden Nicht-verwendete-Paare-Informationen 1310 mit
dem Verwendungshinweiszeichen 1400 von "0" ausgewählt. In
den Ausgewählte-Paare-Informationen 1310 wird
das Verwendungshinweiszeichen 1400 auf "1" gesetzt,
eine Volumennummer eines vom Host 1300 empfangenen Originalvolumens
in die Originalvolumennummer 1401 eingesetzt, eine Volumennummer
eines vom Host 1300 empfangenen Kopiervolumens in die Kopiervolumennummer 1402 eingesetzt, "WIRD ERZEUGT" in den Paarzustand 1403 eingesetzt,
alle Bits der Erzeugungsausführungsinformationen 1500 in
den Differenzinformationen 1404 auf "1" gesetzt, alle
Bits der Unterteilungsausführungsinformationen 1501 auf "0" gesetzt, alle Bits der Aktualisierungsausführungsinformationen 1502 auf "0" gesetzt und das Verwendungshinweiszeichen 1406 in
den Ausdehnungsinformationen 1405 auf "0" gesetzt.
In Schritt 1601 wird eine Paarerzeugungskopierverarbeitung 1306 aktiviert,
wodurch die vorliegende Paarerzeugungsverarbeitung abgeschlossen
wird.
-
17 zeigt den Ablauf der Paarunterteilungsverarbeitung 1303.
Der Host 1300 gibt eine Paarunterteilungsanforderung an
die Steuerung 1312 aus, wenn in einem Kopiervolumen gespeicherte
Daten festgelegt werden, um die Verwendung der in dem Kopiervolumen
gespeicherten Daten zu ermöglichen.
Wenn die Paarunterteilungsanforderung vom Host 1300 empfangen
wird, beginnt der Steuerprozessor 1301 mit einer Paarunterteilungsverarbeitung.
Die Paarunterteilungsanforderung hat zwei Parameter, nämlich eine
Volumennummer eines ursprünglichen
Volumens und eine Volumennummer eines Kopiervolumens.
-
In
Schritt 1700 werden Paarinformationen 1310 mit
der Volumennummer des Originalvolumens in der Originalvolumennummer 1401 und
der Volumennummer des Kopiervolumens in der Kopiervolumennummer 1402 zuerst
ausgewählt,
und "WIRD UNTERTEILT" wird in den Paarzustand 1403 der Ausgewählte-Paare-Informationen 1310 eingesetzt. Als
nächstes
wird eine Paarunterteilungskopierverarbeitung 1307 aktiviert,
wodurch die vorliegende Paarunterteilungsverarbeitung abgeschlossen
wird.
-
18 zeigt den Ablauf der Ausdehnungsaktualisierungsverarbeitung 1304.
In dem Fall, in dem eine Paarunterteilungsanforderung ausgegeben wird
und eine darauf beruhende Verarbeitung abgeschlossen wird, werden
anschließend
in ein Originalvolumen geschriebene Daten nicht durch ein Kopiervolumen
reflektiert. Dementsprechend werden in dem Kopiervolumen gespeicherte
Daten allmählich alt,
so dass sie sich von den letzten in dem Originalvolumen gespeicherten
Daten unterscheiden. Wenn es erwünscht
ist, Daten eines Kopiervolumens und Daten eines Originalvolumens
in Bezug auf einen spezifizierten Bereich in der Art eines Datensatzes oder
einer Datei übereinstimmend
zu machen, gibt der Host 1300 eine Ausdehnungsaktualisierungsanforderung
an die Steuerung 1312 aus. Die Ausdehnungsaktualisierungsanforderung
hat vier Parameter, nämlich
eine Volumennummer eines Originalvolumens, eine Volumennummer eines
Kopiervolumens und eine Anfangsadresse und eine Endadresse eines
Bereichs in der Art eines Datensatzes oder einer Datei, in Bezug
worauf die Übereinstimmung von
Daten zwischen dem Originalvolumen und dem Kopiervolumen erwünscht ist.
Die Anfangsadresse und die Endadresse können in mehreren Sätzen existieren.
Wenn die Ausdehnungsaktualisierungsanforderung empfangen wird, leitet
der Steuerprozessor 1301 eine Ausdehnungsaktualisierungsverarbeitung 1304 ein.
In Schritt 1800 werden Paarinformationen 1310 mit
der als Parameter in der Originalvolumennummer 1401 empfangenen
Volumennummer des Originalvolumens und der als Parameter in der
Kopiervolumennummer 1402 empfangenen Volumennummer des
Kopiervolumens zuerst ausgewählt.
Als nächstes
werden Ausdehnungsinformationen 1405 mit dem Verwendungshinweiszeichen 1406 von "0" ausgewählt. Als nächstes werden das Verwendungshinweiszeichen 1406 der
ausgewählten
Ausdehnungsinformationen 1405 auf "1" gesetzt, die
Anfangsadresse eines Bereichs in der Art eines Datensatzes oder
einer Datei, die als Parameter empfangen wird, in die Anfangsadresse 1407 eingesetzt
und die als Parameter empfangene Endadresse in die Anfangsadresse 1408 eingesetzt.
In Schritt 1801 wird eine Ausdehnungsaktualisierungskopierverarbeitung 1308 aktiviert,
wodurch die vorliegende Ausdehnungsaktualisierungsverarbeitung abgeschlossen
wird.
-
19 zeigt den Ablauf der Schreibverarbeitung 1305.
Wenn eine Schreibanforderung vom Host 1300 empfangen wird,
leitet der Steuerprozessor 1301 eine Schreibverarbeitung 1305 ein.
Die Schreibanforderung hat drei Parameter, d. h. Schreibdaten, eine
Volumennummer eines Volumens, in dem die Schreibdaten zu speichern
sind, und eine Adresse in dem Volumen, in dem die Schreibdaten gespeichert
sind.
-
In
Schritt 1900 werden Paarinformationen 1310 mit
der Originalvolumennummer 1401, entsprechend der als Parameter
empfangenen Volumennummer, aus Paarinformationen 1310 mit
dem Verwendungshinweiszeichen 1400 von "1" ausgewählt. In
dem Fall, in dem Paarinformationen 1310, welche die vorstehend
erwähnte
Bedingung erfüllen,
nicht existieren, wird der Ablauf in Schritt 1907 fortgesetzt. In
dem Fall, in dem Paarinformationen 1310, welche die vorstehend
erwähnte
Bedingung erfüllen,
existieren, wird der Ablauf in Schritt 1901 fortgesetzt.
-
In
Schritt 1901 wird in Bezug auf die in Schritt 1900 ausgewählten Paarinformationen 1310 untersucht,
ob die Ausdehnungsinformationen 1405 mit der Anfangsadresse 1407 und
der Endadresse 1408, zwischen denen die als Parameter empfangene Adresse
enthalten ist, unter Ausdehnungsinformationen 1405, welche
das Verwendungshinweiszeichen 1406 von "1" aufweisen,
existieren. In dem Fall, in dem Ausdehnungsinformationen 1405,
welche die vorstehend erwähnte
Bedingung erfüllen,
nicht existieren, wird der Ablauf in Schritt 1908 fortgesetzt.
In dem Fall, in dem Ausdehnungsinformationen 1405, welche
die vorstehend erwähnte
Bedingung erfüllen, existieren,
wird der Ablauf in Schritt 1902 fortgesetzt.
-
In
Schritt 1902 wird auf die Unterteilungsausführungs-Differenzinformationen 1501 in
den Differenzinformationen 1404 der in Schritt 1900 ausgewählten Paarinformationen 1310 Bezug
genommen, um zu untersuchen, ob ein Bit, das einer Spur entspricht,
die der als Parameter empfangenen Adresse entspricht, "0" oder "1" ist.
In dem Fall, in dem das Bit "1" ist, wird der Ablauf
in Schritt 1903 fortgesetzt. In dem Fall, in dem das Bit "0" ist, wird der Ablauf in Schritt 1906 fortgesetzt.
-
In
Schritt 1903 werden in der Spur, die der als Parameter
empfangenen Adresse entspricht, gespeicherte Daten aus dem Speichergerät 1313 abgerufen
und in den Cache-Speicher 1311 eingegeben.
-
In
Schritt 1904 wird eine Kopie der in Schritt 1903 abgerufenen
Daten im Cache-Speicher 1311 erzeugt. Wenngleich die erzeugte
Kopie aus Daten eines durch die Kopiervolumennummer 1402 in
den in Schritt 1900 ausgewählten Paarinformationen 1310 angegebenen
Kopiervolumens besteht, kann die Zeit für das Schreiben dieser Daten
in das Speichergerät 1313 beliebig
sein.
-
In
Schritt 1905 wird "0" in das in Schritt 1902 untersuchte
Bit eingesetzt.
-
In
Schritt 1906 wird das Differenzbit der Differenzinformationen 1404 in
den Paarinformationen 1310, die in Schritt 1900 ausgewählt wurden,
zu "1" gemacht. In dem
Fall, in dem der Paarzustand 1403 "WIRD ERZEUGT" oder "ERZEUGUNG ABGESCHLOSSEN" ist, wird "1" in dieses Bit in den Erzeugungsausführungs-Differenzinformationen 1500 gesetzt,
welche einer Spur entsprechen, die der als Parameter empfangenen
Adresse entspricht. In dem Fall, in dem der Paarzustand 1403 "WIRD UNTERTEILT" ist, wird "1" in dieses Bit in den Unterteilungsausführungs-Differenzinformationen 1501 gesetzt, welche
einer Spur entsprechen, die der als Parameter empfangenen Adresse
entspricht. In dem Fall, in dem der Paarzustand 1403 "UNTER TEILUNG ABGESCHLOSSEN" ist und in Schritt 1901 festgestellt wird,
dass die Ausdehnungsinformationen 1405 existieren, wird "1" in dieses Bit in den Aktualisierungsausführungs-Differenzinformationen 1502 gesetzt, welche
einer Spur entsprechen, die der als Parameter empfangenen Adresse
entspricht. In dem Fall, in dem der Paarzustand 1403 "UNTERTEILUNG ABGESCHLOSSEN" ist und in Schritt 1901 festgestellt wird,
dass die Ausdehnungsinformationen 1405 nicht existieren,
wird "1" in dieses Bit in
den Unterteilungsausführungs-Differenzinformationen 1501 gesetzt, welche
einer Spur entsprechen, die der als Parameter empfangenen Adresse
entspricht.
-
In
Schritt 1907 werden die als Parameter empfangenen Schreibdaten
im Cache-Speicher 1311 gespeichert, wodurch die vorliegende
Verarbeitung abgeschlossen wird.
-
In
Schritt 1908 wird der Paarzustand 1403 untersucht.
In dem Fall, in dem der Paarzustand 1403 "WIRD UNTERTEILT" ist, wird der Ablauf
in Schritt 1909 fortgesetzt. In dem Fall, in dem der Paarzustand 1403 nicht "WIRD UNTERTEILT" ist, wird der Ablauf
in Schritt 1906 fortgesetzt.
-
In
Schritt 1909 wird auf die Erzeugungsausführungs-Differenzinformationen 1500 in
den Differenzinformationen 1404 der in Schritt 1900 ausgewählten Paarinformationen 1310 Bezug
genommen, um zu untersuchen, ob ein Bit, das einer Spur entspricht,
die der als Parameter empfangenen Adresse entspricht, "1" oder "0" ist.
In dem Fall, in dem das Bit "1" ist, wird der Ablauf
in Schritt 1910 fortgesetzt. In dem Fall, in dem das Bit "0" ist, wird der Ablauf in Schritt 1906 fortgesetzt.
-
In
Schritt 1910 werden in der Spur, die der als Parameter
empfangenen Adresse entspricht, gespeicherte Daten aus dem Speichergerät 1313 abgerufen
und in den Cache-Speicher 1311 eingegeben.
-
In
Schritt 1911 wird eine Kopie der in Schritt 1910 abgerufenen
Daten im Cache-Speicher 1311 erzeugt. Wenngleich die erzeugte
Kopie aus Daten eines durch die Kopiervolumen nummer 1402 in
den in Schritt 1900 ausgewählten Paarinformationen 1310 angegebenen
Kopiervolumens besteht, kann die Zeit für das Schreiben dieser Daten
in das Speichergerät 1313 beliebig
sein.
-
In
Schritt 1912 wird "0" in das in Schritt 1909 untersuchte
Bit eingesetzt.
-
20 zeigt den Ablauf der Paarerzeugungskopierverarbeitung 1306.
Die Paarerzeugungskopierverarbeitung 1306 wird von der
Paarerzeugungsverarbeitung 1302 aktiviert. Eine Volumennummer
eines Originalvolumens und eine Volumennummer eines Kopiervolumens
werden als Parameter gegeben.
-
In
Schritt 2000 wird eine Variable i auf eine Spurnummer einer
führenden
Spur des Originalvolumens gesetzt.
-
In
Schritt 2001 werden Paarinformationen 1310 mit
der Volumennummer des Originalvolumens als Parameter in der Originalvolumennummer 1401 und
der Volumennummer des Kopiervolumens als Parameter in der Kopiervolumennummer 1402 zuerst ausgewählt. Als
nächstes
wird auf die Erzeugungsausführungs-Differenzinformationen 1500 in
den Differenzinformationen 1404 der Ausgewählte-Paare-Informationen 1310 Bezug
genommen, um zu untersuchen, ob ein Bit, das einer Spur mit einer
Spurnummer, die gleich der Variablen i ist, entspricht, "0" oder "1" ist.
In dem Fall, in dem das Bit "0" ist, wird der Ablauf
in Schritt 2005 fortgesetzt. In dem Fall, in dem das Bit "1" ist, wird der Ablauf in Schritt 2002 fortgesetzt.
-
In
Schritt 2002 werden Daten der Spur mit einer Spurnummer,
die gleich der Variablen i ist, aus dem Speichergerät 1313 abgerufen
und in den Cache-Speicher 1311 eingegeben.
-
In
Schritt 2003 wird eine Kopie der in Schritt 2002 abgerufenen
Daten im Cache-Speicher 1311 erzeugt. Wenngleich die erzeugte
Kopie aus Daten eines Volumens besteht, das der Kopiervolumennummer
als Parameter entspricht, kann die Zeit für das Schreiben dieser Daten
in das Speichergerät 1313 beliebig
sein.
-
In
Schritt 2004 wird "0" in das in Schritt 2001 untersuchte
Bit eingesetzt.
-
In
Schritt 2005 wird untersucht, ob die der Erzeugung der
Kopie unterzogene Spur eine Spur ist, die einem äußersten Ende des Volumens entspricht. In
dem Fall, in dem sie die letzte Spur ist, wird der Ablauf in Schritt 2007 fortgesetzt.
In dem Fall, in dem sie nicht die letzte Spur ist, wird der Ablauf
in Schritt 2006 fortgesetzt.
-
In
Schritt 2006 wird 1 zu der Variablen i addiert. Dann geht
der Ablauf zu Schritt 2001, um eine Verarbeitung für die nächste Spur
auszuführen.
-
In
Schritt 2007 wird "ERZEUGUNG
ABGESCHLOSSEN" in
den Paarzustand 1403 eingesetzt, wodurch die vorliegende
Verarbeitung abgeschlossen wird.
-
21 zeigt den Ablauf der Paarunterteilungskopierverarbeitung 1307.
Die Paarunterteilungskopierverarbeitung 1307 wird von der
Paarunterteilungsverarbeitung 1303 aktiviert. Eine Volumennummer
eines Originalvolumens und eine Volumennummer eines Kopiervolumens
werden als Parameter gegeben.
-
In
Schritt 2100 wird eine Variable i auf eine Spurnummer einer
führenden
Spur des Originalvolumens gesetzt.
-
In
Schritt 2101 werden Paarinformationen 1310 mit
der Volumennummer des Originalvolumens als Parameter in der Originalvolumennummer 1401 und
der Volumennummer des Kopiervolumens als Parameter in der Kopiervolumennummer 1402 zuerst ausgewählt. Als
nächstes
wird auf die Erzeugungsausführungs-Differenzinformationen 1500 in
den Differenzinformationen 1404 der Ausgewählte-Paare-Informationen 1310 Bezug
genommen, um zu untersuchen, ob ein Bit, das einer Spur mit einer
Spurnummer, die gleich der Variablen i ist, entspricht, "0" oder "1" ist.
In dem Fall, in dem das Bit "0" ist, wird der Ablauf
in Schritt 2105 fortgesetzt. In dem Fall, in dem das Bit "1" ist, wird der Ablauf in Schritt 2102 fortgesetzt.
-
In
Schritt 2102 werden Daten der Spur mit einer Spurnummer,
die gleich der Variablen i ist, aus dem Speichergerät 1313 abgerufen
und in den Cache-Speicher 1311 eingegeben.
-
In
Schritt 2103 wird eine Kopie der in Schritt 2102 abgerufenen
Daten im Cache-Speicher 1311 erzeugt. Wenngleich die erzeugte
Kopie aus Daten eines Volumens besteht, das der Kopiervolumennummer
als Parameter entspricht, kann die Zeit für das Schreiben dieser Daten
in das Speichergerät 1313 beliebig
sein.
-
In
Schritt 2104 wird "0" in das in Schritt 2101 untersuchte
Bit eingesetzt.
-
In
Schritt 2105 wird untersucht, ob die der Erzeugung der
Kopie unterzogene Spur eine Spur ist, die einem äußersten Ende des Volumens entspricht. In
dem Fall, in dem sie die letzte Spur ist, wird der Ablauf in Schritt 2107 fortgesetzt.
In dem Fall, in dem sie nicht die letzte Spur ist, wird der Ablauf
in Schritt 2106 fortgesetzt.
-
In
Schritt 2106 wird 1 zu der Variablen i addiert. Dann geht
der Ablauf zu Schritt 2001, um eine Verarbeitung für die nächste Spur
auszuführen.
-
In
Schritt 2107 wird "UNTERTEILUNG
ABGESCHLOSSEN" in
den Paarzustand 1403 eingesetzt, wodurch die vorliegende
Verarbeitung abgeschlossen wird.
-
22 zeigt den Ablauf der Ausdehnungsaktualisierungskopierverarbeitung 1308.
Die Ausdehnungsaktualisierungskopierverarbeitung 1308 wird
von der Ausdehnungsaktualisierungsverarbeitung 1304 aktiviert.
Eine Volumennummer eines Originalvolumens, eine Volumennummer eines
Kopiervolumens, eine Anfangsadresse eines Bereichs in der Art eines
Datensatzes oder einer Datei und eine Endadresse davon sind als
Parameter gegeben.
-
In
Schritt 2200 wird eine Variable i auf eine Spurnummer einer
Spur gesetzt, die der als Parameter gegebenen Anfangsadresse entspricht.
-
In
Schritt 2201 werden Paarinformationen 1310 mit
der Volumennummer des Originalvolumens als Parameter in der Originalvolumennummer 1401 und
der Volumennummer des Kopiervolumens als Parameter in der Kopiervolumennummer 1402 zuerst ausgewählt. Als
nächstes
wird auf die Unterteilungs ausführungs-Differenzinformationen 1501 in
den Differenzinformationen 1404 der Ausgewählte-Paare-Informationen 1310 Bezug
genommen, um zu untersuchen, ob ein Bit, das einer Spur mit einer
Spurnummer, die gleich der Variablen i ist, entspricht, "0" oder "1" ist.
In dem Fall, in dem das Bit "0" ist, wird der Ablauf
in Schritt 2205 fortgesetzt. In dem Fall, in dem das Bit "1" ist, wird der Ablauf in Schritt 2202 fortgesetzt.
-
In
Schritt 2202 werden Daten der Spur mit einer Spurnummer,
die gleich der Variablen i ist, aus dem Speichergerät 1313 abgerufen
und in den Cache-Speicher 1311 eingegeben.
-
In
Schritt 2203 wird eine Kopie der in Schritt 2202 abgerufenen
Daten im Cache-Speicher 1311 erzeugt. Wenngleich die erzeugte
Kopie aus Daten eines der Kopiervolumennummer als Parameter entsprechenden
Volumens besteht, kann die Zeit des Schreibens dieser Daten in das
Speichergerät 1313 beliebig
sein.
-
In
Schritt 2204 wird "0" in das in Schritt 2201 untersuchte
Bit gesetzt.
-
In
Schritt 2205 wird untersucht, ob die der Erzeugung der
Kopie unterzogene Spur eine Spur ist, die der als Parameter gegebenen
Endadresse entspricht. In dem Fall, in dem sie die entsprechende Spur
ist, wird der Ablauf in Schritt 2207 fortgesetzt. In dem
Fall, in dem sie nicht die entsprechende Spur ist, wird der Ablauf
in Schritt 2206 fortgesetzt.
-
In
Schritt 2206 wird 1 zur Variablen i addiert. Dann geht
der Ablauf zu Schritt 2201, um eine Verarbeitung für die nächste Spur
auszuführen.
-
In
Schritt 2207 werden Bits der Aktualisierungsausführungs-Differenzinformationen 1502 in
einem Bereich zwischen der Anfangsadresse und der Endadresse als
Parameter zuerst abgerufen, und die abgerufenen Werte werden in
die Unterteilungsausführungsinformationen 1501 geschrieben.
Als nächstes
wird "0" in das Verwendungshinweiszeichen 1406 der
Ausdehnungsinformationen 1405 gesetzt, um die Ausdehnungs informationen 1405 ungültig zu
machen, wodurch die vorliegende Verarbeitung abgeschlossen wird.
-
VIII. Achte Ausführungsform
-
23 ist ein Blockdiagramm eines Systems gemäß einer
achten Ausführungsform
der vorliegenden Erfindung. Das System weist einen Host 2300,
eine Steuerung 2312 und Speichergeräte 2313 auf. Der Host 2300 gibt
entsprechend einer Benutzeranweisung oder einem Benutzerprogramm
verschiedene Anforderungen an die Steuerung 2312 aus. Die
Speichergeräte 2313 speichern
Daten. Die Steuerung 2312 führt das Lesen von Daten aus
dem Speichergerät 2313 oder
das Schreiben von Daten in das Speichergerät 2313 entsprechend
einer Anforderung vom Host 2300 aus.
-
Die
Steuerung 2312 besteht aus Steuerprozessoren 2301,
einem Steuerspeicher 2309 und einem Cache-Speicher 2311.
-
Der
Steuerprozessor 2301 steuert die Steuerung 2312.
Eine Paarerzeugungsverarbeitung 2302, eine Paarunterteilungsverarbeitung 2303,
eine Schreibverarbeitung 2305, eine Paarerzeugungskopierverarbeitung 2306 und
eine Paarunterteilungskopierverarbeitung 2307 werden in
dem Steuerprozessor 2301 ausgeführt.
-
Der
Steuerspeicher 2309 speichert Steuerinformationen, wie
Paarinformationen 2310, die vom Steuerprozessor 2301 benötigt werden,
um die Steuerung 2312 zu steuern. Der Cache-Speicher 2311 speichert
vom Host 2300 empfangene Daten und aus dem Speichergerät 2313 gelesene
Daten zwischen.
-
24 zeigt die Datenstruktur der Paarinformationen 2310.
Die Paarinformationen 2310 bestehen aus einem Verwendungshinweiszeichen 2400, einer
Originalvolumennummer 2401, einer Kopiervolumennummer 2402,
einem Paarzustand 2403, Differenzinformationen 2404,
einer Anfangsadresse 2405 und einer Endadresse 2406.
Das Verwendungshinweiszeichen 2400 ist ein Hinweiszeichen,
welches angibt, ob die entsprechenden Paarinformationen 2310 verwendet
werden, d. h. ob Informationen in den entsprechenden Paarinformationen 2310 gültig sind.
Wenn das Verwendungshinweiszeichen 2400"1" ist, wird die Gültigkeit angegeben. Wenn es "0" ist, wird die Ungültigkeit angegeben. Die Originalvolumennummer 2401 gibt
eine Nummer eines Volumens an, das als ein Original dient, wenn
eine Kopie des Volumens entsprechend einer Anforderung vom Host 2300 zu
erzeugen ist. Die Kopiervolumennummer 2402 gibt eine Nummer
eines Volumens an, das mit einer Kopie von Daten eines Volumens
gespeichert wird, das als ein Original dient, wenn eine Kopie des
Volumens entsprechend einer Anforderung vom Host 2300 zu
erzeugen ist. Der Paarzustand 2403 gibt an, bis wohin ein
Volumenkopiererzeugungsprozess fortgeschritten ist. Der Paarzustand 2403 hat vier
Werte "WIRD ERZEUGT", "ERZEUGUNG ABGESCHLOSSEN", "WIRD GETEILT" und "UNTERTEILUNG ABGESCHLOSSEN". Die Differenzinformationen 2404 sind
Informationen, welche Orte darstellen, an denen Daten zwischen einem
durch die Originalvolumennummer 2401 angegebenen Volumen
und einem durch die Kopiervolumennummer 2402 angegebenen
Volumen verschieden sind. Die Anfangsadresse 2405 ist eine
Adresse, welche einen äußersten
Anfang eines Bereichs in der Art eines Datensatzes oder einer Datei
angibt, und die Endadresse 2406 ist eine Adresse, welche
ein äußerstes
Ende des Bereichs in der Art eines Datensatzes oder einer Datei
angibt.
-
25 zeigt die Struktur der Differenzinformationen 2404.
Die Differenzinformationen 2404 bestehen aus mehreren Bits.
Ein Bit entspricht einer Spur. Wenn der Bitwert "0" ist,
wird angegeben, dass Daten der entsprechenden Spur zwischen einem durch
die Originalvolumennummer 2401 angegebenen Volumen und
einem durch die Kopiervolumennummer 2402 angegebenen Volumen übereinstimmen.
Wenn der Bitwert "1" ist, wird angegeben,
dass Daten der entsprechenden Spur nicht übereinstimmen. Natürlich kann
veranlasst werden, dass ein Bit einer anderen Einheit entspricht.
-
26 zeigt den Ablauf der Paarerzeugungsverarbeitung 2302.
Der Host 2300 gibt eine Paarerzeugungsanforderung an die
Steuerung 2312 aus, wenn die Steuerung 2312 veranlasst wird,
die Kopie eines bestimmten Bereichs in der Art eines Datensatzes
oder einer Datei zu erzeugen. Wenn die Paarerzeugungsanforderung
vom Host 2300 empfangen wird, leitet der Steuerprozessor 2301 eine Paarerzeugungsverarbeitung 2302 ein.
Die Paarerzeugungsanforderung hat vier Parameter, nämlich eine
Volumennummer eines Volumens, einschließlich eines Bereichs in der
Art eines Datensatzes oder einer Datei, wovon eine Kopie zu erzeugen
ist (als Kopierursprungsvolumen bezeichnet), eine Volumennummer
eines Volumens, in dem kopierte Daten zu speichern sind (als Kopierzielvolumen
bezeichnet), eine Adresse, welche einen äußersten Anfang des Bereichs
in der Art eines Datensatzes oder einer Datei angibt, wovon eine
Kopie zu erzeugen ist, und eine Adresse, welche ein äußerstes
Ende des Bereichs in der Art eines Datensatzes oder einer Datei angibt,
wovon eine Kopie zu erzeugen ist. Wenn ein Datensatz, eine Datei
oder dergleichen durch mehrere Bereiche in einem Volumen gebildet
wird, übergibt der
Host 2300 mehrere Sätze
von Anfangs- und Endadressen als Parameter an die Steuerung 2312.
-
In
Schritt 2600 werden Nicht-verwendete-Paare-Informationen 2310 mit
dem Verwendungshinweiszeichen 2400 von "0" ausgewählt. In
den Ausgewählte-Paare-Informationen 2310 wird
das Verwendungshinweiszeichen 2400 auf "1" gesetzt,
eine Volumennummer eines vom Host 2300 empfangenen Kopierursprungsvolumens
in die Originalvolumennummer 2401 eingesetzt, eine Volumennummer eines
vom Host 2300 empfangenen Kopierzielvolumens in die Kopiervolumennummer 2402 eingesetzt, "WIRD ERZEUGT" in den Paarzustand 2403 eingesetzt,
alle Bits in den Differenzinformationen 2404 auf "1" gesetzt, die Adresse, welche den äußersten
Anfang des Bereichs in der Art des Datensatzes oder der Datei, der
oder die von dem Host 2300 empfangen wurde, in die Anfangsadresse 2405 eingesetzt und
die Adresse, welche das äußerste Ende
des Bereichs in der Art des Datensatzes oder der Datei, der oder
die vom Host 2300 empfangen wurde, in die Endadresse 2406 eingesetzt.
Wenn mehrere Sätze
von Anfangs- und Endadressen als Parameter gegeben sind, wird der
vorliegende Schritt wiederholt, so dass die Parameter im Steuerspeicher 2309 gespeichert werden.
In Schritt 2601 wird eine Paarerzeugungskopierverarbeitung 2306 aktiviert,
wodurch die vorliegende Paarerzeugungsverarbeitung abgeschlossen wird.
-
27 zeigt den Ablauf der Paarunterteilungsverarbeitung 2303.
Der Host 2300 gibt eine Paarunterteilungsanforderung an
die Steuerung 2312 aus, wenn ein Bereich in der Art eines
Datensatzes oder einer Datei im Kopierursprungsvolumen festzulegen
ist. Wenn die Paarunterteilungsanforderung vom Host 2300 empfangen
wird, beginnt der Steuerprozessor 2301 mit einer Paarunterteilungsverarbeitung 2303.
Die Paarunterteilungsanforderung hat vier Parameter, nämlich eine
Volumennummer eines Kopierursprungsvolumens, eine Volumennummer
eines Kopierzielvolumens, eine Adresse, welche einen äußersten
Anfang des Bereichs in der Art eines Datensatzes oder einer Datei
angibt, der oder die festzulegen ist, und eine Adresse, welche ein äußerstes
Ende des Bereichs in der Art eines Datensatzes oder einer Datei
angibt, der oder die festzulegen ist.
-
In
Schritt 2700 werden Paarinformationen 2310 mit
der Originalvolumennummer 2401, die der Volumennummer des
Kopierursprungsvolumens entspricht, und der Kopiervolumennummer 2402,
die der Volumen des Kopierzielvolumens entspricht, zuerst ausgewählt, und "WIRD UNTERTEILT" wird in den Paarzustand 2403 der
Ausgewählte-Paare-Informationen 2310 eingesetzt.
Als nächstes
wird eine Paarunterteilungskopierverarbeitung 2307 aktiviert,
wodurch die vorliegende Paarunterteilungsverarbeitung abgeschlossen
wird.
-
28 zeigt den Ablauf der Schreibverarbeitung 2305.
Wenn eine Schreibanforderung vom Host 2300 empfangen wird,
leitet der Steuerprozessor 2301 eine Schreibverarbeitung 2305 ein.
Die Schreibanforderung hat drei Parameter, d. h. Schreibdaten, eine
Volumennummer eines Volumens, in dem die Schreibdaten zu speichern
sind, und eine Adresse in dem Volumen, in dem die Schreibdaten gespeichert
sind.
-
In
Schritt 2800 werden aus Paarinformationen 2310,
die das Verwendungshinweiszeichen 2400 von "1" aufweisen oder verwendet werden, Paarinformationen 2310 ausgewählt, welche
die Originalvolumennummer 2401, die der als Parameter empfangenen
Volumennummer entspricht, und die Anfangsadresse 2405 und
die Endadresse 2406, zwischen denen die als Parameter empfangene
Adresse enthalten ist, aufweisen. In dem Fall, in dem Paarinformationen 2310,
welche die vorstehend erwähnte
Bedingung erfüllen,
nicht existieren, wird der Ablauf in Schritt 2807 fortgesetzt.
In dem Fall, in dem Paarinformationen 2310, welche die
vorstehend erwähnte Bedingung
erfüllen,
existieren, wird der Ablauf in Schritt 2801 fortgesetzt.
-
In
Schritt 2801 wird auf den Paarzustand 2403 in
den in Schritt 2800 ausgewählten Paarinformationen 2310 Bezug
genommen. In dem Fall, in dem der Paarzustand 2403 "WIRD UNTERTEILT" ist, wird der Ablauf
in Schritt 2802 fortgesetzt. In dem Fall, in dem der Paarzustand 2403 nicht "WIRD UNTERTEILT" ist, wird der Ablauf
in Schritt 2808 fortgesetzt.
-
In
Schritt 2802 wird auf die Differenzinformationen 2404 der
in Schritt 2800 ausgewählten
Paarinformationen 2310 Bezug genommen. Es wird untersucht,
ob ein Bit, das einer Spur entspricht, die der als Parameter empfangenen
Adresse entspricht, "1" ist. In dem Fall,
in dem das Bit "1" ist, wird der Ablauf in
Schritt 2803 fortgesetzt. In dem Fall, in dem das Bit "0" ist, wird der Ablauf in Schritt 2807 fortgesetzt.
-
In
Schritt 2803 werden Daten der Spur, die der als Parameter
empfangenen Adresse entspricht, von dem Speichergerät 2313 abgerufen
und in den Cache-Speicher 2311 eingegeben.
-
In
Schritt 2804 wird eine Kopie der in Schritt 2803 abgerufenen
Daten im Cache-Speicher 2311 erzeugt. Wenngleich die erzeugte
Kopie aus Daten eines durch die Kopiervolumennummer 2402 angegebenen
Volumens besteht, kann die Zeit für das Schreiben dieser Daten
in das Speichergerät 2313 beliebig
sein.
-
In
Schritt 2805 wird "0" in das in Schritt 2802 untersuchte
Bit eingesetzt.
-
In
Schritt 2807 werden die als Parameter empfangenen Schreibdaten
im Cache-Speicher 2311 gespeichert, wodurch die vorliegende
Verarbeitung abgeschlossen wird.
-
In
Schritt 2808 wird auf den Paarzustand 2403 in
den in Schritt 2800 ausgewählten Paarinformationen 2310 Bezug
genommen. In dem Fall, in dem der Paarzustand 2403 "WIRD ERZEUGT" oder "ERZEUGUNG ABGESCHLOSSEN" ist, wird der Ablauf
in Schritt 2806 fortgesetzt. In dem Fall, in dem der Paarzustand 2403 weder "WIRD ERZEUGT" noch "ERZEUGUNG ABGESCHLOSSEN" ist, wird der Ablauf
in Schritt 2807 fortgesetzt.
-
In
Schritt 2806 wird "1" in ein Bit der Differenzinformationen 2404,
die der Spur entsprechen, welche der als Parameter empfangenen Adresse entspricht,
eingesetzt.
-
29 zeigt den Ablauf der Paarerzeugungskopierverarbeitung 2306.
Die Paarerzeugungskopierverarbeitung 2306 wird von der
Paarerzeugungsverarbeitung 2302 aktiviert. Eine Volumennummer
eines Kopierursprungsvolumens, eine Volumennummer eines Kopierzielvolumens,
eine Adresse, welche einen äußersten
Anfang des Bereichs in der Art eines Datensatzes oder einer Datei
angibt, und eine Adresse, welche ein äußerstes Ende des Bereichs in
der Art eines Datensatzes oder einer Datei angibt, sind als Parameter
gegeben.
-
In
Schritt 2900 werden aus Paarinformationen 2310,
welche das Verwendungshinweiszeichen 2400 von "1" aufweisen oder verwendet werden, zuerst
Paarinformationen 2310, welche die Originalvolumennummer 2401 aufweisen,
die dem als Parameter gegebenen Kopierursprungsvolumen entspricht, die
Kopiervolumennummer 2402, welche der als Parameter gegebenen
Kopierzielvolumennummer entspricht, die Anfangsadresse 2405,
welche der den äußersten
Anfang angebenden Adresse als Parameter entspricht, und die Endadresse 2406,
welche der das äußerste Ende
angebenden Adresse als Parameter entspricht, ausgewählt. Als
nächstes
wird eine Variable i auf eine Spurnummer einer Spur gesetzt, die
der Anfangsadresse 2405 der Ausgewählte-Paare-Informationen 2310 entspricht.
-
In
Schritt 2901 wird auf die Differenzinformationen 2404 der
in Schritt 2900 ausgewählten
Paarinformationen 2310 Bezug genommen, um zu untersuchen,
ob ein Bit, das einer Spur entspricht, die eine Spurnummer aufweist,
welche gleich der Variablen i ist, "0" oder "1" ist. In dem Fall, in dem das Bit "0" ist, wird der Ablauf in Schritt 2905 fortgesetzt.
In dem Fall, in dem das Bit "1" ist, wird der Ablauf
in Schritt 2902 fortgesetzt.
-
In
Schritt 2902 werden Daten der Spur mit einer Spurnummer,
die gleich der Variablen i ist, aus dem Speichergerät 2313 abgerufen
und in den Cache-Speicher 2311 eingegeben.
-
In
Schritt 2903 wird eine Kopie der in Schritt 2902 abgerufenen
Daten im Cache-Speicher 2311 erzeugt. Wenngleich die erzeugte
Kopie aus Daten eines Volumens besteht, welches der als Parameter gegebenen
Kopierzielvolumennummer entspricht, kann die Zeit für das Schreiben
dieser Daten in das Speichergerät 2313 beliebig
sein.
-
In
Schritt 2904 wird "0" in das in Schritt 2901 untersuchte
Bit eingesetzt.
-
In
Schritt 2905 wird untersucht, ob die der Erzeugung der
Kopie unterzogene Spur eine der Endadresse 2406 entsprechende
Spur ist. In dem Fall, in dem sie die Endspur ist, wird der Ablauf
in Schritt 2907 fortgesetzt. In dem Fall, in dem sie nicht
die Endspur ist, wird der Ablauf in Schritt 2906 fortgesetzt.
-
In
Schritt 2906 wird 1 zu der Variablen i addiert. Dann geht
der Ablauf zu Schritt 2901, um eine Verarbeitung für die nächste Spur
auszuführen.
-
In
Schritt 2907 wird "ERZEUGUNG
ABGESCHLOSSEN" in
den Paarzustand 2403 eingesetzt, wodurch die vorliegende
Verarbeitung abgeschlossen wird.
-
30 zeigt den Ablauf der Paarunterteilungskopierverarbeitung 2307.
Die Paarunterteilungskopierverarbeitung 2307 wird von der
Paarunterteilungsverarbeitung 2303 aktiviert. Eine Volumennummer
eines Originalvolumens und eine Volumennummer eines Kopiervolumens
werden als Parameter gegeben.
-
In
Schritt 3000 werden aus Paarinformationen 2310,
welche das Verwendungshinweiszeichen 2400 von "1" aufweisen oder verwendet werden, zuerst
Paarinformationen 2310, welche die Originalvolumennummer 2401 aufweisen,
die dem als Parameter gegebenen Kopierursprungsvolumen entspricht, die
Kopiervolumennummer 2402, welche der als Parameter gegebenen
Kopierzielvolumennummer entspricht, die Anfangsadresse 2405,
welche der den äußersten
Anfang angebenden Adresse als Parameter entspricht, und die Endadresse 2406,
welche der das äußerste Ende
angebenden Adresse als Parameter entspricht, ausgewählt. Als
nächstes
wird eine Variable i auf eine Spurnummer einer Spur gesetzt, die
der Anfangsadresse 2405 der Ausgewählte-Paare-Informationen 2310 entspricht.
-
In
Schritt 3001 wird auf die Differenzinformationen 2404 der
in Schritt 2900 ausgewählten
Paarinformationen 2310 Bezug genommen, um zu untersuchen,
ob ein Bit, das einer Spur entspricht, die eine Spurnummer aufweist,
welche gleich der Variablen i ist, "0" oder "1" ist. In dem Fall, in dem das Bit "0" ist, wird der Ablauf in Schritt 3005 fortgesetzt.
In dem Fall, in dem das Bit "1" ist, wird der Ablauf
in Schritt 3002 fortgesetzt.
-
In
Schritt 3002 werden Daten der Spur mit einer Spurnummer,
die gleich der Variablen i ist, aus dem Speichergerät 2313 abgerufen
und in den Cache-Speicher 2311 eingegeben.
-
In
Schritt 3003 wird eine Kopie der in Schritt 3002 abgerufenen
Daten im Cache-Speicher 2311 erzeugt. Wenngleich die erzeugte
Kopie aus Daten eines Volumens besteht, welches der als Parameter gegebenen
Kopierzielvolumennummer entspricht, kann die Zeit für das Schreiben
dieser Daten in das Speichergerät 2313 beliebig
sein.
-
In
Schritt 3004 wird "0" in das in Schritt 3001 untersuchte
Bit eingesetzt.
-
In
Schritt 3005 wird untersucht, ob die der Erzeugung der
Kopie unterzogene Spur eine der Endadresse 2406 entsprechende
Spur ist. In dem Fall, in dem sie die Endspur ist, wird der Ablauf
in Schritt 3007 fortgesetzt. In dem Fall, in dem sie nicht
die Endspur ist, wird der Ablauf in Schritt 3006 fortgesetzt.
-
In
Schritt 3006 wird 1 zu der Variablen i addiert. Dann geht
der Ablauf zu Schritt 3001, um eine Verarbeitung für die nächste Spur
auszuführen.
-
In
Schritt 3007 wird "UNTERTEILUNG
ABGESCHLOSSEN" in
den Paarzustand 2403 eingesetzt, wodurch die vorliegende
Verarbeitung abgeschlossen wird.
-
IX. Neunte Ausführungsform
-
31 ist ein Blockdiagramm eines Systems gemäß einer
neunten Ausführungsform
der vorliegenden Erfindung. Das System weist einen Host 3100,
eine Steuerung 3101 und Speichergeräte 3112 auf. Der Host 3100 gibt
entsprechend einer Benutzeranweisung oder einem Benutzerprogramm
verschiedene Anforderungen an die Steuerung 3101 aus. Die
Speichergeräte 3112 speichern
Daten. Die Steuerung 3101 führt das Lesen von Daten aus
dem Speichergerät 3112 oder
das Schreiben von Daten in das Speichergerät 3112 entsprechend
einer Anforderung vom Host 3100 aus.
-
Die
Steuerung 3101 besteht aus Steuerprozessoren 3102,
einem Steuerspeicher 3110 und einem Cache-Speicher 3111.
-
Der
Steuerprozessor 3102 steuert die Steuerung 3101.
Eine Paarerzeugungsverarbeitung 3103, eine Ausdehnungsunterteilungsverarbeitung 3104, eine
Ausdehnungskopplungsverarbeitung 3105, eine Schreibverarbeitung 3106,
eine Ausdehnungsunterteilungskopierverarbeitung 3107, eine
Ausdehnungskopplungskopierverarbeitung 3108 und eine Paarerzeugungskopierverarbeitung 3113 werden
in dem Steuerprozessor 3102 ausgeführt. Der Steuerspeicher 3110 speichert Steuerinformationen,
wie Paarinformationen 3109, die vom Steuerprozessor 3102 benötigt werden,
um die Steuerung 3101 zu steuern. Der Cache-Speicher 3111 speichert
vom Host 3100 empfangene Daten und aus dem Speichergerät 3112 gelesene
Daten zwischen.
-
32 zeigt die Datenstruktur der Paarinformationen 3109.
Die Paarinformationen 3109 bestehen aus einem Verwendungshinweiszeichen 3201, einer
Originalvolumennummer 3202, einer Kopiervolumennummer 3203,
Differenzinformationen 3204, einem Paarzustand 3205 und
Ausdehnungsinformationen 3206. Das Verwendungshinweiszeichen 3201 ist
ein Hinweiszeichen, welches angibt, ob die entsprechenden Paarinformationen 3109 verwendet werden,
d. h. ob Informationen in den entsprechenden Paarinformationen 3109 gültig sind.
Wenn das Verwendungshinweiszeichen 3201 "1" ist, wird die Gültigkeit angegeben. Wenn es "0" ist, wird die Ungültigkeit angegeben. Die Originalvolumennummer 3202 gibt
eine Nummer eines Volumens an, das als ein Original dient, wenn
eine Kopie des Volumens entsprechend einer Anforderung vom Host 3100 zu erzeugen
ist. Die Kopiervolumennummer 3203 gibt eine Nummer eines
Volumens an, das mit einer Kopie von Daten eines Volumens gespeichert
wird, das als ein Original dient, wenn eine Kopie des Volumens entsprechend
einer Anforderung vom Host 3100 zu erzeugen ist. Die Differenzinformationen 3204 sind Informationen,
welche Orte darstellen, an denen Daten zwischen einem durch die
Originalvolumennummer 3202 angegebenen Volumen und einem
durch die Kopiervolumennummer 3203 angegebenen Volumen
verschieden sind. Der Paarzustand 3205 gibt an, bis wohin
ein Volumenkopiererzeugungsprozess fortgeschritten ist. Der Paarzustand 3205 hat
fünf Werte "WIRD ERZEUGT", "ERZEUGUNG ABGESCHLOSSEN", "AUSDEHNUNGSUNTERTEILUNG WIRD
AUSGEFÜHRT", "AUSDEHNUNGSUNTERTEILUNG
ABGESCHLOSSEN" und "AUSDEHNUNGSKOPPLUNG
WIRD AUSGEFÜHRT". Die Ausdehnungsinformationen 3206 sind
Informationen, welche einen Ort in einem Volumen angeben, in dem ein
Bereich in der Art eines Datensatzes oder einer Datei gespeichert
ist. Die Ausdehnungsinformationen 3206 bestehen aus einer
Anfangsadresse 3207 und einer Endadresse 3208.
Die Anfangsadresse 3207 ist eine Adresse, welche einen äußersten
Anfang eines Bereichs in der Art eines Datensatzes oder einer Datei
angibt, und die Endadresse 3208 ist eine Adresse, welche
ein äußerstes
Ende des Bereichs in der Art eines Datensatzes oder einer Datei angibt.
-
33 zeigt die Struktur der Differenzinformationen 3204.
Die Differenzinformationen 3204 bestehen aus zwei Arten
von Bitmaps, welche Erzeugungsausführungs-Differenzinformationen 3300 und Unterteilungsausführungs-Differenzinformationen 3301 umfassen.
Ein Bit entspricht einer Spur. Wenn der Bitwert "0" ist,
wird angegeben, dass Daten der entsprechenden Spur zwischen einem
durch die Originalvolumennummer 3202 angegebenen Volumen und
einem durch die Kopiervolumennummer 3203 angegebenen Volumen übereinstimmen.
Wenn der Bitwert "1" ist, wird angegeben,
dass Daten der entsprechenden Spur nicht übereinstimmen. Natürlich kann
veranlasst werden, dass ein Bit einer anderen Einheit entspricht.
-
34 zeigt den Ablauf der Paarerzeugungsverarbeitung 3103.
Der Host 3100 gibt eine Paarerzeugungsanforderung an die
Steuerung 3101 aus, wenn die Steuerung 3101 veranlasst
wird, die Kopie eines bestimmten Volumens zu erzeugen. Wenn die
Paarerzeugungsanforderung vom Host 3100 empfangen wird,
leitet der Steuerprozessor 3102 eine Paarerzeugungsverarbeitung 3103 ein. Die
Paarerzeugungsanforderung hat zwei Parameter, d. h. eine Volumennummer
eines Volumens, dessen Kopie zu erzeugen ist (als ein Originalvolumen bezeichnet),
und eine Volumennummer eines Volumens, in dem kopierte Daten zu
speichern sind (als ein Kopiervolumen bezeichnet).
-
In
Schritt 3400 werden Nicht-verwendete-Paare-Informationen 3109,
welche das Verwendungshinweiszeichen 3201 von "0" aufweisen, ausgewählt. In den Ausgewählte-Paare-Informationen 3109 wird
das Verwendungshinweiszeichen 3201 auf "1" gesetzt,
eine Volumennummer eines vom Host 3100 empfangenen Originalvolumens
in die Originalvolumennummer 3202 eingesetzt, eine Volumennummer
eines vom Host 3100 empfangenen Kopiervolumens in die Kopiervolumennummer 3203 eingesetzt, "WIRD ERZEUGT" in den Paarzustand 3205 eingesetzt,
alle Bits der Erzeugungsausführungsinformationen 3300 in
den Differenzinformationen 3204 auf "1" gesetzt
und alle Bits der Unterteilungsausführungsinformationen 3301 auf "0" gesetzt.
-
In
Schritt 3401 wird eine Paarerzeugungskopierverarbeitung 3113 aktiviert,
wodurch die vorliegende Paarerzeugungsverarbeitung abgeschlossen wird.
-
35 zeigt den Ablauf der Ausdehnungsunterteilungsverarbeitung 3104.
Der Host 3100 gibt eine Ausdehnungsunterteilungsanforderung
aus, wenn Daten, die in einem Kopiervolumen zu speichern sind, in
Bezug auf einen spezifizierten Bereich eines Volumens festzulegen
sind. Wenn die vom Host 3100 ausgegebene Ausdehnungsunterteilungsanforderung
empfangen wird, leitet der Steuerprozessor 3102 eine Ausdehnungsunterteilungsverarbeitung
ein. Die Ausdehnungsunterteilungsanforderung hat Parameter, die
aus einer Volumennummer eines Originalvolumens, einer Volumennummer
eines Kopiervolumens, einer Anfangsadresse, welche einen äußersten
Anfang von einem oder mehreren Bereichen, für die Daten festzulegen sind,
angibt, und einer Endadresse, welche ein äußerstes Ende des einen Bereichs
oder der mehreren Bereiche, für die
Daten festzulegen sind, angibt, bestehen.
-
In
Schritt 3500 werden zuerst Paarinformationen 3109 ausgewählt, welche
die der Volumennummer des Originalvolumens entsprechende Originalvolumennummer 3202 als
Parameter und die der Volumennummer des Kopiervolumens entsprechende Kopiervolumennummer 3203 als
Parameter aufweisen. Als nächstes
wird "AUSDEHNUNGSUNTERTEILUNG
WIRD AUSGEFÜHRT" in den Paarzustand 3205 der
Ausgewählte-Paare-Informationen 3109 eingesetzt.
Als nächstes
werden die als Parameter empfangene Anfangsadresse in die Anfangsadresse 3207 der
Ausdehnungs informationen 3206 der Ausgewählte-Paare-Informationen 3109 eingesetzt
und die als Parameter empfangene Endadresse in die Endadresse 3208 davon
eingesetzt.
-
In
Schritt 3501 wird eine Ausdehnungsunterteilungskopierverarbeitung
aktiviert, wodurch die vorliegende Ausdehnungsunterteilungsverarbeitung
abgeschlossen wird.
-
36 zeigt den Ablauf der Ausdehnungskopplungsverarbeitung 3105.
Wenn eine vom Host 3100 ausgegebene Ausdehnungskopplungsanforderung
empfangen wird, leitet der Steuerprozessor 3102 eine Ausdehnungskopplungsverarbeitung 3105 ein.
Die Ausdehnungskopplungsanforderung hat Parameter, die aus einer
Volumennummer eines Originalvolumens und einer Volumennummer eines
Kopiervolumens zusammengesetzt sind.
-
In
Schritt 3600 werden zuerst Paarinformationen 3109 ausgewählt, welche
die der Volumennummer des Originalvolumens entsprechende Originalvolumennummer 3202 als
Parameter und die der Volumennummer des Kopiervolumens entsprechende Kopiervolumennummer 3203 als
Parameter aufweisen. Als nächstes
wird "AUSDEHNUNGSKOPPLUNG
WIRD AUSGEFÜHRT" in den Paarzustand 3205 der
ausgewählten
Paarinformationen 3109 eingesetzt. Als nächstes wird
eine Ausdehnungskopplungskopierverarbeitung 3108 aktiviert,
wodurch die vorliegende Ausdehnungskopplungsverarbeitung abgeschlossen
wird.
-
37 zeigt den Ablauf der Paarerzeugungskopierverarbeitung 3113.
Die Paarerzeugungskopierverarbeitung 3113 wird von der
Paarerzeugungsverarbeitung 3103 aktiviert. Eine Volumennummer
eines Originalvolumens und eine Volumennummer eines Kopiervolumens
werden als Parameter gegeben.
-
In
Schritt 3700 wird eine Variable i auf eine Spurnummer einer
führenden
Spur des Originalvolumens als Parameter gesetzt.
-
In
Schritt 3701 werden zuerst Paarinformationen 1310 ausgewählt, welche
die der Volumennummer des Originalvolumens entsprechende Originalvolumennummer 3202 als
Parameter und die der Volumennummer des Kopiervolumens entsprechende Kopiervolumennummer 3203 als
Parameter aufweisen. Als nächstes
wird auf die Erzeugungsausführungs-Differenzinformationen 3300 in
den Differenzinformationen 3204 der Ausgewählte-Paare-Informationen 3109 Bezug
genommen, um zu untersuchen, ob ein Bit, das einer Spur entspricht,
die eine Spurnummer aufweist, welche gleich der Variablen i ist, "0" oder "1" ist.
In dem Fall, in dem das Bit "0" ist, wird der Ablauf
in Schritt 3705 fortgesetzt. In dem Fall, in dem das Bit "1" ist, wird der Ablauf in Schritt 3702 fortgesetzt.
-
In
Schritt 3702 werden Daten der Spur mit einer Spurnummer,
die gleich der Variablen i ist, aus dem Speichergerät 3112 abgerufen
und in den Cache-Speicher 3111 eingegeben.
-
In
Schritt 3703 wird eine Kopie der in Schritt 3702 abgerufenen
Daten im Cache-Speicher 3111 erzeugt. Wenngleich die erzeugte
Kopie aus Daten eines Volumens besteht, welches der als Parameter gegebenen
Kopiervolumennummer entspricht, kann die Zeit für das Schreiben dieser Daten
in das Speichergerät 3112 beliebig
sein.
-
In
Schritt 3704 wird "0" in das in Schritt 3701 untersuchte
Bit eingesetzt.
-
In
Schritt 3705 wird untersucht, ob die Spur mit einer Spurnummer,
die gleich der Variablen i ist, eine Spur ist, welche einem äußersten
Ende eines Volumens entspricht, das der Volumennummer des Originalvolumens
als Parameter entspricht. In dem Fall, in dem dies die letzte Spur
ist, wird der Ablauf in Schritt 3707 fortgesetzt. In dem
Fall, in dem dies nicht die letzte Spur ist, wird der Ablauf in
Schritt 3706 fortgesetzt.
-
In
Schritt 3706 wird die Variable i aktualisiert. Dann geht
der Ablauf zu Schritt 3701, um eine Verarbeitung für die nächste Spur
auszuführen.
-
In
Schritt 3707 wird "ERZEUGUNG
ABGESCHLOSSEN" in
den Paarzustand 3205 der in Schritt 3701 ausgewählten Paarinformationen 3109 eingesetzt,
wodurch die vorliegende Verarbeitung abgeschlossen wird.
-
38 zeigt den Ablauf der Schreibverarbeitung 3106.
Wenn eine Schreibanforderung vom Host 3100 empfangen wird, leitet
der Steuerprozessor 3102 eine Schreibverarbeitung 3106 ein.
Die Schreibanforderung hat drei Parameter, d. h. Schreibdaten, eine
Volumennummer eines Volumens, in dem die Schreibdaten zu speichern
sind, und eine Adresse in dem Volumen, in dem die Schreibdaten gespeichert
sind.
-
In
Schritt 3800 werden Paarinformationen 3109 mit
der Originalvolumennummer 3202, entsprechend der als Parameter
empfangenen Volumennummer, aus Paarinformationen 3109 mit
dem Verwendungshinweiszeichen 3201 von "1" ausgewählt. In
dem Fall, in dem Paarinformationen 3109, welche die vorstehend
erwähnte
Bedingung erfüllen,
nicht existieren, wird der Ablauf in Schritt 3808 fortgesetzt. In
dem Fall, in dem Paarinformationen 3109, welche die vorstehend
erwähnte
Bedingung erfüllen,
existieren, wird der Ablauf in Schritt 3801 fortgesetzt.
-
In
Schritt 3801 wird der Paarzustand 3205 der in
Schritt 3800 ausgewählten
Paarinformationen untersucht. In dem Fall, in dem der Paarzustand 3205 "AUSDEHNUNGSUNTERTEILUNG
WIRD AUSGEFÜHRT" ist, wird der Ablauf
in Schritt 3802 fortgesetzt. Im anderen Fall wird der Ablauf
in Schritt 3807 fortgesetzt.
-
In
Schritt 3802 wird auf die Ausdehnungsinformationen 3206 in
den in Schritt 3800 ausgewählten Paarinformationen 3109 Bezug
genommen, um zu untersuchen, ob die als Parameter empfangene Adresse
innerhalb des Volumens zwischen der Anfangsadresse 3207 und
der Endadresse 3208 der Ausdehnungsinformationen enthalten
ist. In dem Fall, in dem die Adresse enthalten ist, wird der Ablauf in
Schritt 3803 fortgesetzt. In dem Fall, in dem die Adresse
nicht enthalten ist, wird der Ablauf in Schritt 3807 fortgesetzt.
-
In
Schritt 3803 wird auf die Erzeugungsausführungs-Differenzinformationen 3300 in
den Differenzinformationen 3204 der in Schritt 3800 ausgewählten Paarinformationen 3109 Bezug
genommen, um zu untersuchen, ob ein Bit, das einer Spur entspricht,
die der als Parameter empfangenen Adresse in dem Volumen entspricht, "0" oder "1" ist.
In dem Fall, in dem das Bit "0" ist, wird der Ablauf
in Schritt 3807 fortgesetzt. In dem Fall, in dem das Bit "1" ist, wird der Ablauf in Schritt 3804 fortgesetzt.
-
In
Schritt 3804 werden Daten der Spur, die der als Parameter
empfangenen Adresse in dem Volumen entspricht, aus dem Speichergerät 3112 abgerufen
und in den Cache-Speicher 3111 eingegeben.
-
In
Schritt 3805 wird eine Kopie der in Schritt 3804 abgerufenen
Daten im Cache-Speicher 3111 erzeugt. Wenngleich die erzeugte
Kopie aus Daten eines durch die Kopiervolumennummer 3203 in
den in Schritt 3800 ausgewählten Paarinformationen 3109 angegebenen
Kopiervolumens besteht, kann die Zeit für das Schreiben dieser Daten
in das Speichergerät 3112 beliebig
sein.
-
In
Schritt 3806 wird "0" in das in Schritt 3803 untersuchte
Bit eingesetzt.
-
In
Schritt 3807 wird der Paarzustand 3205 der in
Schritt 3800 ausgewählten
Paarinformationen 3109 zuerst untersucht. In dem Fall,
in dem der Paarzustand 3205 "WIRD ERZEUGT", "ERZEUGUNG ABGESCHLOSSEN" oder "AUSDEHNUNGSKOPPLUNG
WIRD AUSGEFÜHRT" ist, wird "1" in jenes Bit in den Erzeugungsausführungs-Differenzinformationen 3300 der
Differenzinformationen 3204 eingegeben, das einer Spur
entspricht, die der als Parameter empfangenen Adresse in dem Volumen
entspricht. In dem Fall, in dem der Paarzustand 3205 "AUSDEHNUNGSUNTERTEILUNG
WIRD AUSGEFÜHRT" oder "AUSDEHNUNGSUNTERTEILUNG
ABGESCHLOSSEN" ist,
wird "1" in jenes Bit in
den Unterteilungsausführungs-Differenzinformationen 3301 der
Differenzinformationen 3204 eingesetzt, das einer Spur
entspricht, welches der als Parameter empfangenen Adresse in dem
Volumen entspricht.
-
In
Schritt 3808 werden die als Parameter empfangenen Schreibdaten
im Cache-Speicher 3111 gespeichert, wodurch die vorliegende
Verarbeitung abgeschlossen wird.
-
39 zeigt den Ablauf der Ausdehnungsunterteilungskopierverarbeitung 3107.
Die Ausdehnungsunterteilungskopierverarbeitung 3107 wird
von der Ausdehnungsunterteilungs verarbeitung 3104 aktiviert.
Eine Volumennummer eines Originalvolumens und eine Volumennummer
eines Kopiervolumens sind als Parameter gegeben.
-
In
Schritt 3900 werden zuerst Paarinformationen 3109 ausgewählt, welche
die der Volumennummer des Originalvolumens entsprechende Originalvolumennummer 3202 als
Parameter und die der Volumennummer des Kopiervolumens entsprechende Kopiervolumennummer 3203 als
Parameter aufweisen. Als nächstes
werden eine Ausdehnungsinformation 3206 der Ausgewählte-Paare-Informationen 3109 ausgewählt und
eine Variable i in die Anfangsadresse 3207 eingesetzt.
-
In
Schritt 3901 wird auf die Erzeugungsausführungs-Differenzinformationen 3300 in
den Differenzinformationen 3204 der Ausgewählte-Paare-Informationen 3109 Bezug
genommen, um ein Bit zu untersuchen, das einer Spur entspricht,
die eine Spurnummer aufweist, die gleich der Variablen i ist. In
dem Fall, in dem das Bit "0" ist, wird der Ablauf
in Schritt 3905 fortgesetzt. In dem Fall, in dem das Bit "1" ist, wird der Ablauf in Schritt 3902 fortgesetzt.
-
In
Schritt 3902 werden Daten der Spur mit einer Spurnummer,
die gleich der Variablen i ist, aus dem Speichergerät 3112 abgerufen
und in den Cache-Speicher 3111 eingegeben.
-
In
Schritt 3903 wird eine Kopie der in Schritt 3902 abgerufenen
Daten im Cache-Speicher 3111 erzeugt. Wenngleich die erzeugte
Kopie aus Daten eines Volumens besteht, welches der als Parameter gegebenen
Kopiervolumennummer entspricht, kann die Zeit für das Schreiben dieser Daten
in das Speichergerät 3112 beliebig
sein.
-
In
Schritt 3904 wird "0" in das in Schritt 3901 untersuchte
Bit eingesetzt.
-
In
Schritt 3905 wird untersucht, ob die Spur mit einer Spurnummer,
die gleich der Variablen i ist, eine Spur ist, die der Endadresse 3208 entspricht.
In dem Fall, in dem sie die entsprechende Spur ist, wird der Ablauf
in Schritt 3908 fortgesetzt. In dem Fall, in dem sie nicht
die entsprechende Spur ist, wird der Ablauf in Schritt 3906 fortgesetzt.
-
In
Schritt 3906 wird 1 zu der Variablen i addiert. Dann geht
der Ablauf zu Schritt 3901, um eine Verarbeitung für die nächste Spur
auszuführen.
-
In
Schritt 3908 wird untersucht, ob die Verarbeitungen in
den Schritten 3900 bis 3906 bereits für alle Ausdehnungsinformationen 3206 der
in Schritt 3900 ausgewählten
Paarinformationen 3109 ausgeführt wurden. In dem Fall, in
dem die Verarbeitungen bereits ausgeführt wurden, wird der Ablauf
in Schritt 3907 fortgesetzt. In dem Fall, in dem es Ausdehnungsinformationen 3206 gibt,
die noch nicht verarbeitet worden sind, geht der Ablauf zu Schritt 3900, um
eine Verarbeitung für
einen durch die nächsten Ausdehnungsinformationen 3206 definierten
Bereich auszuführen.
-
In
Schritt 3907 wird "AUSDEHNUNGSUNTERTEILUNG
ABGESCHLOSSEN" in
den Paarzustand 3205 der in Schritt 3900 ausgewählten Paarinformationen 3109 eingesetzt,
wodurch die vorliegende Verarbeitung abgeschlossen wird. Dadurch
werden jene Daten eines als Parameter der Ausdehnungsunterteilungsanforderung
gegebenen spezifizierten Bereichs des Originalvolumens, wobei es
sich um Daten zu einem Zeitpunkt des Ausgebens der Ausdehnungsunterteilungsanforderung
handelt, in dem Kopiervolumen erzeugt.
-
40 zeigt den Ablauf der Ausdehnungskopplungskopierverarbeitung 3108.
Die Ausdehnungskopplungskopierverarbeitung 3108 wird von
der Ausdehnungskopplungsverarbeitung 3105 aktiviert. Eine
Volumennummer eines Originalvolumens und eine Volumennummer eines
Kopiervolumens sind als Parameter gegeben.
-
In
Schritt 4000 werden zuerst Paarinformationen 3109 ausgewählt, welche
die der Volumennummer des Originalvolumens entsprechende Originalvolumennummer 3202 als
Parameter und die der Volumennummer des Kopiervolumens entsprechende Kopiervolumennummer 3203 als
Parameter aufweisen. Als nächstes
werden eine Ausdehnungsinformation 3206 der Ausgewählte-Paare-Informationen 3109 ausgewählt und
eine Variable i in die Anfangsadresse 3207 eingesetzt.
-
In
Schritt 4001 wird auf die Unterteilungsausführungs-Differenzinformationen 3301 in
den Differenzinformationen 3204 der Ausgewählte-Paare-Informationen 3109 Bezug
genommen, um ein Bit zu untersuchen, das einer Spur entspricht,
deren Spurnummer gleich der Variablen i ist. In dem Fall, in dem das
Bit "0" ist, wird der Ablauf
in Schritt 4005 fortgesetzt. In dem Fall, in dem das Bit "1" ist, wird der Ablauf in Schritt 4002 fortgesetzt.
-
In
Schritt 4002 werden Daten der Spur mit einer Spurnummer,
die gleich der Variablen i ist, aus dem Speichergerät 3112 abgerufen
und in den Cache-Speicher 3111 eingegeben.
-
In
Schritt 4003 wird eine Kopie der in Schritt 4002 abgerufenen
Daten im Cache-Speicher 3111 erzeugt. Wenngleich die erzeugte
Kopie aus Daten eines Volumens besteht, welches der als Parameter gegebenen
Kopiervolumennummer entspricht, kann die Zeit für das Schreiben dieser Daten
in das Speichergerät 3112 beliebig
sein.
-
In
Schritt 4004 wird "0" in das in Schritt 3901 untersuchte
Bit eingesetzt.
-
In
Schritt 4005 wird untersucht, ob die Spur mit einer Spurnummer,
die gleich der Variablen i ist, eine Spur ist, die der Endadresse 3208 entspricht.
In dem Fall, in dem sie die entsprechende Spur ist, wird der Ablauf
in Schritt 4008 fortgesetzt. In dem Fall, in dem sie nicht
die entsprechende Spur ist, wird der Ablauf in Schritt 4006 fortgesetzt.
-
In
Schritt 4006 wird die Variable i aktualisiert. Dann geht
der Ablauf zu Schritt 4001, um eine Verarbeitung für die nächste Spur
auszuführen.
-
In
Schritt 4008 wird untersucht, ob die Verarbeitungen in
den Schritten 4000 bis 4006 bereits für alle Ausdehnungsinformationen 3206 der
in Schritt 4000 ausgewählten
Paarinformationen 3109 ausgeführt wurden. In dem Fall, in
dem die Verarbeitungen bereits ausgeführt worden sind, wird der Ablauf
in Schritt 4007 fortgesetzt. In dem Fall, in dem es Ausdehnungsinformationen 3206 gibt,
die noch nicht verarbeitet worden sind, geht der Ablauf zu Schritt 4000, um eine
Verarbeitung für
einen durch die nächsten Ausdehnungsinformationen 3206 definierten
Bereich auszuführen.
-
In
Schritt 4007 wird "BILDUNG
ABGESCHLOSSEN" in
den Paarzustand 3205 der in Schritt 4000 ausgewählten Paarinformationen 3109 eingesetzt,
wodurch die vorliegende Verarbeitung abgeschlossen wird.
-
Als
eine Technik zum Verbessern der Funktionsweise eines Speichergeräts ist eine
Platten-Array-Technik bekannt, mit der Schreibdaten parallel in mehrere
Platten geschrieben werden. Das in der siebten, der achten und der
neunten Ausführungsform
offenbarte Volumen kann durch die Anwendung der Platten-Array-Technik
gebildet werden. Das in der ersten, der zweiten und der dritten
Ausführungsform
offenbarte Volumen kann ein in einer einzigen Platte gespeicherter
Bereich ohne Anwendung der Platten-Array-Technik sein. Das in der
ersten, der zweiten und der dritten Ausführungsform offenbarte Originalvolumen
kann durch die Anwendung der Platten-Array-Technik gebildet werden,
während
das Kopiervolumen ein auf einer einzigen Platte ohne Anwendung der
Platten-Array-Technik gespeicherter Bereich sein kann. Das in der
ersten, der zweiten und der dritten Ausführungsform offenbarte Originalvolumen
kann ein in einer einzigen Platte ohne Anwendung der Platten-Array-Technik
gespeicherter Bereich sein, während
das Kopiervolumen durch die Anwendung der Platten-Array-Technik
gebildet werden kann.
-
Als
nächstes
wird eine zehnte Ausführungsform
der vorliegenden Erfindung beschrieben.
-
X. Zehnte Ausführungsform
-
In
einem System gemäß der zehnten
Ausführungsform
sind ein entferntes Endgerät 4302 und ein
Wartungsendgerät 4303 (siehe 41) zu dem System gemäß der siebten, der achten oder
der neunten Ausführungsform
hinzugefügt.
Das entfernte Endgerät 4302 ist
eine Vorrichtung, die verschiedene Anforderungen von einem Ort,
der von einem Ort entfernt ist, wo die Steuerung 1312 installiert
ist, an die Steuerung 1312 ausgibt. Die Steuerung 1312 hat eine
Entfernte-Endgerät-I/F 4300,
welche eine Schnittstelle für
das entfernte Endgerät 4302 ist.
Die Entfernte-Endgerät-I/F 4300 hat
eine Funktion, mit der eine vom entfernten Endgerät 4302 ausgegebene
Anforderung zum Steuerprozessor 1301 übertragen wird. Das Wartungsendgerät 4303 bildet
zusammen mit der Steuerung 1312 und dem Speichergerät 1313 ein
Speicheruntersystem 4307. Das Wartungsendgerät 4303 ist
eine Vorrichtung, welche verschiedene Anforderungen an die Steuerung 1312 ausgibt. Die
Steuerung 1312 weist eine Wartungsendgerät-I/F 4301 auf,
welche eine Schnittstelle für
das Wartungsendgerät 4303 ist.
Die Wartungsendgerät-I/F 4301 hat
eine Funktion, mit der eine vom Wartungsendgerät 4303 ausgegebene
Anforderung zum Steuerprozessor 1301 übertragen wird. Jedes von dem
entfernten Endgerät 4302 und
dem Wartungsendgerät 4303 hat
eine Funktion zum Ausgeben einer Anforderung an den Host 1300,
den Host 2300 oder den Host 3100, wie in Zusammenhang
mit der siebten, der achten oder der neunten Ausführungsform
beschrieben wurde.
-
Als
nächstes
wird eine elfte Ausführungsform
der vorliegenden Erfindung beschrieben.
-
XI. Elfte Ausführungsform
-
In
einem System gemäß der elften
Ausführungsform
sind ein LAN 4304, ein Host 4305 und ein Magnetband-Laufwerk 4306 (siehe 41) zu dem System gemäß der siebten, der achten oder
der neunten Ausführungsform
hinzugefügt.
Der Host 1300 (oder 2300 oder 3100) informiert
den Host 4305 durch das LAN 4304 über die
Bildung eines Kopiervolumens. Der Host 4305 hat eine Funktion
zum Speichern von Daten des Kopiervolumens im Magnetband-Laufwerk 4306,
wodurch ein Backup erhalten wird.
-
Zuerst
wird der Fall eines Systems beschrieben, in dem das LAN 4304,
der Host 4305 und das Magnetband-Laufwerk 4306 zu
dem in Zusammenhang mit der siebten Ausführungsform beschriebenen System
hinzugefügt
sind.
-
Der
Host 1300 gibt zuerst eine Paarerzeugungsanforderung und
anschließend
eine Paarunterteilungsanforderung an die Steuerung 1312 aus,
um ein Kopiervolumen zu erzeugen, und er informiert den Host 4305 über das
LAN 4304 über
eine logische Volumennummer des Kopiervolumens. Der Host 4305 arbeitet
so, dass Daten eines logischen Volumens, das der empfangenen logischen
Volumennummer entspricht, von der Steuerung 1312 aus dem Speichergerät 1313 gelesen
werden und die gelesenen Daten in das Magnetband-Laufwerk 4306 geschrieben
werden, um ein Backup zu erhalten. Ferner gibt der Host 1300 eine
Ausdehnungsaktualisierungsanforderung an die Steuerung 1312 aus,
um Daten eines Teilbereichs des Kopiervolumens zu aktualisieren.
Wenn die Aktualisierung abgeschlossen ist, informiert der Host 1300 den
Host 4305 durch das LAN 4304 über die logische Volumennummer
des Kopiervolumens und eine den aktualisierten Bereich angebende
Adresse. Der Host 4305 arbeitet so, dass Daten, die in
jenem Bereich eines logischen Volumens gespeichert sind, das der
empfangenen logischen Volumennummer entspricht, die der empfangenen
Adresse entspricht, wodurch der aktualisierte Bereich angegeben
wird, durch die Steuerung 1312 aus dem Speichergerät 1313 gelesen
werden und die gelesenen Daten in das Magnetband-Laufwerk 4306 geschrieben
werden, um ein Backup zu erhalten. Der vorstehend erwähnte Ablauf,
bei dem der Host 1300 eine Ausdehnungsaktualisierungsanforderung
zum Aktualisieren eines Teilbereichs des Kopiervolumens ausgibt
und der Host 4305 das Backup dieses Bereichs erhält, wird
nach Bedarf wiederholt ausgeführt.
-
Als
nächstes
wird der Fall eines Systems beschrieben, in dem das LAN 4304,
der Host 4305 und das Magnetband-Laufwerk 4306 zu
dem in Zusammenhang mit der achten Ausführungsform beschriebenen System
hinzugefügt
sind.
-
Der
Host 2300 gibt zuerst eine Paarerzeugungsanforderung und
anschließend
eine Paarunterteilungsanforderung an die Steuerung 2312 aus,
um ein Kopiervolumen zu erzeugen, und er informiert den Host 4305 durch
das LAN 4304 über
eine logische Volumennummer des Kopiervolumens und eine Adresse,
welche einen Teilbereich des Kopiervolumens angibt. Der informierte
Host 4305 liest Daten des Teilbereichs des Kopiervolumens
durch die Steuerung 2312 aus dem Speichergerät 2313 aus
und schreibt die gelesenen Daten in das Magnetband-Laufwerk 4306,
um ein Backup zu erhalten.
-
Als
nächstes
wird der Fall eines Systems beschrieben, in dem das LAN 4304,
der Host 4305 und das Magnetband-Laufwerk 4306 zu
dem in Zusammenhang mit der neunten Ausführungsform beschriebenen System
hinzugefügt
sind.
-
Der
Host 3100 gibt zuerst eine Paarerzeugungsanforderung und
anschließend
eine Ausdehnungsunterteilungsanforderung an die Steuerung 3101 aus,
um einen Teilbereich eines Kopiervolumens zu erzeugen, und informiert
den Host 4305 durch das LAN 4304 über eine
logische Volumennummer des Kopiervolumens und eine Adresse, welche
den Teilbereich des Kopiervolumens angibt. Der informierte Host 4305 liest
Daten des Teilbereichs des Kopiervolumens durch die Steuerung 3101 aus dem
Speichergerät 3112 aus
und schreibt die gelesenen Daten in das Magnetband-Laufwerk 4306,
um ein Backup zu erhalten.
-
Mit
dem vorstehend beschriebenen Verfahren wird das Backup eines gesamten
Volumens oder eines Teilbereichs in der Art einer Datei oder eines Datensatzes
in einem Volumen erhalten. In der vorstehenden Beschreibung liest
der Host, der von dem eine Anforderung zur Bildung eines Kopiervolumens ausgebenden
Host verschieden ist, Daten aus dem Speichergerät und schreibt die gelesenen
Daten in das Magnetband-Laufwerk. Es ist jedoch selbstverständlich,
dass diese Hosts gleich sein können.
-
Gemäß der vorstehend
beschriebenen vorliegenden Erfindung ist es jedoch möglich, die
Wirksamkeit des Kopierens in der Art eines entfernten Kopierens
oder eines migratorischen Kopierens zwischen Speichersystemen ohne
Beteiligung einer CPU weiter zu verbessern.
-
Auch
ist es möglich,
ein logisches Volumen auf mehreren RAID-Gruppen verteilt anzuordnen/umzuordnen,
so dass Daten sätze
oder Dateien in einem logischen Volumen auf RAID-Gruppen angeordnet werden, die für ihre Zugriffseigenschaften geeignet
sind.
-
Weil
das Kopieren in Einheiten eines Bereichs in der Art eines Datensatzes
oder einer Datei ermöglicht
ist, kann das unnötige
Kopieren verringert werden. Dadurch ist es möglich, die Belastung eines Speichergeräts und die
Kopiererzeugungszeit zu verringern.