DE602004007925T2 - Verwalten einer beziehung zwischen einem zielvolumen und einem quellenvolumen - Google Patents

Verwalten einer beziehung zwischen einem zielvolumen und einem quellenvolumen Download PDF

Info

Publication number
DE602004007925T2
DE602004007925T2 DE602004007925T DE602004007925T DE602004007925T2 DE 602004007925 T2 DE602004007925 T2 DE 602004007925T2 DE 602004007925 T DE602004007925 T DE 602004007925T DE 602004007925 T DE602004007925 T DE 602004007925T DE 602004007925 T2 DE602004007925 T2 DE 602004007925T2
Authority
DE
Germany
Prior art keywords
relationship
volume
source
entry
metadata
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
DE602004007925T
Other languages
English (en)
Other versions
DE602004007925D1 (de
Inventor
Michael Factor
Shachar Fienblit
Amiran Hayardeny
Thomas Charles Tucson JARVIS
Rivka Mayraz Matosevich
William Frank Tucson MICKA
Ifat Nuriel
Sheli Winchester RAHAV
Svetlana Shukevich
Gail Andrea Tucson SPEAR
Sivan Tal
Dalit Tzafrir
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Publication of DE602004007925D1 publication Critical patent/DE602004007925D1/de
Application granted granted Critical
Publication of DE602004007925T2 publication Critical patent/DE602004007925T2/de
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0646Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
    • G06F3/065Replication mechanisms
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0614Improving the reliability of storage systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0638Organizing or formatting or addressing of data
    • G06F3/064Management of blocks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0683Plurality of storage devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1415Saving, restoring, recovering or retrying at system level
    • G06F11/1435Saving, restoring, recovering or retrying at system level using file system or storage system metadata
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99951File or database maintenance
    • Y10S707/99952Coherency, e.g. same view to multiple users
    • Y10S707/99953Recoverability
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99951File or database maintenance
    • Y10S707/99952Coherency, e.g. same view to multiple users
    • Y10S707/99954Version management

Description

  • TECHNISCHES GEBIET
  • Die vorliegende Erfindung betrifft ein Verfahren, ein System und ein Programm zum Verwalten einer Beziehung zwischen einem Zieldatenträger und einem Quellendatenträger.
  • ZUGRUNDELIEGENDE TECHNIK
  • Computersysteme beinhalten oft einen oder mehrere Hostcomputer („Hosts") zum Verarbeiten von Daten und zum Ausführen von Anwendungsprogrammen, DASD-Einheiten (Direktzugriffsspeicher) zum Speichern von Daten und eine Speichersteuereinheit zum Steuern der Datenübertragung zwischen den Hosts und dem DASD. Speichersteuereinheiten, die auch als Steuereinheiten oder Speichersteuerungen bezeichnet werden, verwalten den Zugriff auf einen Speicherbereich, der aus zahlreichen Festplattenlaufwerken besteht, die in einer Ringarchitektur zusammengeschaltet sind, die auch als Direktzugriffspeicher (DASD) bezeichnet wird. Hosts können über die Speichersteuereinheit Eingabe-/Ausgabe(E/A)-Anforderungen an den Speicherbereich richten.
  • In vielen Systemen können Daten von einer Speichereinheit, z.B. von einem DASD, auf die gleiche oder auf eine andere Speichereinheit kopiert werden, so dass der Zugriff auf Datenträger von zwei unterschiedlichen Einheiten aus erfolgen kann. Eine zeitpunktgesteuerte Kopie beinhaltet das physische Kopieren aller Daten von Quellendatenträgern auf Zieldatenträger, sodass der Zieldatenträger über eine Kopie der Daten zu einem bestimmten Zeitpunkt verfügt. Eine zeitpunktgesteuerte Kopie kann auch dadurch hergestellt werden, dass eine logische Kopie der Daten hergestellt und erst auf Abruf auf den anderen Datenträger kopiert wird, wodurch letztlich das physische Kopieren hinausgeschoben wird. Diese logische Kopieroperation wird durchgeführt, um die Zeit möglichst kurz zu halten, während der auf den Ziel- und den Quellendatenträger nicht zugegriffen werden kann.
  • Eine solche logische Kopieroperation ist unter der Bezeichnung FlashCopy® bekannt (FlashCopy ist ein eingetragenes Warenzeichen von International Business Machines, Corp. Oder „IBM). FlashCopy® beinhaltet das Herstellen einer logischen zeitpunktgesteuerten Beziehung zwischen dem Quellen- und dem Zieldatenträger in verschiedenen Einheiten. Die FlashCopy-Funktion stellt sicher, dass eine Spur so lange auf der Quellenplatte bleibt, bis die Spur auf ihren Speicherplatz auf der Zielplatte festgelegt worden ist. Zur Speicherung der Daten über alle im Teilsystem vorhandenen FlashCopy-Beziehungen wird eine Beziehungstabelle verwendet. Während der Erstellungsphase einer FlashCopy-Beziehung wird ein Eintrag in der Quellen- und in der Ziel-Beziehungstabelle für die Quelle und das Ziel gespeichert, die an der zu erstellenden FlashCopy beteiligt sind. Jeder eingegebene Eintrag enthält alle erforderlichen Daten zur FlashCopy-Beziehung. Die beiden Einträge für die Beziehung werden aus den Beziehungstabellen entfernt, wenn alle FlashCopy-Spuren vom Quellenbereich auf die Zielbereiche kopiert worden sind oder wenn ein Annullierungsbefehl empfangen wird.
  • Die Ziel-Beziehungstabelle beinhaltet ferner eine Bitmap, die anzeigt, welche an der Flash-Copy-Beziehung beteiligten Spuren noch nicht auf den Zieldatenträger kopiert wurden und somit geschützt sind. Jede Spur in der Zieleinheit wird in der Bitmap durch ein Bit dargestellt. Das Zielbit wird gesetzt, wenn die entsprechende Spur als Zielspur einer FlashCopy-Beziehung festgelegt wird. Das Zielbit wird zurückgesetzt, wenn die entsprechende Spur aufgrund von Schreiboperationen in der Quelleneinheit oder der Zieleinheit oder eines im Hintergrund ablaufenden Kopiervorgangs vom Quellendatenträger kopiert und auf die Zieleinheit ausgelagert worden ist.
  • Nach dem Stand der Technik müssen alle Spuren im Quellen-Cachespeicher, die an der FlashCopy(R) beteiligt sind, als Teil der Herstellung der logischen zeitpunktgesteuerten Beziehung während der FlashCopy(R)-Operation auf den physischen Quellendatenträger, z.B. auf den Quellen-DASD, ausgelagert werden, und alle an der FlashCopy(R) beteiligten Spuren im Ziel-Cachespeicher müssen gelöscht werden.
  • Nachdem die logische Beziehung hergestellt worden ist, können die Hosts sofort auf Daten im Quellen- und im Zieldatenträger zugreifen, und die Daten können als Teil einer Hintergrundoperation kopiert werden. Eine Leseoperation einer Spur, die ein Ziel in einer FlashCopy(R)-Beziehung, nicht aber im Cachespeicher ist, löst eine Abfangoperation zum Zwischenspeichern aus, sodass die der angeforderten Zielspur entsprechende Quellenspur im Ziel-Cachespeicher zwischengespeichert werden, wenn die Quellenspur noch nicht auf den Zieldatenträger kopiert wurde, und bevor der Zugriff auf die Spur vom Ziel-Cachespeicher möglich ist. Dadurch wird sichergestellt, dass das Ziel über die Kopie von der Quelle verfügt, wie sie zum Zeitpunkt der FlashCopy(R)-Operation vorlag. Ferner lösen alle Schreiboperationen von Spuren in der Quelleneinheit, die noch nicht zum Zieldatenträger kopiert wurden, eine Abfangoperation zum Zwischenspeichern aus, wodurch die Spuren in der Quelleneinheit zur Zieleinheit kopiert werden.
  • In der US-Patentschrift 6 189 079 wird die Verwendung einer Beziehungstabelle zum Speichern von Daten beschrieben, die zum Verwalten des Kopierens eines oder mehrerer Bereiche von Quellenspuren von einem Quellendatenträger auf entsprechende Zielspuren eines Quellendatenträgers erforderlich sind. Die beschriebene Beziehungstabelle enthält für jedes Kopienpaar von Bereichen der Quellen- und der Zielspur einen separaten Eintrag.
  • BESCHREIBUNG DER ERFINDUNG
  • Es werden ein Verfahren, ein System und ein Programm zum Verwalten einer Beziehung zwischen einem Zieldatenträger und einem Quellendatenträger bereitgestellt. Sowohl für den Quellen- als auch für den Zieldatenträger beinhaltet der Speicher Folgendes: (i) mindestens ein Element, wobei jedes Element einen Bereich aufeinander folgender Dateneinheiten im Datenträger darstellt; (ii) mindestens einen Beziehungseintrag, wobei jeder Beziehungseintrag eine Beziehung darstellt; (iii) mindestens einen Elementzeiger, der ein Element einem Beziehungseintrag zuordnet, wobei die durch das Element dargestellten Dateneinheiten Teil der Beziehung sind, die durch den Beziehungseintrag dargestellt wird, dem der Zeiger das Element zuordnet; und (iv) einen Beziehungszeiger für jeden Beziehungseintrag, der den Beziehungseintrag Datenträger-Metadaten zuordnet, wobei die Datenträger-Metadaten Daten über die durch den Beziehungseintrag dargestellte Beziehung liefern.
  • Bei weiteren Realisierungsformen sind die Quellen- und Ziel-Metadaten in einem nichtflüchtigen Speicher im Quellen- bzw. im Zieldatenträger gespeichert.
  • Außerdem werden die Datenträger-Metadaten verarbeitet, um im Speicher das mindestens eine Element, den mindestens einen Beziehungseintrag, den mindestens einen Elementzeiger und den mindestens einen Beziehungszeiger zu erzeugen. Bei weiteren Realisierungsformen werden die Datenträger-Metadaten in einer Vielzahl von Datenträgern verarbeitet, wobei für jeden Datenträger ein Satz Elemente, Beziehungseinträge, Elementzeiger und Beziehungszeiger erzeugt wird, die Datenträger-Metadaten zur Kennzeichnung der Beziehungen eines Datenträgers zu einem anderen Datenträger beinhalten.
  • Weiterhin kann das Erzeugen des mindestens einen Elements im Speicher ferner das Verarbeiten von Datenträger-Metadaten, um jeden Bereich der an jeder Beziehung beteiligten Dateneinheiten zu ermitteln, und das Erzeugen eines Elements für jeden Bereich der an mindestens einer Beziehung beteiligten Dateneinheiten umfassen.
  • Darüber hinaus kann das Erzeugen des mindestens einen Elements im Speicher ferner das Erzeugen von Elementen umfassen, die Bereiche von Dateneinheiten vor oder nach dem Bereichen der Dateneinheiten in Elementen beinhalten, die an einer Beziehung beteiligt sind, wobei alle erzeugten Elemente zusammen alle Benutzerdateneinheiten im Datenträger darstellen, einschließlich der Bereiche von Dateneinheiten in Beziehungen und einschließlich der Bereiche von Dateneinheiten, die nicht an Beziehungen beteiligt sind.
  • Die beschriebenen Realisierungsformen liefern Daten über Beziehungen zwischen Quellen- und Zieldatenträgern und eine Verknüpfung solcher Daten im Speicher, um solche Beziehungsdaten verfügbar zu machen.
  • KURZBESCHREIBUNG DER ZEICHNUNGEN
  • Die Erfindung wird nun beispielhaft unter Bezug auf die beiliegenden Zeichnungen beschrieben, wobei:
  • 1 eine Datenverarbeitungsumgebung veranschaulicht, in der Aspekte der Erfindung realisiert werden;
  • die 2 und 3 eine Beziehung zwischen Spuren in einem Quellendatenträger und Spuren in einem Zieldatenträger gemäß Realisierungsformen der Erfindung veranschaulichen;
  • die 4, 5, 6, 7 und 8 Ausführungsarten von Informationen veranschaulichen, die gemäß Realisierungsformen der Erfindung eine Beziehung zwischen Quellen- und Zielspuren in einer Kopierbeziehung darstellen;
  • 9 Arbeitsschritte zum Initialisieren von Beziehungsinformationen gemäß Realisierungsformen der Erfindung in einem Speicher veranschaulicht;
  • die 10a und 10b Arbeitsschritte zum Aktualisieren von Beziehungsinformationen in einem Speicher veranschaulichen, um eine neue Beziehung gemäß Realisierungsformen der Erfindung darzustellen;
  • die 11, 12a und 12b Arbeitsschritte zum Aktualisieren von Beziehungsinformationen in einem Speicher veranschaulichen, um eine Annullierung von Spuren aus einer Beziehung gemäß Realisierungsformen der Erfindung darzustellen;
  • 13 Arbeitsschritte zum Berücksichtigen von Beziehungen beim Auslagern und Zwischenspeichern von Spuren aus einem Cachespeicher gemäß Realisierungsformen der Erfindung veranschaulicht;
  • 14 Arbeitsschritte zum Durchführen eines Wiederherstellungsprozesses gemäß Realisierungsformen der Erfindung veranschaulicht; und
  • 15 eine Architektur von Datenverarbeitungskomponenten, zum Beispiel von Hosts, einer Speichersteuereinheit sowie beliebigen anderen Datenverarbeitungseinheiten, in der Netzumgebung veranschaulicht.
  • BESTE AUSFÜHRUNGSFORM DER ERFINDUNG
  • 1 veranschaulicht eine Datenverarbeitungsarchitektur, in der Aspekte der Erfindung realisiert werden. Eine Speichersteuereinheit 2 empfängt über ein Netz 6 von Host-Systemen 4a, 4b...4n an Speichereinheiten 8a, 8b und 20 mit Datenträgern (z.B. Nummern von logischen Einheiten, logischen Einheiten usw.) 10a, 10b...10n bzw. 12a, 12b...12m gerichtete Eingabe-/Ausgabe(E/A)-Anforderungen, wobei m und n unterschiedliche ganzzahlige oder aber gleiche Werte haben können. Die Speichersteuereinheit 2 beinhaltet ferner einen Quellen-Cachespeicher 14a zum Speichern von E/A-Daten für Spuren im Quellenspeicher 8a und einen Ziel-Cachespeicher 14b zum Speichern von E/A-Daten für Spuren im Zielspeicher 8b. Der Quellen-Cachespeicher 14a und der Ziel-Cachespeicher 14b können separate Speichereinheiten oder verschiedene Bereiche ein und derselben Speichereinheit umfassen. Die Cachespeicher 14a und 14b dienen zum Puffern von Lese- und Schreibdaten während der Übertragung zwischen den Hosts 4a, 4b...4n und den Speichern 8a, 8b. Obwohl die Cachespeicher 14a und 14b als Quellen- bzw. als Ziel-Cachespeicher zum Aufrechterhalten von Quellen- und Zielspuren in einer zeitpunktgesteuerten Kopierbeziehung bezeichnet werden, können die Cachespeicher 14a und 14b gleichzeitig auch Quellen- und Zielspuren in verschiedenen zeitpunktgesteuerten Kopierbeziehungen speichern.
  • Die Speichersteuereinheit 2 beinhaltet auch einen Systemspeicher 16, der in Form von flüchtigen und/oder nichtflüchtigen Einrichtungen realisiert werden kann. Im Systemspeicher 16 wird eine Speicherverwaltungssoftware 18 ausgeführt, um das Kopieren von Daten zwischen den verschiedenen Speichereinheiten 8a, 8b, zum Beispiel das logische Kopieren während einer FlashCopy®-Operation, zu verwalten. Die Speicherverwaltungssoftware 18 kann außer den hier beschriebenen Kopieroperationen auch noch andere Operationen ausführen. Der Systemspeicher 16 kann sich in einer separaten Speichereinheit der Cachespeicher 14a, 14b oder in einem Teil davon befinden. Die Speicherverwaltungssoftware 18 verwaltet eine speicherinterne Beziehungstabelle 20 im Systemspeicher 16, die Informationen über zeitpunktgesteuerte Kopierbeziehungen für jeden von der Speichersteuereinheit 2 verwalteten Datenträger liefert, wobei für jeden Datenträger eine speicherinterne Beziehungstabelle 20 vorliegen kann. Bei bestimmten Realisierungsformen bezieht sich die Kopierbeziehung auf Spuren. Eine Kopierbeziehung kann sich jedoch auch auf andere Dateneinheiten, zum Beispiel Blöcke, Teilblöcke einer Spur usw., beziehen, bei denen es für jede Quellendateneinheit in der Beziehung eine entsprechende Zieldateneinheit gibt.
  • Die Speichersteuereinheit 2 beinhaltet ferner einen (nicht gezeigten) Prozessorkomplex und kann eine beliebige in der Technik bekannte Speichersteuereinheit oder einen Server umfassen, zum Beispiel die Speichersteuereinheit IBM Enterprise Storage Server (ESS)®, 3990® usw. (Enterprise Storage Server ist ein eingetragenes Warenzeichen von IBM). Die Hosts 4a, 4b...4n können eine beliebige in der Technik bekannte Datenverarbeitungseinrichtung umfassen, zum Beispiel einen Server, einen Großrechner (Mainframe), einen Arbeitsplatzrechner, einen Personal Computer, einen Taschenrechner, einen Laptop, ein Telefongerät, eine Netzeinheit usw. Die Speichersteuereinheit 2 und die Hostsysteme 4a, 4b...4n tauschen untereinander Daten über ein Netz 6 aus, das ein Speicherbereichsnetz (Storage Area Network, SAN), ein lokales Netz (Local Area Network, LAN), ein Intranet, das Internet, ein Weitverkehrsnetz (Wide Area Network, WAN) usw. umfassen kann. Die Speichersysteme 8a, 8b können eine Anordnung von Speichereinrichtungen umfassen, zum Beispiel einen Plattenstapel (Just a Bunch Of Disks, JBOD), eine redundante Anordnung unabhängiger Platten (Redundant Array of Independent Disks, RAID), eine Virtualisierungseinrichtung usw.
  • Eine zeitpunktgesteuerte Kopie kann zwischen einem Bereich von Spuren auf einem Quellendatenträger und einem Bereich von Spuren auf einem Zieldatenträger hergestellt werden, wobei die Anzahl der Spuren des an der Beziehung beteiligten Quellen- und des Zieldatenträgers verschieden sein kann. Bei bestimmten Realisierungsformen können sich der Quellenbereich und der Zielbereich unterschiedlich weit vom Anfang der jeweiligen Datenträger entfernt befinden. Das ermöglicht eine Neuordnung von Datensätzen, um zum Beispiel einen Satz verstreuter Datensätze zu einem zusammenhängenden Satz von Spuren zusammenzuführen. 2 zeigt, wie in der Mitte des Quellendatenträgers 54 befindliche verstreute Quellenbereiche 50 und 52 in Zielbereiche 56 und 58 an den Anfang eines Zieldatenträgers 60 umgesetzt werden, wobei sich die Reihenfolge im Quellendatenträger 54 von der im Zieldatenträger 60 unterscheidet.
  • Die beschriebenen Realisierungsformen ermöglichen ferner mehrere zeitpunktgesteuerte Kopierbeziehungen je Spur, wobei ein bestimmter Bereich von Spuren gleichzeitig Teil von mehr als nur einer zeitpunktgesteuerten Kopierbeziehung sein kann. Eine Spur kann entweder zu einem Quellenbereich oder zu einem Zielbereich gehören. Ferner kann eine Spur zu mehreren Quellenbeziehungen gehören, während bei bestimmten Realisierungsformen nur eine Zielbeziehung erlaubt ist. 3 veranschaulicht mehrere Beziehungen je Spur, wobei ein Quellendatenträger 70 mehrere Bereiche von Spuren 72, 74, 76 und 78 aufweist, die auf verschiedene Zielbereiche 82, 84, 86 und 88 im Zieldatenträger 80 abgebildet werden. Die Quellenbereiche 72 und 74 gehören zum Zielbereich 82, und die Quellenbereiche 74 und 76 gehören zum Zielbereich 84, sodass diese beiden Beziehungen gleichzeitig einem überlappenden Bereich 74 von Spuren angehören. Ferner gehört der Quellenbereich 78 zu mehreren Zielbereichen 86 und 88, und der Quellenbereich 74 gehört auch zu mehreren Zielbereichen 82 und 84. Obwohl bei diesem Beispiel mehrere Zielbereiche in ein und demselben Datenträger gezeigt werden, können sich die Zielspuren auf verschiedenen Datenträgern befinden.
  • Wenn zwischen einem Bereich von Spuren in einem Quellendatenträger und einem Bereich in einem Zieldatenträger eine zeitpunktgesteuerte Beziehung hergestellt wird, werden in den Datenträger-Metadaten im Quellendatenträger und im Zieldatenträger 10a, 10b...10n bzw. 12a, 12b...12n dauerhafte Informationen über die Beziehung gespeichert. Mit Blick 4 können die Datenträger-Metadaten 100 für jeden Quellendatenträger und Zieldatenträger Metadatenkomponenten beinhalten, zum Beispiel Beziehungs-Metadaten 102, Beziehungs-Bitmap-Metadaten 104 und eine Datenträgernummer. Die Beziehungs-Metadaten 102 beinhalten Beziehungsblöcke 106a, 106b...106n, die jeweils Informationen über eine zeitpunktgesteuerte Kopie für einen Bereich von Spuren im Datenträger beinhalten. 5 veranschaulicht weitere Details eines Beziehungsblocks, zum Beispiel der Beziehungsblöcke 106a, 106b...106n in 4, die Folgendes beinhalten:
    • • Beziehungs-ID 110: als eindeutige Kennzeichnung der Beziehung. Diese Zahl dient sowohl der Quelle als auch dem Ziel zur Kennzeichnung der Beziehung.
    • • Beziehungsrolle 112: zum Anzeigen, ob der Bereich der Spuren im Datenträger eine Quelle oder ein Ziel in der Beziehung darstellt.
    • • Bereich 114: zum Kennzeichnen von Spuren im Datenträger, der den Bereich der an der zeitpunktgesteuerten Beziehung beteiligten Spuren beinhaltet.
    • • Datenträgerpaar 116: zum Kennzeichnen des anderen Datenträgers in der Beziehung.
  • Die Beziehungsblöcke 106a, 106b...106n können in einer verknüpften Liste angeordnet werden. Nicht verwendete Blöcke in den Beziehungs-Metadaten 102 können in einer freien Liste der freien Blöcke gespeichert werden, die zum Speichern von Beziehungsinformationen als Beziehungsblock zur Verfügung stehen. Die Beziehungsblöcke 106a, 106b...106n können eine feste Länge und einen Index aufweisen, damit durch einen Index auf sie zugegriffen werden kann.
  • Die Bitmap-Metadaten 104 umfassen eine oder mehrere Bitmap-Datenstrukturen, die für jede Spur im Datenträger ein Bit vorsehen. Wenn das Bit auf „Ein" steht, bedeutet dies, dass die entsprechende Zielspur die zeitpunktgesteuerten Daten von der Quelle noch nicht beinhaltet und dass die Daten noch hinüberkopiert werden müssen. Die mehreren Bereichen entsprechenden Bitwerte können direkt einer relativen Adresse der Beziehungs-Bitmap-Metadaten 104 zugeordnet werden.
  • 6 veranschaulicht eine Realisierungsform einer Datenstruktur in der speicherinternen Beziehungstabelle 20.
  • Für jeden durch die Speichersteuereinheit 2 verwalteten Datenträger kann es eine speicherinterne Beziehungstabelle 20 geben. Die speicherinterne Beziehungstabelle 20 beinhaltet eine Vielzahl von Elementen 130a, 130b, 130c und 130d, wobei jedes Element einen Bereich zusammenhängender Spuren im entsprechenden Datenträger darstellt. 7 veranschaulicht den Inhalt jedes Elements 130, zum Beispiel der Elemente 130a, 130b, 130c und 130d in 6, mit einer Startspur 132 und einer Endspur 134, die den Anfang und das Ende eines zusammenhängenden Bereichs von Spuren im Datenträger darstellen, und einem Feld von Zeigern 136 auf einen oder mehrere Beziehungseinträge 140a, 140b und 140c. Die Beziehungseinträge können sich auch in einer verknüpften Liste befinden. Ferner können mehrere Elemente auf ein und denselben Beziehungseintrag 140a, 140b und 140c zeigen. 6 zeigt, dass die Elemente 130a, 130b und 130d die in einer zeitpunktgesteuerten Kopierbeziehung enthaltenen Bereiche von Spuren darstellen, die durch die Zeiger 136a, 136b, 136c und 136d dargestellt werden, die auf Beziehungseinträge 140a, 140b und 140c zeigen, welche Informationen über die Beziehung einschließlich der durch die Elemente 130a, 130b und 130d dargestellten Spuren liefern. Das Element 130c stellt einen Bereich von Spuren dar, der nicht in eine zeitpunktgesteuerte Beziehung einbezogen ist, was durch das Fehlen eines Zeigers auf einen Beziehungseintrag 140a, 140b und 140c angezeigt wird. Wenn ein Element, z.B. das Element 130a, ein Feld von Zeigern 136a und 136b beinhaltet, das auf verschiedene Beziehungseinträge 140a und 140b zeigt, wird ein solcher Bereich von Spuren zwei Beziehungen zugeordnet, um anzuzeigen, dass ein solcher Bereich eine Quelle für mehrere Ziele ist.
  • 8 veranschaulicht den Inhalt, der Bestandteil jedes Beziehungseintrags 140, zum Beispiel der Beziehungseinträge 140a, 140b und 140c in 6, sein kann und bestimmte permanente Beziehungsinformationen 150 aus dem entsprechenden Beziehungsblock 106a, 106b...106n in den Datenträger-Metadaten 100 enthalten kann, zum Beispiel die Beziehungsrolle 112 und/oder die Beziehungs-ID 110 (5) und einen Zeiger 152 auf den Beziehungsblock 106, der permanente Informationen für die durch den Beziehungseintrag 140 dargestellte Beziehung beinhaltet. Die Zeiger 152 in den Beziehungseinträgen 140 sind in 6 als Zeiger 152a, 152b und 152c dargestellt. Der Zeiger 152 kann ferner einen Index für den entsprechenden Beziehungsblock in den Beziehungs-Metadaten 160 umfassen. 6 zeigt ferner die Beziehungsblöcke 164a, 164b und 164c, die durch die Zeiger 152a, 152b und 152c im Abschnitt Beziehungs-Metadaten 162 der Datenträger-Metadaten 160 adressiert werden. Die speicherinterne Beziehungstabelle (IMRT) 20 beinhaltet ferner Datenträgerinformationen 166 zur Kennzeichnung der Datenträger 10a, 10b, 10n, 12a, 12b...12n, zu denen die speicherinterne Beziehungstabelle 20 gehört.
  • Bei den beschriebenen Datenstrukturen ist ein großer Teil der Beziehungsinformationen in einem permanenten Speicher in den Datenträger-Metadaten 100 gespeichert, die im Datenträger 10a, 10b, 10n und 12a, 12b, 12n (1) gespeichert sind. Ferner speichert bei bestimmten Realisierungsformen jeder Beteiligte an der Beziehung, die Quelle und das Ziel, die Beziehungs-Metadaten separat in seinem entsprechenden Datenträger. Wenn ein Datenträger in einer Beziehung ausfällt, ist die Speichersteuereinheit 2 auf diese Weise in der Lage zu ermitteln, ob die Quelle oder das Ziel in der zeitpunktgesteuerten Kopierbeziehung mit dem ausgefallenen Datenträger wirklich Teil einer Beziehung ist und deshalb während der Auslagerung und der Zwischenspeicherung besonders behandelt werden muss.
  • 9 veranschaulicht eine in der Speicherverwaltungssoftware 18 ausgeführte Logik zum Initialisieren der speicherinternen Beziehungstabellen (IMRTs) 20 aus den Datenträger-Metadaten 100 in den durch die Speichersteuereinheit 2 verwalteten Datenträgern 10a, 10b...10n, 12a, 12b...12m. Zu Beginn der Initialisierung (Block 200) durchläuft die Speicherverwaltungssoftware 18 für jeden Datenträger, auf den die Speichersteuereinheit 2 zugreifen kann, eine Schleife von Block 202 bis Block 226. Wenn es sich (in Block 208) herausstellt, dass es für den Datenträger i in den abgerufenen Datenträger-Metadaten 100 keine Beziehungsblöcke 106 gibt, geht der Prozess weiter zu Block 226, um nach dem nächsten Datenträger zu suchen, und für den Datenträger i wird keine IMRT erstellt. In den Datenträgerstrukturen kann für den Datenträger i ein vorübergehender Hinweis vermerkt werden, dass es für diesen Datenträger keine IMRT 20 gibt. Wenn es keine Beziehungsblöcke gibt, kann alternativ eine IMRT 20 erstellt werden, die auf ein Element NULL zeigt, welches das Fehlen von Beziehungen für diesen Datenträger anzeigt. Wenn jedoch (in Block 208) Beziehungsblöcke 106 für den Datenträger i gefunden werden, wird im Speicher 16 (in Block 212) eine IMRT 20 erstellt, die auf keine Beziehungsblöcke zeigt. Dann wird für jeden Beziehungsblock j im Datenträger i eine Schleife von Block 214 bis 224 durchlaufen. Für jeden Beziehungsblock j werden (in Block 216) vom ersten bis zum letzten Block ein oder mehrere Elemente 130 in der IMRT 20 erzeugt, die im Startfeld 132 und im Endfeld 134 (7) die im Bereich der Spuren 114 (5) im Beziehungsblock j angezeigten Start- und Endspuren anzeigen. Das erzeugte Element wird dann (in Block 218) mit dem Element verknüpft, das die angrenzenden vorhergehenden Spuren im Datenträger i darstellt. Ferner erstellt die Speicherverwaltungssoftware 18 (in Block 220) einen Beziehungseintrag 140 in der IMRT 20, der Beziehungsinformationen aus dem permanenten Beziehungsblock j beinhaltet, zum Beispiel die Beziehungs-ID und die Beziehungsrolle 150 (8) und einen Zeiger 152 auf den aufgerufenen Beziehungsblock j in den Datenträger-Metadaten. Ferner kann eine Verknüpfung von einer Beziehung auf die vorangehende Beziehung hinzugefügt werden. Der Zeiger kann einen Index für ein Feld von Beziehungsblöcken 106a, 106b...106n (4) umfassen. Die Beziehungseinträge können in einer Matrix angeordnet werden, in welcher der Index jedes Beziehungseintrags 140a, 140b, 140c durch den Index des entsprechenden Beziehungsblocks 164a, 164b, 164c festgelegt werden kann. Der Prozess springt (von Block 222) zurück zu Block 214, um den nächsten Beziehungsblock 106 in den Datenträger-Metadaten 102 zu verarbeiten. Von Block 208 oder nach der Verarbeitung aller Beziehungsblöcke für den Datenträger i springt der Prozess (von Block 226) zurück zu Block 202, um die Informationen für einen weiteren Datenträger in den Einheiten zu verarbeiten, die durch die Speichersteuereinheit 2 verwaltet werden.
  • Die Logik von 9 besagt, dass für jeden durch die Speichersteuereinheit 2 verwalteten Datenträger eine IMRT 20 in den Speicher 16 eingegeben wird, die Beziehungen beinhaltet und mit deren Hilfe die Speichersteuereinheit 2 die Datenintegrität von zeitpunktgesteuerten Kopierbeziehungen aufrecht erhalten kann, wenn Benutzer E/A-Operationen in Bezug auf Spuren ausführen, die zu einer zeitpunktgesteuerten Kopierbeziehung gehören.
  • Die l0a und 10b veranschaulichen Operationen, die von der Speicherverwaltungssoftware 18 beim Aktualisieren der IMRTs für einen Quellen- und einen Zieldatenträger in einer neu hergestellten zeitpunktgesteuerten Beziehung ausgeführt werden. Zu Beginn der Aktualisierung (in Block 250) der IMRT wegen einer hinzugefügten Beziehung wird zuerst für den Quellendatenträger und dann für den Zieldatenträger in der Beziehung eine Schleife von Block 252 bis Block 282 durchlaufen. In Block 254 werden die Datenträger-Metadaten 100 (zuerst für die Quelle und dann für das Ziel) aktualisiert, indem jeweils Beziehungsblöcke mit Informationen über die neue Beziehung hinzugefügt werden und die Beziehungs-Bitmap 104 aktualisiert wird, um anzuzeigen, dass alle Spuren in der neuen Beziehung noch nicht von der Quelle zum Ziel kopiert worden sind. Nach dem Hinzufügen von Informationen über die Beziehung zu den permanenten Metadaten werden (in Block 256) in der IMRT 20 ein Beziehungseintrag 140 für den Datenträger (Quelle oder Ziel), der bestimmte Beziehungsinformationen 150 (8) beinhaltet, und ein Zeiger 152 auf den permanenten Beziehungsblock 164a, 164b, 164c im Quellen- oder im Zieldatenträger für den Beziehungseintrag 140 erzeugt, um die Darstellung der Beziehung im Speicher (den Beziehungseintrag 140) dem entsprechenden permanenten Beziehungsblock 106 im Speicher zuzuordnen. Dann sucht die Speicherverwaltungssoftware 18 (in Block 258) das eine oder die mehreren Elemente 130, die den Bereich der Spuren in der neuen Beziehung beinhalten.
  • Wenn (in Block 262) gefunden wird, dass sich alle durch das Element i dargestellten Spuren im Bereich der Spuren in der neuen Beziehung befinden, wird (in Block 264) ein Zeiger 136 hinzugefügt, der das Element i dem Beziehungseintrag 140 zuordnet, welcher die neue Beziehung darstellt. Wenn (in Block 262) hingegen gefunden wird, dass nur ein Teil der durch das Element i dargestellten Spuren den Bereich der Spuren in der neuen Beziehung überlappt, wird in 10b (in Block 266) geprüft, ob das Element i die erste Spur des Bereichs der Spuren in der neuen Beziehung beinhaltet. Wenn das Element i (vom NEIN-Zweig von Block 266) die letzte Spur des Bereichs der Spuren in der neuen Beziehung beinhaltet, wird das Element i (in Block 268) durch zwei neue Elemente ersetzt, wobei das erste neue Element Spuren beinhaltet, die den Bereich der Beziehung überlappen, und mit der letzten Spur des Bereichs der Spuren in der neuen Beziehung endet, und wobei das zweite neue Element Spuren beinhaltet, die den Bereich der Beziehung nicht überlappen. Wenn das Element i (aus dem JA-Zweig von Block 266) die erste Spur des Bereichs beinhaltet, wird das Element i (in Block 270 durch zwei neue Elemente ersetzt, wobei das erste neue Element i Spuren beinhaltet, die den Bereich der Beziehung nicht überlappen, und das zweite neue Element j beinhaltet Spuren, die den Bereich der Beziehung überlappen, und beginnt mit der ersten Spur im Bereich der Beziehung. Wenn das Element j (in Block 272) die letzte Spur des Bereichs beinhaltet, die auch nicht gleich der letzten Spur im Element j ist, wird in Block 268 das Element j (in Block 274) weiter aufgeteilt, um Spuren am Ende des Elements j abzutrennen, die den Bereich nicht überlappen, und solche nicht überlappende Spuren in ein weiteres Element aufzunehmen. Die zwei oder drei neuen Elemente werden in die verknüpfte Liste von Elementen eingefügt, in der sich das ersetzte Element befand.
  • Nach dem Ersetzen des Elements i durch zwei oder drei neue Element werden (in Block 276) zu den zwei oder drei neuen Elementen 130 ein oder zwei Zeiger 136 auf Beziehungseinträge hinzugefügt, auf die das ersetzte Element i gezeigt hatte. Dann wird (in Block 278) zu den neuen Elementen, die Spuren aus der neuen Beziehung beinhalten, ein auf den erzeugten Beziehungseintrag 140 zeigender Zeiger 130 hinzugefügt, um die die Spuren im Bereich der Beziehung darstellenden neuen Elemente dem die Beziehung darstellenden Beziehungseintrag zuzuordnen. Dann springt der Prozess (in Block 280) zurück zu Block 260 in 10a, um das nächste gefundene Element zu verarbeiten, das Spuren in der neuen Beziehung beinhaltet. Nach der Verarbeitung alle in Betracht kommenden Elemente des Quellendatenträgers in der neuen Beziehung, springt der Prozess (in Block 282) zurück zu Block 252, um die IMRT 20 für den Zieldatenträger zu aktualisieren und so die hinzugefügte zeitpunktgesteuerte Kopierbeziehung einzubeziehen.
  • 11 veranschaulicht die von der Speicherverwaltungssoftware 18 zum Annullieren oder Beenden einer gesamten Beziehung ausgeführten Operationen. Die Operationen von 11 können ausgeführt werden, nachdem alle Spuren in der zeitpunktgesteuerten Kopierbeziehung vom Quellen- auf den Zieldatenträger kopiert worden sind. Alternativ kann die gesamte Beziehung durch einen Administrator annulliert werden, der die Beendigung der gesamten Beziehung beschließt. Zu Beginn der Operation zum Annullieren einer gesamten Beziehung (in Block 300) ermittelt die Speicherverwaltungssoftware 102 im Quellendatenträger und im Zieldatenträger den Bereich der Quellen- und Zielspuren der gelöschten Beziehung. Die Annullierungsanforderung kann die Bereiche der Beziehung angeben, mit denen dann die IMRT 20 und/oder die Beziehungs-Metadaten 102 abgefragt werden können, um die Datenträger-Metadaten im Quellendatenträger und im Zieldatenträger zu finden, die die angegebenen Bereiche 114 oder die Beziehungs-ID 110 (5) in der Beziehung enthalten. Dann durchläuft der Prozess eine Schleife von Block 304 bis Block 326 zunächst für den Zieldatenträger in der annullierten Beziehung und anschließend für den Quellendatenträger. In Block 306 werden die Beziehungsblöcke 106 in den Metadaten 102 des Quellendatenträgers und des Zieldatenträgers, die die annullierte Beziehung darstellen, gelöscht. Der Beziehungseintrag 140 in den IMRTs 20, der die gelöschte Beziehung darstellt, wird (in Block 308) zuerst für den Zieldatenträger und anschließend für den Quellendatenträger entfernt. Dann ermittelt die Speicherverwaltungssoftware 18 (in Block 310) das eine oder die mehreren Elemente 130, auf den gelöschten Beziehungseintrag 140 verweisen und löscht (in Block 312) den Zeiger 136 auf den entfernten Beziehungseintrag 140 aus den ermittelten Elementen.
  • Nach dem Löschen der Information für die annullierte Beziehung beginnt die Speicherverwaltungssoftware 18 in Block 314 einen Prozess zum Zusammenführen aller Elemente, die auf genau dieselben Beziehungseinträge oder auf keine Beziehungseinträge zeigen. In Block 314 greift die Speicherverwaltungssoftware 18 auf das erste Element 130a (6) in der IMRT 20 zu, das den entfernten Bereich überlappt, und ermittelt (in Block 316) null oder mehr nachfolgende zusammenhängende Elemente, die auf dieselben Beziehungseinträge zeigen oder die alle auf keinen Beziehungseintrag als adressiertes Element zeigen. Wenn (in Block 318) ein oder mehrere nachfolgende Elemente 130 gefunden werden, werden das adressierte Element und alle ermittelten nachfolgenden Elemente (in Block 320) durch ein einziges Element ersetzt, das alle nachfolgenden Spuren in den adressierten und gefundenen Elementen darstellt, welche dieselben null oder mehr Zeiger 136 in den adressierten und gefundenen Elementen aufweisen. Wenn (in Block 318) keine nachfolgenden Elemente 130 gefunden werden, wird (in Block 322) geprüft, ob auf das letzte adressierte Element (wenn im NEIN-Zweig von Block 318 keine Zusammenführung erfolgte) oder auf das letzte zusammengeführte Element (wenn in Block 320 eine Zusammenführung erfolgte) mehr als ein Element folgt. Wenn noch weitere Elemente zusammengeführt werden können, greift die Speicherverwaltungssoftware 18 (in Block 324) auf das dem letzten adressierten Element (wenn keine Zusammenführung erfolgte) oder dem ermittelten zusammengeführten Element (wenn eine Zusammenführung erfolgte) folgende Element zu. Nach dem Zugreifen auf das nächste Element (in Block 324) springt der Prozess zurück zu Block 316), um das nächste adressierte Element mit den nachfolgenden Elementen zusammenzuführen. Wenn (in Block 322) keine mehreren Element zum Zusammenführen vorliegen, springt der Prozess (in Block 326) zurück zu Block 304, um die annullierte Beziehung aus der Quellen-IMRT 20 zu entfernen.
  • Die 12a und 12b veranschaulichen in der Speicherverwaltungssoftware 18 ausgeführte Operationen zum Entfernen einer Teilmenge zusammenhängender Spuren aus einem Bereich in einer zeitpunktgesteuerten Beziehung. Diese Operation kann ausgeführt werden, wenn ein Teil der Spuren im Bereich einer Beziehung vom Quellendatenträger und vom Zieldatenträger kopiert worden sind und solche Kopien im Quellendatenträger und im Zieldatenträger für weitere zeitpunktgesteuerte Beziehungen zur Verfügung gestellt werden sollen. Ferner können Spuren in anderen Situationen aus einem Bereich entfernt werden, zum Beispiel als Reaktion auf eine Anforderung von einem Administrator. Nach dem Starten der Operation in 12a (in Block 350) zur teilweisen Annullierung, um eine Teilmenge der Spuren im Bereich einer Beziehung zu annullieren, wird (in Block 352) aus den Beziehungs-Metadaten 102 im Quellendatenträger und im Zieldatenträger der Bereich der Quellen- und Zielspuren der gelöschten Beziehung ermittelt. Die Annullierungsanforderung kann die Beziehungs-ID oder Bereiche der Beziehung angeben, die dann zum Abfragen der Beziehungs-Metadaten 102 verwendet werden, um nach dem Quellendatenträger und dem Zieldatenträger zu suchen, welche die Metadaten für die teilweise zu annullierende Beziehung beinhalten. Eine Schleife von Block 354 bis Block 378 in 12b wird zuerst für den Zieldatenträger und dann für den Quellendatenträger in der Beziehung durchlaufen, um eine Teilmenge der Spuren aus dem Bereich der Spuren der Beziehung zu annullieren. In Block 356 such die Speicherverwaltungssoftware 18 nach einem oder mehreren Elementen 130, welche die teilweise zu annullierenden Spuren beinhalten. Dann wird von Block 358 bis Block 372 in 12b für jedes gefundene Element i, das die zu annullierenden Spuren beinhaltet, eine innere Schleife durchlaufen. Wenn (in Block 360) alle durch das Element i dargestellten Spuren in der Beziehung zu annullieren sind, wird der Zeiger 136 im Element i auf den Beziehungseintrag 140 für die zu annullierenden Spuren (in Block 362) entfernt.
  • Wenn (in Block 360) alle durch das Element i dargestellten Spuren nicht annulliert werden sollen, wird (in Block 364 in 12b) ermittelt, ob das Element i die letzte Spur im Bereich der in der Beziehung zu annullierenden Spuren ist. Wenn das Element i die letzte Spur des zu annullierenden Bereichs (aus dem NEIN-Zweig von Block 364) beinhaltet, wird (in Block 366) das Element i durch zwei neue Elemente ersetzt, wobei das erste neue Element Spuren beinhaltet, welche den Bereich der Beziehung überlappen, und mit der letzten Spur im Bereich der zu annullierenden Spuren endet, und das zweite neue Element Spuren darstellt, welche die zu annullierenden Spuren nicht überlappen. Wenn das Element i (aus dem JA-Zweig von Block 364) die erste Spur des zu annullierenden Bereichs beinhaltet, wird (in Block 368) das Element i durch zwei neue Elemente ersetzt, wobei das erste neue Element i Spuren beinhaltet, welche die zu annullierenden Spuren nicht überlappen, und das zweite neue Element j Spuren beinhaltet, die zu annullierende Spuren überlappen, und mit der ersten Spur im Bereich der zu annullierenden Spuren beginnt. Wenn (in Block 370) gefunden wird, dass das Element j die letzte Spur des Bereichs beinhaltet, die ebenfalls nicht gleich der letzten Spur im Element j ist, wird (in Block 372) die Operation in Block 366 für das Element j ausgeführt, um eine weitere Aufteilung vorzunehmen und Spuren am Ende des Elements j abzutrennen, die den Bereich nicht überlappen, und solche nicht überlappenden Spuren in ein weiteres Element aufzunehmen. Die zwei oder drei neuen Elemente werden zur verknüpften Liste der Elemente hinzugefügt, in der sich das ersetzte Element befand. Von Block 366 oder 370 geht der Prozess weiter zu Block 374, um zu den beiden neuen Elementen einen oder mehrere Zeiger 136 hinzuzufügen, die auf alle durch das ersetzte Element i gekennzeichneten Beziehungseinträge zeigen, und löscht (in Block 376) den Zeiger 136 auf den Beziehungseintrag 140 aus dem neuen Element, das zu annullierende Spuren enthält. Dann springt der Prozess (in Block 378) zurück zu Block 358, um alle aus der zu annullierenden Beziehung zu annullierenden Spuren zu entfernen. Nach dem Entfernen der Spuren aus der zu annullierenden Beziehung führt die Speicherverwaltungssoftware 18 (in Block 380) die Schritte 314 bis 324 in 11 aus, um aufeinander folgende Elemente 130 zusammenzuführen, die auf dieselben Beziehungseinträge oder auf keinen Beziehungseintrag zeigen. Nach dem Entfernen der Spuren aus der Beziehung für den Zieldatenträger springt der Prozess (in Block 382) zurück zu Block 354, um die Spuren in der Beziehung vom Quellendatenträger zu entfernen.
  • Das Ergebnis der Operationen in 12a und 12b besteht darin, dass eine Teilmenge der Spuren im Bereich einer Beziehung aus der Beziehung in den Quellen- und Ziel-IMRTs 20 und den Datenträger-Metadaten entfernt werden, während die Beziehung für die nicht teilweise zu annullierenden Spuren erhalten bleibt. Nach dem Annullieren stehen die aus dem Bereich annullierten Spuren zur Verwendung in weiteren hergestellten Beziehungen zur Verfügung. Ferner kann das Auslagern und Zwischenspeichern solcher annullierter Spuren erfolgen, ohne sie einer zusätzlichen Abfangprüfung zu unterziehen.
  • Bei alternativen Realisierungsformen kann die Logik von 12 nicht genutzt werden, wenn ein Teil einer Beziehung annulliert werden soll. Stattdessen müssen durch Ausführen der Operationen von 10a, 10b eine oder mehrere Beziehungen hinzugefügt werden, um eine alte (bereits vorhandene) Beziehung zu ersetzen, wobei der Quellen- und/oder Zielbereich in der neuen Beziehung eine Teilmenge der Bereiche der alten Beziehung darstellen. Anschließend wird die Logik von 11 zum Entfernen der Bereiche verwendet, die die alte (bereits vorhandene) Beziehung darstellen.
  • 13 veranschaulicht von der Speicherverwaltungssoftware 18 ausgeführte Operationen zur Nutzung der IMRTs 20 im Speicher 16, um Auslagerungs- und Zwischenspeicheroperationen gemäß Ausführungsarten der Erfindung auszuführen. Nach dem Empfangen (in Block 400) einer Anforderung zum Auslagern oder Zwischenspeichern einer Spur im Cachespeicher 14a, 14b wird in Block 402 die IMRT 20 für den Datenträger ermittelt, welcher die auszulagernde oder zwischenzuspeichernde Spur beinhaltet, und das Element 130 in der ermittelten IMRT 20, das die zwischenzuspeichernde oder auszulagernde Spur beinhaltet, wird in Block 404 ausgesucht. Wenn (in Block 406) das ausgesuchte Element einen Zeiger 136 (7) auf einen Beziehungseintrag 140 beinhaltet, startet die Speicherverwaltungssoftware 18 (in Block 408) einen Eingriff in Form einer Zwischenspeicher- oder Auslagerungsroutine, um die Unversehrtheit der Daten der zeitpunktgesteuerten Beziehung beim Zwischenspeichern oder Auslagern sicherzustellen. Der Zwischenspeicher- oder Auslagerungseingriff stellt sicher, dass die Quellenspur in der/den zeitpunktgesteuerten Kopierbeziehung(en) auf die entsprechenden Zielspur(en) kopiert oder im Ziel-Cachespeicher 14b zwischengespeichert wird, bevor die Zwischenspeicherung im Zieldatenträger oder die Auslagerung im Quellendatenträger durchgeführt wird. Die Beziehungseinträge 140 werden zum Auffinden der Beziehungs-Metadaten 102 und der Bitmap 101 verarbeitet, um zu ermitteln, ob die Spuren vom Quellendatenträger zum Zieldatenträger kopiert worden sind, und um zu ermitteln, wie der Eingriff des Zwischenspeicherns oder Auslagerns ablaufen soll. Wenn das ausgesuchte Element 130 (in Block 406) hingegen keinen Zeiger 136 auf einen Beziehungseintrag 140 beinhaltet, wird die Auslagerung oder Zwischenspeicherung der Spur durchgeführt.
  • 14 veranschaulicht vom Speicherverwaltungssystem 18 ausgeführte Operationen zum Starten eines Fehlerkorrekturprozesses, der als Reaktion auf einen Kaltstart nach Stromausfall, eine Warmstartinitialisierung oder einen Warmstart ohne Stromausfall oder eine andere erkannte Fehlerbedingung ausgeführt werden kann. Nach dem Starten des Fehlerkorrekturprozesses (in Block 450) führt die Speicherverwaltungssoftware 18 die Operationen in 9 zum Wiederherstellen der IMRTs 20 im Speicher für alle von der Speichersteuereinheit 2 verwalteten Datenträger aus. Bei bestimmten Realisierungsformen werden die IMRTs nur dann wiederhergestellt, wenn der Speicher gelöscht war, oder wenn die IMRT in einem inkonsistenten Zustand oder beschädigt ist. Dann führt die Speicherverwaltungssoftware 18 (in Block 454) eine Prüfoperation der wiederhergestellten IMRTs 20 aus, um zu prüfen, ob es für jeden eine Quelle in einer Beziehung darstellenden Quellen-Beziehungseintrag einen entsprechenden Ziel-Beziehungseintrag in einer IMRT mit derselben Beziehungs-ID gibt. Gemäß der obigen Erörterung kann der Beziehungseintrag 140 eine Beziehungsinformation 150 darüber (8), ob der Datenträger, für welchen der Beziehungseintrag 140 definiert ist, für eine Quelle oder ein Ziel vorgesehen ist, und eine Beziehungs-ID beinhalten. Nach dem Auffinden eines Beziehungseintrags 140 für eine Quelle kann die Speicherverwaltungssoftware 18 andere Beziehungseinträge 140 in derselben oder in anderen IMRTs 20 sowie Informationen in den nichtflüchtigen Beziehungs-Metadaten 162 abfragen, um zu ermitteln, ob eine IMRT einen Beziehungseintrag 140 enthält, der auf ein Ziel mit derselben Beziehungs-ID verweist. Wenn (in Block 456) ein Ziel-Beziehungseintrag in einer IMRT 20 nicht wiederhergestellt wurde, führt der Prozess (in Block 458) die Blöcke 304 bis 326 in 11 aus, um den Beziehungsblock 104a, 104b...104n aus den Quellen-Beziehungs-Metadaten 102 und den Beziehungseintrag 140 aus der Quellen-IMRT 20 zu entfernen.
  • Wenn es (in Block 456) für jeden gefundenen Quellen-Beziehungseintrag einen entsprechenden Ziel-Beziehungseintrag gibt, führt die Speicherverwaltungssoftware 18 (in Block 460) eine Prüfoperation aus, um die wiederhergestellten IMRTs 20 für jede Quelle in einer Beziehung daraufhin zu prüfen, ob es für jeden eine Quelle in einer Beziehung darstellenden Ziel-Beziehungseintrag einen entsprechenden Quellen-Beziehungseintrag in einer IMRT mit derselben Beziehungs-ID gibt und umgekehrt. Nach dem Auffinden eines Beziehungseintrags 140 für ein Ziel kann die Speicherverwaltungssoftware 18 dann andere Beziehungseinträge 140 in derselben oder in anderen IMRTs 20 abfragen, um zu ermitteln, ob eine IMRT einen Beziehungseintrag 140 enthält, dessen Beziehungsinformation 150 anzeigt, dass der Beziehungseintrag 140 für eine Quelle mit derselben Beziehungs-ID gilt. Wenn (in Block 462) ein Quellen-Beziehungseintrag in einer IMRT 20 nicht wiederhergestellt wurde, fährt der Prozess (in Block 464) mit der Ausführung der Blöcke 304 bis 326 in 11 fort, um den Beziehungsblock 104a, 104b...104n aus den Ziel-Beziehungs-Metadaten 102 und den Beziehungseintrag 140 aus der Ziel-IMRT 20 zu entfernen.
  • WEITERE EINZELHEITEN ZUR REALISIERUNG
  • Die beschriebenen Techniken zum Herstellen und Verwalten einer zeitpunktgesteuerten Kopierbeziehung können als Verfahren, als Vorrichtung oder als Herstellungsartikel unter Verwendung standardmäßiger Programmier- und/oder Entwicklungstechniken zur Erstellung von Software, Firmware, Hardware oder deren Kombination realisiert werden. Der hier verwendete Begriff „Herstellungsartikel" bezieht sich auf einen Code oder eine Logik, die als Hardwarelogik ausgeführt ist (z.B. eine integrierte Schaltung, eine programmierbare Gatterschaltung (Programmable Gate Array, PGA), ein anwendungsspezifischer integrierter Schaltkreis (Application Specific Integrated Circuit, ASIC) usw.) oder als computerlesbares Medium wie beispielsweise ein magnetisches Speichermedium (z.B. Festplattenlaufwerke, Disketten, Magnetband usw.), optische Speicher (CD-ROMs, optische Speicherplatten usw.), flüchtige und nichtflüchtige Speichereinrichtungen (z.B. EEPROMs, ROMs, PROMs, RAMs, DRAMs, SRAMs, Firmware, programmierbare Logik usw.). Der Code im computerlesbaren Medium wird abgerufen und durch einen Prozessorkomplex ausgeführt. Der Code, in welchem bevorzugte Ausführungsarten realisiert werden, kann ferner über ein Übertragungsmedium oder vom einem Dateiserver über ein Netz abgerufen werden. In solchen Fällen kann der Herstellungsartikel, in welchem der Code realisiert wird, ein Übertragungsmedium umfassen, zum Beispiel eine Netzübertragungsleitung, drahtlose Übertragungsmedien, sich durch den Raum ausbreitende Signale, Funkwellen, Infrarotsignale usw. Somit kann der „Herstellungsartikel" das Medium umfassen, in welchem der Code realisiert wird. Außerdem kann der „Herstellungsartikel" eine Kombination von Hardware- und Softwarekomponenten umfassen, in welchen der Code realisiert, verarbeitet und ausgeführt wird. Dem Fachmann ist natürlich klar, dass an dieser Anordnung viele Änderungen vorgenommen werden können, ohne vom Geltungsbereich der vorliegenden Erfindung abzuweichen, und der Herstellungsartikel kann ein beliebiges in der Technik bekanntes Informationsträgermedium umfassen.
  • Die beschriebenen Ausführungsarten zum Herstellen einer logischen zeitpunktgesteuerten Kopierbeziehung wurden zur Verwendung in Systemen in einer kritischen Datenumgebung beschrieben, bei denen eine hohe Verfügbarkeit von entscheidender Bedeutung ist. Dem Fachmann ist jedoch klar, dass die hier beschriebenen zeitpunktgesteuerten Kopieroperationen auch auf Speichersysteme angewendet werden, die für nichtkritische Daten verwendet werden, bei denen eine hohe Verfügbarkeit nicht unbedingt erforderlich ist.
  • Der Quellen- und der Ziel-Cachespeicher kann in ein und derselben Speichereinheit oder in separaten Speichereinheiten realisiert werden.
  • Die beschriebenen Techniken zum Verwalten von zeitpunktgesteuerten Kopierbeziehungen können angewendet werden, wenn die Quellen- und die Zielspuren dieselben oder verschiedene Spurnummern haben.
  • Bei den beschriebenen Ausführungsarten bezog sich die Beziehung auf eine zeitpunktgesteuerte Kopierbeziehung zwischen Spuren in verschiedenen Datenträgern. Bei alternativen Ausführungsarten kann die Beziehung weitere in der Technik bekannte Kopierarten oder Datenbeziehungen umfassen.
  • Die in den 9 bis 14 veranschaulichte Logik zeigt bestimmte Ereignisse, die in einer bestimmten Reihenfolge auftreten. Bei alternativen Ausführungsarten können bestimmte Operationen in einer veränderten Reihenfolge ausgeführt, verändert oder ausgelassen werden. Darüber hinaus können zu der oben beschriebenen Logik weitere Schritte hinzugefügt werden und trotzdem noch den beschriebenen Ausführungsarten entsprechen. Ferner können die hier beschriebenen Operationen nacheinander ablaufen, oder bestimmte Operationen können parallel ausgeführt werden. Weiterhin können Operationen von einer einzigen Verarbeitungseinheit oder von verteilten Verarbeitungseinheiten ausgeführt werden.
  • Die Variablen n und m bezeichnen für bestimmte beschriebene Elemente eine beliebige ganzzahlige Variable und können in verschiedenen Fällen dieselbe oder eine verschiedene ganze Zahl anzeigen.
  • 15 veranschaulicht eine Realisierungsart einer Computerarchitektur 500 der Netzkomponenten wie beispielsweise der in 1 gezeigten Hosts und der Speichersteuereinheit. Die Architektur 500 kann einen Prozessor 502 (z.B. einen Mikroprozessor), einen Speicher 504 (z.B. eine flüchtige Speichereinrichtung) und einen Speicher 506 beinhalten (z.B. einen nichtflüchtigen Speicher wie beispielsweise Magnetplattenlaufwerke, optische Plattenlaufwerke, Bandlaufwerke usw.). Der Speicher 506 kann eine interne oder eine externe Speichereinheit oder einen Speicher umfassen, auf den über das Netz zugegriffen werden kann.
  • Im Speicher 506 gespeicherte Programme werden in den Speicher 504 geladen und in einer in der Technik bekannten Weise durch den Prozessor 502 ausgeführt. Die Architektur beinhaltet ferner eine Netzkarte 508, um einen Datenaustausch mit einem Netz zu ermöglichen. Eine Eingabeeinrichtung 510 dient zur Eingabe von Daten durch einen Benutzer in den Prozessor 502 und kann eine Tastatur, eine Maus, einen Stift, ein Mikrofon, einen berührungsempfindlichen Bildschirm oder einen anderen in der Technik bekannten Aktivierungs- oder Eingabemechanismus beinhalten. Eine Ausgabeeinrichtung 512 oder eine andere Komponente wie beispielsweise ein Monitor, ein Drucker, ein Speicher usw. kann vom Prozessor 502 übertragene Daten darstellen.

Claims (24)

  1. Verfahren zum Verwalten einer Beziehung zwischen einem Zieldatenträger (8b) und einem Quellendatenträger (8a), wobei das Verfahren Folgendes umfasst: sowohl für den Quellendatenträger als auch für den Zieldatenträger Erzeugen im Speicher (16): (i) mindestens eines Elements (130), wobei jedes Element einen Bereich aufeinanderfolgender Dateneinheiten im Datenträger darstellt; (ii) mindestens eines Beziehungseintrags, dadurch gekennzeichnet, dass das Verfahren ferner die Schritte zum Erzeugen im Speicher umfasst, wobei jeder Beziehungseintrag eine Beziehung darstellt; (iii) mindestens eines Elementzeigers (136), der ein Element einem Beziehungseintrag zuordnet, wobei die durch das Element dargestellten Dateneinheiten Teil der Beziehung sind, die durch den Beziehungseintrag dargestellt wird, welcher durch den Zeiger dem Element zugeordnet ist; und (iv) eines Beziehungszeigers (152) für jeden Beziehungseintrag, wobei der Beziehungszeiger den Beziehungseintrag Datenträger-Metadaten (160) zuordnet, wobei die Datenträger-Metadaten Informationen über die durch den Beziehungseintrag dargestellte Beziehung liefern.
  2. Verfahren nach Anspruch 1, bei dem die Quellen- und Zieldatenträger-Metadaten (160) in einem nichtflüchtigen Speicher innerhalb des Quellen- bzw. des Zieldatenträgers gespeichert sind.
  3. Verfahren nach Anspruch 2, das ferner Folgendes umfasst: Verarbeiten der Datenträger-Metadaten (160) zum Erzeugen des mindestens einen Elements (130), des mindestens einen Beziehungseintrags (140), des mindestens einen Elementzeigers (136) und des mindestens einen Beziehungszeigers (152) im Speicher.
  4. Verfahren nach Anspruch 3, bei dem die Datenträger-Metadaten (130) auf einer Vielzahl von Datenträgern verarbeitet werden und bei dem eine Gruppe von Elementen (130), Beziehungseinträgen (140), Elementzeigern (136) und Beziehungszeigern (152) für jeden Datenträger erzeugt werden, der Datenträger-Metadaten zum Kennzeichnen der Beziehungen des Datenträgers zu einem anderen Datenträger beinhaltet.
  5. Verfahren nach Anspruch 4, das ferner Folgendes umfasst: Anzeigen, dass es im Speicher des Datenträgers keine Elemente gibt, die alle Benutzerdateneinheiten auf dem Datenträger darstellen, wenn die Datenträger-Metadaten (160) in einem Datenträger keinerlei Beziehungen anzeigen, an denen der Datenträger beteiligt ist.
  6. Verfahren nach Anspruch 3, das ferner Folgendes umfasst: Ermitteln, ob es für jede Beziehung eine im Speicher erzeugte Quellen- und Zielbeziehungsinformation gibt; Entfernen der Quellenbeziehungsinformation für eine ermittelte Beziehung aus dem Speicher und Entfernen der Beziehungsinformation für die ermittelte Beziehung aus den Quellendatenträger-Metadaten (160), wenn es für die ermittelte Beziehung keine im Speicher erzeugte Zielbeziehungsinformation gibt; und ferner Entfernen der Zielbeziehungsinformation für eine ermittelte Beziehung aus dem Speicher und Entfernen der Beziehungsinformation für die ermittelte Beziehung aus den Zieldatenträger-Metadaten, wenn es für die ermittelte Beziehung keine im Speicher erzeugte Quellenbeziehungsinformation gibt.
  7. Verfahren nach Anspruch 6, bei dem das Entfernen der Quellen- oder Zielbeziehungsinformation aus dem Speicher das Entfernen des Beziehungseintrags, des mindestens einen Elementzeigers und des Beziehungszeigers aus dem Speicher umfasst, die für den Quellendatenträger in der Beziehung erzeugt wurden.
  8. Verfahren nach Anspruch 1, bei dem die Datenträger-Metadaten ferner Folgendes umfassen: eine Beziehungs-Bitmap, die ein Bit zum Anzeigen beinhaltet, ob eine Quellendateneinheit zur entsprechenden Zieldateneinheit in der Beziehung kopiert worden ist.
  9. Verfahren nach Anspruch 1, bei dem die Datenträger-Metadaten ferner Folgendes umfassen: einen Beziehungsblock für jede Kopierbeziehung, die Dateneinheiten des Datenträgers beinhaltet, wobei der Beziehungsblock anzeigt, ob die Dateneinheiten in dem Datenträger ein Ziel oder eine Quelle in der Beziehung darstellen, und ferner einen Umfang an Dateneinheiten in dem Datenträger innerhalb der Beziehung anzeigt.
  10. Verfahren nach Anspruch 1, bei dem das Erzeugen des mindestens einen Elements im Speicher ferner Folgendes umfasst: Verarbeiten der Datenträger-Metadaten, um jeden Bereich der an jeder Beziehung beteiligten Dateneinheiten zu ermitteln; und Erzeugen eines Elements für jeden Bereich der an mindestens einer Beziehung beteiligten Dateneinheiten.
  11. Verfahren nach Anspruch 10, bei dem das Erzeugen des mindestens einen Elements im Speicher ferner Folgendes umfasst: Erzeugen von Elementen, die Bereiche von Dateneinheiten vor oder nach den Bereichen von Dateneinheiten in Elementen in einer Beziehung beinhalten, wobei alle erzeugten Elemente alle Benutzerdateneinheiten im Datenträger einschließlich der Bereiche von Dateneinheiten in Beziehungen und der Bereiche von Dateneinheiten außerhalb von Beziehungen darstellen.
  12. Verfahren von Anspruch 10, bei dem jedes erzeugte Element mit mindestens einen Element verknüpft ist und verknüpfte Elemente angrenzende Bereiche von Dateneinheiten beinhalten.
  13. Verfahren nach Anspruch 1, bei dem die Datenträger-Metadaten einen Beziehungsblock beinhalten, der für jede in den Datenträger-Metadaten angezeigte Beziehung Beziehungsinformationen beinhaltet, wobei das Erzeugen des Beziehungseintrags und des Beziehungszeigers ferner Folgendes umfasst: Erzeugen eines Beziehungseintrags für jede in den Datenträger-Metadaten gekennzeichnete Beziehung, wobei der Beziehungseintrag eine Teilgruppe der in den Datenträger-Metadaten enthaltenen Beziehungsinformation beinhaltet und jeder Beziehungszeiger, der den Datenträger-Metadaten einen Beziehungseintrag zuordnet, einen Beziehungseintrag dem entsprechenden Beziehungsblock zuordnet, der die Beziehung darstellt.
  14. Verfahren nach Anspruch 1, das ferner Folgendes umfasst: Empfangen einer Anforderung zum Zwischenspeichern einer Dateneinheit im Cachespeicher oder zum Auslagern aus dem Cachespeicher; Ermitteln, ob die angeforderte Dateneinheit zu einem Bereich von Dateneinheiten gehört, der durch ein Element (130) mit einem Elementzeiger (136) dargestellt wird, welcher das Element einem Beziehungseintrag (140) zuordnet; Ermitteln, ob die angeforderte Dateneinheit in die Zieldateneinheit kopiert wurde, wenn die angeforderte Dateneinheit zu einem Element gehört, das einer Beziehung zugeordnet wurde; und Kopieren der Quellendateneinheit zur Zieldateneinheit vor dem Ausführen der Zwischenspeicherung oder Auslagerung, wenn die Quellendateneinheit nicht zur Zieldateneinheit kopiert wurde.
  15. Verfahren nach Anspruch 1, bei dem die Beziehung zwischen dem Quellen- und dem Zieldatenträger eine zeitpunktbezogene Kopierbeziehung umfasst.
  16. Verfahren nach Anspruch 1, bei dem die Quellendateneinheit und die entsprechende Zieldateneinheit in einer Beziehung unterschiedliche Anzahlen von Dateneinheiten aufweisen.
  17. System zum Verwalten einer Beziehung zwischen einem Zieldatenträger (8b) und einem Quellendatenträger (8a), wobei das System Folgendes umfasst: einen Speicher (16), der für den Quellendatenträger (8b) und den Zieldatenträger Folgendes umfasst: (i) mindestens ein Element (130), wobei jedes Element einen Bereich aufeinanderfolgender Dateneinheiten im Datenträger darstellt; dadurch gekennzeichnet, dass das System ferner Folgendes umfasst: (ii) mindestens einen Beziehungseintrag (140), wobei jeder Beziehungseintrag eine Beziehung darstellt; (iii) mindestens einen Elementzeiger (136), der ein Element einem Beziehungseintrag zuordnet, wobei die durch das Element dargestellten Dateneinheiten Teil der Beziehung sind, die durch den Beziehungseintrag dargestellt wird, welcher durch den Zeiger dem Element zugeordnet ist; und (iv) einen Beziehungszeiger (152) für jeden Beziehungseintrag, wobei der Beziehungszeiger den Beziehungseintrag Datenträger-Metadaten zuordnet, wobei die Datenträger-Metadaten (160) Informationen über die durch den Beziehungseintrag dargestellte Beziehung liefern.
  18. System nach Anspruch 17, bei dem die Quellendatenträger- und Zieldatenträger-Metadaten (160) in einem nichtflüchtigen Speicher im Quellendatenträger bzw. im Zieldatenträger gespeichert sind.
  19. System nach Anspruch 18, das ferner Folgendes umfasst: ein Mittel zum Verarbeiten der Datenträger-Metadaten (160) zum Erzeugen des mindestens einen Elements, des mindestens einen Beziehungseintrags (140), des mindestens einen Elementzeigers (130) und des mindestens einen Beziehungszeigers (152) im Speicher.
  20. System nach Anspruch 19, bei dem die Datenträger-Metadaten (160) auf einer Vielzahl von Datenträgeren verarbeitet werden und bei dem eine Gruppe von Elementen (130), Beziehungseinträgen (140), Elementzeigern (136) und Beziehungszeigern (152) für jedes Datenträger erzeugt wird, das Datenträger-Metadaten (160) zum Kennzeichnen von Beziehungen des Datenträgers zu einem anderen Datenträger beinhaltet.
  21. System nach Anspruch 17, das ferner Folgendes umfasst: ein Mittel zum Verarbeiten der Datenträger-Metadaten (160) zum Ermitteln jedes Bereichs von Dateneinheiten, die an jeder Beziehung beteiligt sind; und ein Mittel zum Erzeugen eines Elements (130) für jeden Bereich von Dateneinheiten, die an mindestens einer Beziehung beteiligt sind.
  22. System nach Anspruch 21, das ferner Folgendes umfasst: ein Mittel zum Erzeugen von Elementen (130), die Bereiche von Dateneinheiten vor oder nach den Bereichen von Dateneinheiten in Elementen in einer Beziehung beinhalten, wobei alle erzeugten Elemente alle Benutzerdateneinheiten im Datenträger einschließlich der Bereiche von Dateneinheiten in Beziehungen und der Bereiche von Dateneinheiten außerhalb von Beziehungen darstellen.
  23. System nach Anspruch 17, bei dem die Datenträger-Metadaten (160) einen Beziehungsblock (106) beinhalten, der Beziehungsinformationen für jede in den Datenträger-Metadaten angezeigte Beziehung beinhaltet, wobei das System ferner Folgendes umfasst: ein Mittel zum Erzeugen eines Beziehungseintrags (140) für jede in den Datenträger-Metadaten gekennzeichnete Beziehung, wobei der Beziehungseintrag eine Teilgruppe der in den Datenträger-Metadaten enthaltenen Beziehungsinformation beinhaltet und jeder Beziehungszeiger (152), der den Datenträger-Metadaten einen Beziehungseintrag zuordnet, einen Beziehungseintrag dem entsprechenden Beziehungsblock zuordnet, der die Beziehung darstellt.
  24. Computerprogramm, das ein Computerprogramm-Codemittel umfasst, welches in der Lage ist, die Schritte nach einem der Ansprüche 1 bis 16 auszuführen.
DE602004007925T 2003-06-17 2004-06-08 Verwalten einer beziehung zwischen einem zielvolumen und einem quellenvolumen Active DE602004007925T2 (de)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US10/463,968 US7047390B2 (en) 2003-06-17 2003-06-17 Method, system, and program for managing a relationship between one target volume and one source volume
US463968 2003-06-17
PCT/EP2004/051057 WO2004111852A2 (en) 2003-06-17 2004-06-08 Managing a relationship between one target volume and one source volume

Publications (2)

Publication Number Publication Date
DE602004007925D1 DE602004007925D1 (de) 2007-09-13
DE602004007925T2 true DE602004007925T2 (de) 2008-04-24

Family

ID=33517179

Family Applications (1)

Application Number Title Priority Date Filing Date
DE602004007925T Active DE602004007925T2 (de) 2003-06-17 2004-06-08 Verwalten einer beziehung zwischen einem zielvolumen und einem quellenvolumen

Country Status (8)

Country Link
US (1) US7047390B2 (de)
EP (1) EP1636690B1 (de)
JP (1) JP4398464B2 (de)
KR (1) KR100819022B1 (de)
CN (1) CN100489757C (de)
AT (1) ATE368886T1 (de)
DE (1) DE602004007925T2 (de)
WO (1) WO2004111852A2 (de)

Families Citing this family (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2005029490A1 (en) * 2003-09-25 2005-03-31 Samsung Electronics Co., Ltd. Apparatus and method for displaying audio and video data, and storage medium recording thereon a program to execute the displaying method
US7257663B2 (en) * 2004-11-17 2007-08-14 International Business Machines Corporation Initiating and using information used for a host, control unit, and logical device connections
US7694038B2 (en) * 2004-11-17 2010-04-06 International Business Machines Corporation Maintaining and using nexus information on a host, port and device connection
KR100736101B1 (ko) 2005-01-13 2007-07-06 삼성전자주식회사 분산 디바이스 환경에서 상속 구조를 갖는 권리객체를소비하는 방법 및 이를 위한 디바이스
US8903766B2 (en) * 2005-10-31 2014-12-02 Hewlett-Packard Development Company, L.P. Data mirroring using a virtual connection
US7467268B2 (en) * 2006-04-14 2008-12-16 Hewlett-Packard Development Company, L.P. Concurrent data restore and background copy operations in storage networks
US8006049B2 (en) * 2007-01-18 2011-08-23 International Business Machines Corporation Export of logical volumes by pools
US7996093B2 (en) * 2008-01-24 2011-08-09 Rockwell Automation Technologies, Inc. Automatic controller relationship resolution
CN102187317B (zh) * 2008-10-30 2013-09-18 国际商业机器公司 闪速拷贝管理
US8806101B2 (en) * 2008-12-30 2014-08-12 Intel Corporation Metaphysical address space for holding lossy metadata in hardware
US8285679B2 (en) * 2010-03-11 2012-10-09 International Business Machines Corporation Creating a buffer point-in-time copy relationship for a point-in-time copy function executed to create a point-in-time copy relationship
US8433870B2 (en) 2010-10-12 2013-04-30 International Business Machines Corporation Multiple incremental virtual copies
US8825973B2 (en) * 2012-01-17 2014-09-02 International Business Machines Corporation Caching source blocks of data for target blocks of data
US11030125B2 (en) 2013-02-05 2021-06-08 International Business Machines Corporation Point in time copy operations from source volumes to space efficient target volumes in two stages via a non-volatile storage
US9720786B2 (en) 2014-04-22 2017-08-01 International Business Machines Corporation Resolving failed mirrored point-in-time copies with minimum disruption
US10007602B2 (en) 2014-05-06 2018-06-26 International Business Machines Corporation Flash copy relationship management
US9971525B2 (en) * 2015-02-26 2018-05-15 Red Hat, Inc. Peer to peer volume extension in a shared storage environment
US10108352B2 (en) 2015-03-03 2018-10-23 International Business Machines Corporation Incremental replication of a source data set
CN105677250B (zh) * 2016-01-04 2019-07-12 北京百度网讯科技有限公司 对象存储系统中的对象数据的更新方法和更新装置

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5615329A (en) * 1994-02-22 1997-03-25 International Business Machines Corporation Remote data duplexing
US5740435A (en) 1994-10-31 1998-04-14 Sony Corporation Data management apparatus and method for managing data of variable lengths recorded on a record medium
US6405294B1 (en) 1995-12-29 2002-06-11 Mci Communications Corporation Data center migration method and system using data mirroring
JP4363676B2 (ja) * 1997-10-31 2009-11-11 株式会社東芝 コンピュータシステム
US6076148A (en) 1997-12-26 2000-06-13 Emc Corporation Mass storage subsystem and backup arrangement for digital data processing system which permits information to be backed up while host computer(s) continue(s) operating in connection with information stored on mass storage subsystem
US6151624A (en) * 1998-02-03 2000-11-21 Realnames Corporation Navigating network resources based on metadata
US6189079B1 (en) 1998-05-22 2001-02-13 International Business Machines Corporation Data copy between peer-to-peer controllers
US6611901B1 (en) 1999-07-02 2003-08-26 International Business Machines Corporation Method, system, and program for maintaining electronic data as of a point-in-time
US6338114B1 (en) * 1999-08-18 2002-01-08 International Business Machines Corporation Method, system, and program for using a table to determine an erase operation to perform
US6799258B1 (en) * 2001-01-10 2004-09-28 Datacore Software Corporation Methods and apparatus for point-in-time volumes
US6898688B2 (en) * 2001-12-28 2005-05-24 Storage Technology Corporation Data management appliance
KR100860984B1 (ko) * 2002-10-15 2008-09-30 삼성전자주식회사 메타데이터 관리 방법

Also Published As

Publication number Publication date
EP1636690A2 (de) 2006-03-22
ATE368886T1 (de) 2007-08-15
JP2006527874A (ja) 2006-12-07
US7047390B2 (en) 2006-05-16
US20040260869A1 (en) 2004-12-23
CN100489757C (zh) 2009-05-20
JP4398464B2 (ja) 2010-01-13
DE602004007925D1 (de) 2007-09-13
CN1997960A (zh) 2007-07-11
KR20060007435A (ko) 2006-01-24
EP1636690B1 (de) 2007-08-01
WO2004111852A3 (en) 2006-01-05
KR100819022B1 (ko) 2008-04-02
WO2004111852A2 (en) 2004-12-23

Similar Documents

Publication Publication Date Title
DE602004007925T2 (de) Verwalten einer beziehung zwischen einem zielvolumen und einem quellenvolumen
DE602004002216T2 (de) Verfahren, system und programm für eine inkrementelle virtuelle kopie
DE112011100534B4 (de) Mehrstufiger Sicherungsprozess
DE602005001041T2 (de) Speicherauszugssystem
DE602005000819T2 (de) Aufrechterhaltung der konsistenz einer fernkopie unter verwendung von virtualisierung
DE112013001284B4 (de) Adaptive Cachespeicher-Umstufungen in einem Caching-System mit zwei Stufen
DE102013215535B4 (de) Sicherung oder wiederherstellung von daten mit hilfe eines hauptspeichers und nichtflüchtiger speichermedien
DE102012216022B4 (de) Verwaltung einer Zeitpunktkopie-Beziehung für platzsparende Datenträger
DE112018002951B4 (de) Verwenden eines spurformatcodes in einem cache-steuerblock für eine spur in einem cache, um lese- und schreibanforderungen in bezug auf die spur im cache zu verarbeiten
DE60213867T2 (de) Vorrichtung zur verwaltung von datenreplikation
DE112012002615B4 (de) Vorabladen von Datenspuren und Paritätsdaten zur Verwendung zum Auslagern aktualisierter Spuren
DE112010004969B4 (de) Hybrides Speicherteilsystem und Verfahren zum Verwalten eines solchen
DE60313783T2 (de) Bewegen von daten zwischen speichereinheiten
DE112020000749T5 (de) Indexerstellung für sich entwickelnde umfangreiche Datensätze in Hybriden Transaktions- und Analysenverarbeitungssystemen mit mehreren Mastern
DE112011100618B4 (de) Verwalten von Schreiboperationen auf einen Speicherbereich von Spuren, der zwischen Speichereinheiten verlagert wird
DE60025749T2 (de) Dateisystemabbildübertragung zwischen ungleichen dateisystemen
DE112011100112B4 (de) Pufferspeicher-platte in blitzkopie-kaskade
DE112017005868T5 (de) Verwaltung von e/a-abläufen für datenobjekte in einem speichersystem
DE102013210642B4 (de) Vorrichtung zum Wiederherstellen von Redundanz
DE112011103290B4 (de) Intelligente Schreibcacheoperationen für sequenzielle Datenspuren
DE112012004571B4 (de) Unterstützen von unvollständigen Datensegmenten in Flash-Cache-Speichern
DE112012001808B4 (de) Cache-Management von Spuren in einem ersten Cachespeicher und einem zweiten Cachespeicher für einen Speicher
DE102016103769A1 (de) Inkrementelle Replikation eines Quellen-Datasets
DE112012001302T5 (de) Cachen von Daten in einem Speichersystem mit mehreren Cache-Speichern
DE112010004947T5 (de) Wiederherstellung einer vollständigen Systemsicherung und inkrementeller Sicherungen unter Verwendung von mehreren gleichzeitigen Datenströmen von Einheiten

Legal Events

Date Code Title Description
8320 Willingness to grant licences declared (paragraph 23)
8364 No opposition during term of opposition