-
Die
Anmeldung beansprucht die Priorität aus der am 23. März 2004
eingereichten japanischen Patentanmeldung Nr. JP 2004-85032.
-
Die
Erfindung betrifft Speichervorrichtungen zum Ausführen asynchroner
Fernkopiervorgänge zwischen
Primär-
und Sekundär-Plattensteuerungen. Insbesondere
betrifft die Erfindung Techniken, die für Adaption an die Übertragung
von Aktualisierungsdaten wirkungsvoll sind.
-
Herkömmlicherweise
werden beim Ausführen
eines asynchronen Fernkopiervorgangs zwischen einer Primär-Plattensteuerung
einer Speichervorrichtung und einer Sekundär-Plattensteuerung derselben,
mittels Aktualisierungsdaten von der Primär-Plattensteuerung an die Sekundär-Plattensteuerung,
alle Schreibdaten an die Primär-Plattensteuerung übertragen.
-
Die
Veröffentlichung
Nr. 2003-202962 zu einer ungeprüften
japanischen Patentanmeldung offenbart eine Speichervorrichtung,
die dazu vorgeschlagen wurde, das Ziel einer Minimierung einer Beeinträchtigung
des Funktionsvermögens
selbst bei erhöhtem
Abstand zwischen Steuerungen zu erreichen. Um dieses Ziel zu erreichen,
werden, nachdem eine Abschlussmitteilung betreffend Schreibdaten von
der Primär-Plattensteuerung
zurückgeliefert
wurde, die Schreibdaten direkt an eine zweite Sekundär-Plattensteuerung übertragen,
und diese speichert die empfangenen Daten in einen nichtflüchtigen Speicher
ein, wodurch eine Datensicherung ausgeführt wird. Außerdem wird
eine vorbestimmte Referenzzeit eingestellt, um es zu ermöglichen,
dass alle vor der Referenzzeit auftretenden Schreibdaten gesichert
werden, und um zu ermöglichen,
dass alle nach diesen Zeitpunkt auftretenden Daten aufgegeben werden.
-
EP 1150210 A offenbart
ein Fernkopiersystem, das Daten in Plattenuntersysteme einer Fernzentrale
kopiert, um sie in den Plattenuntersystemen der Hauptzentrale zu
duplizieren, wobei die Plattenuntersysteme Seriennummern und Zeitpunkte
für die Daten
vergeben, was gleichzeitig mit dem Schreiben der Daten in die Speichervorrichtungen
im Plattenuntersystem erfolgt, und wobei sie diese Daten an die anderen
Plattenuntersysteme übertragen,
die die zwei oder mehr Daten in der Abfolge der Seriennummern anordnen,
den ältesten
Zeitpunkt innerhalb des letzten Zeitpunkts erkennen, wie er für jedes
der Plattenuntersysteme in Verbindung mit den Plattenuntersystemen
vergeben wurde, und die Daten, die mit einem Zeitpunkt versehen
sind, der nicht später
als der erkannte älteste
Zeitpunkt liegt, sind die Objekte für die Schreibvorgänge in jede
der Plattenspeichervorrichtungen.
-
Proceedings
of USENIX Technical Conference (San Antonio, TX), Seiten 253–268, Juni
2003 enthält
einen Artikel, der ein als Seneca bezeichnetes neues Protokoll zur
asynchronen Fernspiegelung offenbart, das eine Verbindung von Schreibvorgängen, asynchrone
Ausbreitung und Zustellung in Reihenfolge unterstützt.
-
Bei
der herkömmlichen
Speichervorrichtung bestehen jedoch die nachfolgend beschriebenen Probleme.
Wenn beim Fernkopieren Aktualisierungsdaten von der Primär-Plattensteuerung
an die Sekundär-Plattensteuerung
zu übertragen
sind, werden alle Schreibdaten als Aktualisierungsdaten an die Primär-Plattensteuerung übertragen.
Aus diesem Grund treten bei einem Zugriffsmuster, bei dem Daten
wiederholt im selben Datensatz überschrieben werden,
die übertragenen
Daten zu, was zu Problemen wie einer I/O-Verzögerung führt.
-
Bei
der in der Veröffentlichung
Nr. 2003-202962 zu einer ungeprüften
japanischen Patentanmeldung offenbarten Vorrichtung bestehen ähnliche
Probleme. Das heißt,
dass Schreibdaten für die
Primär-Plattensteuerung
an die Sekundär-Plattensteuerung übertragen
werden und im nichtflüchtigen
Speicher derselben gespeichert werden. Infolgedessen nehmen, bei
einem Übertragungsmuster,
bei dem Daten wiederholt im selben Datensatz überschrieben werden, die Übertragungsdaten
zu, was zu Problemen wie einer I/O-Verzögerung führt.
-
Es
ist eine Aufgabe der Erfindung, eine Speichervorrichtung zu schaffen,
bei der die Datenmenge von Übertragungsdaten
von einer Sekundär-Plattensteuerung
an eine Primär-Plattensteuerung
bei einem Fernkopiervorgang verringert werden kann und auch für Korrektheit
der Daten gesorgt werden kann.
-
Außerdem ist
es eine andere Aufgabe der Erfindung, eine Speichervorrichtung zu
schaffen, bei der die Erkennung eines Verlaufspunkts beim Klären der
Datenkorrektheit durch eine Sekundär-Plattensteuerung leicht ausgeführt werden
kann.
-
Eine
Speichervorrichtung gemäß der Erfindung
verfügt über eine
Primär-Plattensteuerung
mit einem Cache-Speicher und einem Steuerspeicher, wobei sie mit
einem Hostcomputer verbunden ist; eine mit der Primär-Plattensteuerung
verbundene Platteneinrichtung; eine Sekundär-Plattensteuerung mit einem
Cache-Speicher und
einem Steuerspeicher; und eine mit der Sekundär-Plattensteuerung verbundene
Platteneinrichtung, wobei der Cache-Speicher der Primär-Plattensteuerung über einen
ersten Bereich zum Speichern von in die Platteneinrichtung zu schreibenden
Aktualisierungsdaten und einen zweiten Bereich zum Speichern von
an die Sekundär-Plattensteuerung
zu übertragenden
Aktualisierungsdaten verfügt;
wobei die Primär-Plattensteuerung
Zeitmarkierungen und Annahmenummern für vom Hostcomputer gelieferte
Aktualisierungsdaten bereitstellt, die in den zweiten Bereich des
Cache-Speichers als an die Steuerspeicher zu übertragende Aktualisierungsdaten
einzuspeichern sind, sie die gespeicherten Aktualisierungsdaten
an die Sekundär-Plattensteuerung überträgt und sie
einen Fernkopiervorgang an die Sekundär-Plattensteuerung ausführt. Die
Speichervorrichtung führt
in der Primär-Plattensteuerung
ein Überschreiben
von Aktualisierungsdaten in denselben Datensätzen während einer spezifizierten
Zeit zwischen einem vorgegebenen ersten Basispunkt und einem vorgegebenen
zweiten Basispunkt hinsichtlich der im zweiten Bereich des Cache-Speichers
gespeicherten Aktualisierungsdaten aus, die an die zweite Sekundär-Plattensteuerung
zu übertragen
sind; und in der Sekundär-Plattensteuerung
sorgt sie für
eine Handhabung der Aktualisierungsdaten zwischen dem ersten Basispunkt
und dem zweiten Basispunkt als echten, korrekten Daten, wobei beim
Aktualisieren von Aktualisierungsdaten im selben Datensatz wie bei
im Cache-Speicher der Primär-Plattensteuerung
gespeicherten Aktualisierungsdaten Information zur Anzahl der Überschreibvorgänge betreffend
die Aktualisierungsdaten im Steuerspeicher abgespeichert wird; und
in der Sekundär-Plattensteuerung
die Aktualisierungsdaten entsprechend der Information der Zeitmarkierung,
der Annahmenummer und der Anzahl der Überschreibvorgänge verifiziert
wird.
-
Vorzugsweise
sind in der Speichervorrichtung gemäß der Erfindung ein Modus zum Überschreiben
und ein Modus ohne Überschreiben
von Aktualisierungsdaten im selben Datensatz wie bei im Cache-Speicher
der Primär-Plattensteuerung
gespeicherten Aktualisierungsdaten vorhanden, wobei beim Empfangen
eines Modusumschaltbefehls vom Hostcomputer Modusumschaltinformation
im Cache-Speicher der Primär-Plattensteuerung
abgespeichert werden kann, wobei sie an die Sekundär-Plattensteuerung übertragen
werden kann; und wobei in der Sekundär- Plattensteuerung der Betriebsmodus entsprechend
der von der Primär-Plattensteuerung übertragenen
Modusumschaltinformation geändert wird.
-
In
den Zeichnungen ist Folgendes dargestellt:
-
1 ist
eine Konfigurationsansicht, die die Konfiguration einer Speichervorrichtung
gemäß einer ersten
Ausführungsform
der Erfindung zeigt;
-
2 ist
eine Ansicht, die Schreibdatenverwaltungsinformation in der Speichervorrichtung
gemäß der ersten
Ausführungsform
der Erfindung zeigt;
-
3 ist
eine erläuternde
Ansicht zum Erläutern
einer üblichen
Schreibdaten-Übertragungsoperation;
-
4 ist
eine erläuternde
Ansicht zum Erläutern
einer SchreibdatenÜbertragungsoperation
bei der Speichervorrichtung gemäß der ersten
Ausführungsform
der Erfindung;
-
5 ist
ein Flussdiagramm zum Veranschaulichen einer Operation zum Speichern
von Schreibdaten seitens einer Primär-DKC (dies steht für "Plattensteuerung") der Speichervorrichtung
in einen Cache-Speicher gemäß der ersten
Ausführungsform
der Erfindung;
-
6 ist
ein Flussdiagramm zum Veranschaulichen der Operation einer Verarbeitung
mit asynchronem Zyklus seitens der Primär-DKC der Speichervorrichtung
gemäß der ersten
Ausführungsform
der Erfindung;
-
7 ist
ein Flussdiagramm zum Veranschaulichen einer Operation zum Speichern
von Schreibdaten seitens einer Sekundär-DKC der Speichervorrichtung
einen Cache-Speicher gemäß der ersten
Ausführungsform
der Erfindung;
-
8 ist
eine erläuternde
Ansicht zum Erläutern
einer Verifizieroperation für
eine Annahmenummer bei der Speichervorrichtung gemäß der ersten Ausführungsform
der Erfindung;
-
9 ist
eine erläuternde
Ansicht zum Erläutern
einer Schreibdaten-Übertragungsoperation
bei der Speichervorrichtung gemäß der zweiten
Ausführungsform
der Erfindung;
-
10 ist
ein Flussdiagramm zum Veranschaulichen einer Operation zum Speichern
von Schreibdaten seitens der Primär-DKC der Speichervorrichtung
in den Cache-Speicher gemäß der zweiten
Ausführungsform
der Erfindung;
-
11 ist
ein Flussdiagramm zum Veranschaulichen der Operation einer Verarbeitung
gemäß einem
asynchronen Zyklus seitens der Primär-DKC der Speichervorrichtung
gemäß der zweiten
Ausführungsform
der Erfindung;
-
12 ist
ein Flussdiagramm zum Veranschaulichen der Operation einer Synchronisierungspunktspezifizierung
durch einen Hostcomputer der Speichervorrichtung gemäß der zweiten
Ausführungsform
der Erfindung;
-
13 ist
ein Flussdiagramm zum Veranschaulichen der Operation zum Speichern
von Schreibdaten seitens der Sekundär-DKC der Speichervorrichtung
in den Cache-Speicher gemäß der zweiten
Ausführungsform
der Erfindung;
-
14 ist
eine erläuternde
Ansicht zum Erläutern
einer Schreibdaten-Übertragungsoperation der
Speichervorrichtung gemäß einer
dritten Ausführungsform
der Erfindung;
-
15 ist
ein Flussdiagramm zum Veranschaulichen der Operation zum Speichern
von Schreibdaten seitens der Primär-DKC der Speichervorrichtung
in den Cache-Speicher sowie der Datenübertragungsoperation gemäß der dritten
Ausführungsform
der Erfindung;
-
16 ist
ein Flussdiagramm zum Veranschaulichen der Operation zum Speichern
von Schreibdaten seitens der Sekundär-DKC der Speichervorrichtung
in den Cache-Speicher gemäß der dritten
Ausführungsform
der Erfindung;
-
17 ist
eine erläuternde
Ansicht zum Erläutern
einer Modusumschaltoperation der Speichervorrichtung gemäß einer
fünften
Ausführungsform der
Erfindung;
-
18 ist
eine erläuternde
Ansicht zum Erläutern
einer Modusumschaltoperation seitens der Primär-DKC der Speichervorrichtung
gemäß der fünften Ausführungsform
der Erfindung;
-
19 ist
ein Flussdiagramm zum Veranschaulichen der Operation zum Speichern
von Schreibdaten seitens der Sekundär-DKC der Speichervorrichtung
in den Cache-Speicher gemäß der fünften Ausführungsform
der Erfindung;
-
20 ist
eine erläuternde
Ansicht zum Erläutern
einer Modusumschaltoperation einer Speichervorrichtung gemäß einer
sechsten Ausführungsform
der Erfindung; und
-
21 ist
ein Flussdiagramm zum Veranschaulichen der Operation zum Speichern
von Schreibdaten seitens der Sekundär-DKC der Speichervorrichtung
in den Cache-Speicher gemäß der sechsten
Ausführungsform
der Erfindung.
-
Unter
Bezugnahme auf die beigefügten Zeichnungen
werden nachfolgend Ausführungsformen
der Erfindung detailliert beschrieben. Allgemein sind in allen Zeichnungen,
auf die bei der Beschreibung der Ausführungsformen Bezug genommen wird,
dieselben oder ähnliche
Teile und Elemente mit denselben Zahlen/Symbolen gekennzeichnet,
und zugehörige
wiederholte Beschreibungen werden weggelassen.
-
(ERSTE AUSFÜHRUNGSFORM)
-
<Konfiguration
der Speichervorrichtung>
-
Unter
Bezugnahme auf die 1 wird nachfolgend die Konfiguration
einer Speichervorrichtung gemäß einer
ersten Ausführungsform
beschrieben. Die 1 ist eine Konfigurationsansicht,
die die Konfiguration einer Speichervorrichtung gemäß einer ersten
Ausführungsform
der Erfindung zeigt.
-
Gemäß der 1 besteht
die Speichervorrichtung aus einer Primär-Plattensteuerung 100 (die nachfolgend
als "Primär-DKC" bezeichnet wird),
mit der ein Hostcomputer 120 verbunden ist, mindestens einer
Platteneinrichtung 110 in Verbindung mit der Primär-DKC 100,
einer Sekundär-Plattensteuerung 200 (die
nachfolgend als "Sekundär-DKC" bezeichnet wird)
und mindestens einer Platteneinrichtung 210 in Verbindung
mit der Sekundär-DKC 200.
-
Die
Primär-DKC 100 verfügt über einen
primären
Schreibdaten-Annahmeabschnitt 101, einen primären Schreibdaten-Sendeabschnitt 102,
einen Cache-Speicher 103, einen Steuerspeicher 104 und einen
Plattendaten-Sende/Empfangs-Abschnitt 108.
-
Der
Cache-Speicher 103 speichert vom Cache-Speicher 120 gelieferte
Schreibdaten 151, die durch den primären Schreibdaten-Annahmeabschnitt 101 empfangen
werden. Die so im Cache-Speicher 103 eingespeicherten Schreibdaten 151 werden dann
in die Platteneinrichtung 110 geschrieben.
-
Der
Steuerspeicher 104 speichert die zum Verwalten der Schreibdaten 151 verwendete Schreibdatenverwaltungsinformation 105;
einen zum Verwalten von Annahmenummer (SEQ#) der Schreibdaten 151 verwendeten
SEQ#-Masterdatensatz 106; sowie Basispunktverwaltungsinformation 107,
die zum Verwalten von Basispunkten zwischen der DKC 100 und
der Sekundär-DKC 200 verwendet wird.
-
Der
Plattendaten-Sende/Empfangs-Abschnitt 108 führt in Verbindung
mit der Platteneinrichtung 110 Daten-Sende/Empfangs-Vorgänge aus.
-
Busse
und Switches verbinden beispielsweise den primären Schreibdaten-Annahmeabschnitt 101,
den primären
Schreibdaten-Sendeabschnitt 102, den Cache-Speicher 103,
den Steuerspeicher 104 und den Plattendaten-Sende/Empfangs-Abschnitt 108.
-
Der
Sekundär-DKC 200 verfügt über einen sekundären Schreibdaten-Annahmeabschnitt 201, einen
Cache-Speicher 202, einen Steuerspeicher 203,
einen sekundären
Schreibdatenkorrektheitaufrechterhalteabschnitt 204 sowie
einen Plattendaten-Sende/Empfangs-Abschnitt 208.
-
Der
Cache-Speicher 202 speichert vom primären Schreibdaten-Sendeabschnitt 102 der
Primär-DKC 100 gelieferte
Schreibdaten 151 ein, die vom sekundären Schreibdaten-Annahmeabschnitt 201 empfangen
wurden. Die so im Cache-Speicher 202 gespeicherten Schreibdaten 151 werden
dann sekundären
Schreibdaten-Annahmeabschnitt 201.
-
Der
Steuerspeicher 202 speichert zum Verwalten der Schreibdaten 151 verwendete
Schreibdatenverwaltungsinformation 105 sowie zum Verwalten der
Basispunkte zwischen der DKC 100 und der Sekundär-DKC 200 verwendete
Basispunktverwaltungsinformation 107.
-
Der
Plattendaten-Sende/Empfangs-Abschnitt 208 führt Daten-Sende/Empfangs-Vorgänge in Verbindung
mit der Platteneinrichtung 210 aus.
-
Busse
und Switches verbinden beispielsweise den sekundären Schreibdaten-Annahmeabschnitt 201,
den Cache-Speicher 202, den Steuerspeicher 203,
den sekundären
Schreibdatenkorrektheitaufrechterhalteabschnitt 204 und
den Plattendaten-Sende/Empfangs-Abschnitt 208.
-
Bei
der vorliegenden Ausführungsform
führt die
oben beschriebene Speichervorrichtung einen Fernkopiervorgang für Datenkorrektheit
pro Aktualisierungsdatensatzeinhet zwischen der Plattensteuerung 100 und
der Sekundär-DKC 200 aus.
-
<Schreibdatenverwaltungsinformation>
-
Unter
Bezugnahme auf die 2 wird die in den Steuerspeichern 104 und 203 abzuspeichernde Schreibdatenverwaltungsinformation 105 nachfolgend
beschrieben. Die 2 ist eine Ansicht, die ein Beispiel
von Schreibdatenverwaltungsinformation zeigt.
-
Gemäß der 2 wird
die Schreibdatenverwaltungsinformation 105 entsprechend
Schreibdaten 151 erzeugt, und sie besteht aus einer Platteneinrichtungsadresse 130,
einer Schreibadresse 131, einem Schreibzeitpunkt 132,
einer Annahmenummer 133, einem Schreibdatenzeiger 134 und
einem Übertragungserfordernisbit 135.
-
Die
Platteneinrichtungsadresse 130 und die Schreibadresse 131 bilden
Information, die die Positionen von Schreibdaten in den Platteneinrichtungen 110 und 210 spezifiziert
und die als Anweisungen mit einer vom Hostcomputer 120 zu
liefernden Schreibanforderung 150 bereitgestellt wird.
-
Information
zum Schreibzeitpunkt 132 wird in der Schreibanforderung 150 als
Zeitmarkierung 152 ("T/S") bereitgestellt,
die den Schreibzeitpunkt für
die Schreibdaten 151 vom Hostcomputer 120 repräsentiert.
Wenn die Zeitmarkierung 152 nicht vom Hostcomputer 120 bereitgestellt
wird, wird durch die Primär-DKC 100 ein
Timer in dieser bereitgestellt.
-
Die
Annahmenummer 133 ist Information, die der SEQ#-Masterdatensatz 106 für Schreibdaten 151 in
der Abfolge angenommener Schreibdaten 151 unter Bezugnahme
auf ihn bereitstellt.
-
Der
Schreibdatenzeiger 134 bildet Information eines Zeigers
auf entsprechende Schreibdaten 151.
-
Gemeinsam
mit den Schreibdaten 151 werden diese Einzelinformationen
in den Cache-Speichern 103 und 202 abgespeichert
und für
verschiedene Operationen verwendet, wie das Schreiben von Schreibdaten 151 in
die Platteneinrichtungen 110 und 210, das Übertragen
von Schreibdaten 151 von der Primär-DKC 100 an die Sekundär-DKC 200,
ein Neuordnen einzelner Schreibdaten 151, und ein Prüfen auf
das Auftreten eines Fehlens von Schreibdaten 151 im Sekundär-DKC 200.
-
Das Übertragungserfordernisbit 135 stellt
Information dar, die anzeigt, ob Schreibdaten 151 von der
Primär-DKC 100 an
die Sekundär-DKC 200 zu übertragen
sind. Genauer gesagt, wird beispielsweise dann, wenn das Übertragungserfordernisbit 135 "EIN" ist, bestimmt, dass
Schreibdaten 151 von der Primär-DKC 100 an die Sekundär-DKC 200 zu übertragen
sind und die Schreibanforderung 150 von der Primär-DKC 100 an
die Sekundär-DKC 200 zu übertragen
ist. Dann wird, nach Abschluss der Übertragung, das den Schreibdaten 151 entsprechende Übertragungserfordernisbit 135 auf "AUS" geschaltet.
-
<Übertragungsoperation
für Daten
von der Primär-DKC
zur Sekundär-DKC>
-
Nachfolgend
wird eine Übertragungsoperation
betreffend die erste Ausführungsform
der Erfindung für
Schreibdaten von der Primär-DKC 100 zur Sekundär-DKC 200 beschrieben.
Die 3 ist eine erläuternde
Ansicht zum Erläutern
einer üblichen Übertragungsoperation
für Schreibdaten.
Die 4 ist eine erläuternde
Ansicht zum Erläutern
einer Schreibdaten-Übertragungsoperation
bei der Segment gemäß der ersten
Ausführungsform
der Erfindung. Die 5 ist ein Flussdiagramm zum
Veranschaulichen der Operation des Einspeicherns von Schreibdaten
seitens der Primär-DKC
in den Cache-Speicher. Die 6 ist ein
Flussdiagramm zum Veranschaulichen der Operation der Verarbeitung
in einem asynchronen Zyklus seitens der Primär-DKC. Die 7 ist
ein Flussdiagramm zum Veranschaulichen der Operation des Einspeicherns
von Schreibdaten seitens der Sekundär-DKC in den Cache-Speicher.
-
Als
Erstes wird eine übliche
Schreibdaten-Übertragungsoperation
beschrieben, bevor die Schreibdaten-Übertragungsoperation von der
Primär-DKC
in die Sekundär-DKC
gemäß der vorliegenden
Ausführungsform
beschrieben wird.
-
Gemäß der üblichen
Schreibdaten-Übertragungsoperation
werden, wie es in der 3 dargestellt ist, seitens der
Primär-DKC 100,
gesondert von den in die Platteneinrichtung 110 zu schreibenden Daten,
durch den Hostcomputer 120 bereitgestellte Zeitmarkierungen 152 für Aktualisierungs-I/O-Daten ((1),
(2), (3), (4), (5, (6) und (7), wie in der 3 dargestellt)
und durch die Primär-DKC
bereitgestellte Annahmenummern 133 gemeinsam mit Schreibdaten 151 von
Aktualisierungsdaten als an die Sekundär-DKC 200 zu übertragende
Aktualisierungsdaten gespeichert (was nachfolgend als "Nebendatei" bezeichnet wird),
und die Aktualisierungs-I/O-Daten werden abgeschlossen, bevor die
Daten an die Sekundär-DKC 200 übertragen
werden. Danach überträgt die Primär-DKC 100 die
Nebendatei asynchron zur Host-I/O.
-
In
der Sekundär-DKC 200 werden
die Daten von der angenommenen Nebendatei in zeitserieller Reihenfolge
auf Grundlage des Schreibzeitpunkts 132 und der Annahmenummer 133 sortiert,
und es wird die Korrektheit der Daten bis zu einem Verlaufspunkt
(beispielsweise bis B' seitens
der Sekundär-DKC,
wie in der 3 dargestellt) überprüft.
-
Bei
dieser Operation werden selbst bei einem Zugriffsmuster (wie A,
A' und A'''),
das wiederholt im selben Drehzahl in der Primär-DKC 100 überschrieben
wird, alle Daten als Aktualisierungs-I/O-Daten in der Nebendatei
abgespeichert und an die Sekundär-DKC 200 übertragen.
-
Gemäß der 4 kann,
während
einer spezifizierten Zeit von einem Basispunkt 1 bis zu einem Basispunkt
2, in einer Nebendatei im Cache-Speicher 103 der Primär-DKC 100 derselbe
Drehzahl über
einen Drehzahl geschrieben werden, der noch nicht an die Sekundär-DKC 200 übertragen
wurde (in der 4 können beispielsweise die Aktualisierungsdaten
B' über den
Datensatz B geschrieben werden).
-
Bei
der Körper,
die auf solche Weise aufgebaut ist, dass innerhalb der vorgegebenen
Zeit ein Überschreiben
von Datensätzen
in der Nebendatei ermöglicht
ist, können
eine Verringerung der Übertragungsdatenmenge
und eine Verringerung des Verarbeitungsoverheads realisiert werden.
-
In
der Primär-DKC 100 erfolgt,
während
die Nebendateien sequenziell an die Sekundär-DKC 200 übertragen
werden können,
ein Überschreiben,
wenn Aktualisierungs-I/O-Daten für
einen Drehzahl in nicht übertragenen
Datensätzen
in der Nebendatei vorliegen. Die in der Sekundär-DKC 200 empfangene
Nebendatei wird während
der spezifizierten Zeit im Cache-Speicher 202 aufbewahrt,
und nach dem Annehmen aller Daten während der spezifizierten Zeit
wird die Nebendatei anschließend
als echte Daten behandelt.
-
Die
Basispunkte in der Primär-DKC 100 und der
Sekundär-DKC 200 werden
bei einer Anfangsoperation definiert, bei der zwischen der Primär-DKC 100 und
der Sekundär-DKC 200 ein
Fernpaar geschaffen wird.
-
Durch
eine Operation seitens der Primär-DKC 100 wird,
wie es in der 5 dargestellt ist, als Erstes,
wenn Aktualisierungs-I/O-Daten vom Hostcomputer 120 vorliegen,
ermittelt, ob eine Zeitmarkierung 152 dieser Aktualisierungs-I/O-Daten größer als
ein aktueller Basispunkt 2 (Basispunkt 1 + spezifizierte Zeit) ist
(in S100 ('S' = Schritt)). Wenn
in S100 die Zeitmarkierung 152 als größer ermittelt wird, werden,
da die Zeit nicht innerhalb der spezifizierten Zeit liegt, Aktualisierungsdaten
innerhalb der Aktualisierungs-I/O-Daten zur Nebendatei hinzugefügt (in S103).
Wenn in S100 die Zeitmarkierung 152 als dem Basispunkt
2 entsprechend oder kleiner ermittelt wird, wird ermittelt, ob in
der Nebendatei ein den Aktualisierungs-I/O-Daten entsprechender
Drehzahl vorhanden ist (in S101).
-
Wenn
in S101 ermittelt wird, dass in der Nebendatei keine Aktualisierungs-I/O-Daten vorhanden sind,
fügt, da
dort kein Drehzahl zum Überschreiben enthalten
ist, die Operation Aktualisierungsdaten in den Aktualisierungs-I/O-Daten zur Nebendatei
hinzu (in S103). Wenn in S101 ermittelt wird, dass in der Nebendatei
ein den Aktualisierungs-I/O-Daten entsprechender Drehzahl vorhanden
ist, werden die Aktualisierungsdaten in den Aktualisierungs-I/O-Daten über die
Daten im Drehzahl in der Nebendatei geschrieben (in S102).
-
Dann
wird, seitens der Primär-DKC 100,
wie es in der 6 dargestellt ist, durch eine
Verarbeitung mit asynchronem Zyklus, eine Verarbeitung zur Übertragung
an die Sekundär-DKC 200 für die Daten von
der Oberseite der Nebendatei her ausgeführt (in S110).
-
Durch
eine Operation seitens der Sekundär-DKC 200 wird, wie
es in der 7 dargestellt ist, die Nebendatei
durch die Primär-DKC 100 angenommen
und als Nebendatei abgespeichert, die seitens der Sekundär-DKC 200 zu
verarbeiten ist. Danach wird ermittelt, ob die Zeitmarkierung 152 größer als ein
aktueller Basispunkt 2 (Basispunkt 1 + spezifizierte Zeit) ist (in
S120). In diesem Fall werden die Nebendateien von der Primär-DKC 100 kontinuierlich angenommen,
bis in S120 ermittelt wird, dass die Zeitmarkierung 152 größer als
der Basispunkt 2 ist. Wenn in S120 ermittelt wird, dass die Zeitmarkierung 152 größer als
der Basispunkt 2 ist, ermittelt die Operation, ob in den Annahmenummern 133 für Aktualisierungsdaten
innerhalb der Zeit vom Basispunkt 1 bis zum Basispunkt 2 eine Weglassung
vorhanden ist (in S121).
-
Wenn
in S121 ermittelt wird, dass in den Annahmenummern 133 eine
Weglassung vorhanden ist, wird, da von der Primär-DKC 100 nicht alle
Aktualisierungsdaten innerhalb der Zeit vom Basispunkt 1 zum Basispunkt
2 angenommen wurden, die Nebendatei erneut von der Primär-DKC 100 angenommen und
als Nebendatei abgespeichert, die in der Sekundär-DKC 200 zu verarbeiten
ist.
-
Wenn
in S121 ermittelt wird, dass in den Annahmenummern 133 keine
Weglassung vorliegt, werden die Daten in der Zeit vom Basispunkt
1 bis zum Basispunkt 2 als echte, korrekte Daten an einen normalen
Cache im Cache-Speicher 202 bewegt (in S122). Danach werden
die Daten im normalen Cache in die Platteneinrichtung 210 geschrieben,
wodurch die Daten zu echten, korrekten Daten werden.
-
<Verifizieroperation
für Annahmenummern>
-
Unter
Bezugnahme auf die 8 wird nachfolgend die Verifizieroperation
für Annahmenummern 131 in
S121 in der 7 beschrieben. Die 8 ist eine
erläuternde
Ansicht zum Erläutern
der Verifizieroperation für
die empfangenen Nummern.
-
Wenn
derselbe Drehzahl in der Nebendatei im Cache-Speicher 103 der
Primär-DKC 100 durch Aktualisierungsdaten überschrieben
wird, ist es schwierig, zu ermitteln, ob seitens der Sekundär-DKC 200 alle
Nebendateien angenommen wurden.
-
Dann
wird, bei der vorliegenden Ausführungsform,
mittels Verwaltungsinformation für
die Nebendatei, Information zur Anzahl der Überschreibvorgänge an Datensätzen zusätzlich zur
Zeitmarkierung 152 und zur Annahmenummer 133 bereitgestellt.
-
Beispielsweise
werden beim in der 8 dargestellten Beispiel von
Aktualisierungs-I/O-Daten ((1), (2), (3), (4) und (5) in der 8)
vom Hostcomputer 120, da die durch (4) dargestellten Aktualisierungs-I/O-Daten
(B') demselben Datensatz
wie dem Datensatz B entsprechen, Aktualisierungsdaten in B' über den Datensatz B geschrieben.
In diesem Fall ist die Annahmenummer 133 des Datensatzes
B nicht die von B',
und es wird die Annahmenummer des Datensatzes B aufrechterhalten,
und "1" wird als Information
zur Anzahl der Überschreibvorgänge am Datensatz
B hinzugefügt.
-
Die
Sekundär-DKC 200 nimmt,
beim Verifizieren der Anzahl eingetroffener Datensätze (die beim
in der 8 dargestellten Beispiel 3 ist) während der
spezifizierten Zeit vom Basispunkt 1 bis zum Basispunkt 2 entsprechend
den Annahmenummern 133, auf die Information zur Anzahl
von Überschreibvorgängen (die
beim in der 8 dargestellten Beispiel 1 ist),
Bezug, und es erfolgt ein Vergleich mit einer ersten Annahmenummer 133 der
Nebendatei in der nächsten
spezifizierten Zeit (die beim in der 8 dargestellten
Beispiel "5" ist). Dadurch kann verifiziert
werden, ob alle Nebendateien angenommen wurden. Das heißt, dass
die Anzahl eingetroffener Datensätze
dann, wenn die Aktualisierungsdaten keine Überschreibungsdaten sind, entsprechend
der erhaltenen Information dadurch verifiziert werden kann, dass
die Information zur Anzahl eingetroffener Datensätze, die entsprechend den Aktualisierungsdaten 133 erhalten
wird, und die Information zur Anzahl von Überschreibvorgängen an
einzelnen Datensätzen
addiert werden. Demgemäß kann,
entsprechend der Anzahl eingetroffener Datensätze und der ersten Annahmenummer 133 der
Nebendatei in der nächsten
spezifizierten Zeit verifiziert werden, ob alle Nebendateien angenommen
wurden.
-
Bei
der vorliegenden Ausführungsform
erfolgt ein Überschreiben
in der spezifizierten Zeit vom Basispunkt 1 bis zum Basispunkt 2
in dieselben Datensätze,
die noch nicht zur Sekundär-DKC 200 übertragen
wurden und in der Nebendatei im Cache-Speicher 103 der
Primär-DKC 100 vorhanden
sind. Demgemäß kann beim
Ausführen
eines asynchronen Fernkopiervorgangs bei aufrechterhaltener Korrektheit
der Daten in zeitlichen Reihen mit Einheiten eines Aktualisierungsdatensatzes
selbst dann, wenn Aktualisierungs-I/O-Daten für dieselben Datensätze vorliegen,
eine Verringerung der Übertragungsdaten und
eine Verkleine rung des Verarbeitungsoverheads implementiert werden,
während
die Datenkorrektheit gewährleistet
ist.
-
Als
Beispiel sei angenommen, dass 1000 iops (Eingabe-/Ausgabeoperationen
pro Sekunde) für
Aktualisierungen vom Hostcomputer 120 für denselben Datensatz mit 4
kB/Datensatz erfolgen. In diesem Fall ist herkömmlicherweise eine Übertragung von
4 MB Daten (4 kB/Datensatz × 1000
iops = 4 MB) erforderlich; jedoch kann gemäß der vorliegenden Ausführungsform
die Datenmenge auf maximal 4 kB verringere werden.
-
(ZWEITE AUSFÜHRUNGSFORM)
-
Bei
dieser Ausführungsform
wird anstelle der Basispunkte 1 und Basispunkte 2, die sowohl von
Primär-DKC 100 als
auch der Sekundär-DKC 200 bei der
ersten Ausführungsform
verwaltet werden, ein Synchronisierungspunkt, der den Zeitpunkt
repräsentiert,
zu dem das Überschreiben
beendet wird, von der Primär-DKC 100 an
die Sekundär-DKC 200 übertragen,
und in der Sekundär-DKC 200 wird
keine Basispunktverwaltung ausgeführt.
-
Die
Speichervorrichtung dieser Ausführungsform
hat dieselbe Konfiguration wie die erste Ausführungsform.
-
<Übertragungsoperation
für Schreibdaten
von der Primar-DKC an die Sekundär-DKC>
-
Nachfolgend
wird eine Übertragungsoperation
gemäß der zweiten
Ausführungsform
der Erfindung für
Schreibdaten von der Primär-DKC 100 an die
Sekundär-DKC 200 beschrieben.
Die 9 ist eine erläuternde
Ansicht zum Erläutern
einer Schreibdaten-Übertragungsoperation
der Speichervorrichtung gemäß der zweiten
Ausführungsform
der Erfindung. Die 10 ist ein Flussdiagramm zum Veranschaulichen
der Operation zum Speichern von Schreibdaten seitens der Primär-DKC in den Cache-Speicher.
Die 11 ist ein Flussdiagramm zum Veranschaulichen
der Operation einer Verarbeitung mit asynchronem Zyklus seitens
der Primär-DKC.
Die 12 ist ein Flussdiagramm zum Veranschaulichen der
Operation einer Synchronisierungspunktanweisung vom Hostcomputer.
Die 13 ist ein Flussdiagramm zum Veranschaulichen
der Operation des Speicherns von Schreibdaten seitens der Sekundär-DKC in
den Cache-Speicher.
-
Gemäß der 9 kann,
bei der Erfindung, innerhalb der Zeit vom Basispunkt 1 bis zum Synchronisierungspunkt
(Datensatz S in der 9) derselbe Datensatz über einen
Datensatz, der noch nicht an die Sekundär-DKC 200 übertragen
wurde, in einer Nebendatei im Cache-Speicher 103 der Primär-DKC 100 überschrieben
werden (in der 9 können beispielsweise die Aktualisierungsdaten
B' über den
Datensatz B geschrieben werden).
-
Bei
der Konfiguration, die so aufgebaut ist, dass ein Überschreiben
von Datensätzen
in der Nebendatei innerhalb der vorgegebenen Zeit möglich ist,
können
eine Verringerung der Übertragungsdatenmenge
und eine Verringerung des Verarbeitungsoverheads erzielt werden.
-
In
der Primär-DKC 100 wird,
während
die Nebendateien sequenziell an die Sekundär-DKC 200 übertragen
werden können,
ein Überschreibvorgang dann
ausgeführt,
wenn Aktualisierungs-I/O-Daten für einen
Datensatz in nicht übertragenen
Datensätzen in
der Nebendatei vorhanden sind. Die in der Sekundär-DKC 200 empfangene
Nebendatei wird im Cache-Speicher 202 aufbewahrt, bis der
Synchronisierungspunkt übertragen
wird, und nachdem alle Daten in der Zeit angenommen wurden, bis
der Synchronisierungspunkt übertragen
wurde, wird die Nebendatei anschließend als echte Daten behandelt.
-
Die
Basispunkte 1 in der Primär-DKC 100 und
der Sekundär-DKC 200 werden
bei einer Anfangsoperation zum Erzeugen eines Fernpaars zwischen
der Primär-DKC 100 und
der Sekundär-DKC 200 definiert.
Danach wird der Datensatz 2, in der Primär-DKC 100, entsprechend
einer spezifizierten Zeit verwaltet, ähnlich wie bei der ersten Ausführungsform,
wobei der Synchronisierungspunkt nahe am Basispunkt 2 an die Sekundär-DKC 200 übertragen wird.
Außerdem
kann vom Hostcomputer 120 ein Synchronisierungspunkt wahlfrei
spezifiziert werden, wodurch es einem Benutzer möglich ist, die Synchronisierung
bei einer asynchronen Kopieroperation wahlfrei zu kontrollieren.
-
Durch
eine Operation seitens der Primär-DKC 100 wird,
wie es in der 10 dargestellt ist, als Erstes,
wenn Aktualisierungs-I/O-Daten vom Hostcomputer 120 vorhanden
sind, ermittelt, ob eine Zeitmarkierung 152 derselben größer als
der aktuelle Basispunkt 2 (Basispunkt + spezifizierte Zeit) ist
(in S130). Wenn in S130 die Zeitmarkierung 152 als größer ermittelt
wird, wird für
die Nebendatei ein Synchronisierungspunkt spezifiziert (in S133),
und es werden Aktualisierungsdaten innerhalb der Aktualisierungs-I/O-Daten
zur Nebendatei hinzugefügt
(in S134). Wenn in S134 die Zeitmarkierung 152 als mit dem
Basispunkt 2 übereinstimmend
oder kleiner ermittelt wird, wird ermittelt, ob ein den Aktualisierungs-I/O-Daten
entsprechender Datensatz in der Nebendatei vorhanden ist (in S131).
-
Wenn
in S131 ermittelt wird, dass in der Nebendatei keine Aktualisierungs-I/O-Daten enthalten sind,
da dort kein Datensatz zum Überschreiben
vorhanden ist, fügt
die Operation Aktualisierungsdaten in den Aktualisierungs-I/O-Daten
zur Nebendatei hinzu (in S134). Wenn in S131 ermittelt wird, dass
in der Nebendatei ein den Aktualisierungs-I/O-Daten entsprechender
Datensatz vorhanden ist, werden die Aktualisierungsdaten in den
Aktualisierungs-I/O-Daten über
die Daten im Datensatz in der Nebendatei geschrieben (in S132).
-
Dann
wird, seitens der Primär-DKC 100,
wie es in der 11 dargestellt ist, durch einen
asynchronen Zyklus die Verarbeitung der Datenübertragung zur Sekundär-DKC 200 für die Daten
von der Oberseite der Nebendatei aus ausgeführt (in S140). Außerdem wird,
durch eine Verarbeitung entsprechend einem asynchronen Zyklus, ermittelt,
ob die aktuelle Zeit größer als
ein aktueller Basispunkt 2 (Basispunkt 1 + spezifizierte Zeit) ist
(in S141). Wenn die aktuelle Zeit größer als der aktuelle Basispunkt
2 (Basispunkt 1 + spezifizierte Zeit) ist, wird für die Nebendatei
ein Synchronisierungspunkt spezifiziert (in S142).
-
Die
Spezifikationen im in der 10 dargestellten
S133 und im in der 11 dargestellten S142 werden
jeweils nahe dem Zeitpunkt des durch die Primär-DKC 100 verwalteten Basispunkts
2 angewandt. Entsprechend einer beliebigen der Spezifikationen wird
der Synchronisierungspunkt spezifiziert; und nach der Spezifizierung
des Synchronisierungspunkts wird der spezifizierte Punkt als Basispunkt
1 verwaltet, um dadurch eine Doppelspezifizierung von Synchronisierungspunkten
zu verhindern.
-
Durch
eine Operation beim Empfangen einer Synchronisierungsanforderung
durch den Hostcomputer 120 wird, nach diesem Vorgang, zu
diesem Zeitpunkt ein Synchronisierungspunkt für die Nebendatei spezifiziert,
wie es in der 12 dargestellt ist.
-
Durch
eine Operation seitens der Sekundär-DKC 200 wird, wie
es in der 13 dargestellt ist, die Nebendatei
durch die Primär-DKC 100 angenommen
und als seitens der Sekundär-DKC 200 zu verarbeitende
Nebendatei abgespeichert. Dann wird ermittelt, ob die Nebendatei
eine solche eines Synchronisierungspunkts ist (in S160). Die Nebendateien
werden kontinuierlich von der Primär-DKC 100 angenommen,
bis in S160 eine Nebendatei ermittelt wird, die eine solche eines
Synchronisierungspunkts ist. Wenn in S160 ermittelt wird, dass eine
Nebendatei eine solche eines Synchronisierungspunkts ist, ermittelt
die Operation, ob die Annahmenummern 133 zwischen dem Basispunkt
1 bis zum Synchronisierungspunkt angenommen wurden (in S161).
-
Wenn
in S161 ermittelt wird, dass nicht alle Annahmenummern 133 empfangen
wurden, wird die Nebendatei erneut von der Primär-DKC 100 angenommen
und als in der Sekundär-DKC 200 zu
verarbeitende Nebendatei abgespeichert (in S162).
-
Wenn
in S161 ermittelt wird, dass alle Annahmenummern 133 angenommen
wurden, werden Daten im Zeitraum vom Basispunkt 1 bis zum Basispunkt
2 als echte, korrekte Daten in einen normalen Cache im Cache-Speicher 202 bewegt
(in S163). Danach werden die Daten im normalen Cache in die Platteneinrichtung 210 geschrieben,
wodurch sie zu echten, korrekten Daten starten.
-
Bei
der vorliegenden Ausführungsform
erfolgt ein überschreiben
während
der spezifizierten Zeit vom Basispunkt 1 bis zum Basispunkt 2 für einige
Datensätze,
die nicht an die Sekundär-DKC 200 übertragen
wurden und die in der Nebendatei im Cache-Speicher 103 der
Primär-DKC 100 vorhanden sind.
Demgemäß können dann,
wenn ein asynchroner Fernkopiervorgang zeitseriell mit Einheiten
eines Aktualisierungsdatensatzes unter Aufrechterhaltung der Datenkorrektheit
ausgeführt
wird, selbst dann, wenn es sich um Aktualisierungs-I/O-Daten für dieselben
Datensätze
handelt, eine Verringerung der Übertragungsdatenmenge
und eine Verkleinerung des Verarbeitungsoverheads realisiert werden,
während
die Datenkorrektheit gewährleistet
ist.
-
Als
Beispiel sei angenommen, dass 1000 iops für Aktualisierungen vom Hostcomputer 120 für denselben
Datensatz mit 4 kB/Datensatz erfolgen. In diesem Fall ist herkömmlicherweise
eine Übertragung
von 4 MB Daten (4 kB/Datensatz × 1000
iops = 4 MB) erforderlich; jedoch kann gemäß der vorliegenden Ausführungsform
die Datenmenge auf maximal 4 kB verringert werden.
-
Ferner
kann in der Sekundär-DKC 200 ein Verlaufspunkt
dadurch erfasst werden, dass alleine der Synchronisierungspunkt
erfasst wird, ohne dass Basispunkte verwaltet werden, und ein Benutzer
ist in die Lage versetzt, den Synchronisierungspunkt vom Hostcomputer 120 wahlfrei
zu kontrollieren. Wenn beispielsweise ein Synchronisierungspunkt
unmittelbar nach einer Übergabe
an ein DBMS (Datenbankverwaltungssystem) spezifiziert wird, kann
verifiziert werden, dass die Übergabe
in der Sekundär-DKC 200 eingetroffen
ist.
-
(DRITTE AUSFÜHRUNGSFORM)
-
Diese
Ausführungsform
ist so aufgebaut, dass Aktualisierungsdaten nicht asynchron von
der Primär-DKC 100 an
die Sekundär-DKC 200 übertragen
werden, und dass die Nebendatei während der spezifizierten Zeit
vom Basispunkt 1 bis zum Basispunkt 2 nicht übertragen wird, sondern dass
die Nebendateien zu einem Zeitpunkt über der spezifizierten Zeit
als Charge an die Sekundär-DKC 200 übertragen
werden.
-
Die
Speichervorrichtung gemäß der vorliegenden
Ausführungsform
verfügt über dieselbe
Konfiguration wie die erste Ausführungsform.
-
<Übertragungsoperation
für Schreibdaten
von der Primar-DKC an die Sekundär-DKC>
-
Nachfolgend
wird die Übertragungsoperation gemäß der dritten
Ausführungsform
der Erfindung für Schreibdaten
von der Primär-DKC 100 an
die Sekundär-DKC 200 der
Speichervorrichtung beschrieben. Die 14 ist
eine Erläuterung
der Ansicht zum Erläutern
einer Schreibdaten-Übertragungsoperation der
Speichervorrichtung gemäß der dritten
Ausführungsform.
Die 15 ist ein Flussdiagramm zum Veranschaulichen
der Operation zum Speichern von Schreibdaten seitens der Primär-DKC in
den Cache-Speicher sowie der Datenübertragungsoperation. Die 16 ist
ein Flussdiagramm zum Veranschaulichen der Operation zum Speichern
von Schreibdaten seitens der Sekundär-DKC in den Cache-Speicher.
-
Gemäß der 14 kann
bei der vorliegenden Erfindung, im Zeitpunkt vom Basispunkt 1 bis zum
Basispunkt 2, derselbe Datensatz über einen Datensatz, der noch
nicht an die Sekundär-DKC 200 übertragen
wurde, in einer Nebendatei im Cache-Speicher 103 der Primär-DKC 100 geschrieben werden
(in der 14 kön nen beispielsweise die Aktualisierungsdaten
B' über den
Datensatz B geschrieben werden).
-
Bei
dieser Konfiguration, die so ausgebildet ist, dass ein Überschreiben
von Datensätzen
in der Nebendatei in der vorgegebenen Zeit ermöglicht ist, können eine
Verringerung der Übertragungsdatenmenge
und eine Verkleinerung des Verarbeitungsoverheads erzielt werden.
-
In
der Primär-DKC 100 wird
die Nebendatei nicht während
der spezifizierten Zeit vom Basispunkt 1 bis zum Basispunkt 2 an
die Sekundär-DKC 200 übertragen,
sondern es erfolgt ein Überschreiben, wenn
Aktualisierungs-I/O-Daten für
einen Datensatz in nicht übertragenen
Datensätzen
in der Nebendatei vorliegen. Die in der Sekundär-DKC 200 empfangene
Nebendatei wird während
einer spezifizierten Zeit im Cache-Speicher 202 aufbewahrt,
und nach dem Annehmen aller Daten während der spezifizierten Zeit
wird dann die Nebendatei als echte Daten gehandhabt.
-
Die
Basispunkte in der Primär-DKC 100 und der
Sekundär-DKC 200 werden
bei einer Anfangsoperation zum Erzeugen eines Fernpaars zwischen der
Primär-DKC 100 und
der Sekundär-DKC 200 definiert.
-
Durch
eine Operation seitens der Primär-DKC 100 wird,
wie es in der 15 dargestellt ist, wenn Aktualisierungs-I/O-Daten
vom Hostcomputer 120 vorhanden sind, als Erstes ermittelt,
ob eine Zeitmarkierung 152 der Aktualisierungs-I/O-Daten größer als
ein aktueller Basispunkt 2 (Basispunkt 1 + spezifizierte Zeit) ist
(in S170). Wenn in S170 ermittelt wird, dass die Zeitmarkierung 152 dem
Basispunkt 2 entspricht oder kleiner wird, wird ermittelt, ob in
den Nebendateien der Datensatz in den Aktualisierungs-I/O-Daten
vorhanden ist (in S171).
-
Wenn
in S171 ermittelt wird, dass in der Nebendatei keine Aktualisierungs-I/O-Daten vorhanden sind,
da dort kein zu überschreibender
Datensatz vorhanden ist, fügt
die Operation Aktualisierungsdaten in den Aktualisierungs-I/O-Daten zur Nebendatei hinzu
(in S173). Wenn in S171 ermittelt wird, dass in der Nebendatei ein
dem Aktualisierungs-I/O-Daten entsprechender Datensatz enthalten
ist, werden die Aktualisierungsdaten in den Aktualisierungs-I/O-Daten über die
Daten im Datensatz in der Nebendatei geschrieben (in S172).
-
Wenn
in S170 ermittelt wird, dass die Zeitmarkierung 152 größer als
der Basispunkt 2 isst, werden, da die Zeit nicht innerhalb der spezifizierten
Zeit liegt, Aktualisierungsdaten in den Aktualisierungs-I/O-Daten
zur Nebendatei hinzugefügt
(in S174), und die Nebendateien in der Zeit vom Basispunkt 1 bis
zum Basispunkt 2 werden als Charge an die Sekundär-DKC 200 übertragen
(in S175).
-
Seitens
der Sekundär-DKC 200 wird,
wie es in der 16 dargestellt ist, die Nebendatei
in der Zeit vom Basispunkt 1 bis zum Basispunkt 2 als in der Sekundär-DKC 200 zu
verarbeitende Nebendatei angenommen und abgespeichert, und danach
wird ermittelt, ob in Annahmenummern 133 für Aktualisierungsdaten
in der Zeit vom Basispunkt 1 bis zum Basispunkt 2 eine Weglassung
vorhanden ist (in S180).
-
Wenn
in S180 ermittelt wird, dass in den Annahmenummern 133 eine
Weglassung vorhanden ist, wird, da nicht alle Daten in der Zeit
vom Basispunkt 1 bis zum Basispunkt 2 durch die Primär-DKC 100 angenommen
wurden, die Nebendatei erneut von der Primär-DKC 100 angenommen
und als in der Sekundär-DKC 200 zu
verarbeitende Nebendatei abgespeichert.
-
Wenn
in S180 ermittelt wird, dass in den Annahmenummern 133 keine
Weglassung vorhanden ist, werden Daten in der Zeit vom Basispunkt
1 bis zum Basispunkt 2 als echte, korrekte Daten in einen normalen
Cache im Cache-Speicher 202 bewegt (in S181). Danach werden
die Daten im normalen Cache in die Platteneinrichtung 210 geschrieben,
wobei die Daten zu echten, korrekten Daten werden.
-
Bei
der vorliegenden Ausführungsform
erfolgt ein Überschreiben
während
der spezifizierten Zeit vom Basispunkt 1 bis zum Basispunkt 2 für einige
Datensätze,
die nicht an die Sekundär-DKC 200 übertragen
wurden und die in der Nebendatei im Cache-Speicher 102 der
Primär-DKC 100 vorhanden sind.
Demgemäß können, wenn
ein asynchroner Fernkopiervorgang zeitseriell mit Einheiten eines
Aktualisierungsdatensatzes ausgeführt wird, wobei die Datenkorrektheit
aufrechterhalten bleibt, selbst dann, wenn Aktualisierungs-I/O-Daten
für dieselben
Datensätze
vorliegen, eine Verringerung der Übertragungsdatenmenge und eine
Verkleinerung des Verarbeitungsoverheads erzielt werden, während die
Datenkorrektheit gewährleistet
ist.
-
Als
Beispiel sei angenommen, dass 1000 iops für Aktualisierungen vom Hostcomputer 120 für denselben
Datensatz mit 4 kB/Datensatz erfolgen. In diesem Fall ist herkömmlicherweise
eine Übertragung
von 4 MB Daten (4 kB/Datensatz × 1000
iops = 4 MB) erforderlich; jedoch kann gemäß der vorliegenden Ausführungsform
die Datenmenge auf maximal 4 kB verringert werden.
-
Außerdem sei
angenommen, dass die Nebendateien sequenziell und asynchron von
der Primär-DKC 100 übertragen
werden. In diesem Fall kann selbst dann, wenn Aktualisierungs-I/O-Daten für denselben
Datensatz vorliegen, ein Fall angenommen werden, bei dem die Daten
bereits übertragen
wurden, so dass die Aktualisierungsdaten selbst innerhalb der spezifizierten
Zeit erneut übertragen werden
sollten. Wenn jedoch die Aktualisierungsdaten während der spezifizierten Zeit
vom Basispunkt 1 bis zum Basispunkt 2 als Charge übertragen
werden, kann die Effizienz beim Überschreiben
der Nebendatei verbessert werden, und es kann die Übertragungsdatenmenge
weiter verkleinert werden.
-
Ferner
können
in der Sekundär-DKC 200,
da die Daten während
der spezifizierten Zeit als Charge angenommen werden, die angenommenen
Daten im Zustand gehandhabt werden, in dem die spezifizierte Zeit
transparent ist.
-
(VIERTE AUSFÜHRUNGSFORM)
-
Diese
Ausführungsform
ist so aufgebaut, dass Datenkorrektheit selbst dann gewährleistet
werden kann, wenn bei jeder der Ausführungsformen 1 bis 3 das Fernpaar
aufgehoben wird, da eine Kommunikation zwischen der Primär-DKC 100 und
der Sekundär-DKC 200 durch
einen Fehler im Kommunikationspfad oder dergleichen verhindert ist.
-
Die
Speichervorrichtung der vorliegenden Ausführungsform verfügt über dieselbe
Konfiguration wie die erste Ausführungsform.
-
<Operation
bei einem Fehler im Kommunikationspfad>
-
Nachfolgend
wird die Operation bei einem Fehler im Kommunikationspfad bei der
Speichervorrichtung gemäß der vierten
Ausführungsform
der Erfindung beschrieben.
-
Wenn
die Kommunikation zwischen der Primär-DKC 100 und der
Sekundär-DKC 200 auf
Grund eines Fehlers im Kommunikationspfad oder dergleichen verhindert
ist, sollte das Fernkopierpaar aufgehoben werden. Selbst bei der
Aufhebung sollte die Datenkorrektheit in der Sekundär-DKC 200 gewährleistet
sein, und nachdem die Aufhebung gelöscht wurde, sollten sich Daten
zum Zeitpunkt der Aufhebung ohne Weglassung in der Sekundär-DKC 200 widerspiegeln.
-
In
diesem Fall handhabt, wenn nicht alle Nebendateiinhalte während der übertragung
der Nebendatei in der spezifizierten Zeit an die Sekundär-DKC 200 übertragen
werden können
(wegen eines Fehlers im Kommunikationspfad oder dergleichen), die Sekundär-DKC 200 die
Daten bis zum verifizierten Zeitpunkt als echte Daten, wie dies
herkömmlich
der Fall ist, wenn sie auf Grundlage der SEQ#-Überschreibvorgänge verifizieren
kann, dass innerhalb der Periode kein Überschreiben vorliegt. Jedoch
sollten bereits an die Sekundär-DKC 200 übertragene Daten
in der Primär-DKC 100 als
nicht übertragene Daten
gehandhabt werden.
-
Dann
wird, bei der vorliegenden Ausführungsform,
die Operation bei einem Fehler im Kommunikationspfad unter Verwendung
des Übertragungserfordernisbits
in der Schreibdatenverwaltungsinformation, wie in der 2 dargestellt,
kontrolliert.
-
Zunächst ist
die Anordnung dergestalt, dass das in der 2 dargestellte Übertragungserfordernisbit 135 auf "EIN" geschaltet wird,
wenn Aktualisierungsdaten als Nebendatei in der Primär-DKC 100 abgespeichert
wurden, während
das Übertragungserfordernisbit 135 auf "AUS" geschaltet wird,
wenn die Übertragung
an die Sekundär-DKC 200 abgeschlossen
ist, wobei die Nebendatei in der spezifizierten Zeit aus der Primär-DKC 100 gelöscht werden kann,
wenn die Übertragung
aller Nebendateien während
der spezifizierten Zeit normal abgeschlossen wurde.
-
Wenn
jedoch nicht alle Nebendateien während
der spezifizierten Zeit übertragen
werden können,
und wenn die Übertragung
im Verlauf fehlschlug (wegen eines Fehlers im Kommunikationspfad
oder dergleichen), werden alle Daten in der Nebendatei als Differenzdaten
verwaltet, die an die Sekundär-DKC 200 übertragen
werden sollten, und zwar unabhängig
vom "EIN"/"AUS"-Zustand
des Übertragungserfordernisbits 135 in
der Nebendatei.
-
Außerdem wird
bei einem schnell reparierbaren Übertragungsfehler
keine Aufhebung herbeigeführt,
und die Datenübertragung
wird entsprechend dem Zustand dem Übertragungserfordernisbits 135 fortgesetzt.
-
Demgemäß wird,
bei der vorliegenden Ausführungsform,
eine Datenübertragung
unter Verwendung des Übertragungserfordernisbits 135 in
der Schreibdatenverwaltungsinformation 105, wenn ein normaler
Modus vorliegt, ausgeführt.
Wenn jedoch ein Fehler im Kommunikationspfad auftritt, werden alle
Daten in der Nebendatei als Differenzdaten gehandhabt, die unabhängig vom "EIN"/"AUS"-Zustand des Übertragungserfordernisbits 135 an
die Sekundär-DKC 200 übertragen
werden sollten. Infolgedessen können
dann, wenn die Speichervorrichtung in einen Zustand gelangt ist,
in dem das Fernkopierpaar aufgehoben werden sollte (Fehler im Kommunikationspfad
oder dergleichen), auch bereits an die Sekundär-DKC 200 übertragene
Daten als Differenzdaten gehandhabt werden.
-
(FÜNFTE
AUSFÜHRUNGSFORM)
-
Diese
Ausführungsform
ist so aufgebaut, dass, bei jeder der Ausführungsformen 1 bis 3, ein Umschalten
zwischen einem Überschreibmodus
zum Überschreiben
der Nebendatei und einem herkömmlichen
Modus, um die Nebendatei nicht zu überschreiben, ausgeführt wird.
-
Die
Speichervorrichtung der vorliegenden Ausführungsform verfügt über dieselbe
Konfiguration wie die erste Ausführungsform.
-
<Modusumschaltoperation>
-
Nachfolgend
wird die Modusumschaltoperation der Speichervorrichtung gemäß der fünften Ausführungsform
beschrieben.
-
Die 17 ist
eine erläuternde
Ansicht zum Erläutern
einer Modusumschaltoperation der Speichervorrichtung gemäß der fünften Ausführungsform. Die 16 ist
ein Flussdiagramm zum Erläutern
der Modusumschaltoperation seitens der Primär-DKC. Die 19 ist
ein Flussdiagramm zum Veranschaulichen der Operation zum Speichern
von Schreibdaten seitens der Sekundär-DKC in den Cache-Speicher.
-
Bei
der vorliegenden Ausführungsform
kann, wie es in der 17 dargestellt ist, eine Modusumschaltanweisung
während
der spezifizierten Zeit vom Basispunkt 1 bis zum Basispunkt 2 vom
Hostcomputer 120 spezifiziert werden (ein Beispiel sind
die in (5) in der 17 dargestellten Daten, die
vom Hostcomputer 120 angenommen werden).
-
Auf
diese Weise kann die Modusumschaltanweisung seitens der Primär-DKC 100 spezifiziert
werden, wodurch die Operation wahlfrei zwischen dem Überschreibmodus
und dem herkömmlichen
Modus umgeschaltet werden kann.
-
Wenn
eine Modusumschaltanweisung spezifiziert wurde, teilt die o diese
Anweisung der Sekundär-DKC 200 mit,
und sie führt
nach dieser Zeit eine Modusumschaltung aus, und die Sekundär-DKC 200 führt eine
Modusumschaltung entsprechend der von der Primär-DKC 100 empfangenen
Modusumschaltanweisung aus.
-
Durch
eine Operation seitens der Primär-DKC 100 wird,
wie es in der 18 dargestellt ist, wenn Aktualisierungs-I/O-Daten
vom Hostcomputer 120 vorhanden sind, als Erstes ermittelt,
ob es sich bei den I/O-Daten um eine Modusumschaltanweisung handelt
(in S190). Wenn in S190 ermittelt wird, dass die I/O-Daten keiner Modusumschaltanweisung
entsprechen, wird eine normale I/O-Verarbeitung ausgeführt (in S191).
-
Wenn
in S190 ermittelt wird, dass die I/O-Daten einer Modusumschaltanweisung
entsprechen, wird diese in der Nebendatei abgespeichert. Dann wird
die Nebendatei an die Sekundär-DKC 200 übertragen,
um dieser dadurch die Modusumschaltanweisung mitzuteilen (in S192),
und es wird ein Modusumschalten ausgeführt (in S193).
-
Durch
eine Operation seitens der Sekundär-DKC 200 wird, wie
es in der 19 dargestellt ist, die Nebendatei
von der Primär-DKC 100 angenommen
und als seitens der Sekundär-DKC 200 zu verarbeitende
Nebendatei abgespeichert. Danach wird ermittelt, ob die Zeitmarkierung 152 größer als der
aktuelle Basispunkt 2 (Basispunkt 1 + spezifizierte Zeit) ist (in
S200). Wenn in S200 ermittelt wird, dass die Zeitmarkierung 152 größer als
der Basispunkt 2 ist, werden die Nebendateien kontinuierlich von
der Primär-DKC 100 angenommen,
bis in S200 ermittelt wird, dass die Zeitmarkierung 152 größer als der
Basispunkt 2 ist. Dann verifiziert, wenn in S200 ermittelt wird,
dass die Zeitmarkierung 152 größer als der Basispunkt 2 ist,
die Operation, ob in der Nebendatei eine Modusumschaltanweisung
vorhanden ist, um zu ermitteln, ob ein Modusumschalten erforderlich
ist (in S201).
-
Wenn
in S201 ermittelt wird, dass ein Modusumschalten erforderlich ist,
wird ein Modusumschalten der DKC ausgeführt (in S202). Wenn in S201
ermittelt wird, dass ein Modusumschalten erforderlich ist, wird
ermittelt, ob in den Annahmenummern 133 für Aktualisierungsdaten
in der Zeit vom Basispunkt 1 bis zum Basispunkt 2 eine Weglassung
vorliegt (in S203).
-
Wenn
in S203 ermittelt wird, dass in den Annahmenummern 133 eine
Weglassung vorliegt, wird, da nicht alle Aktualisierungsdaten während der
Zeit vom Basispunkt 1 bis zum Basispunkt 2 von der Primär-DKC 100 angenommen
wurden, die Nebendatei erneut von ihr angenommen und als in der
Sekundär-DKC 200 zu
verarbeitende Nebendatei abgespeichert.
-
Wenn
in S203 ermittelt wird, dass in den Annahmenummern 133 keine
Weglassung vorliegt, werden Daten in der Zeit vom Basispunkt 1 bis
zum Basispunkt 2 als echte, korrekte Daten in den normalen Cache
im Cache-Speicher 202 bewegt (in S204). Danach werden die
Daten im normalen Cache in die Platteneinrichtung 210 geschrieben,
wodurch die Daten zu echten, korrekten Daten werden.
-
Bei
der vorliegenden Ausführungsform
sollte, über
den Speichermodus der Nebendatei im Überschreibmodus zum Überschreiben
derselben, für
die Zeit bis zum Positionierabschnitt 2 oder zum Synchronisierungspunkt
abgewartet werden, bis die Daten seitens der Sekundär-DKC 200 als
echte Daten gehandhabt werden. Während
die Zeitverzögerung
in Bezug auf die Primär-DKC 100 zunimmt, wenn
auf die Übereinstimmung
zwischen der Primär-DKC 100 und
der Sekundär-DKC 200 Nachdruck
gelegt wird, wie beim Umschalten des Modus auf den herkömmlichen
Modus, kann ein Umschalten des Speichermodus der Nebendatei während des Betriebs
erfolgen, was eine Einstellung beispielsweise der Übereinstimmung
der Daten in der Primär-DKC 100 und
der Sekundär-DKC 200,
der Datenverlustmenge in der Sekundär-DKC 200 bei einem
Ausfall der Primär-DKC 100,
ermöglicht.
-
Bei
der vorliegenden Ausführungsform
kann, wie es beim Beispiel zum Spezifizieren der Modusumschaltanweisung
vom Hostcomputer 120 beispielhaft angegeben ist, die Umschaltanweisung
für den Überschreibmodus
und den herkömmlichen
Modus durch eine Bestimmung der Primär-DKC 100 spezifiziert
werden (beispiels weise kann die Bestimmung dann erfolgen, wenn die
Nebendatei auf Grund übermäßiger Aktualisierungs-I/O-Daten
vollständig gefüllt ist).
-
(SECHSTE AUSFÜHRUNGSFORM)
-
Diese
Ausführungsform
ist so aufgebaut, dass, bei der fünften Ausführungsform, dann, wenn die
Konfiguration aus mehreren Primär-DKCs 100 und
einer einzelnen Sekundär-DKC 200 besteht,
und wenn die Datenkorrektheit gewährleistet ist, der Betriebsmodus
in der Sekundär-DKC 200 in
Einheiten der Primär-DKCs 100 gehandhabt
wird.
-
Die
Speichervorrichtung der vorliegenden Ausführungsform verfügt über dieselbe
Konfiguration wie die erste Ausführungsform,
wobei die Konfiguration so ausgebildet ist, dass mehrere Primär-DKCs 100 mit
einer einzelnen Sekundär-DKC 200 verbunden
sind.
-
<Modusumschaltung
von mehreren Primar-DKCs>
-
Nachfolgend
wird die Modusumschaltoperation der Speichervorrichtung gemäß der sechsten Ausführungsform
beschrieben.
-
Die 20 ist
eine erläuternde
Ansicht zum Erläutern
der Modusumschaltoperation der Speichervorrichtung gemäß der sechsten
Ausführungsform. Die 21 ist
ein Flussdiagramm zum Veranschaulichen der Operation des Speicherns
von Schreibdaten seitens einer Sekundär-DKC in den Cache-Speicher.
-
Bei
der vorliegenden Ausführungsform
werden, wie es in der 20 dargestellt ist, seitens
der Sekundär-DKC 200 Modusumschaltanweisungen von
den mehreren Primär-DKCs 100 gehandhabt. Seitens
der Sekundär-DKC 200 bleibt
der Betriebsmodus zum Erzeugen echter Daten unverändert, bis die
Betriebsmodi aller Primär-DKCs 100 miteinander übereinstimmen;
der Betriebsmodus seitens der Sekundär-DKC 200 wird dann
geändert,
wenn die Betriebsmodi aller Primär-DKCs 100 in Übereinstimmung
miteinander gebracht wurden. Außerdem
wird, wenn eine Mischung des Überschreibmodus
und des herkömmlichen
Modus (Synchronisiermodus) vorliegt, die Nebendatei in der Sekundär-DKC 200 in
allen Fällen
im Überschreiomodus
gehandhabt.
-
Durch
eine Operation seitens der Primär-DKC 100 wird, ähnlich wie
bei der Operation bei der in der 18 dargestellten
fünften
Ausführungsform,
wenn Aktualisierungs-I/O-Daten vom Hostcomputer 120 vorhanden
sind, als Erstes ermittelt, ob es sich bei den I/O-Daten um eine
Modusumschaltanweisung handelt (in S190). Wenn in S190 ermittelt wird,
dass es sich bei den I/O-Daten um keine Modusumschaltanweisung handelt,
wird eine normale I/O-Verarbeitung ausgeführt (in S191).
-
Wenn
in S190 ermittelt wird, dass es sich bei den I/O-Daten um eine Modusumschaltanweisung handelt,
wird diese in die Nebendatei eingespeichert. Dann wird die Nebendatei
an die Sekundär-DKC 200 übertragen,
um dieser dadurch die Modusumschaltanweisung mitzuteilen (S192),
und es wird eine Modusumschaltung ausgeführt (in S193).
-
Durch
eine Operation seitens der Sekundär-DKC 200 wird, wie
es in der 21 dargestellt ist, die Nebendatei
durch die Primär-DKC 100 akzeptiert
und als seitens der Sekundär-DKC 200 zu
verarbeitende Nebendatei abgespeichert. Danach wird ermittelt, ob
in der Nebendatei eine Modusumschaltanweisung vorhanden ist, um
zu ermitteln, ob eine Modusumschaltung erforderlich ist (in S210).
-
Wenn
in S210 ermittelt wird, dass ein Modusumschalten erforderlich ist,
wird ein Modusumschalten der DKC ausgeführt (in S211). Wenn in S210
ermittelt wird, dass kein Modusumschalten erforderlich ist, wird
ermittelt, ob die Anweisung eine Aufhebungsanweisung ist (in S212).
Wenn in S212 ermittelt wird, dass die Anweisung eine Aufhebungsanweisung
ist, wird ein Paar aus dem Primär-DKC 100 und dem
Sekundär-DKC 200 aufgehoben
(in S213).
-
Wenn
in S212 ermittelt wird, dass die Anweisung keine Aufhebungsanweisung
ist, wird ermittelt, ob der aktuelle Zustand der Überschreibmodus
ist (in S214). Wenn in S214 ermittelt wird, dass der aktuelle Zustand
nicht der Überschreibmodus
ist, wird die Operation im Synchronisiermodus, der der herkömmliche
Modus ist, ausgeführt;
außerdem
kann ein Eintreffen von Daten vor der Nebendatei verifiziert werden,
wobei die Daten als echte Daten gehandhabt werden (in S215).
-
Wenn
in S214 ermittelt wird, dass der aktuelle Zustand der Überschreibmodus
ist, wird ermittelt, ob die Zeitmarkierung 152 größer als
der aktuelle Basis- Punkt
2 (Basispunkt 1 + spezifizierte Zeit), ist (in S216). Wenn in S216
ermittelt wird, dass die Zeitmarkierung 152 größer als
der Basispunkt 2 ist, werden die Nebendateien von der Primär-DKC 100 kontinuierlich
angenommen, bis in S216 ermittelt wird, dass die Zeitmarkierung 152 größer als
der Basispunkt 2 ist. Dann wird, wenn in S216 ermittelt wird, dass
die Zeitmarkierung 152 größer als der Basispunkt 2 ist, ermittelt,
ob in den Annahmenummern 133 für Aktualisierungsdaten während der
Zeit vom Basispunkt 1 bis zum Basispunkt 2 eine Weglassung vorhanden
ist (in S217).
-
Wenn
in S217 ermittelt wird, dass in den Annahmenummern 133 eine
Weglassung vorhanden ist, wird, da nicht alle Aktualisierungsdaten
während der
Zeit vom Basispunkt 1 bis zum Basispunkt 2 von der Primär-DKC 100 angenommen
wurden, die Nebendatei erneut von ihr angenommen, und sie wird als
in der Sekundär-DKC 200 zu
verarbeitende Nebendatei abgespeichert.
-
Wenn
in S217 ermittelt wird, dass in den Annahmenummern 133 keine
Weglassung vorhanden ist, wird ein Abschlussflag für eine Nebendatei
der Primär-DKC 100 auf "EIN" geschaltet. Dann
wird ermittelt, ob alle Nebendateien anderer Primär-DKCs 100 abgeschlossen
sind (in S219). Wenn in S219 ermittelt wird, dass nicht alle Nebendateien
der anderen Primär-DKCs 100 abgeschlossen
sind, werden die Nebendateien von der Primär-DKC 100 angenommen
und als seitens der Sekundär-DKC 200 zu verarbeitende
Nebendateien abgespeichert.
-
Wenn
in S219 ermittelt wird, dass alle Nebendateien der anderen Primär-DKCs 100 abgeschlossen
sind, wird ermittelt, ob die angewiesenen Modi aller Primär-DKCs 100 jeweils
dem Synchronisiermodus, der der herkömmliche Modus ist, entsprechen
(in S220). Wenn in S220 ermittelt wird, dass jede Primär-DKC 100 im
Synchronisiermodus arbeitet, wird der Ausführungsmodus jeder der gesamten Primär-DKCs 100 auf
den Synchronisiermodus umgeschaltet (in S221), und die Daten während der
Zeit vom Basispunkt 1 bis zum Basispunkt 2 werden als echte, korrekte
Daten gehandhabt.
-
Wenn
in S220 ermittelt wird, dass der Anweisungsmodus aller der Primär-DKCs 100 nicht
der Synchronisiermodus ist, bleibt der Ausführungsmodus aller der Primär-DKCs 100 unverändert auf
dem Synchronisiermodus (in S221), und die Daten während der
Zeit vom Basispunkt 1 bis zum Basispunkt 2 werden als echte, korrekte
Daten gehandhabt.
-
Wenn
bei der vorliegenden Ausführungsform eine Änderung
der Betriebsmodi zwischen den mehreren Primär-DKCs 100 und der
einzelnen Sekundär-DKC 200 auftritt,
werden die Betriebsmodi seitens der Sekundär-DKC 200 gehandhabt,
wobei der Betriebsmodus seitens der Sekundär-DKC 200 geändert wird,
wenn die Betriebsmodi der mehreren Primär-DKCs 100 miteinander übereinstimmen.
Demgemäß wird,
ohne Verwendung einer zusätzlichen Kommunikationseinrichtung,
eine Nichtübereinstimmung
der Betriebsmodi bei der Steuerung der Sekundär-DKC 200 tolerierbar.
Außerdem
kann die Betriebsmodusänderungstechnik
leicht in der Umgebung der mehreren Primär-DKCs 100 verwendet werden.
-
Demgemäß erfolgte
für die
vorliegende Ausführungsform
eine Beschreibung unter Bezugnahme auf ein Beispiel, bei dem die
Modusumschaltanweisung vom Hostcomputer 120 ausgegeben
wird. Jedoch kann die Anordnung dergestalt sein, dass, ähnlich wie
bei der fünften
Ausführungsform,
die Umschaltanweisung für
den Überschreibmodus
und den herkömmlichen
Modus durch eine Bestimmung durch die Primär-DKC 100 spezifiziert
wird (beispielsweise kann die Bestimmung dann erfolgen, wenn die Nebendatei
auf Grund übermäßiger Aktualisierungs-I/O-Daten
vollständig
gefüllt
ist).
-
Gemäß der Erfindung
können
beim Ausführen
eines asynchronen Fernkopiervorgangs zum Erzielen korrekter zeitserieller
Daten in Einheiten eines Aktualisierungsdatensatzes selbst dann,
wenn Aktualisierungs-I/O-Daten für
dieselben Datensätze
vorliegen, eine Verringerung der Übertragungsdatenmenge und eine
Verkleinerung des Verarbeitungsoverheads realisiert werden, während die
Datenkorrektheit gewährleistet
ist.
-
Ferner
kann, gemäß der Erfindung,
da in der Primär-Plattensteuerung
ein Synchronisierungspunkt verwendet wird, ein Verlaufspunkt dadurch
erkannt werden, dass alleine der Synchronisierungspunkt in der Signalpegel
erkannt wird, und in dieser kann der Synchronisierungspunkt wahlfrei
kontrolliert werden.