DE102016103769A1 - Inkrementelle Replikation eines Quellen-Datasets - Google Patents

Inkrementelle Replikation eines Quellen-Datasets Download PDF

Info

Publication number
DE102016103769A1
DE102016103769A1 DE102016103769.9A DE102016103769A DE102016103769A1 DE 102016103769 A1 DE102016103769 A1 DE 102016103769A1 DE 102016103769 A DE102016103769 A DE 102016103769A DE 102016103769 A1 DE102016103769 A1 DE 102016103769A1
Authority
DE
Germany
Prior art keywords
dataset
source
destination
replication
module
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.)
Pending
Application number
DE102016103769.9A
Other languages
English (en)
Inventor
Preston A. Carpenter
Dash D. Miller
David C. Reed
Esteban Rios
Max D. Smith
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 DE102016103769A1 publication Critical patent/DE102016103769A1/de
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0614Improving the reliability of storage systems
    • G06F3/0619Improving the reliability of storage systems in relation to data integrity, e.g. data losses, bit errors
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0646Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
    • G06F3/065Replication mechanisms
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0683Plurality of storage devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • 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/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/2053Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant
    • G06F11/2094Redundant storage or storage space

Abstract

Zum Ausführen einer inkrementellen Replikation eines Datasets identifiziert ein Quellendatenmodul ein Quellen-Dataset, wobei das Quellen-Dataset einen Satz von Speicherorten auf einem Quellendatenträger enthält, ein Zieldatenmodul, das das Ziel-Dataset in Reaktion darauf definiert, dass das Quellendatenmodul das Quellen-Dataset identifiziert, ein Zuordnungsmodul, das eine Tabelle für Replikationsbeziehungen speichert, wobei die Tabelle für Replikationsbeziehungen das definierte Dataset einem Ziel-Dataset zuordnet, wobei das Ziel-Dataset einen Satz von Speicherorten auf einem Zieldatenträger enthält, und ein Replikationsmodul, das eine inkrementelle Kopie der Daten, die in dem Quellen-Dataset gespeichert sind, auf Grundlage der Replikationsbeziehung ausführt.

Description

  • GEBIET DER ERFINDUNG
  • Der hierin offenbarte Erfindungsgegenstand betrifft Datenreplikation und insbesondere Ausführen einer inkrementellen Replikation eines Quellen-Datasets in ein Ziel-Dataset.
  • HINTERGRUND
  • Oft werden Flashkopie-Beziehungen erstellt, um Dateneinheiten zu replizieren. Eine inkrementelle Flashkopie erstellt eine Snapshot-Kopie nur von geänderten Daten und ist nur auf Datenträgerebene verfügbar.
  • KURZDARSTELLUNG
  • Offenbart wird ein Verfahren zur Datenreplikation. Eine Vorrichtung und ein Computerprogrammprodukt führen ebenfalls die Funktionen des Verfahrens aus, wobei das Computerprogrammprodukt ein computerlesbares Speichermedium mit darauf verkörperten Programmanweisungen aufweist. Das Verfahren zur Datenreplikation enthält Empfangen eines teilweise qualifizierten Dataset-Namens, Identifizieren eines Quellen-Datasets auf einem Quellendatenträger auf Grundlage des teilweise qualifizierten Dataset-Namens, Generieren einer Tabelle für Replikationsbeziehungen, die das Quellen-Dataset zu einem Ziel-Dataset auf einem Zieldatenträger zuordnet, und Ausführen einer inkrementellen Kopie von in dem Quellen-Dataset gespeicherten Daten auf Grundlage der Tabelle für Replikationsbeziehungen.
  • Eine Vorrichtung zur Datenreplikation enthält ein Quellendatenmodul, das ein Quellen-Dataset aus einem teilweise qualifizierten Dataset-Namen identifiziert, wobei das Quellen-Dataset einen Satz von Speicherorten auf einem Quellendatenträger enthält, ein Zieldatenmodul, welches das Ziel-Dataset in Reaktion darauf definiert, dass das Quellendatenmodul das Quellen-Dataset identifiziert, ein Zuordnungsmodul, das eine Tabelle für Replikationsbeziehungen speichert, wobei die Tabelle für Replikationsbeziehungen das Quellen-Dataset zu einem Ziel-Dataset zuordnet, wobei das Ziel-Dataset einen Satz von Speicherorten auf einem Zieldatenträger enthält, und ein Replikationsmodul, das periodisch eine inkrementelle Kopie von in dem Quellen-Dataset gespeicherten Daten auf Grundlage der Tabelle für Replikationsbeziehungen ausführt, wobei mindestens ein Teil des Quellendatenmoduls, des Zieldatenmoduls, des Zuordnungsmoduls und des Replikationsmoduls eines oder mehreres von Hardware und ausführbarem Code aufweist, wobei der ausführbare Code auf einem oder mehreren computerlesbaren Speichermedien gespeichert ist.
  • Ein Computerprogrammprodukt zur Datenreplikation enthält Programmanweisungen, die von einem Prozessor gelesen/ausgeführt werden können, um den Prozessor zu veranlassen zum: Identifizieren eines Quellen-Datasets auf einem Quellendatenträger auf Grundlage eines teilweise qualifizierten Dataset-Namens, Generieren einer Tabelle für Replikationsbeziehungen, die das Quellen-Dataset zu einem Ziel-Dataset auf einem Zieldatenträger korreliert, Ausführen einer inkrementellen Kopie von in dem Quellen-Dataset gespeicherten Daten auf Grundlage der Tabelle für Replikationsbeziehungen, Überwachen einer Änderung des Quellen-Datasets, und Aktualisieren der Beziehungstabelle in Reaktion auf eine Änderung des Quellen-Datasets.
  • KURZBESCHREIBUNG DER ZEICHNUNGEN
  • Damit die Vorteile der Ausführungsformen der Erfindung leicht zu verstehen sind, wird unter Bezugnahme auf spezifische Ausführungsformen, die in den Zeichnungen im Anhang veranschaulicht sind, eine speziellere Beschreibung der oben kurz beschriebenen Ausführungsformen vorgelegt. Das Verständnis vorausgesetzt, dass diese Zeichnungen nur einige Ausführungsformen veranschaulichen und daher nicht als Einschränkung des Schutzumfangs zu betrachten sind, werden die Ausführungsformen mit zusätzlicher Spezifität und Ausführlichkeit unter Verwendung der begleitenden Zeichnungen beschrieben und erklärt, wobei:
  • 1 ein schematisches Blockschaubild ist, das eine Ausführungsform eines Datenverarbeitungssystems gemäß einer Ausführungsform der vorliegenden Erfindung veranschaulicht;
  • 2 ein schematisches Blockschaubild ist, das eine Ausführungsform einer Datenreplikationsvorrichtung gemäß einer Ausführungsform der vorliegenden Erfindung veranschaulicht;
  • 3A ein schematisches Blockschaubild ist, das eine Ausführungsform einer Tabelle für inkrementelle Dataset-Flashkopie gemäß einer Ausführungsform der vorliegenden Erfindung veranschaulicht;
  • 3B ein schematisches Blockschaubild ist, das eine Ausführungsform einer Speicherortinformation für ein Quellen-Dataset gemäß einer Ausführungsform der vorliegenden Erfindung veranschaulicht;
  • 3C ein schematisches Blockschaubild ist, das eine Ausführungsform einer Speicherortinformation für ein Ziel-Dataset gemäß einer Ausführungsform der vorliegenden Erfindung veranschaulicht;
  • 4 ein schematischer Ablaufplan ist, der eine Ausführungsform eines Verfahrens zur Datenreplikation gemäß einer Ausführungsform der vorliegenden Erfindung veranschaulicht;
  • 5 ein schematischer Ablaufplan ist, der eine Ausführungsform eines Verfahrens zur Datenreplikation gemäß einer Ausführungsform der vorliegenden Erfindung veranschaulicht; und
  • 6 ein schematischer Ablaufplan ist, der eine Ausführungsform eines Verfahrens zur Datenreplikation gemäß einer Ausführungsform der vorliegenden Erfindung veranschaulicht.
  • AUSFÜHRLICHE BESCHREIBUNG
  • Eine in dieser Spezifikation durchgehende Bezugnahme auf „eine Ausführungsform”, „Ausführungsform(en)” oder ähnlicher Sprachgebrauch bedeutet, dass eine bestimmte Funktion, Struktur oder ein bestimmtes Merkmal, die in Verbindung mit der Ausführungsform beschrieben werden, in mindestens einer Ausführungsform vorhanden sind. Daher beziehen sich auftretende Ausdrücke wie „in einer Ausführungsform” oder „in Ausführungsform(en)” und ähnlicher Sprachgebrauch in dieser Spezifikation nicht notwendigerweise alle auf dieselbe Ausführungsform, sondern bedeuten „eine oder mehrere, aber nicht alle Ausführungsformen”, es sei denn, dies wird ausdrücklich anders angegeben. Die Begriffe „einschließlich”, „aufweisend”, „mit” und Variationen davon bedeuten „einschließlich, aber nicht darauf beschränkt”, es sei denn, dies wird ausdrücklich anders angegeben. Die Aufzählungsliste von Elementen bedeutet nicht, dass irgendwelche oder alle der Elemente sich gegenseitig ausschließen und/oder gegenseitig einschließen, es sei denn, dies wird ausdrücklich anders angegeben. Die Begriffe „ein”, „eine” und „der/die/das” verweisen ebenfalls auf „ein/eine oder mehrere”, es sei denn, dies wird ausdrücklich anders angegeben.
  • Ferner können die beschriebenen Funktionen, Vorteile und Merkmale der Ausführungsformen in jeder geeigneten Weise kombiniert werden. Ein entsprechender Fachmann wird jedoch erkennen, dass die Ausführungsformen ohne eine oder mehrere der spezifischen Funktionen oder Vorteile einer bestimmten Ausführungsform ausgeübt werden können. In anderen Beispielen können zusätzliche Funktionen und Vorteile in bestimmten Ausführungsformen erkannt werden, die möglicherweise nicht in allen Ausführungsformen vorhanden sind.
  • Die vorliegende Erfindung kann ein System, ein Verfahren und/oder ein Computerprogrammprodukt sein. Das Computerprogrammprodukt kann ein computerlesbares Speichermedium (oder Speichermedien) mit einem computerlesbaren Programmcode darauf enthalten, um einen Prozessor zu veranlassen, Aspekte der vorliegenden Erfindung auszuführen.
  • Das computerlesbare Speichermedium kann eine konkrete Einheit sein, die Anweisungen zur Verwendung durch eine Anweisungsausführungseinheit beibehalten und speichern kann. Ein computerlesbares Speichermedium kann zum Beispiel eine elektronische Speichereinheit, eine magnetische Speichereinheit, eine optische Speichereinheit, eine elektromagnetische Speichereinheit, eine Halbleiter-Speichereinheit oder jede geeignete Kombination aus dem Vorgenannten sein, es ist aber nicht darauf beschränkt. Eine nicht erschöpfende Liste von spezielleren Beispielen für das computerlesbare Speichermedium enthält Folgendes: eine tragbare Computerdiskette, eine Festplatte, einen Direktzugriffspeicher („RAM”), einen Nur-Lese-Speicher („ROM”), einen löschbaren programmierbaren Nur-Lese-Speicher („EPROM” oder Flash-Speicher), einen statischen Arbeitsspeicher („SRAM”), einen tragbaren „CD-ROM”, ein DVD-Laufwerk („DVD”), einen Speicherstick, eine Diskette, eine mechanisch verschlüsselte Einheit wie beispielsweise Lochkarten oder erhabene Strukturen in einer Rille mit darauf aufgezeichneten Anweisungen und jede geeignete Kombination des Vorgenannten. Ein computerlesbares Speichermedium, wie hierin verwendet, muss nicht als transitorische Signale per se ausgelegt sein, wie beispielsweise Funkwellen oder andere sich frei verbreitende elektromagnetische Wellen, elektromagnetische Wellen, die sich durch einen Wellenleiter oder andere Übertragungsmedien verbreiten (z. B. Lichtimpulse, die ein Lichtwellenleiterkabel durchlaufen) oder elektrische Signale, die durch einen Draht übertragen werden.
  • Hierin beschriebene computerlesbare Programmanweisungen können auf jeweilige Datenverarbeitungs-/Verarbeitungseinheiten von einem computerlesbaren Speichermedium oder auf einen externen Computer oder eine externe Speichereinheit über ein Netzwerk, zum Beispiel das Internet, ein lokales Netz, ein Weitverkehrsnetz und/oder ein drahtloses Netzwerk heruntergeladen werden. Das Netzwerk kann Kupferübertragungsleitungen, Lichtwellenleiter, drahtlose Übertragung, Router, Firewalls, Switches, Gateway-Computer und/oder Edge-Server aufweisen. Eine Netzwerk-Adapterkarte oder Netzwerk-Schnittstelle in jeder Datenverarbeitungs-/Verarbeitungseinheit empfängt computerlesbare Programmanweisungen von dem Netzwerk und leitet die computerlesbaren Programmanweisungen zur Speicherung in einem computerlesbaren Speichermedium in der jeweiligen Datenverarbeitungs-/Verarbeitungseinheit weiter.
  • Computerlesbare Programmanweisungen zum Ausführen von Operationen der vorliegenden Erfindung können Assembler-Anweisungen, Anweisungssatzarchitektur-(Instruction Set Architecture)(ISA)Anweisungen, Maschinenanweisungen, maschinenabhängige Anweisungen, Mikrocode, Firmware-Anweisungen, Zustandseinstellungsdaten oder anderer Quellcode oder Objektcode sein, die in jeder Kombination von einer oder mehreren Programmiersprachen, einschließlich Smalltalk, C++ oder dergleichen, und herkömmlichen prozeduralen Programmiersprachen wie der Programmiersprache „C” oder ähnlichen Programmiersprachen geschrieben sind. Die computerlesbaren Programmanweisungen können vollständig auf dem Computer des Benutzers, teilweise auf dem Computer des Benutzers, als eigenständiges Softwarepaket, teilweise auf dem Computer des Benutzers und teilweise auf einem entfernt angeordneten Computer oder vollständig auf dem entfernt angeordneten Computer oder Server ausgeführt werden. In dem letzteren Szenario kann der entfernt angeordnete Computer mit dem Computer des Benutzers über jeden Typ von Netzwerk verbunden werden, einschließlich ein lokales Netzwerk (LAN) oder ein Weitverkehrsnetz (WAN), oder die Verbindung kann zu einem externen Computer hergestellt werden (zum Beispiel über das Internet unter Nutzung eines Internet-Dienstanbieters). In einigen Ausführungsformen können elektronische Schaltungen, zum Beispiel programmierbare Logikschaltungen, im Feld programmierbare Gatter-Arrays (FPGA) oder programmierbare Logik-Arrays (PLA) die computerlesbaren Programmanweisungen unter Verwendung von Zustandsinformationen der computerlesbaren Programmanweisungen zum Personalisieren der elektronischen Schaltung ausführen, um Aspekte der vorliegenden Erfindung auszuführen.
  • Aspekte der vorliegenden Erfindung werden hierin unter Bezugnahme auf Veranschaulichungen von Ablaufplänen und/oder Blockschaubildern von Verfahren, Vorrichtungen (Systemen) und Computerprogrammprodukten gemäß Ausführungsformen der Erfindung beschrieben. Es versteht sich, dass jeder Block in den Veranschaulichungen von Ablaufplänen und/oder Blockschaubildern und Kombinationen von Blöcken in den Veranschaulichungen von Ablaufplänen und/oder Blockschaubildern durch computerlesbare Programmanweisungen umgesetzt werden können.
  • Diese computerlesbaren Programmanweisungen können für einen Prozessor eines Mehrzweckcomputers, eines Spezialcomputers oder andere Vorrichtungen, die programmierbare Daten verarbeiten, bereitgestellt werden, um eine Maschine zu erzeugen, sodass die Anweisungen, die über den Prozessor des Computers oder andere Vorrichtungen, die programmierbare Daten verarbeiten, ausgeführt werden, Mittel zum Umsetzen der Funktionen/Handlungen erstellen, die in dem Ablaufplan und/oder dem Block oder den Blöcken des Blockschaubilds angegeben sind. Diese computerlesbaren Programmanweisungen können auch in einem computerlesbaren Speichermedium gespeichert werden, das einen Computer, eine programmierbare Datenverarbeitungsvorrichtung und/oder andere Einheiten so steuern kann, dass sie auf eine bestimmte Weise funktionieren, sodass das computerlesbare Speichermedium mit den darin gespeicherten Anweisungen einen Fertigungsartikel aufweist, einschließlich Anweisungen, welche die in dem Ablaufplan und/oder dem Block oder den Blöcken des Blockschaubilds angegebene Funktion/Handlung umsetzen.
  • Die computerlesbaren Programmanweisungen können auch auf einen Computer, andere programmierbare Datenverarbeitungsvorrichtungen oder eine andere Einheit geladen werden, um die Ausführung einer Serie von Arbeitsschritten auf dem Computer, einer anderen programmierbaren Vorrichtung oder einer anderen Einheit zu veranlassen, um einen über den Computer umgesetzten Prozess zu erzeugen, sodass die Anweisungen, die auf dem Computer, einer anderen programmierbaren Vorrichtung oder einer anderen Einheit ausgeführt werden, die Funktionen/Handlungen umsetzen, die in dem Ablaufplan und/oder dem Block oder den Blöcken des Blockschaubilds angegeben sind.
  • Der Ablaufplan und die Blockschaubilder in den Figuren veranschaulichen die Architektur, die Funktionalität und den Betrieb von möglichen Umsetzungen von Systemen, Verfahren und Computerprogrammprodukten gemäß verschiedenen Ausführungsformen der vorliegenden Erfindung. Diesbezüglich kann jeder Block in dem Ablaufplan oder in den Blockschaubildern ein Modul, ein Segment oder einen Abschnitt von Anweisungen darstellen, der eine oder mehrere ausführbare Anweisungen zum Umsetzen der angegebenen logischen Funktion(en) aufweist. In einigen alternativen Umsetzungen können die in dem Block angegebenen Funktionen außerhalb der Reihenfolge auftreten, die in den Figuren angegeben ist. Zum Beispiel können zwei nacheinander gezeigte Blöcke tatsächlich im Wesentlichen parallel ausgeführt werden, oder die Blöcke können manchmal in der umgekehrten Reihenfolge ausgeführt werden, was von der beteiligten Funktionalität abhängt. Es wird ebenfalls angemerkt, dass jeder Block der Blockschaubilder und/oder Veranschaulichungen des Ablaufplans und Kombinationen von Blöcken in den Blockschaubildern und/oder der Veranschaulichungen des Ablaufplans durch spezielle Systeme auf Grundlage von Hardware umgesetzt werden können, die die angegebenen Funktionen oder Handlungen ausführen oder Kombinationen von spezieller Hardware und Computeranweisungen ausführen.
  • Viele der in dieser Spezifikation beschriebenen Funktionseinheiten wurden als Module bezeichnet, um in besonderer Weise ihre Unabhängigkeit bei der Umsetzung hervorzuheben. Zum Beispiel kann ein Modul als eine Hardware-Schaltung umgesetzt werden, die benutzerdefinierte VLSI-Schaltungen oder Gate-Arrays, serienmäßig gefertigte Halbleiter wie Logik-Chips, Transistoren oder andere diskrete Komponenten aufweist. Ein Modul kann auch in programmierbaren Hardware-Einheiten umgesetzt werden wie beispielsweise feldprogrammierbaren Gate-Arrays, programmierbarer Array-Logik, programmierbaren Logikeinheiten oder dergleichen.
  • Module können auch in Software zur Ausführung durch verschiedene Prozessoren-Typen umgesetzt werden. Ein identifiziertes Modul für Programmanweisungen kann zum Beispiel einen oder mehrere physische oder logische Blöcke von Computeranweisungen aufweisen, die zum Beispiel als Objekt, Prozedur oder Funktion organisiert sind. Die ausführbaren Anweisungen eines identifizierten Moduls müssen sich trotzdem nicht zusammen auf einem physischen Speicherort befinden, sondern können unterschiedliche Anweisungen aufweisen, die an verschiedenen Speicherorten gespeichert sind, die, wenn sie logisch miteinander verbunden werden, das Modul aufweisen und den erklärten Zweck für das Modul erfüllen.
  • Das Computerprogramm kann genutzt werden, indem es durch Laden eines computerlesbaren Speichermediums wie einer CD, DVD usw. manuell direkt in die Client-, Server- und Proxy-Computer geladen wird, das Computerprogrammprodukt kann automatisch oder halbautomatisch auf ein Computersystem aufgespielt werden, indem das Computerprogrammprodukt an einen zentralen Server oder eine Gruppe von zentralen Servern gesendet wird. Das Computerprogramm wird dann in die Client-Computer heruntergeladen, die das Computerprogrammprodukt ausführen. Alternativ wird das Computerprogrammprodukt per eMail direkt an das Client-System gesendet. Das Computerprogrammprodukt wird dann mittels einer Schaltfläche der eMail, die ein Programm ausführt, mit dem das Computerprogramm in ein Verzeichnis gestellt wird, entweder in ein Verzeichnis gestellt oder in ein Verzeichnis geladen. Eine weitere Alternative besteht darin, das Computerprogrammprodukt direkt an ein Verzeichnis auf der Festplatte des Client-Computers zu senden. Wenn Proxy-Server vorhanden sind, wählt der Prozess den Proxy-Servercode, bestimmt die Computer, auf denen der Code der Proxy-Server angegeben wird, sendet den Proxy-Servercode und installiert dann den Proxy-Servercode auf dem Proxy-Computer. Das Computerprogrammprodukt wird zum Proxy-Server übertragen und anschließend auf dem Proxy-Server gespeichert.
  • Das Computerprogrammprodukt kann in eine Client-, Server- und Netzwerkumgebung integriert werden, indem dafür gesorgt wird, dass das Computerprogrammprodukt neben Software für Anwendungen, Betriebssysteme und Netzbetriebssysteme arbeiten kann, und anschließend das Computerprogrammprodukt auf den Clients und Servern in der Umgebung installiert wird, in der das Computerprogrammprodukt funktioniert.
  • In einer Ausführungsform wird Software auf den Clients und Servern einschließlich des Netzbetriebssystems, auf denen das Computerprogrammprodukt verwendet wird, identifiziert, die für das Computerprogrammprodukt erforderlich sind oder die in Verbindung mit dem Computerprogrammprodukt arbeiten. Dazu gehört das Netzbetriebssystem, dessen Software ein grundlegendes Betriebssystem durch Hinzufügen von Netzbetriebsfunktionen erweitert.
  • In einer Ausführungsform werden Software-Anwendungen und Versionsnummern identifiziert und mit der Liste von Software-Anwendungen und Versionsnummern verglichen, deren Zusammenarbeit mit dem Computerprogrammprodukt getestet wurde. Fehlende Software-Anwendungen oder solche, die nicht der korrekten Version entsprechen, werden mit den korrekten Versionsnummern aktualisiert.
  • Programmanweisungen, die Parameter von dem Computerprogrammprodukt an Software-Anwendungen übergeben, werden geprüft, um sicherzustellen, dass die Parameterlisten den vom Computerprogrammprodukt geforderten Parameterlisten entsprechen. Umgekehrt werden von den Software-Anwendungen an das Computerprogramm übergebene Parameter geprüft, um sicherzustellen, dass die Parameter den vom Computerprogrammprodukt geforderten Parametern entsprechen. Die Client- und Server-Betriebssysteme einschließlich der Netzbetriebssysteme werden identifiziert und mit der Liste von Betriebssystemen, Versionsnummern und Netzsoftware verglichen, deren Zusammenarbeit mit dem Computerprogrammprodukt getestet wurde. Betriebssysteme, Versionsnummern und Netzsoftware, die nicht mit der Liste von getesteten Betriebssystemen und Versionsnummern übereinstimmen, werden auf den Clients und Servern auf die erforderliche Ebene aktualisiert.
  • In Reaktion auf Bestimmen, dass die Software, auf der das Computerprogrammprodukt verwendet werden soll, die korrekte Versionsebene aufweist, deren Zusammenarbeit mit dem Computerprogrammprodukt getestet worden ist, wird die Integration durch Installieren des Computerprogrammprodukts auf den Clients und Servern abgeschlossen.
  • Ferner können die beschriebenen Funktionen, Strukturen und Merkmale der Ausführungsformen in jeder geeigneten Weise kombiniert werden. In der folgenden Beschreibung werden zahlreiche spezifische Details wie Programmierbeispiele, Software-Module, Wahlmöglichkeiten für Benutzer, Netzwerktransaktionen, Datenbankabfragen, Datenbankstrukturen, Hardware-Module, Hardware-Schaltungen, Hardware-Chips usw. bereitgestellt, um für ein gründliches Verständnis der Ausführungsformen zu sorgen. Ein Fachmann wird jedoch erkennen, dass die Ausführungsformen ohne eines oder mehrere der bestimmten spezifischen Details oder mit anderen Verfahren, Komponenten, Materialien usw. ausgeübt werden können. In anderen Beispielen werden wohlbekannte Strukturen, Materialien oder Vorgänge nicht gezeigt oder ausführlich beschrieben, um eine Verkomplizierung von Aspekten einer Ausführungsform zu vermeiden.
  • Die Beschreibung der Elemente in jeder Figur kann auf Elemente vorheriger Figuren verweisen. Gleiche Nummern verweisen auf gleiche Elemente in allen Figuren, einschließlich alternative Ausführungsformen von gleichen Elementen.
  • Allgemein ermöglichen Ausführungsformen der Offenbarung Benutzern die Auswahl von Dataset-Gruppen oder einzelnen Datasets zum Teilnehmen an inkrementellen Flashkopie-Beziehungen. Wenn eine differenziertere Auswahl dessen zulässig ist, was an einer inkrementellen Flashkopie-Beziehung teilnimmt, können beträchtlich geringere Anforderungen an den Zielspeicherplatz berücksichtigt werden.
  • Benutzer können vollständig oder teilweise qualifizierte Dataset-Namen für die Teilnahme an inkrementeller Flashkopie angeben. Inkrementelle Flashkopie-Beziehungen werden anschließend für die Erweiterungsbereiche erstellt, die den angegebenen Datasets zugeordnet sind. Die Datasets werden anschließend während des Endes von Datenträgeranforderung und von Lösch-/Definitions-Anforderungen überwacht. Bei einer Erweiterung der Datasets werden die Informationen der inkrementellen Flashkopie-Beziehung aktualisiert, und zusätzlicher Erweiterungsbereich wird dem Spurensatz in der inkrementellen Flashkopie-Beziehung hinzugefügt. Wird das Dataset gelöscht, wird die inkrementelle Flashkopie-Beziehung beendet. Wird das Dataset neu definiert, wird die vorherige Beziehung zurückgezogen und eine neue Beziehung wird erstellt.
  • Eine Tabelle für inkrementelle Dataset-Flashkopie (DIFT) wird verwendet, die Informationen in Bezug auf die Teilnehmer an der inkrementellen Flashkopie auf Dataset-Ebene enthält. Der Benutzer übergibt Informationen in Bezug auf Quellenname, Zielname und Zieleinheit oder Speichergruppe. Der übergebene vollständig oder teilweise qualifizierte Dataset-Name wird zum Auswählen von Quellen-Datasets verwendet, und der physische Speicherort dieser Datasets wird in der Tabelle aufgefüllt. Ziel-Datasets können auf Grundlage des Zielnamens und der Zieleinheit oder der übergebenen Speichergruppe zugeordnet werden. Nach der Zuordnung werden diese Erweiterungsbereiche auch in der Tabelle beibehalten.
  • Sobald ein Dataset identifiziert wird, stellt die Erfindung inkrementelle Flashkopie-Beziehungen für das Dataset her. Nach diesem Punkt überwacht eine vorhandene Technologie für Änderungsaufzeichnungen Änderungen auf den Quellenspuren, und die Erfindung kopiert geänderte Spuren in das Ziel-Dataset mit anschließender Erstellung einer inkrementellen Flashkopie. Bis sie aus dieser Erfindung entfernt werden, werden alle angegebenen Datasets auf Aktualisierungen überwacht, für die Änderungen an den inkrementellen Flashkopie-Beziehungen erforderlich sind. Diese Aktualisierungen umfassen eine Dataset-Erweiterung, ein gelöschtes Dataset, ein verschobenes oder neu definiertes Dataset.
  • Wenn ein überwachtes Quellen-Dataset erweitert wird, kann eine Benachrichtigung über das Ende des Datenträgeraufrufs empfangen und dasselbe Ende des Datenträgeraufrufs in Bezug auf das Ziel-Dataset ausgegeben werden, wodurch veranlasst wird, dass das Ziel-Dataset ebenfalls um dieselbe Anzahl von Erweiterungen erweitert wird. Die neu hinzugefügten Erweiterungsbereiche der Quelle und des Ziels können anschließend der DIFT hinzugefügt werden. Während der nächsten Ausführung der inkrementellen Flashkopie startet der erste Aufruf des neuen Erweiterungsbereichs die Änderungsaufzeichnung.
  • Wenn ein überwachtes Quellen-Dataset gelöscht wird oder ein Benutzer angibt, eine vorhandene inkrementelle Flashkopie-Beziehung zurückzuziehen, wird der gesamte Eintrag aus der DIFT gelöscht, und das Quellen-Dataset wird nicht länger auf Aktualisierungen überwacht, die sich auf eine inkrementelle Flashkopie-Beziehung auswirken würden. Die DIFT-Tabelle wird zum Bestimmen verwendet, welche Erweiterungen eine Zurückziehung der inkrementellen Flashkopie-Beziehung erfordern.
  • Wenn ein überwachtes Quellen-Dataset verschoben wird, kann eine Benachrichtigung über die Verschiebung empfangen werden. Zunächst wird eine Zurückziehung der inkrementellen Flashkopie für die Quellenerweiterungsbereiche ausgegeben, und die Verschiebung findet statt. Nach Beendigung der Verschiebung werden der Datenträger und die Erweiterungsbereiche der Verschiebung des Datasets identifiziert und die DIFT wird aktualisiert, um die Daten des neuen Speicherortes anzugeben. Während der nächsten Ausführung einer inkrementellen Flashkopie werden die neuen Beziehungen zwischen der neuen Quelle und den Zielen erstellt, wobei die Änderungsaufzeichnung eingeschaltet ist.
  • 1 ist ein schematisches Blockschaubild, das eine Ausführungsform eines Datenverarbeitungssystems 100 veranschaulicht. Das Datenverarbeitungssystem 100 kann einen Datenkopiermanager 110, mindestens ein Speichersubsystem 120 und mindestens eine Benutzereinheit 130 enthalten. Die Benutzereinheit 130 kann jede Computereinheit oder jedes Computersystem sein, die bzw. das Daten über das Speichersubsystem 120 speichern und abrufen kann. Ferner kann die Benutzereinheit 130 auch fähig sein, für Backups des Speichersubsystems 120 Anweisungen zu dem Datenkopiermanager 110 zu senden. In einer Ausführungsform kann die Benutzereinheit 130 einen oder mehrere Mainframe-Computer von International Business Machines (IBM) in Armonk, New York, mit einem Z/OS® Betriebssystem von IBM enthalten.
  • Der Datenkopiermanager 110 enthält einen Prozessor 112, einen Arbeitsspeicher 114, eine Netzwerkschnittstelle 116 und ein Dataset-Replikationsmodul 118. Der Datenkopiermanager 110 wird in einer Ausführungsform so konfiguriert, dass er ein Quellen-Dataset identifiziert, das Quellen-Dataset mit einem Ziel-Dataset korreliert und in dem Quellen-Dataset gespeicherte Daten inkrementell in das Ziel-Dataset kopiert. Der Datenkopiermanager 110 wird unter Bezugnahme auf 2 ausführlicher erläutert.
  • Das Speichersubsystem 120 enthält in einer Ausführungsform eine Mehrzahl von Speicherdatenträgern 125 zum Speichern von Benutzerdaten. Wie hierin verwendet, ist ein Speicherdatenträger ein logisches Laufwerk mit einem Speicherbereich mit einem Dateisystem, auf den zugegriffen werden kann. In einigen Ausführungsformen kann ein Speicherdatenträger 125 auf einem einzelnen physischen Laufwerk gespeichert werden. In einigen Ausführungsformen kann ein Speicherdatenträger 125 auf einer einzelnen physischen Partition in einem physischen Laufwerk gespeichert werden. In einigen Ausführungsformen kann eine Mehrzahl von Speicherdatenträgern 125 auf einem einzelnen physischen Laufwerk gespeichert werden. In einigen Ausführungsformen kann ein einzelner Speicherdatenträger 125 übergreifend auf einer Mehrzahl von physischen Laufwerken gespeichert werden.
  • Der Datenkopiermanager 110 ist in einigen Ausführungsformen so konfiguriert, dass er Daten aus einem Quellenspeicherdatenträger 125 in einen Zielspeicherdatenträger 125 repliziert. Der Quellenspeicherdatenträger 125 ist die „Quelle” der Benutzerdaten. Ursprünglich werden Benutzerdaten in dem Quellenspeicherdatenträger 125 gespeichert (z. B. durch eine Anwendung), und von dort werden Benutzerdaten normalerweise abgerufen. Der Zieldatendatenträger 125 ist hingegen der Speicherort, in den die Benutzerdaten kopiert werden. Die Benutzerdaten können für den Fall, dass eine Datenwiederherstellung beispielsweise aufgrund einer Datenlöschung oder -beschädigung benötigt wird, vom Zieldatenträger aus auf dem Quellendatenträger wiederhergestellt werden.
  • Die Daten in den Speichersubsystemen 120 können in Erweiterungen gespeichert werden. Wie hierin verwendet, verweist eine Erweiterung auf einen durchgehenden Speicherbereich auf einer Speichereinheit. In dem Speichersubsystem 120 gespeicherte Daten können in eine Mehrzahl von Datasets organisiert werden. Wie hierin verwendet, verweist ein Dataset auf eine Datensammlung wie beispielsweise eine Sammlung von Dateien, Spuren, Erweiterungen und dergleichen. Zum Beispiel kann ein Dataset eine Datenbanktabelle oder eine Datenmatrix aufweisen. Das Dataset verweist auf die Sammlung (z. B. die Organisation) und nicht auf die Daten (z. B. Werte), die in der Sammlung gespeichert sind. In einer Ausführungsform kann ein Speicherdatenträger 125 eine Mehrzahl von Datasets aufweisen. In einer weiteren Ausführungsform kann ein einzelnes Dataset übergreifend auf einer Mehrzahl von Speicherdatenträgern 125 gespeichert sein. Ein Speicherdatenträger 125 kann eine Mehrzahl von Erweiterungen enthalten, die in einem oder mehreren Datasets organisiert sind, wobei jedes Dataset ein oder mehrere Ereignisse enthält.
  • In einigen Ausführungsformen kann das Speichersubsystem 120 einen oder mehrere Speicher-Controller und eine oder mehrere Speichereinheiten aufweisen, einschließlich Festplattenlaufwerke, Halbleiter-Speichereinheiten, optische Speichereinheiten, mikromechanische Speichereinheiten und Kombinationen davon. Die Speichereinheiten stellen die physischen Medien bereit, auf denen Daten gespeichert werden. In bestimmten Ausführungsformen enthält jede Speichereinheit einen oder mehrere Speicherdatenträger 125. In bestimmten Ausführungsformen kann ein einzelner Speicherdatenträger 125 übergreifend auf einer Mehrzahl von Speichereinheiten gespeichert werden. Die Speichersubsysteme 120 können Daten für die Benutzereinheit 130 speichern.
  • In einer Ausführungsform repliziert der Datenkopiermanager 110 Daten eines Quellen-Datasets in ein Ziel-Dataset unter Verwendung der Software FLASHCOPY® von IBM. Zwar wurde der Datenkopiermanager 110 so beschrieben, dass er die Software FLASHCOPY® verwendet, doch wird klar sein, dass andere Software zur Datenreplikation verwendet werden kann. In FLASHCOPY®-Software kann eine inkrementelle Flashkopie-Beziehung zwischen einem ersten Dataset eines Quellendatenträgers 125 auf dem Speichersubsystem 120 (z. B. einem Quellen-Dataset) und einem zweiten Dataset eines Zielspeicherdatenträgers 125 auf dem Speichersubsystem 120 (z. B. einem Ziel-Dataset) hergestellt werden. Die inkrementelle Flashkopie-Beziehung ordnet das Quellen-Dataset dem Ziel-Dataset zum Backup oder inkrementellen Backup des Quellen-Datasets zu. Wie hierin verwendet, verweist eine inkrementelle Kopie auf eine teilweise Kopie der Daten, die daraus besteht, Änderungen an den Quellendaten seit der Erstellung einer vorherigen Kopie zu kopieren. In einigen Ausführungsformen kann der Datenkopiermanager 110 eine vollständige Flashkopie (z. B. eine Snapshot-Zeitpunktkopie des Datasets) des Ziel-Datasets nach einem Definieren der inkrementellen Flashkopie-Beziehung ausführen. Die Flashkopie-Beziehungen können in Reaktion auf Anweisungen von einem Benutzer (z. B. einem Systemadministrator) über die Benutzereinheit ersteht werden.
  • Derzeit stehen inkrementelle Flashkopie-Beziehungen nur für einen vollständigen Speicherdatenträger und nicht für einzelne Datasets in einem bestimmten Speicherdatenträger zur Verfügung. Die hierin beschriebenen Ausführungsformen identifizieren ein Quellen-Dataset in einer inkrementellen Flashkopie-Beziehung mit einem Ziel-Dataset unter Verwendung einer Tabelle für inkrementelle Dataset-Flashkopie (DIFT), wie im Folgenden beschrieben wird. Die DIFT wird zum Verwalten von inkrementellen Flashkopie-Beziehungen zwischen Datasets im System 100 verwendet.
  • 2 ist ein schematisches Blockschaubild, das eine Ausführungsform einer Replikationsvorrichtung 200 veranschaulicht. Die Replikationsvorrichtung 200 enthält ein Dataset-Replikationsmodul 118 wie das Dataset-Replikationsmodul 118, das oben unter Bezugnahme auf 1 beschrieben wurde. In einer Ausführungsform enthält das Dataset-Replikationsmodul 118 ein Quellendatenmodul 202, ein Zieldatenmodul 204, ein Zuordnungsmodul 206 und ein Replikationsmodul 208. In weiteren Ausführungsformen kann das Dataset-Replikationsmodul 118 eines oder mehreres enthalten von: einem Benutzerschnittstellenmodul 210, einem Speichergruppenmodul 212, einem Dataset-Aktualisierungsmodul 214 und einem Richtlinienmodul 216. Die Module 202 bis 216 des Dataset-Replikationsmoduls 118 können über einen Anschluss miteinander verbunden sein, zum Beispiel über einen Computerbus oder andere Datenübertragungsmittel.
  • Das Quellendatenmodul 202 ist in einer Ausführungsform so konfiguriert, dass es ein Quellen-Dataset identifiziert. In einigen Ausführungsformen identifiziert das Quellendatenmodul 202 das Quellen-Dataset aus einem teilweise qualifizierten Dataset-Namen. Wie hierin verwendet, verweist ein teilweise qualifizierter Dataset-Name auf einen Dataset-Namen, in dem nicht alle Qualifier vollkommen ausgeschrieben sind. Zum Beispiel kann ein teilweise qualifizierter Dataset-Name ein Platzhalterzeichen zum Darstellen eines Qualifiers und/oder eines Abschnitts eines Qualifiers enthalten. In weiteren Ausführungsformen identifiziert das Quellendatenmodul 202 das Quellen-Dataset aus einem vollständig qualifizierten Dataset-Namen. Ein vollständig qualifiziertes Dataset ist eines, wie hierin verwendet, in dem alle Qualifier vollständig ausgeschrieben sind. Das Quellendatenmodul 202 kann einen Katalog von Dataset-Namen unter Verwendung des empfangenen Dataset-Namens durchsuchen und/oder filtern.
  • In einer Ausführungsform enthält das Quellen-Dataset einen Satz von Speicherorten auf einem Speicherdatenträger. Das Quellen-Dataset kann durch eine oder mehrere Kennungen identifiziert werden, darunter: ein logischer Name, eine eindeutige Kennung und dergleichen. In einer Ausführungsform enthält der Satz von Speicherorten eine oder mehrere Erweiterungen. In einer weiteren Ausführungsform enthält der Satz von Speicherorten eine Gruppierung von nicht zusammenhängenden Erweiterungen, derart, dass der Satz von Speicherorten einen Bereich von Erweiterungen enthält, in dem eine oder mehrere Erweiterungen in dem Bereich nicht zu dem Dataset gehören.
  • In einigen Ausführungsformen kann das Quellendatenmodul 202 ein neues Quellen-Dataset definieren, das jedes Dataset enthält, das mit dem teilweise qualifizierten Dataset-Namen in Reaktion auf ein Empfangen eines teilweise qualifizieren Dataset-Namens übereinstimmt. Dies kann einem Benutzer vorteilhafterweise das Erstellen einer einzelnen inkrementellen Flashkopie-Beziehung für eine Mehrzahl von zugehörigen Datasets ermöglichen. In weiteren Ausführungsformen kann das Quellendatenmodul 202 eine Mehrzahl von Quellen-Datasets identifizieren, die jedem Dataset entsprechen, das mit dem teilweise qualifizierten Dataset-Namen übereinstimmt, wobei das Zuordnungsmodul 206 jedes der Mehrzahl von Datenquellen-Datasets mit einem Ziel-Dataset in der Tabelle für Replikationsbeziehungen korreliert. Dies kann einem Benutzer vorteilhafterweise mittels einer einzigen Anweisung das Auffüllen der Tabelle für Replikationsbeziehungen mit einer Mehrzahl von inkrementellen Flashkopie-Beziehungen ermöglichen.
  • In einigen Ausführungsformen identifiziert das Quellendatenmodul 202 das Quellen-Dataset durch Bestimmen des Satzes von Speicherorten, die einem Namen/einer Kennung des Quellen-Datasets entsprechen. Zum Beispiel kann das Quellendatenmodul 202 den Namen/die Kennung des Quellen-Datasets verwenden, um nach dem entsprechenden Satz von Speicherorten in einer Suchtabelle oder einer ähnlichen Datenstruktur zu suchen. In bestimmten Ausführungsformen empfängt das Quellendatenmodul 202 (z. B. per Benutzereingabe) den Namen/die Kennung des Quellen-Datasets und fährt mit der Identifizierung des entsprechenden Satzes von Speicherorten fort. In bestimmten Ausführungsformen empfängt das Quellendatenmodul 202 (z. B. per Benutzereingabe) den Namen/die Kennung des Quellen-Datasets und fährt mit der Identifizierung des entsprechenden Satzes von Speicherorten fort.
  • In bestimmten Ausführungsformen enthält das Quellendatenmodul 202 ein Benutzerschnittstellenmodul 210, das eine Benutzereingabe empfängt, die das Quellen-Dataset definiert, wie im Folgenden beschrieben. Das Quellendatenmodul 202 kann das Quellen-Dataset anhand von Dataset-Informationen identifizieren wie beispielsweise einem teilweise qualifizierten Dataset-Namen, der von dem Benutzerschnittstellenmodul 210 empfangen wird.
  • Das Zieldatenmodul 204 ist in einer Ausführungsform so konfiguriert, dass es ein Ziel-Dataset in Reaktion darauf definiert, dass das Quellendatenmodul 202 ein Quellen-Dataset identifiziert. In bestimmten Ausführungsformen ordnet das Zieldatenmodul 204 einen Satz von Speicherorten auf dem Zieldatenträger (z. B. Erweiterungen) zur Verwendung durch das Quellen-Dataset zu, wobei der eine oder die mehreren zugeordneten Speicherorte das Ziel-Dataset definieren. In einigen Ausführungsformen identifiziert das Zieldatenmodul 204 ein vorher zugeordnetes Ziel-Dataset, das zu dem Quellen-Dataset gehört (zum Beispiel wenn das benannte Quellen-Dataset verschoben wurde). Das Zieldatenmodul 204 kann das Ziel-Dataset (einschließlich Name und Erweiterungsbereiche) für das Zuordnungsmodul 206 angeben, wobei das Zuordnungsmodul 206 in der Tabelle für Replikationsbeziehungen das Quellen-Dataset mit dem Ziel-Dataset verknüpft.
  • In einer Ausführungsform empfängt dieses Zieldatenmodul 204 Dataset-Informationen wie beispielsweise einen Zielnamen, eine Zieleinheit und/oder eine Speichergruppe, wobei das Zieldatenmodul das Ziel-Dataset auf Grundlage der Dataset-Informationen definiert. Zum Beispiel kann der Zielname einen bestimmten Zieldatenträger und/oder ein bestimmtes Ziel-Dataset identifizieren. Das Zieldatenmodul 202 kann eine Mehrzahl von Erweiterungen auf dem bestimmten Zieldatenträger und/oder die zu dem spezifischen Ziel-Dataset zugehörig sind, identifizieren und diese zu dem Quellen-Dataset zuordnen. Die Dataset-Informationen können eine Benutzereingabe sein, die von dem Benutzerschnittstellenmodul 210 empfangen wird, wie im Folgenden beschrieben.
  • In einer weiteren Ausführungsform kann das Zieldatenmodul 204 einen Zieleinheitnamen empfangen, der eine physische Einheit identifiziert, wobei das Zieldatenmodul 204 ein Ziel-Dataset in der Zieleinheit zuordnet. In einer Ausführungsform kann das zugeordnete Ziel-Dataset in der Zieleinheit Teil eines Speicherdatenträgers 125 sein, der sich auf der Zieleinheit befindet. In einer weiteren Ausführungsform kann das zugeordnete Ziel-Dataset in der Zieleinheit übergreifend auf mehrere Speicherdatenträger 125 verteilt sein, die sich auf der Zieleinheit befinden. In noch einer weiteren Ausführungsform kann das Zieldatenmodul eine Speichergruppe vom Benutzer empfangen, wobei das Zieldatenmodul 204 das Ziel-Dataset aus der Speichergruppe zuordnet. In einigen Ausführungsformen enthält das Zieldatenmodul 204 ein Speichergruppenmodul 212, das die Speichergruppe aus den empfangenen Dataset-Informationen identifiziert, wie im Folgenden beschrieben.
  • Das Zuordnungsmodul 206 ist in einer Ausführungsform so konfiguriert, dass es eine Tabelle für Replikationsbeziehungen speichert, die das Quellen-Dataset einem Ziel-Dataset zuordnet. In einer Ausführungsform enthält die Tabelle für Replikationsbeziehungen eine Tabelle für inkrementelle Dataset-Flashkopie (DIFT). Das Zuordnungsmodul 206 erstellt eine Replikationsbeziehung zwischen jedem Paar von Quellen-Dataset und Ziel-Dataset. Dementsprechend kann die Tabelle für Replikationsbeziehungen einen Eintrag für jedes Quellen-Dataset enthalten, das durch das Quellendatenmodul 202 identifiziert wurde.
  • In einer Ausführungsform enthält das Ziel-Dataset einen Satz von Speicherorten auf einem Zieldatenträger. In bestimmten Ausführungsformen ist der Zieldatenträger ein anderer Speicherdatenträger 125 in dem Datenspeicher-Subsystem 120 als der Quellendatenträger. In einer Ausführungsform generiert das Zuordnungsmodul 206 die Tabelle für Replikationsbeziehungen durch Zuordnen des Quellen-Datasets zu dem Ziel-Dataset. In einer weiteren Ausführungsform modifiziert das Zuordnungsmodul 206 eine vorhandene Tabelle für Replikationsbeziehungen, um das Quellen-Dataset zu dem Ziel-Dataset zuzuordnen.
  • In bestimmten Ausführungsformen kann das Zuordnungsmodul 206 Informationen empfangen, die das Ziel-Dataset aus dem Zieldatenmodul 204 identifizieren. In bestimmten Ausführungsformen korreliert das Zuordnungsmodul 206 das Ziel-Dataset mit dem Quellen-Dataset und speichert die Korrelation in der Tabelle für Replikationsbeziehungen. In einigen Ausführungsformen kann das Zuordnungsmodul 206 ein Dataset-Aktualisierungsmodul 214 zum Erfassen von Änderungen an einem oder mehreren Datasets in der Tabelle für Replikationsbeziehungen enthalten, wie im Folgenden beschrieben.
  • Das Replikationsmodul 208 ist in einer Ausführungsform so konfiguriert, dass es eine inkrementelle Kopie der in dem Quellen-Dataset gespeicherten Daten auf Grundlage der Tabelle für Replikationsbeziehungen ausführt. Zum Beispiel repliziert das Replikationsmodul 208 in dem Quellen-Dataset gespeicherte Daten auf den Zielspeicherdatenträger 125 des Ziel-Datasets, das in der Tabelle für Replikationsbeziehungen definiert ist. In einer Ausführungsform kopiert das Replikationsmodul 208 periodisch Daten aus dem Quellen-Dataset in das Ziel-Dataset, wobei zum Beispiel regelmäßig eine inkrementelle Flashkopie unter Verwendung einer Tabelle für inkrementelle Dataset-Flashkopie (DIFT) ausgeführt wird. In einigen Ausführungsformen führt das Replikationsmodul 208 die inkrementelle Kopie des Quellen-Datasets mit einer Häufigkeit durch, die durch die Tabelle für Replikationsbeziehungen definiert wird. In bestimmten Ausführungsformen können verschiedene Quellen-Datasets mit unterschiedlicher Häufigkeit kopiert werden. Zum Beispiel kann ein erstes Quellen-Dataset kritische Benutzerdaten enthalten und kann häufiger per Backup gesichert werden als ein zweites Quellen-Dataset, das weniger wichtige Benutzerdaten enthält.
  • In einer Ausführungsform überwacht das Replikationsmodul 208 Änderungen der Werte (Daten) in jedem Quellen-Dataset, das in der Tabelle für Replikationsbeziehungen definiert ist. In einem vorbestimmten Intervall (z. B. mit einer durch die Tabelle für Replikationsbeziehungen definierten Häufigkeit) kopiert das Replikationsmodul 208 diese geänderten Werte in dem Quellen-Dataset in die entsprechenden Speicherorte in dem Ziel-Dataset, das in der Tabelle für Replikationsbeziehungen definiert ist. In einigen Ausführungsformen kann das Zuordnungsmodul 208 ein Richtlinienmodul 216 enthalten, das eine Replikationsrichtlinie für ein oder mehrere Quellen-Datasets in der Tabelle für Replikationsbeziehungen definiert, wie im Folgenden beschrieben.
  • Das Benutzerschnittstellenmodul 210 ist in einer Ausführungsform so konfiguriert, dass es Dataset-Informationen von einem Benutzer empfängt, zum Beispiel über die Benutzereinheit 130. Die Dataset-Informationen können eines oder mehreres enthalten von einem Quellennamen, einem Zielnamen, einer Zieleinheit und einer Speichergruppe. In bestimmten Ausführungsformen stellt das Benutzerschnittstellenmodul 210 die Dataset-Informationen für das Quellendatenmodul 202 bereit, wobei das Quellendatenmodul 202 das Quellen-Dataset auf Grundlage der bereitgestellten Dataset-Informationen identifiziert. In einigen Ausführungsformen stellt das Benutzerschnittstellenmodul 210 die Dataset-Informationen für das Zuordnungsmodul 206 bereit, wobei das Zuordnungsmodul 206 eine Replikationsbeziehung zwischen einem Quellen-Dataset und einem Zieldatenträger und/oder einem Ziel-Dataset auf Grundlage der Dataset-Informationen identifiziert.
  • In einigen Ausführungsformen empfängt das Benutzerschnittstellenmodul 210 als Dataset-Informationen einen teilweise qualifizierten Dataset-Namen, wobei das Quellenzustandsmodul 202 das Quellen-Dataset auf Grundlage des teilweise qualifizierten Dataset-Namens identifiziert. Der teilweise qualifizierte Dataset-Name kann ein Dataset-Name mit einem Platzhalterzeichen sein, wobei das Quellen-Dataset alle Datasets in dem Quellendatenträger enthält, die mit dem teilweise qualifizierten Dataset-Namen übereinstimmen. In weiteren Ausführungsformen können die Dataset-Informationen nur vollständig qualifizierte Dataset-Namen enthalten, wobei das Quellenzustandsmodul 202 ein Quellen-Dataset auf Grundlage jedes vollständig qualifizierten Dataset-Namens identifiziert. In bestimmten Ausführungsformen stellt das Benutzerschnittstellenmodul 202 den Zielnamen, die Zieleinheit und/oder die Speichergruppe für das Zieldatenmodul 204 bereit, wobei das Zieldatenmodul 204 das Ziel-Dataset auf Grundlage der bereitgestellten Informationen identifiziert und/oder zuordnet.
  • In einigen Ausführungsformen enthält das Benutzerschnittstellenmodul 210 eine Mensch-Maschine-Schnittstelle, die es dem Benutzer (z. B. einem Administrator des Datenverarbeitungssystems 100) ermöglicht, Anweisungen, Befehle, Werte und/oder Definitionen zum Replizieren von Daten in einem Dataset über eine inkrementelle Flashkopie bereitzustellen Das Benutzerschnittstellenmodul 210 kann zum Steuern des Datenkopiermanagers 110 und/oder des Dataset-Replikationsmoduls 118 verwendet werden, Zum Beispiel kann das Benutzerschnittstellenmodul 210 eine Benutzereingabe von der Benutzereinheit 130 in Form von Anweisungen, Befehlen, Werten und/oder Definitionen für ein inkrementelles Dataset-Kopieren über den Datenkopiermanager 110 und/oder das Dataset-Replikationsmodul 118 empfangen. Die Benutzereingabe kann in Form von Systembefehlen, Eingaben über die Tastatur, Eingaben über die Maus, Touchscreen-Eingaben oder dergleichen vorliegen in einer Ausführungsform stellt das Benutzerschnittstellenmodul 210 eine grafische Benutzeroberflache (GUI) zu Anzeige an der Benutzereinheit 130 bereit.
  • Ein Speichergruppenmodul 212 ist in einer Ausführungsform so konfiguriert, dass es eine dem Quellen-Dataset und/oder dem Ziel-Dataset zugehörige Speichergruppe identifiziert. Das Speichergruppenmodul 212 kann Dataset-Informationen, einschließlich einer Speichergruppe, vom Benutzerschnittstellenmodul 210 empfangen. Verschiedene Klassen von Benutzerdaten können in verschiedenen Speichergruppen gespeichert werden, und das Speichergruppenmodul 212 kann das Quellen-Dataset einer bestimmten Speichergruppe auf Grundlage der Klasse von Benutzerdaten zuordnen, die in dem Quellen-Dataset enthalten sind. Dementsprechend kann das Speichergruppenmodul 212 eine geeignete Speichergruppe identifizieren, wobei das Zieldatenmodul 204 ein Ziel-Dataset aus einer entsprechenden Speichereinheit in dem Speichersubsystem 120 zuordnet, die zu der identifizierten Speichergruppe gehört.
  • Ein Dataset-Aktualisierungsmodul 214 ist in einer Ausführungsform so konfiguriert, dass es Änderungen an dem Quellen-Dataset überwacht. In Reaktion auf ein Erfassen einer Änderung an dem Quellen-Dataset kann das Dataset-Aktualisierungsmodul 214 das Zuordnungsmodul 206 ansteuern, um die Tabelle für Replikationsbeziehungen (z. B. eine DIFT) zu aktualisieren. In einer Ausführungsform kann das Dataset-Aktualisierungsmodul 214 auch das Zieldatenmodul 204 ansteuern, um das Ziel-Dataset in Reaktion auf eine Änderung an dem Quellen-Dataset zu aktualisieren.
  • Wie hierin verwendet, verweisen Änderungen an dem Quellen-Dataset auf Änderungen an einer Definition des Quellen-Datasets, wie beispielsweise Änderungen am dem Speicherdatenträger 125, der das Quellen-Dataset enthält und/oder Änderungen an dem Satz von Speicherorten, die dem Quellen-Dataset entsprechen. Die Definition des Quellen-Datasets kann einen Namen des Quellen-Datasets, eine zu dem Quellen-Dataset gehörende Datenspur, eine zu dem Quellen-Dataset gehörende Erweiterung, einen Bereich physischer Speicherorte auf einem dem Dataset entsprechenden Speicherdatenträger und dergleichen enthalten. Beispiele für Änderungen an dem Quellen-Dataset enthalten Hinzufügen von Speicherorten zu dem Quellen-Dataset, Löschen von Speicherorten, die zu dem Quellen-Dataset gehören, und Ersetzen von Speicherorten des Quellen-Datasets durch andere Speicherorte auf dem Quellendatenträger, sie sind aber nicht darauf beschränkt.
  • In bestimmten Ausführungsformen überwacht das Dataset-Aktualisierungsmodul 214 eine Erweiterung des Quellen-Datasets. Wie hierin verwendet, verweist eine Erweiterung des Quellen-Datasets auf das Hinzufügen von Speicherorten (z. B. Erweiterungen) zum Quellen-Dataset. In einer Ausführungsform erweitert das Dataset-Aktualisierungsmodul 214 das Ziel-Dataset in Reaktion auf eine Erweiterung des Quellen-Datasets. In einer weiteren Ausführungsform kann das Dataset Aktualisierungsmodul 214 dem Zieldatenmodul 204 signalisieren, das Ziel-Dataset in Reaktion auf eine Erweiterung des Quellen-Datasets zu erweitern. In Reaktion auf die Erweiterung des Quellen-Datasets und des Ziel-Datasets kann das Zuordnungsmodul 206 die Tabelle für Replikationsbeziehungen aktualisieren, um so das erweiterte Quellen-Dataset dem erweiterten Ziel-Dataset zuzuordnen.
  • Wenn zum Beispiel das Dataset-Aktualisierungsmodul 214 ein Hinzufügen von drei Erweiterungen des Quellen-Datasets identifiziert, kann das Zieldatenmodul 204 anschließend drei zusätzliche Erweiterungen auf dem Zieldatenträger dem Ziel-Dataset zuordnen, und das Zuordnungsmodul 206 kann die Tabelle für Replikationsbeziehungen aktualisieren, um sowohl das aktualisierte Quellen-Dataset als auch das aktualisierte Ziel-Dataset aufzunehmen. Das Zieldatenmodul 204 kann die zusätzlichen Erweiterungen verfügbaren Speicherorten auf dem Zieldatenträger zuordnen, auch wenn das Ziel-Dataset infolgedessen nicht zusammenhängende Erweiterungen enthält
  • In einigen Ausführungsformen überwacht das Dataset-Aktualisierungsmodul 214 das Löschen eines Speicherorts (z. B. Erweiterung) des Quellen-Datasets, wobei das Zieldatenmodul 204 einen entsprechenden Speicherort (z. B. Erweiterung) aus dem Ziel-Dataset entfernt, und das Zuordnungsmodul 206 die Tabelle für Replikationsbeziehungen aktualisiert, um einen Eintrag zu löschen, der dem zurückgezogenen Quellen-Dataset entspricht. Wenn zum Beispiel das Dataset-Aktualisierungsmodul 214 die Löschung von Erweiterungen aus dem Quellen-Dataset identifiziert, kann das Zieldatenmodul 204 anschließend die Zuordnung einer entsprechenden Anzahl von Erweiterungen in dem Ziel-Dataset rückgängig machen (z. B. löschen), und das Zuordnungsmodul 206 kann die Tabelle für Replikationsbeziehungen aktualisieren, um sowohl das aktualisierte Quellen-Dataset als auch das aktualisierte Ziel-Dataset wiederzugeben. Die rückgängig gemachten Erweiterungen der Zielerweiterungen können anderen Änderungen der Quellen-Datasets neu zugeordnet werden. In einer Ausführungsform können alle Erweiterungen des Quellen-Datasets gelöscht werden, wobei das Zuordnungsmodul 206 den Eintrag aus der Tabelle für Replikationsbeziehungen löscht, der dem jetzt leeren Quellen-Dataset entspricht.
  • In bestimmten Ausführungsformen überwacht das Dataset-Aktualisierungsmodul 214 eine Zurückziehung des Quellen-Datasets, wobei das Zuordnungsmodul 206 die Tabelle für Replikationsbeziehungen aktualisiert, um einen dem zurückgezogenen Quellen-Dataset entsprechenden Eintrag zu löschen. In einigen Ausführungsformen überwacht das Dataset-Aktualisierungsmodul 214 eine Verschiebung des Quellen-Datasets. Das Dataset-Aktualisierungsmodul 214 kann zum Beispiel einen Zurückziehungsbefehl erfassen, der auf ein Quellen-Dataset in der Tabelle für Replikationsbeziehungen verweist, wobei das Zuordnungsmodul 206 den Eintrag löscht, der dem zurückgezogenen Quellen-Dataset entspricht.
  • In einer Ausführungsform kann das Dataset-Aktualisierungsmodul 214 eine Verschiebung des Quellen-Datasets erfassen. In Reaktion darauf kann das Dataset-Aktualisierungsmodul 214 die Beziehung der inkrementellen Flashkopie für die Quellenerweiterungen zurückziehen (löschen), die dem alten Quellen-Dataset entsprechen, neue Quellenerweiterungen identifizieren, die dem verschobenen Quellen-Dataset entsprechen, und eine Beziehung einer inkrementellen Flashkopie zwischen den neuen Quellenerweiterungen und dem Ziel-Dataset veranlassen, wobei das Zuordnungsmodul 206 die Tabelle für Replikationsbeziehungen aktualisiert, um die neue Beziehung für eine inkrementelle Flashkopie wiederzugeben. In einer Ausführungsform kann das Zieldatenmodul 204 ein neues Ziel-Dataset dem verschobenen Quellen-Dataset zuordnen. In einer weiteren Ausführungsform kann das Zieldatenmodul 204 dasselbe Ziel-Dataset dem verschobenen Quellen-Dataset neu zuordnen.
  • In bestimmten Ausführungsformen überwacht das Dataset-Aktualisierungsmodul 214, ob ein neues Dataset mit dem teilweise qualifizierten Dataset-Namen übereinstimmt, und aktualisiert das Quellen-Dataset, um das neue Dataset aufzunehmen, wobei das Zuordnungsmodul die Tabelle für Replikationsbeziehungen in Reaktion darauf aktualisiert, dass das Dataset-Aktualisierungsmodul das Quellen-Dataset aktualisiert. In einigen Ausführungsformen prüft das Dataset-Aktualisierungsmodul 214 auf Änderungen an Definitionen jedes Quellen-Datasets in der Tabelle für Replikationsbeziehungen, bevor das Replikationsmodul 208 eine inkrementelle Kopie von Daten ausführt, die in dem Quellen-Dataset gespeichert sind. In einer weiteren Ausführungsform kann das Dataset-Aktualisierungsmodul 214 zwischen aufeinanderfolgenden inkrementellen Kopien durch das Replikationsmodul 208 periodisch auf Änderungen des Quellen-Datasets prüfen. Zum Beispiel kann das Dataset-Aktualisierungsmodul 214 die Häufigkeit identifizieren, mit der das Quellen-Dataset inkrementell kopiert wird, und eine Prüfung auf Änderungen an dem Quellen-Dataset mit derselben Häufigkeit vornehmen. In weiteren Ausführungsformen überwacht das Dataset-Aktualisierungsmodul 214 durchgehend Änderungen von Definitionen eines Quellen-Datasets und aktualisiert dynamisch die Tabelle für Replikationsbeziehungen in Reaktion auf ein Erfassen einer Änderung.
  • Ein Richtlinienmodul 216 ist in einer Ausführungsform so konfiguriert, dass es eine Replikationsrichtlinie für das Quellen-Dataset definiert, wobei das Replikationsmodul 208 in dem Quellen-Dataset gespeicherte Daten gemäß der definierten Replikationsrichtlinie kopiert. In einigen Ausführungsformen werden verschiedene Quellen-Datasets in unterschiedlichen Intervallen kopiert, wie durch die Replikationsrichtlinie definiert. Zum Beispiel kann ein Quellen-Dataset, dessen Daten häufig modifiziert werden, in einem anderen Intervall repliziert werden als ein Quellen-Dataset, dessen Daten selten modifiziert werden. In bestimmten Ausführungsformen gibt die Replikationsrichtlinie eine Tageszeit an, zu der die in dem Quellen-Dataset gespeicherten Daten repliziert werden. In einer Ausführungsform enthält ein Eintrag in der Tabelle für Replikationsbeziehungen einen Verweis auf die Replikationsrichtlinie für das Quellen-Dataset.
  • 3A ist ein schematisches Blockschaubild, das eine Ausführungsform einer Tabelle für inkrementelle Dataset-Flashkopie (DIFT) 300 veranschaulicht. Die DIFT 300 ist eine Tabelle für Replikationsbeziehungen, die ein oder mehrere Quellen-Datasets zu einer entsprechenden Anzahl von Ziel-Datasets zuordnet. Die DIFT 300 kann als eine Datenstruktur, eine Datenbank oder dergleichen organisiert sein. Die DIFT 300 kann in dem Datenkopiermanager 110, den Speichersubsystemen 120 oder in Kombinationen davon gespeichert sein.
  • Die Tabelle für inkrementelle Dataset-Flashkopie (DIFT) 300 enthält eine Mehrzahl von inkrementellen Replikationsbeziehungen 302, wie beispielsweise eine Mehrzahl von Beziehungen einer inkrementellen Flashkopie. Jede inkrementelle Replikationsbeziehung 302 in der DIFT 300 beschreibt eine Beziehung einer inkrementellen Flashkopie zwischen einem Quellen-Dataset und einem Ziel-Dataset. In der veranschaulichten Ausführungsform enthält jede inkrementelle Replikationsbeziehung 302 eine Kennung für ein Quellen-Dataset 304, einen Speicherort 306 eines Quellen-Datasets, eine Kennung 308 eines Ziel-Datasets und einen Speicherort 310 eines Ziel-Datasets.
  • Die Quellen-Dataset-Kennung 304 identifiziert das Quellen-Dataset in dem Quellendatenträger. In einer Ausführungsform ist das Quellen-Dataset ein benanntes Dataset, wobei die Quellen-Dataset-Kennung 304 einen logischen Namen für das Quellen-Dataset enthält. In einer weiteren Ausführungsform kann das identifizierte Dataset einen teilweise qualifizierten Dataset-Namen enthalten. In bestimmten Ausführungsformen ist die Quellen-Dataset-Kennung 304 ein Index für die DIFT-Datenbank und/oder die Datenstruktur. Desgleichen kann die Kennung für das Ziel-Dataset 308 das Ziel-Dataset in dem Zieldatenträger eindeutig identifizieren und in bestimmten Ausführungsformen ein logischer Name des Ziel-Datasets sein. In einigen Ausführungsformen kann eine inkrementelle Replikationsbeziehung 302 auch einen Indikator für eine Zieleinheit oder Zielspeichergruppe, die dem Ziel-Dataset zugehörig sind, und/oder eine Replikationsrichtlinie für die Beziehung der inkrementellen Flashkopie enthalten.
  • Der Speicherort 306 des Quellen-Datasets gibt einen logischen und/oder physischen Speicherort des Quellen-Datasets in dem Speichersubsystem 120 an. Zum Beispiel kann der Speicherort 306 des Quellen-Datasets eine Datenträgerkennung und einen Bereich von Erweiterungen enthalten, in denen sich das Quellen-Dataset befindet. Desgleichen gibt der Zielspeicherort 310 den logischen und/oder physischen Speicherort des Quellen/Datasets in dem Speichersubsystem 120 an. Der Speicherort 306 des Quellen-Datasets wird im Folgenden ausführlicher unter Bezugnahme auf 3B beschrieben. Der Zielspeicherort 310 wird im Folgenden ausführlicher unter Bezugnahme auf 3C beschrieben.
  • 3B veranschaulicht eine Datenstruktur für den Speicherort 306 des Quellen-Datasets. Wie oben unter Bezugnahme auf 3A beschrieben, beschreibt der Speicherort 306 des Quellen-Datasets den Speicherort des Quellen-Datasets in dem Speichersubsystem 120. In einigen Ausführungsformen enthält der Speicherort 306 des Quellen-Datasets einen oder mehrere Quellenerweiterungsbereiche 312 und eine Quellendatenträgerkennung 314 eines Speicherdatenträgers 125, die jedem Quellenerweiterungsbereich 312 zugehörig ist. In bestimmten Ausführungsformen kann das Quellen-Dataset über eine Mehrzahl von Speicherdatenträgern 125 verteilt sein, wobei der Speicherort 306 des Quellen-Datasets mindestens ein Paar aus Quellenerweiterungsbereich 312 und Quellendatenträgerkennung 314 für jeden der Mehrzahl von Speicherdatenträgern 125 enthält, die dem Quellen-Dataset zugehörig sind.
  • In einer Ausführungsform beschreibt ein Quellenerweiterungsbereich 312 eine Gruppe von zusammenhängenden Erweiterungen auf einem Speicherdatenträger 125, der zu dem Quellen-Dataset gehört. Wenn das Quellen-Dataset nicht zusammenhängende Erweiterungen aufweist, enthält der Speicherort 306 des Quellen-Datasets eine Mehrzahl von Quellenerweiterungsbereichen 312, wobei jeder Quellenerweiterungsbereich 312 eine Gruppe von zusammenhängenden Erweiterungen identifiziert. In einer weiteren Ausführungsform identifiziert der Quellenerweiterungsbereich 312 jede Erweiterung, die zu dem Dataset gehört, für eine Quellendatenträgerkennung 314.
  • Änderungen an dem Quellen-Dataset (z. B. Ändern der Speicherorte, die das Quellen-Dataset definieren), werden in dem Speicherort 306 des Quellen-Datasets wiedergegeben. In einer Ausführungsform wird der Speicherort 306 des Quellen-Datasets modifiziert, um einen zusätzlichen Quellenerweiterungsbereich 312 (und eine entsprechende Quellendatenträgerkennung 314) in Reaktion auf eine oder mehrere Erweiterungen aufzunehmen, die dem Quellen-Dataset hinzugefügt werden. In einer weiteren Ausführungsform wird ein vorhandener Quellenerweiterungsbereich 312 so angepasst, dass er eine oder mehrere Erweiterungen aufnimmt, die dem Quellen-Dataset hinzugefügt werden. Desgleichen kann der Speicherort 306 des Quellen-Datasets so modifiziert werden, dass ein Quellenerweiterungsbereich 312 (und seine entsprechende Quellendatenträgerkennung 314) entfernt werden und/oder ein Quellenerweiterungsbereich 312 in Reaktion auf eine oder mehrere aus dem Quellen-Dataset entfernte Erweiterungen aktualisiert werden kann,
  • 3C veranschaulicht eine Datenstruktur für den Speicherort 310 des Ziel-Datasets. Wie oben unter Bezugnahme auf 3A beschrieben, beschreibt der Speicherort 310 des Ziel-Datasets den Speicherort des Ziel-Datasets in dem Speichersubsystem 120. In einigen Ausführungsformen enthält der Speicherort 310 des Ziel-Datasets einen oder mehrere Zielerweiterungsbereiche 316 und eine Zieldatenträgerkennung 318 eines Speicherdatenträgers 125, die jedem Zielerweiterungsbereich 316 zugehörig ist. In bestimmten Ausführungsformen kann das Ziel-Dataset über eine Mehrzahl von Speicherdatenträgern 125 verteilt sein, wobei der Speicherort 310 des Ziel-Datasets mindestens ein Paar aus Zielerweiterungsbereich 316 und Zieldatenträgerkennung 318 für jeden der Mehrzahl von Speicherdatenträgern 125 enthält, die dem Ziel-Dataset zugehörig sind.
  • In einer Ausführungsform beschreibt ein Zielerweiterungsbereich 316 eine Gruppe von zusammenhängenden Erweiterungen auf einem Speicherdatenträger 125, der zu dem Ziel-Dataset gehört. Wenn das Ziel-Dataset nicht zusammenhängende Erweiterungen aufweist, enthält der Speicherort 310 des Ziel-Datasets eine Mehrzahl von Zielerweiterungsbereichen 316, wobei jeder Zielerweiterungsbereich 316 eine Gruppe von zusammenhängenden Erweiterungen identifiziert. In einer weiteren Ausführungsform identifiziert der Zielerweiterungsbereich 316 jede Erweiterung, die zu dem Dataset gehört, für eine Zieldatenträgerkennung 318.
  • Änderungen an dem Ziel-Dataset (Speicherorte, die das Ziel-Dataset definieren), werden in dem Speicherort 306 des Ziel-Datasets wiedergegeben. Die Änderungen des Ziel-Datasets können in Reaktion auf Änderungen des Quellen-Datasets eintreten. In einer Ausführungsform wird der Speicherort 310 des Ziel-Datasets modifiziert, um einen zusätzlichen Zielerweiterungsbereich 316 (und eine entsprechende Zieldatentragerkennung 318) in Reaktion auf eine oder mehrere Erweiterungen aufzunehmen, die dem Ziel-Dataset hinzugefügt werden. In einer weiteren Ausführungsform wird ein vorhandener Zielerweiterungsbereich 316 so angepasst, dass er eine oder mehrere Erweiterungen aufnimmt, die dem Ziel-Dataset hinzugefügt werden. Desgleichen kann der Speicherort 310 des Ziel-Datasets so modifiziert werden, dass ein Zielerweiterungsbereich 316 (und seine entsprechende Zieldatenträgerkennung 318) entfernt werden und/oder ein Zielerweiterungsbereich 316 in Reaktion auf eine oder mehrere aus dem Ziel-Dataset entfernte Erweiterungen aktualisiert werden kann.
  • 4 ist ein schematischer Ablaufplan, der eine Ausführungsform eines Verfahrens 400 veranschaulicht. Das Verfahren 400 kann die Tabelle für inkrementelle Dataset-Flashkopie (DIFT) 300 erstellen. Das Verfahren 400 kann unter Verwendung des Dataset-Replikationsmoduls 118 ausgeführt werden. Alternativ kann das Verfahren 400 durch ein Computerprogrammprodukt ausgeführt werden. Das Computerprogrammprodukt kann ein computerlesbares Speichermedium mit darauf verkörperten Programmanweisungen aufweisen. Das computerlesbare Speichermedium kann der Arbeitsspeicher 114, das Speichersubsystem 120 oder eine Kombination davon sein. Die Programmanweisungen können zum Ausführen des Verfahrens 400 durch den Prozessor 112 lesbar/ausführbar sein.
  • Das Verfahren 400 beginnt, und in einer Ausführungsform empfängt 402 das Quellendatenmodul 202 einen teilweise qualifizierten Dataset-Namen, der ein Quellen-Dataset in einem Quellendatenträger identifiziert. Das Quellendatenmodul 202 bestimmt 404 ein Quellen-Dataset auf Grundlage des teilweise qualifizierten Dataset-Namens. Zum Beispiel kann der teilweise qualifizierte Dataset-Name einen Dataset-Namen mit einem Platzhalterzeichen aufweisen, wobei das Quellendatenmodul 202 ein Quellen-Dataset bestimmt 404, das alle Datasets in dem Quellendatenträger enthält, die mit dem teilweise qualifizierten Dataset-Namen übereinstimmen.
  • Das Zuordnungsmodul 206 generiert 406 eine Tabelle für Replikationsbeziehungen, die das Quellen-Dataset in einem Zieldatenträger einem Ziel-Dataset zuordnet. In einer Ausführungsform weist die Tabelle für Replikationsbeziehungen eine Tabelle für inkrementelle Dataset-Flashkopie (DIFT) auf. In einer weiteren Ausführungsform kann ein Generieren 406 der Tabelle für Replikationsbeziehungen enthalten, dass das Zieldatenmodul 204 ein Ziel-Dataset in einem Zieldatenträger identifiziert und/oder zuordnet, das dem Quellen-Dataset entspricht.
  • Das Replikationsmodul 208 nimmt periodisch eine Ausführung 408 einer inkrementellen Kopie von in dem Quellen-Dataset gespeicherten Daten auf Grundlage der Tabelle für Replikationsbeziehungen vor. In einer Ausführungsform nimmt das Replikationsmodul 208 die Ausführung 408 einer inkrementellen Flashkopie von in dem Quellen-Dataset gespeicherten Daten in das Ziel-Dataset vor. Das Verfahren 400 endet.
  • 5 ist ein schematischer Ablaufplan, der eine Ausführungsform eines inkrementellen Dataset-Replikationsverfahrens 500 veranschaulicht. Das Verfahren 500 kann die oben beschriebene Tabelle für inkrementelle Dataset-Flashkopie (DIFT) 300 erstellen und eine inkrementelle Replikation einer Flashkopie eines Quellen-Datasets auf Grundlage der DIFT 300 ausführen. Das Verfahren 500 kann unter Verwendung des Dataset-Replikationsmoduls 118 ausgeführt werden. Alternativ kann das Verfahren 500 durch ein Computerprogrammprodukt ausgeführt werden. Das Computerprogrammprodukt kann ein computerlesbares Speichermedium mit darauf verkörperten Programmanweisungen aufweisen. Das computerlesbare Speichermedium kann der Arbeitsspeicher 114, das Speichersubsystem 120 oder eine Kombination davon sein. Die Programmanweisungen können zum Ausführen des Verfahrens 500 durch den Prozessor 112 lesbar/ausführbar sein.
  • Das Verfahren 500 beginnt, und das Benutzerschnittstellenmodul 210 empfängt 502 Dataset-Informationen von einem Benutzer (z. B. einem Administrator des Datenverarbeitungssystems 100). Die Dataset-Informationen können eines oder mehreres von einem Quellen-Dataset-Namen (beispielsweise einen teilweise qualifizierten Dataset-Namen), einem Quellendatenträger, einem Ziel-Dataset-Namen, einem Zieldatenträgernamen, einer Zieleinheit und/oder einer Speichergruppe enthalten. Das Quellendatenmodul 202 identifiziert 504 ein Quellen-Dataset auf Grundlage der empfangenen Dataset-Informationen. In einer Ausführungsform enthält das Identifizieren 504 eines Quellen-Datasets ein Identifizieren aller Datasets in dem Quellendatenträger, die mit einem teilweise qualifizierten Dataset-Namen übereinstimmen. In einer weiteren Ausführungsform enthält das Identifizieren 504 des Quellen-Datasets ein Bestimmen von einer oder mehreren Erweiterungen, die einem empfangenen Quellen-Dataset-Namen zugehörig sind.
  • Das Zieldatenmodul 204 identifiziert 506 ein Ziel-Dataset, das dem Quellen-Dataset entspricht. In einer Ausführungsform enthält das Identifizieren 506 des Ziel-Datasets Zuordnen von einer oder mehreren Erweiterungen auf einem Zieldatenträger und/oder einer Zieleinheit zu dem Quellen-Dataset, das durch das Quellendatenmodul 202 identifiziert 504 wurde. Das Zuordnungsmodul 206 erstellt 508 inkrementelle Flashkopie-Beziehungen zwischen dem Quellen-Dataset und dem Ziel-Dataset. In einer Ausführungsform enthält das Erstellen 506 der inkrementellen Flashkopie-Beziehung ein Auffüllen einer Tabelle für inkrementelle Dataset-Flashkopie (DIFT), wie beispielsweise die DIFT 300. Das Replikationsmodul 208 nimmt periodisch eine Ausführung 510 einer inkrementellen Flashkopie von Daten vor, die in dem Quellen-Dataset gespeichert sind. In einer Ausführungsform enthält Ausführen 510 der inkrementellen Kopie Verweisen auf Informationen in der DIFT 300 zum Kopieren des Quellen-Datasets in das Ziel-Dataset. In bestimmten Ausführungsformen nimmt das Replikationsmodul 208 periodisch die Ausführung 510 der inkrementellen Kopie mit einer Häufigkeit vor, die in der DIFT 300 definiert ist.
  • Das Dataset-Aktualisierungsmodul 214 bestimmt 512, ob an dem Quellen-Dataset eine Änderung vorgenommen wird. In einer Ausführungsform überwacht 512 das Dataset-Aktualisierungsmodul 214 eine Definition des Quellen-Datasets (z. B. die Erweiterungen, die das Quellen-Dataset aufweisen) auf Änderungen an der Definition der Quellen-Datasets. Zu Beispielen für Änderungen an dem Quellen-Dataset gehören: Hinzufügen von Erweiterungen zum Quellen-Dataset, Entfernen von Erweiterungen aus dem Quellen-Dataset und Verschieben des Quellen-Datasets. Wenn das Dataset-Aktualisierungsmodul 214 eine Änderung an dem Quellen-Dataset erfasst, aktualisiert 514 das Zuordnungsmodul 206 die inkrementelle Flashkopie-Beziehung. Wenn das Dataset-Aktualisierungsmodul 214 andererseits keine Änderung an dem Quellen-Dataset erfasst, fährt das Replikationsmodul 208 mit der periodischen Ausführung 510 der inkrementellen Flashkopie des Quellen-Datasets fort.
  • In Reaktion darauf, dass das Dataset-Aktualisierungsmodul 214 eine Änderung des Quellen-Datasets erfasst 512, aktualisiert 514 das Zuordnungsmodul 206 die Tabelle für Replikationsbeziehungen auf Grundlage der erfassten Änderung. In einer Ausführungsform kann das Aktualisieren 514 der Tabelle für Replikationsbeziehungen auf Grundlage der erfassten Änderung Zuordnen von zusätzlichen Erweiterungen auf einem Zieldatenträger/einer Zieleinheit zum Ziel-Dataset und/oder Entfernen von Erweiterungen aus dem Ziel-Dataset enthalten, zum Beispiel in Reaktion auf ein Hinzufügen oder Wegnehmen von Erweiterungen des Quellen-Datasets. In einer weiteren Ausführungsform kann das Aktualisieren 514 der Tabelle für Replikationsbeziehungen ein Zurückziehen einer vorhandenen Replikationsbeziehung in Reaktion auf eine Änderung enthalten, die das Entfernen aller Erweiterungen aus dem Quellen-Dataset aufweist. In noch einer weiteren Ausführungsform kann das Aktualisieren 514 der Tabelle für Replikationsbeziehungen auf Grundlage einer erfassten Änderung Zurückziehen einer vorhandenen Replikationsbeziehung, erneutes Identifizieren des Quellen-Datasets und des Ziel-Datasets und ein Erstellen einer neuen Tabelle für Replikationsbeziehungen zwischen dem Quellen-Dataset und dem Ziel-Dataset enthalten. In einer Ausführungsform wird das Verfahren 500 fortgesetzt, bis keine Quellen-Datasets mehr vorhanden sind, die eine inkrementelle Flashkopie-Beziehung mit dem Ziel-Dataset aufweisen (z. B. bis alle inkrementellen Flashkopie-Beziehungen zurückgezogen worden sind).
  • 6 ist ein schematischer Ablaufplan, der eine Ausführungsform eines inkrementellen Dataset-Replikationsverfahrens 600 veranschaulicht. Das Verfahren 600 kann die oben beschriebene Tabelle für inkrementelle Dataset-Flashkopie (DIFT) 300 erstellen und eine inkrementelle Flashkopie-Replikation eines Quellen-Datasets auf Grundlage der DIFT 300 ausführen. Das Verfahren 600 kann unter Verwendung des Dataset-Replikationsmoduls 118 ausgeführt werden. Alternativ kann das Verfahren 600 durch ein Computerprogrammprodukt ausgeführt werden. Das Computerprogrammprodukt kann ein computerlesbares Speichermedium mit darauf verkörperten Programmanweisungen aufweisen. Das computerlesbare Speichermedium kann der Arbeitsspeicher 114, das Speichersubsystem 120 oder eine Kombination davon sein. Die Programmanweisungen können zum Ausführen des Verfahrens 600 durch den Prozessor 112 lesbar/ausführbar sein.
  • Das Verfahren 600 beginnt, und in einer Ausführungsform definiert 602 das Quellendatenmodul 202 ein Quellen-Dataset. Das Quellendatenmodul 202 kann einen teilweise qualifizierten Dataset-Namen empfangen und das Quellen-Dataset so definieren 602, dass es alle Datasets auf dem Quellendatenträger aufnimmt, die mit dem teilweise qualifizierten Dataset-Namen übereinstimmen. Das Zieldatenmodul 204 nimmt eine Zuordnung 604 eines Ziel-Datasets auf einem Zieldatenträger vor, das dem Quellen-Dataset entspricht. In einigen Ausführungsformen nimmt das Zieldatenmodul 204 die Zuordnung 604 eines Ziel-Datasets auf Grundlage der empfangenen Dataset-Informationen vor, wie beispielsweise ein Zielname und/oder eine Zieleinheit.
  • Das Zuordnungsmodul 206 aktualisiert die Tabelle für Replikationsbeziehungen auf Grundlage des definierten Quellen-Datasets in dem zugeordneten Ziel-Dataset. In einigen Ausführungsformen ist die Tabelle für Replikationsbeziehungen eine Dataset-Tabelle für inkrementelle Flashkopie, wie beispielsweise die DIFT 300, die oben unter Bezugnahme auf 3 beschrieben wurde. Eine Aktualisierung 606 der Tabelle für Replikationsbeziehungen kann Hinzufügen eines neuen Eintrags enthalten, der das definierte Quellen-Dataset mit dem zugeordneten Ziel-Dataset korreliert. Das Replikationsmodul 208 nimmt periodisch eine Ausführung 608 euer inkrementellen Kopie (z. B. einer inkrementellen Flashkopie) von Daten vor, die in dem Quellen-Dataset gespeichert sind. In einer Ausführungsform enthält die Ausführung 608 der inkrementellen Kopie Verweisen auf Informationen in der DIFT 300 zum Kopieren des Quellen-Datasets in das Ziel-Dataset. In bestimmten Ausführungsformen nimmt das Replikationsmodul 208 periodisch die Ausführung 608 der inkrementellen Kopie mit einer Häufigkeit vor, die in der DIFT 300 definiert ist.
  • Das Dataset Aktualisierungsmodul 214 bestimmt 610, ob eine Verschiebung des Quellen-Datasets stattfindet. Zum Beispiel, ob das Dataset auf einen neuen Speicherort auf dem Quellendatenträger verschoben werden kann (oder alternativ auf einen anderen Speicherdatenträger 125). Als weiteres Beispiel kann der logische Name des Datasets einem anderen Satz von Erweiterungen zugewiesen werden, wodurch der Speicherort des Quellen-Datasets verschoben wird. In Reaktion darauf, dass das Dataset-Aktualisierungsmodul 214 eine Verschiebung des Quellen-Datasets erfasst, nimmt das Dataset-Aktualisierungsmodul 214 eine Zurückziehung der Replikationsbeziehung zwischen dem Quellen-Dataset und dem Ziel-Dataset vor (wodurch das inkrementelle Kopieren der ursprünglich definierten Erweiterung des Quellen-Datasets beendet wird), das Quellendatenmodul 202 nimmt eine Neudefinition 602 des Quellen-Datasets vor, das Zieldatenmodul 204 weist dem Quellen-Dataset ein Ziel-Dataset neu zu, und das Zuordnungsmodul 206 aktualisiert 606 die Tabelle für Replikationsbeziehungen.
  • Wenn das Dataset-Aktualisierungsmodul 214 keine Verschiebung des Quellen-Datasets erfasst 610, bestimmt 614 das Dataset-Aktualisierungsmodul 214, ob ein Hinzufügen zu dem Quellen-Dataset stattfindet. Zum Beispiel kann das Dataset-Aktualisierungsmodul 214 eine Modifizierung an dem Quellen-Dataset erfassen, die das Hinzufügen von einer oder mehreren Erweiterungen des Quellen-Datasets aufweist. In Reaktion darauf, dass das Dataset-Aktualisierungsmodul 214 ein Hinzufügen zum Quellen-Dataset erfasst, erweitert 616 das Zieldatenmodul 204 das Ziel-Dataset (z. B. ordnet es zusätzliche Erweiterungen dem Ziel-Dataset zu), und das Zuordnungsmodul 206 aktualisiert 606 die Tabelle für Replikationsbeziehungen.
  • Wenn das Dataset-Aktualisierungsmodul 214 kein Hinzufügen zum Quellen-Dataset erfasst, bestimmt 618 das Dataset-Aktualisierungsmodul 214, ob ein Löschen in dem Quellen-Dataset stattfindet. Zum Beispiel kann das Dataset-Aktualisierungsmodul 214 eine Modifizierung an dem Quellen-Dataset erfassen, die das Löschen von einer oder mehreren Erweiterungen aus dem Quellen-Dataset aufweist. In Reaktion darauf, dass das Dataset-Aktualisierungsmodul 214 ein Löschen in dem Quellen-Dataset erfasst, verkleinert 620 das Zieldatenmodul 204 das Ziel-Dataset (z. B. entfernt eine oder mehrere Erweiterungen aus dem Ziel-Dataset), und das Zuordnungsmodul 206 aktualisiert 606 die Tabelle für Replikationsbeziehungen.
  • Die Ausführungsformen können in anderen spezifischen Formen ausgeübt werden. Die beschriebenen Ausführungsformen sind in jeder Hinsicht nur als beispielhaft und nicht einschränkend zu betrachten. Der Schutzumfang der Erfindung wird daher durch die Ansprüche im Anhang und nicht durch die vorhergehende Beschreibung angegeben. Alle Änderungen innerhalb der Bedeutung und dem Entsprechungsbereich der Anhänge sind als innerhalb dieses Schutzumfangs zu behandeln.

Claims (20)

  1. Vorrichtung, aufweisend: ein Quellendatenmodul, das ein Quellen-Dataset aus einem teilweise qualifizierten Dataset-Namen identifiziert, wobei das Quellen-Dataset einen Satz von Speicherorten auf einem Quellendatenträger enthält; ein Zieldatenmodul, das das Ziel-Dataset in Reaktion darauf definiert, dass das Quellendatenmodul das Quellen-Dataset identifiziert; ein Zuordnungsmodul, das eine Tabelle für Replikationsbeziehungen speichert, wobei die Tabelle für Replikationsbeziehungen das Quellen-Dataset einem Ziel-Dataset zuordnet, wobei das Ziel-Dataset einen Satz von Speicherorten auf einem Zieldatenträger enthält; und ein Replikationsmodul, das periodisch eine inkrementelle Kopie von in dem Quellen-Dataset gespeicherten Daten auf Grundlage der Tabelle für Replikationsbeziehungen ausführt, wobei mindestens ein Teil des Quellendatenmoduls, des Zieldatenmoduls, des Zuordnungsmoduls und des Replikationsmoduls eines oder mehreres von Hardware und ausführbarem Code aufweist, wobei der ausführbare Code auf einem oder mehreren computerlesbaren Speichermedien gespeichert ist.
  2. Vorrichtung nach Anspruch 1, ferner aufweisend ein Dataset-Aktualisierungsmodul, das eine Erweiterung des Quellen-Datasets überwacht, wobei das Zuordnungsmodul die Tabelle für Replikationsbeziehungen in Reaktion auf die Erweiterung des Quellen-Datasets aktualisiert.
  3. Vorrichtung nach Anspruch 2, wobei das Dataset-Aktualisierungsmodul das Ziel-Dataset in Reaktion auf eine Erweiterung des Quellen-Datasets erweitert, wobei die Tabelle für Replikationsbeziehungen das erweiterte Quellen-Dataset dem erweiterten Ziel-Dataset zuordnet.
  4. Vorrichtung nach Anspruch 2, wobei das Quellenaktualisierungsmodul eine Erweiterung des Quellen-Datasets zwischen aufeinanderfolgenden Wiederholungen eines Kopierens des Quellen-Datasets überwacht.
  5. Vorrichtung nach Anspruch 1, die ferner ein Dataset-Aktualisierungsmodul aufweist, das Änderungen an dem Quellen-Dataset überwacht, wobei das Zuordnungsmodul die Tabelle für Replikationsbeziehungen in Reaktion auf eine Änderung des Quellen-Datasets aktualisiert, wobei die Änderung des Quellen-Datasets aus der Gruppe ausgewählt wird, die sich zusammensetzt aus: Hinzufügen von Speicherorten zu dem Quellen-Dataset, Löschen von Speicherorten, die zu dem Quellen-Dataset gehören und Ersetzen von Speicherorten des Quellen-Datasets durch andere Speicherorte auf dem Quellendatenträger.
  6. Vorrichtung nach Anspruch 1, ferner aufweisend ein Dataset-Aktualisierungsmodul, das eine Zurückziehung des Quellen-Datasets überwacht, wobei das Zuordnungsmodul die Tabelle für Replikationsbeziehungen aktualisiert, um einen Eintrag zu löschen, der dem zurückgezogenen Quellen-Dataset entspricht.
  7. Vorrichtung nach Anspruch 1, ferner aufweisend ein Dataset-Aktualisierungsmodul, das überwacht, ob ein neues Dataset mit dem teilweise qualifizierten Dataset-Namen übereinstimmt, und das Quellen-Dataset aktualisiert, um das neue Dataset aufzunehmen, wobei das Zuordnungsmodul die Tabelle für Replikationsbeziehungen in Reaktion darauf aktualisiert, dass das Dataset-Aktualisierungsmodul das Quellen-Dataset aktualisiert.
  8. Vorrichtung nach Anspruch 1, ferner aufweisend ein Benutzerschnittstellenmodul, das Dataset-Informationen von einem Benutzer empfängt, wobei die Dataset-Informationen aus der Gruppe ausgewählt werden, die aufweist: einen Zielnamen, eine Zieleinheit und eine Speichergruppe, wobei das Zieldatenmodul das Ziel-Dataset auf Grundlage der Dataset-Informationen definiert.
  9. Vorrichtung nach Anspruch 1, wobei der teilweise qualifizierte Dataset-Name einen Dataset-Namen mit einem Platzhalterzeichen aufweist, wobei das Quellen-Dataset alle Datasets in dem Quellendatenträger enthält, die mit dem teilweise qualifizierten Dataset-Namen übereinstimmen.
  10. Verfahren zur Datenreplikation, aufweisend: Empfangen eines teilweise qualifizierten Dataset-Namens; Bestimmen eines Quellen-Datasets auf einem Quellendatenträger auf Grundlage des teilweise qualifizierten Dataset-Namens; Generieren einer Tabelle für Replikationsbeziehungen, die das Quellen-Dataset einem Ziel-Dataset auf einem Zieldatenträger zuordnet; und Ausführen einer inkrementellen Kopie von Daten, die in dem Quellen-Dataset gespeichert sind, auf Grundlage der Tabelle für Replikationsbeziehungen.
  11. Verfahren nach Anspruch 10, des Weiteren aufweisend: Überwachen einer Änderung an dem Quellen-Dataset; und Aktualisieren der Tabelle für Replikationsbeziehungen in Reaktion auf eine Änderung des Indikators.
  12. Verfahren nach Anspruch 11, wobei Ausführen einer inkrementellen Kopie von Daten, die in dem Quellen-Dataset gespeichert sind, periodisches Kopieren von geänderten Daten aufweist, die in dem Quellen-Dataset gespeichert sind, wobei Aktualisieren der Tabelle für Replikationsbeziehungen zwischen aufeinanderfolgenden Wiederholungen von inkrementellem Kopieren des Quellen-Datasets stattfindet.
  13. Verfahren nach Anspruch 10, wobei Aktualisieren der Tabelle für Replikationsbeziehungen Zuordnen von zusätzlichem Speicherplatz zum Ziel-Dataset in Reaktion auf eine Erweiterung des Quellen-Datasets aufweist.
  14. Verfahren nach Anspruch 10, des Weiteren aufweisend: Identifizieren von Adressspeicherorten auf dem Quellendatenträger, die zu dem Quellen-Dataset gehören, in Reaktion auf das Identifizieren des Quellen-Datasets; und Zuordnen von Adressspeicherorten auf dem Zieldatenträger für das Ziel-Dataset in Reaktion auf das Identifizieren der Adressspeicherorte, wobei die Tabelle für Replikationsbeziehungen Adressspeicherorte für das Quellen-Dataset mit Adressspeicherorten auf dem Zieldatenträger zuordnet.
  15. Verfahren nach Anspruch 10, ferner aufweisend Löschen eines Eintrags in der Tabelle für Replikationsbeziehungen, die dem Quellen-Dataset zugehörig sind, in Reaktion auf eine Zurückziehung des Quellen-Datasets vom inkrementellen Kopieren.
  16. Verfahren nach Anspruch 10, wobei Ausführen einer inkrementellen Kopie von Daten aus dem Quellen-Dataset in das Ziel-Dataset Erstellen einer inkrementellen Flashkopie des Quellen-Datasets aufweist.
  17. Verfahren nach Anspruch 10, wobei die Änderung der Definition des Quellen-Datasets Löschen des Quellen-Datasets aufweist, wobei das Quellen-Aktualisierungsmodul die Replikationsbeziehung zwischen dem Quellen-Dataset und dem Ziel-Dataset löscht.
  18. Computerprogrammprodukt zur Datenreplikation, wobei das Computerprogrammprodukt ein computerlesbares Speichermedium mit darin enthaltenen Programmanweisungen aufweist, wobei die Programmanweisungen durch einen Prozessor lesbar/ausführbar sind, um den Prozessor zu veranlassen zum: Identifizieren eines Quellen-Datasets auf einem Quellendatenträger durch den Prozessor auf Grundlage des teilweise qualifizierten Dataset-Namens Generieren einer Tabelle für Replikationsbeziehungen, die das Quellen-Dataset einem Ziel-Dataset auf einem Zieldatenträger korreliert, durch den Prozessor; und Ausführen einer inkrementellen Kopie von Daten, die in dem Quellen-Dataset gespeichert sind, auf Grundlage der Tabelle für Replikationsbeziehungen durch den Prozessor; Überwachen einer Änderung an dem Quellen-Dataset durch den Prozessor; und Aktualisieren der Beziehungstabelle in Reaktion auf eine Änderung an dem Quellen-Dataset durch den Prozessor.
  19. Computerprogrammprodukt nach Anspruch 18, wobei Überwachen einer Änderung an dem Quellen-Dataset Überwachen einer Verschiebung des Quellen-Datasets aufweist, und wobei Aktualisieren der Beziehungstabelle aufweist: Identifizieren eines neuen Erweiterungsbereichs, der dem verschobenen Quellen-Dataset entspricht; und Zuordnen des neuen Erweiterungsbereichs zum Ziel-Dataset in Reaktion auf die Verschiebung des Quellen-Datasets.
  20. Computerprogrammprodukt nach Anspruch 18, wobei Überwachen einer Änderung an dem Quellen-Dataset Überwachen einer Erweiterung des Quellen-Datasets aufweist, und wobei Aktualisieren der Beziehungstabelle aufweist: Identifizieren eines neuen Erweiterungsbereichs, der dem erweiterten Quellen-Dataset entspricht; Erweitern des Ziel-Datasets auf Grundlage des neuen Erweiterungsbereichs; und Zuordnen des erweiterten Quellen-Datasets zu dem erweiterten Ziel-Dataset.
DE102016103769.9A 2015-03-03 2016-03-02 Inkrementelle Replikation eines Quellen-Datasets Pending DE102016103769A1 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US14/637,151 US10108352B2 (en) 2015-03-03 2015-03-03 Incremental replication of a source data set
US14/637,151 2015-03-03

Publications (1)

Publication Number Publication Date
DE102016103769A1 true DE102016103769A1 (de) 2016-09-08

Family

ID=56738943

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102016103769.9A Pending DE102016103769A1 (de) 2015-03-03 2016-03-02 Inkrementelle Replikation eines Quellen-Datasets

Country Status (3)

Country Link
US (1) US10108352B2 (de)
CN (1) CN105938448B (de)
DE (1) DE102016103769A1 (de)

Families Citing this family (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10007602B2 (en) 2014-05-06 2018-06-26 International Business Machines Corporation Flash copy relationship management
US10168925B2 (en) * 2016-08-18 2019-01-01 International Business Machines Corporation Generating point-in-time copy commands for extents of data
US10235099B2 (en) 2016-08-18 2019-03-19 International Business Machines Corporation Managing point-in-time copies for extents of data
CN106407040B (zh) * 2016-09-05 2019-05-24 华为技术有限公司 一种远程数据复制方法及系统
CN106484785B (zh) * 2016-09-19 2019-07-26 浪潮通用软件有限公司 一种高效的自动匹配数据字段映射的方法
US10346062B2 (en) * 2016-11-16 2019-07-09 International Business Machines Corporation Point-in-time backups via a storage controller to an object storage cloud
US11385792B2 (en) * 2018-04-27 2022-07-12 Pure Storage, Inc. High availability controller pair transitioning
CN110737447B (zh) * 2018-07-18 2023-11-14 阿里巴巴集团控股有限公司 应用更新方法和装置
US10740203B2 (en) 2018-09-06 2020-08-11 International Business Machines Corporation Aggregation of updated tracks to be copied to a backup volume for physically contiguous storage on a RAID stride
US11175999B2 (en) 2018-09-06 2021-11-16 International Business Machines Corporation Management of backup volume extents via a tiered storage mechanism
US10789132B2 (en) 2018-09-06 2020-09-29 International Business Machines Corporation Performing a recovery copy command to create a recovery volume for a consistency group
US11604590B2 (en) 2018-09-06 2023-03-14 International Business Machines Corporation Metadata track entry sorting in a data storage system
US11182081B2 (en) 2018-09-06 2021-11-23 International Business Machines Corporation Performing a recovery copy command to restore a safeguarded copy backup to a production volume
US11182094B2 (en) 2018-09-06 2021-11-23 International Business Machines Corporation Performing a recovery copy command using a recovery copy data structure for a backup volume lookup
US11221955B2 (en) 2018-09-06 2022-01-11 International Business Machines Corporation Metadata track selection switching in a data storage system
US10783047B2 (en) 2018-09-06 2020-09-22 International Business Machines Corporation Forming a consistency group comprised of volumes maintained by one or more storage controllers
US10754730B2 (en) 2018-09-06 2020-08-25 International Business Machines Corporation Copying point-in-time data in a storage to a point-in-time copy data location in advance of destaging data to the storage
US10788954B1 (en) * 2019-04-11 2020-09-29 Elasticsearch B.V. Systems and methods for integration of application performance monitoring with logs and infrastructure using a common schema
US10756959B1 (en) 2019-04-11 2020-08-25 Elasticsearch B.V. Integration of application performance monitoring with logs and infrastructure
US11593498B2 (en) * 2020-06-09 2023-02-28 International Business Machines Corporation Distribution of user specific data elements in a replication environment
US11656947B2 (en) 2020-06-19 2023-05-23 International Business Machines Corporation Data set recovery from a point-in-time logical corruption protection copy
CN112817970B (zh) * 2021-01-14 2023-03-31 内蒙古蒙商消费金融股份有限公司 一种数据表的生成方法和装置

Family Cites Families (66)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3862615A (en) 1973-11-20 1975-01-28 Liou Shu Lien Apparatus for controlling progress of a task
US5235695A (en) * 1989-06-28 1993-08-10 International Business Machines Corporation Apparatus for efficient utilization of removable data recording media
US5544347A (en) * 1990-09-24 1996-08-06 Emc Corporation Data storage system controlled remote data mirroring with respectively maintained data indices
US6631442B1 (en) * 1999-06-29 2003-10-07 Emc Corp Methods and apparatus for interfacing to a data storage system
WO2001040925A1 (fr) * 1999-12-02 2001-06-07 Fujitsu Limited Batterie de disques et procede d'extension de sa capacite
US8312490B2 (en) * 2000-03-23 2012-11-13 The Directv Group, Inc. DVR with enhanced functionality
US6799258B1 (en) 2001-01-10 2004-09-28 Datacore Software Corporation Methods and apparatus for point-in-time volumes
US7747576B2 (en) * 2002-02-20 2010-06-29 International Business Machines Corporation Incremental update control for remote copy
US20030177149A1 (en) * 2002-03-18 2003-09-18 Coombs David Lawrence System and method for data backup
JP2003280964A (ja) 2002-03-22 2003-10-03 Hitachi Ltd スナップショット取得方法、ストレージシステム及びディスク装置
US7185144B2 (en) * 2003-11-24 2007-02-27 Network Appliance, Inc. Semi-static distribution technique
US7024530B2 (en) 2003-03-14 2006-04-04 International Business Machines Corporation Method, system, and program for establishing and using a point-in-time copy relationship
US20040243945A1 (en) 2003-05-30 2004-12-02 International Business Machines Corporation Representing a storage subsystem logical configuration in a graphical user interface using a tree metaphor
US7523408B2 (en) 2003-05-30 2009-04-21 International Business Machines Corporation Representing status information in a storage subsystem copy services product
US7124128B2 (en) 2003-06-17 2006-10-17 International Business Machines Corporation Method, system, and program for managing requests to tracks subject to a relationship
US7047390B2 (en) * 2003-06-17 2006-05-16 International Business Machines Corporation Method, system, and program for managing a relationship between one target volume and one source volume
US7000145B2 (en) * 2003-06-18 2006-02-14 International Business Machines Corporation Method, system, and program for reverse restore of an incremental virtual copy
US6996586B2 (en) * 2003-06-18 2006-02-07 International Business Machines Corporation Method, system, and article for incremental virtual copy of a data block
US7124323B2 (en) * 2003-06-18 2006-10-17 International Business Machines Corporation Method, system, and program for recovery of a reverse restore operation
US7467266B2 (en) 2003-08-05 2008-12-16 International Business Machines Corporation Snapshot management method apparatus and system
US7702670B1 (en) 2003-08-29 2010-04-20 Emc Corporation System and method for tracking changes associated with incremental copying
US7437676B1 (en) 2003-09-30 2008-10-14 Emc Corporation Methods and apparatus for managing network resources via use of a relationship view
US7240131B1 (en) 2004-03-08 2007-07-03 Emc Corporation Method and apparatus for improving the process of making independent data copies in a data processing system
US7395402B2 (en) * 2004-04-15 2008-07-01 Broadcom Corporation Method and system of data storage capacity allocation and management using one or more data storage drives
JP4382602B2 (ja) 2004-04-23 2009-12-16 株式会社日立製作所 リモートコピーシステム
US7461100B2 (en) * 2004-05-27 2008-12-02 International Business Machines Corporation Method for fast reverse restore
US7409510B2 (en) 2004-05-27 2008-08-05 International Business Machines Corporation Instant virtual copy to a primary mirroring portion of data
JP4548037B2 (ja) 2004-08-09 2010-09-22 株式会社日立製作所 キャッシュメモリの管理方法、ストレージ装置または計算機システム
US20060174003A1 (en) * 2005-01-31 2006-08-03 Wilson Christopher S Access control using file allocation table (FAT) file systems
US20070180204A1 (en) * 2005-01-31 2007-08-02 Wilson Christopher S Method and system of erasing data pool residing over multiple data storage drives
JP4744171B2 (ja) 2005-03-18 2011-08-10 株式会社日立製作所 計算機システム及び記憶制御方法
JP4987307B2 (ja) 2005-03-25 2012-07-25 株式会社日立製作所 ストレージシステム
US7716185B2 (en) 2005-06-29 2010-05-11 Emc Corporation Creation of a single client snapshot using a client utility
US20070143851A1 (en) * 2005-12-21 2007-06-21 Fiberlink Method and systems for controlling access to computing resources based on known security vulnerabilities
JP4827564B2 (ja) 2006-03-15 2011-11-30 株式会社日立製作所 コピーペアのペア状態の表示方法
US7702866B2 (en) * 2006-03-31 2010-04-20 International Business Machines Corporation Use of volume containers in replication and provisioning management
JP4849960B2 (ja) * 2006-05-31 2012-01-11 株式会社日立製作所 レプリケーションボリュームの容量拡張方法
US7571293B1 (en) 2006-06-22 2009-08-04 Emc Corporation Emulation of point-in-time data copying operations
US8140785B2 (en) 2006-06-29 2012-03-20 International Business Machines Corporation Updating metadata in a logical volume associated with a storage controller for data units indicated in a data structure
US8161253B2 (en) 2007-01-30 2012-04-17 International Business Machine Corporation Maintenance of valid volume table of contents
JP5156518B2 (ja) 2008-07-23 2013-03-06 株式会社日立製作所 記憶制御装置及び方法
US8429514B1 (en) * 2008-09-24 2013-04-23 Network Appliance, Inc. Dynamic load balancing of distributed parity in a RAID array
US8572045B1 (en) * 2008-09-25 2013-10-29 Symantec Corporation System and method for efficiently restoring a plurality of deleted files to a file system volume
US8117413B2 (en) * 2008-09-25 2012-02-14 International Business Machines Corporation Logical data set migration
US8200637B1 (en) * 2008-09-30 2012-06-12 Symantec Operating Corporation Block-based sparse backup images of file system volumes
US8515911B1 (en) 2009-01-06 2013-08-20 Emc Corporation Methods and apparatus for managing multiple point in time copies in a file system
JP5564494B2 (ja) 2009-04-23 2014-07-30 株式会社日立製作所 計算機システム、及び、それを用いたバックアップ方法
US8468316B2 (en) 2009-06-15 2013-06-18 International Business Machines Corporation Apparatus and method for data backup
US8219768B2 (en) 2010-01-05 2012-07-10 Hitachi, Ltd. System and method for establishing a copy pair relationship between source and destination volumes
US8433867B2 (en) 2010-01-09 2013-04-30 International Business Machines Corporation Using the change-recording feature for point-in-time-copy technology to perform more effective backups
US8825601B2 (en) 2010-02-01 2014-09-02 Microsoft Corporation Logical data backup and rollback using incremental capture in a distributed database
US8793290B1 (en) * 2010-02-24 2014-07-29 Toshiba Corporation Metadata management for pools of storage disks
US20110307660A1 (en) * 2010-06-14 2011-12-15 Chien-Hung Yang Redundant array of independent disks system, method for writing data into redundant array of independent disks system, and method and system for creating virtual disk
US8433870B2 (en) * 2010-10-12 2013-04-30 International Business Machines Corporation Multiple incremental virtual copies
US8655841B1 (en) 2010-12-31 2014-02-18 Symantec Corporation Selection of one of several available incremental modification detection techniques for use in incremental backups
US9081511B2 (en) 2011-02-23 2015-07-14 International Business Machines Corporation Source-target relations mapping
WO2012117515A1 (ja) 2011-03-01 2012-09-07 株式会社日立製作所 計算機システム、管理システム及びデータ管理方法
US8832028B2 (en) * 2011-08-25 2014-09-09 Oracle International Corporation Database cloning
US20130054906A1 (en) * 2011-08-30 2013-02-28 International Business Machines Corporation Managing dereferenced chunks in a deduplication system
US8806281B1 (en) 2012-01-23 2014-08-12 Symantec Corporation Systems and methods for displaying backup-status information for computing resources
US9009405B2 (en) * 2012-04-30 2015-04-14 Lsi Corporation Methods and systems for instantaneous online capacity expansion
KR20150021117A (ko) * 2012-06-18 2015-02-27 액티피오 인크. 강화형 데이터 관리 가상화 시스템
US9483355B1 (en) 2012-06-29 2016-11-01 EMC IP Holding Company LLC Tracking copy sessions
US8914578B2 (en) * 2012-09-27 2014-12-16 Hewlett-Packard Development Company, L.P. Capacity-expansion of a logical volume
US9665477B2 (en) * 2013-02-01 2017-05-30 International Business Machines Corporation Allocating additional requested storage space for a data set in a first managed space in a second managed space
US10007602B2 (en) 2014-05-06 2018-06-26 International Business Machines Corporation Flash copy relationship management

Also Published As

Publication number Publication date
US20160259574A1 (en) 2016-09-08
US10108352B2 (en) 2018-10-23
CN105938448B (zh) 2019-01-11
CN105938448A (zh) 2016-09-14

Similar Documents

Publication Publication Date Title
DE102016103769A1 (de) Inkrementelle Replikation eines Quellen-Datasets
DE112011100534B4 (de) Mehrstufiger Sicherungsprozess
DE112012005037B4 (de) Verwalten von redundanten unveränderlichen Dateien unter Verwendung von Deduplizierungen in Speicher-Clouds
DE602005001041T2 (de) Speicherauszugssystem
DE112013001421B4 (de) Auf Richtlinien beruhendes Verwalten von Speicherfunktionen in Datenreplikationsumgebungen
DE112011100112B4 (de) Pufferspeicher-platte in blitzkopie-kaskade
DE112010004947B4 (de) Wiederherstellung einer vollständigen Systemsicherung und inkrementeller Sicherungen unter Verwendung von mehreren gleichzeitigen Datenströmen von Einheiten
DE102013215535B4 (de) Sicherung oder wiederherstellung von daten mit hilfe eines hauptspeichers und nichtflüchtiger speichermedien
DE102013204972B4 (de) Hybride Sicherung und Wiederherstellung eines sehr grossen Dateisystems unter Verwendung von Metadaten-Abbildsicherung und herkömmlicher Sicherung
DE112011100618B4 (de) Verwalten von Schreiboperationen auf einen Speicherbereich von Spuren, der zwischen Speichereinheiten verlagert wird
DE602004008808T2 (de) Verfahren und vorrichtung zur durchführung von operationen an gewählten daten in einem speicherbereich
DE112017007224T5 (de) Momentaufnahmen-Verwaltung in einer Blockchain
DE112011103829T5 (de) Verfahren und System zum Erzeugen einer virtuellen Maschine auf der Grundlage von Vorlagen
DE112013000465B4 (de) Verwaltung einer fernen Datenreplikation
DE602004007925T2 (de) Verwalten einer beziehung zwischen einem zielvolumen und einem quellenvolumen
DE112010004931T5 (de) Mehrphasige Wiederherstellung von Dateisystemen mit SelektiverBedarfsweiser Verfügbarkeit von Daten(
DE112012003695T5 (de) Aufrechterhalten mehrerer Zielkopien
DE112011101793T5 (de) Gemeinsame Datennutzung bei Dateiklonen
DE112012004571T5 (de) Unterstützen von unvollständigen Datensegmenten in Flash-Cache-Speichern
DE112014002275T5 (de) Datenbankverwaltungssystem und -verfahren
DE112015000222T5 (de) Zusammenführen von mehreren Zeitpunktkopien zu einer zusammengeführten Zeitpunktkopie
DE112018005135T5 (de) Thin provisioning unter verwendung von speicherbänken auf cloud-grundlage
DE102012223167A1 (de) Gemeinsame Nutzung von Artefakten zwischen kollaborativen Systemen
DE112012000282T5 (de) Anwendungswiederherstellung in einem Dateisystem
DE102021125630A1 (de) Datensynchronisation in einem datenanalysesystem

Legal Events

Date Code Title Description
R012 Request for examination validly filed
R079 Amendment of ipc main class

Free format text: PREVIOUS MAIN CLASS: G06F0017300000

Ipc: G06F0016000000

R016 Response to examination communication
R084 Declaration of willingness to licence