DE112012002241T5 - Migration eines transparenten Dateisystems zu einem neuen physischen Speicherort - Google Patents

Migration eines transparenten Dateisystems zu einem neuen physischen Speicherort Download PDF

Info

Publication number
DE112012002241T5
DE112012002241T5 DE112012002241.6T DE112012002241T DE112012002241T5 DE 112012002241 T5 DE112012002241 T5 DE 112012002241T5 DE 112012002241 T DE112012002241 T DE 112012002241T DE 112012002241 T5 DE112012002241 T5 DE 112012002241T5
Authority
DE
Germany
Prior art keywords
physical
file system
location
migration
spool
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
DE112012002241.6T
Other languages
English (en)
Inventor
Alexei Leonidovich Pytel
Thomas Wasik
Kevin James Kathmann
Steven John Simonson
Bruce Talbott
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 DE112012002241T5 publication Critical patent/DE112012002241T5/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/0604Improving or facilitating administration, e.g. storage management
    • G06F3/0607Improving or facilitating administration, e.g. storage management by facilitating the process of upgrading existing storage systems, e.g. for improving compatibility between host and storage device
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0646Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
    • G06F3/0647Migration mechanisms
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0683Plurality of storage devices
    • G06F3/0689Disk arrays, e.g. RAID, JBOD

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

Die Migration eines transparenten Dateisystems schließt ein Verfahren ein, das einen physischen Quellenspeicherort in einem Dateisystem identifiziert, das den gleichzeitigen Zugriff durch mehrere unabhängige Prozesse unterstützt. Ein physischer Zielspeicherort im Dateisystem wird identifiziert, und sein Inhalt wird zum physischen Zielspeicherort migriert. Das Migrieren schließt das Nichtzulassen neuer Zuordnungen zum physischen Quellenspeicherort und das Kopieren des Inhalts vom physischen Quellenspeicherort zum physischen Zielspeicherort ein. Eine Schreibanforderung, Daten in den physischen Quellenspeicherort zu schreiben, wird vor oder während des Migrierens empfangen. Die Schreibanforderung wird gleichzeitig mit dem Migrieren bedient. An den physischen Quellenspeicherort gerichtete Lese- und Schreibanforderungen werden zum physischen Zielspeicherort umgeleitet. Die Umleitung erfolgt in Reaktion auf das Abschließen des Migrierens. Die Anforderungen kommen von den mehreren unabhängigen Prozessen und schließen sowohl logische als auch physische Ein-/Ausgaben ein.

Description

  • Gebiet der Erfindung
  • Die vorliegende Erfindung betrifft Dateisysteme und insbesondere die Migration eines transparenten Dateisystems zu einem neuen physischen Speicherort.
  • Hintergrund der Erfindung
  • Die meisten modernen Betriebssysteme bieten eine Möglichkeit, druckfertige Objekte in ihrem Dateisystem zu speichern und sie asynchron zum Drucker zu senden. Dies erlaubt Anwendungen, die Druckobjekte erzeugen, die Verarbeitung fortzusetzen, bevor der Drucker die Ausgabe tatsächlich ausdruckt. Dieser Prozess wird als SPOOLing (Simultaneous Peripheral Operations On-Line (gleichzeitiger Betrieb von Peripheriegeräten während der Verarbeitung)) bezeichnet, und die gespeicherten Daten werden als SPOOL-Dateisystem bezeichnet. Das SPOOL-Dateisystem kann auch zum Speichern von Information verwendet werden, die von Eingabeperipherieeinheiten wie z. B. Netzwerkeinheiten in einem System ankommt.
  • In einer Multi-Image-Betriebssystemumgebung (z. B. mehrere Betriebssysteme in einer verbundenen Umgebung) ist es vorteilhaft, wenn ein einzelnes SPOOL-Dateisystem von allen Betriebssystemimages gemeinsam benutzt wird. Ein Vorteil ist, dass dies Prozessen auf einem Image ermöglicht, auf Peripheriegeräte auf anderen Images zuzugreifen. In der gemeinsamen Umgebung wird von mehreren Prozessen (Threads) auf mehreren unabhängigen Betriebssystemimages gleichzeitig auf das SPOOL-Dateisystem zugegriffen (darin geschrieben oder daraus gelesen).
  • Ein SPOOL-Dateisystem kann als eine Reihe von Dateien im nativen Dateisystem des Betriebssystems realisiert sein. Es kann aber auch als ein neues logisches Dateisystem implementiert sein, das über dem nativen Dateisystem des Betriebssystems abgebildet ist. Dies erfolgt oft, um Begrenzungen, Einschränkungen und/oder Leistungsprobleme des nativen Dateisystems zu überwinden. Dateien im SPOOL-Dateisystem sind allgemein temporärer Art, werden einmal geschrieben und gelesen und können sehr groß sein. In einem großen Betriebssystem kann das SPOOL-Dateisystem mehrere physische/logische Speichereinheiten umspannen, um nicht nur der Größe der im SPOOL-Dateisystem befindlichen Objekte, sondern auch den erforderlichen Leistungsmerkmalen gerecht zu werden.
  • Ein SPOOL-Dateisystem, das als Dateisystem realisiert ist, das auf Objekte im nativen Dateisystem des Betriebssystems abgebildet ist, kann als ein logisches Dateisystem (LFS) aufgefasst werden. Wie bei jedem Dateisystem gibt es eine Anforderung, den für SPOOL-Dateien verfügbaren Speicherplatz zu vergrößern und zu verkleinern. Das Vergrößern des Speicherplatzes kann erreicht werden, indem ein neues natives Dateisystemobjekt zum SPOOL-Dateisystem hinzugefügt wird. Das Verkleinern des SPOOL-Dateisystems macht dann die Entfernung eines nativen Dateisystemobjekts aus dem SPOOL-Dateisystem notwendig. Doch bevor ein natives Dateisystemobjekt entfernt werden kann, müssen alle in diesem Objekt befindlichen SPOOL-Dateien aus dem Objekt entfernt werden. Um dies zu erreichen, besteht die herkömmliche Methode darin, das native Dateisystemobjekt als für neue SPOOL-Datensätze nicht verfügbar zu markieren und dann zu warten, bis die in diesem Objekt befindlichen SPOOL-Dateien gelöscht sind, da SPOOL-Dateien temporär sind. Sobald alle SPOOL-Dateien, die das Objekt verwenden, gelöscht wurden, kann das native Dateisystemobjekt aus dem SPOOL-Dateisystem entfernt und gelöscht werden.
  • Kurzdarstellung
  • Eine Ausführungsform ist ein Verfahren, das das Identifizieren eines physischen Quellenspeicherorts in einem Dateisystem einschließt, das den gleichzeitigen Zugriff durch mehrere unabhängige Prozesse unterstützt. Ein physischer Zielspeicherort im Dateisystem wird identifiziert, und der Inhalt des physischen Quellenspeicherorts wird zum physischen Zielspeicherort migriert. Das Migrieren schließt das Nichtzulassen neuer Zuordnungen zum physischen Quellenspeicherort und das Kopieren des Inhalts vom physischen Quellenspeicherort zum physischen Zielspeicherort ein. Eine Schreibanforderung, Daten in den physischen Quellenspeicherort zu schreiben, wird vor oder während des Migrierens empfangen. Die Schreibanforderung wird gleichzeitig mit dem Migrieren bedient. An den physischen Quellenspeicherort gerichtete Lese- und Schreibanforderungen werden zum physischen Zielspeicherort umgeleitet. Die Umleitung erfolgt in Reaktion auf den Abschluss der Migration. Die Anforderungen kommen von den mehreren unabhängigen Prozessen und schließen sowohl logische Ein-/Ausgaben (E/A) als auch physische E/A ein.
  • Eine andere Ausführungsform ist ein System, das einen Prozessor aufweist, der konfiguriert ist, um ein Verfahren durchzuführen. Das Verfahren schließt das Identifizieren eines physischen Quellenspeicherorts in einem Dateisystem ein, das den gleichzeitigen Zugriff durch mehrere unabhängige Prozesse unterstützt. Ein physischer Zielspeicherort im Dateisystem wird identifiziert, und der Inhalt des physischen Quellenspeicherorts wird zum physischen Zielspeicherort migriert. Das Migrieren schließt das Nichtzulassen neuer Zuordnungen zum physischen Quellenspeicherort und das Kopieren des Inhalts vom physischen Quellenspeicherort zum physischen Zielspeicherort ein. Eine Schreibanforderung, Daten in den physischen Quellenspeicherort zu schreiben, wird vor oder während des Migrierens empfangen. Die Schreibanforderung wird gleichzeitig mit dem Migrieren bedient. An den physischen Quellenspeicherort gerichtete Lese- und Schreibanforderungen werden zum physischen Zielspeicherort umgeleitet. Die Umleitung erfolgt in Reaktion auf das Abschließen des Migrierens. Die Anforderungen kommen von den mehreren unabhängigen Prozessen und schließen sowohl logische Ein-/Ausgaben (E/A) als auch physische E/A ein.
  • Eine weitere Ausführungsform ist ein Computerprogrammprodukt, das ein materielles Speichermedium einschließt, das durch eine Verarbeitungsschaltung lesbar ist und Anweisungen speichert, die zur Durchführung eines Verfahrens von der Verarbeitungsschaltung ausgeführt werden. Das Verfahren schließt das Identifizieren eines physischen Quellenspeicherorts in einem Dateisystem ein, das den gleichzeitigen Zugriff durch mehrere unabhängige Prozesse unterstützt. Ein physischer Zielspeicherort im Dateisystem wird identifiziert, und der Inhalt des physischen Quellenspeicherorts wird zum physischen Zielspeicherort migriert. Das Migrieren schließt das Nichtzulassen neuer Zuordnungen zum physischen Quellenspeicherort und das Kopieren des Inhalts vom physischen Quellenspeicherort zum physischen Zielspeicherort ein. Eine Schreibanforderung, Daten in den physischen Quellenspeicherort zu schreiben, wird vor oder während des Migrierens empfangen. Die Schreibanforderung wird gleichzeitig mit dem Migrieren bedient. An den physischen Quellenspeicherort gerichtete Lese- und Schreibanforderungen werden zum physischen Zielspeicherort umgeleitet. Die Umleitung erfolgt in Reaktion auf das Abschließen des Migrierens. Die Anforderungen kommen von den mehreren unabhängigen Prozessen und schließen sowohl logische Ein-/Ausgaben (E/A) als auch physische E/A ein.
  • Zusätzliche Merkmale und Vorteile werden durch die Techniken der vorliegenden Erfindung realisiert. Weitere Ausführungsformen und Aspekte der Erfindung werden hierin im Detail beschrieben und als Teil der beanspruchten Erfindung betrachtet. Zum besseren Verständnis der Erfindung mit ihren Vorteilen und Merkmalen, siehe die folgende Beschreibung und die Zeichnungen.
  • Einem ersten Aspekt gemäß stellt die vorliegende Erfindung ein Verfahren bereit, umfassend: Identifizieren eines physischen Quellenspeicherorts in einem Dateisystem, das den gleichzeitigen Zugriff durch mehrere unabhängige Prozesse unterstützt; Identifizieren eines physischen Zielspeicherorts im Dateisystem; Migrieren des Inhalts des physischen Quellenspeicherorts zum physischen Zielspeicherort, wobei das Migrieren aufweist: Nichtzulassen neuer Zuordnungen zum physischen Quellenspeicherort; Kopieren des Inhalts vom physischen Quellenspeicherort zum physischen Zielspeicherort; Empfangen einer Schreibanforderung, Daten in den physischen Quellenspeicherort zu schreiben, wobei das Empfangen vor oder während des Migrierens erfolgt; Bedienen der Schreibanforderung gleichzeitig mit dem Migrieren; und Umleiten, in Reaktion auf den Abschluss des Migrierens, von an den physischen Quellenspeicherort gerichteten Lese- und Schreibanforderungen zum physischen Zielspeicherort, wobei die Anforderungen von den mehreren unabhängigen Prozessen kommen und sowohl logische Ein-/Ausgaben (E/A) als auch physische E/A aufweisen.
  • Bevorzugt stellt die vorliegende Erfindung ein Verfahren bereit, das außerdem das Entfernen des physischen Quellenspeicherorts aus dem Dateisystem einschließt.
  • Bevorzugt stellt die vorliegende Erfindung ein Verfahren bereit, wobei das Dateisystem ein „Simultaneous Peripheral Operations On-Line”(SPOOL)-Dateisystem ist.
  • Bevorzugt stellt die vorliegende Erfindung ein Verfahren bereit, wobei das Migrieren und Umleiten ohne jede Änderung an den mehreren unabhängigen Prozessen durchgeführt werden.
  • Bevorzugt stellt die vorliegende Erfindung ein Verfahren bereit, wobei die mehreren unabhängigen Prozesse auf mehreren Computersystemen ausgeführt werden.
  • Bevorzugt stellt die vorliegende Erfindung ein Verfahren bereit, wobei das Umleiten mit einem virtualisierten Objekt durchgeführt wird.
  • Bevorzugt stellt die vorliegende Erfindung ein Verfahren bereit, wobei das Umleiten mit einem logischen Dateisystem durchgeführt wird.
  • Einem anderen Aspekt gemäß stellt die vorliegende Erfindung ein System bereit, das einen Prozessor aufweist, der konfiguriert ist, um ein Verfahren durchzuführen, wobei das Verfahren aufweist: Mittel zum Identifizieren eines physischen Quellenspeicherorts in einem Dateisystem, das den gleichzeitigen Zugriff durch mehrere unabhängige Prozesse unterstützt; Mittel zum Identifizieren eines physischen Zielspeicherorts im Dateisystem; Mittel zum Migrieren des Inhalts des physischen Quellenspeicherorts zum physischen Zielspeicherort, wobei das Migrieren aufweist: Mittel zum Nichtzulassen neuer Zuordnungen zum physischen Quellenspeicherort; Mittel zum Kopieren des Inhalts vom physischen Quellenspeicherort zum physischen Zielspeicherort; Mittel zum Empfangen einer Schreibanforderung, Daten in den physischen Quellenspeicherort zu schreiben, wobei das Empfangen vor oder während des Migrierens erfolgt; Mittel zum Bedienen der Schreibanforderung gleichzeitig mit dem Migrieren; und Mittel zum Umleiten, in Reaktion auf den Abschluss des Migrierens, von an den physischen Quellenspeicherort gerichteten Lese- und Schreibanforderungen zum physischen Zielspeicherort, wobei die Anforderungen von den mehreren unabhängigen Prozessen kommen und sowohl logische Ein/Ausgaben (E/A) als auch physische E/A aufweisen.
  • Bevorzugt stellt die vorliegende Erfindung ein System bereit, wobei das Verfahren außerdem Mittel zum Entfernen des physischen Quellenspeicherorts aus dem Dateisystem einschließt.
  • Bevorzugt stellt die vorliegende Erfindung ein System bereit, wobei das Dateisystem ein „Simultaneous Peripheral Operations On-Line”(SPOOL)-Dateisystem ist.
  • Bevorzugt stellt die vorliegende Erfindung ein System bereit, wobei die Mittel zum Migrieren und Umleiten ohne jede Änderung an den mehreren unabhängigen Prozessen durchgeführt werden.
  • Bevorzugt stellt die vorliegende Erfindung ein System bereit, wobei die mehreren unabhängigen Prozesse auf mehreren unterschiedlichen Computersystemen ausgeführt werden.
  • Bevorzugt stellt die vorliegende Erfindung ein System bereit, wobei das Mittel zum Umleiten mit einem virtualisierten Objekt durchgeführt wird.
  • Bevorzugt stellt die vorliegende Erfindung ein System bereit, wobei das Mittel zum Umleiten mit einem logischen Dateisystem durchgeführt wird.
  • Einem weiteren Aspekt gemäß stellt die vorliegende Erfindung ein Computerprogrammprodukt bereit, aufweisend: ein materielles Speichermedium, das durch eine Verarbeitungsschaltung lesbar ist und Anweisungen speichert, die zur Durchführung eines Verfahrens von der Verarbeitungsschaltung ausgeführt werden, wobei das Verfahren aufweist: Identifizieren eines physischen Quellenspeicherorts in einem Dateisystem, das den gleichzeitigen Zugriff durch mehrere unabhängige Prozesse unterstützt; Identifizieren eines physischen Zielspeicherorts im Dateisystem; Migrieren des Inhalts des physischen Quellenspeicherorts zum physischen Zielspeicherort, wobei das Migrieren aufweist: Nichtzulassen neuer Zuordnungen zum physischen Quellenspeicherort; Kopieren des Inhalts vom physischen Quellenspeicherort zum physischen Zielspeicherort; Empfangen einer Schreibanforderung, Daten in den physischen Quellenspeicherort zu schreiben, wobei das Empfangen vor oder während des Migrierens erfolgt; Bedienen der Schreibanforderung gleichzeitig mit dem Migrieren; und Umleiten, in Reaktion auf den Abschluss des Migrierens, von an den physischen Quellenspeicherort gerichteten Lese- und Schreibanforderungen zum physischen Zielspeicherort, wobei die Anforderungen von den mehreren unabhängigen Prozessen kommen und sowohl logische Ein-/Ausgaben (E/A) als auch physische E/A aufweisen.
  • Bevorzugt stellt die vorliegende Erfindung ein Computerprogrammprodukt bereit, wobei das Verfahren außerdem das Entfernen des physischen Quellenspeicherorts aus dem Dateisystem einschließt.
  • Bevorzugt stellt die vorliegende Erfindung ein Computerprogrammprodukt bereit, wobei das Dateisystem ein „Simultaneous Peripheral Operations On-Line”(SPOOL)-Dateisystem ist.
  • Bevorzugt stellt die vorliegende Erfindung ein Computerprogrammprodukt bereit, wobei das Migrieren und Umleiten ohne jede Änderung an den mehreren unabhängigen Prozessen durchgeführt werden.
  • Bevorzugt stellt die vorliegende Erfindung ein Computerprogrammprodukt bereit, wobei die mehreren unabhängigen Prozesse auf mehreren unterschiedlichen Computersystemen ausgeführt werden.
  • Bevorzugt stellt die vorliegende Erfindung ein Computerprogrammprodukt bereit, wobei das Umleiten mit einem virtualisierten Objekt durchgeführt wird.
  • Bevorzugt stellt die vorliegende Erfindung ein Computerprogrammprodukt bereit, wobei das Umleiten mit einem logischen Dateisystem durchgeführt wird.
  • Kurze Beschreibung der Zeichnungen
  • Eine bevorzugte Ausführungsform der vorliegenden Erfindung wird nun Bezug nehmend auf die beiliegenden Zeichnungen lediglich beispielhaft beschrieben, wobei:
  • 1 ein System zeigt, das einer bevorzugten Ausführungsform der vorliegenden Erfindung gemäß realisiert ist.
  • 2 ein Spool-Dateisystem vor der Migration gemäß einer bevorzugten Ausführungsform der vorliegenden Erfindung zeigt.
  • 3 einen Gesamt-Prozessablauf zeigt, der einer bevorzugten Ausführungsform der vorliegenden Erfindung entsprechend realisiert ist.
  • 4 ein Prozessablauf einer Migrationskonfigurationsphase gemäß einer bevorzugten Ausführungsform der vorliegenden Erfindung ist.
  • 5 einen Prozessablauf einer ersten Phase in einer Migration gemäß einer bevorzugten Ausführungsform der vorliegenden Erfindung zeigt.
  • 6 das SPOOL-Dateisystem von 2 während einer Migration von einem physischen Datenträger zu einem anderen physischen Datenträger gemäß einer bevorzugten Ausführungsform der vorliegenden Erfindung zeigt.
  • 7 einen Prozessablauf einer zweiten Phase der Migration gemäß einer bevorzugten Ausführungsform der vorliegenden Erfindung zeigt.
  • 8 das SPOOL-Dateisystem von 2 und 6 nach einer Migration von einem physischen Datenträger zu einem anderen physischen Datenträger gemäß einer bevorzugten Ausführungsform der vorliegenden Erfindung zeigt.
  • Ausführliche Beschreibung
  • Eine Ausführungsform weist ein Verfahren auf, um Daten von einem bestehenden nativen Dateisystemobjekt in einem SPOOL-Dateisystem zu verfügbarem Speicherplatz auf einem anderen Objekt zu kopieren, das im SPOOL-Dateisystem definiert ist. Das Kopieren erfolgt, ohne dass laufende Anwendungen davon Kenntnis haben, und verwendet ein Umadressierungssystem (z. B. einen Umsetzer), das SPOOL-Datenadressen von einem Quellenobjekt auf ein Zielobjekt abbildet. Nach Abschluss des Kopiervorgangs werden die Daten, die im ursprünglichen nativen Dateisystemobjekt im SPOOL-Dateisystem waren, auf einem anderen bestehenden Objekt, das dem SPOOL-Dateisystem zugeordnet ist, virtualisiert, und das ursprüngliche native Dateisystemobjekt wird gelöscht. Das virtualisierte Objekt besteht weiter, bis alle Benutzer des Objekts gelöscht werden. Freier Speicherplatz im virtualisierten (abgebildeten) Objekt ist durch das nicht virtualisierte Zielobjekt verfügbar.
  • Dies erlaubt die Verkleinerung des physischen Speicherplatzes, der vom SPOOL-Dateisystem belegt wird (das native Dateisystemobjekt wird gelöscht), ohne warten zu müssen, bis alle SPOOL-Dateien im logischen (virtualisierten) SPOOL-Objekt gelöscht sind. Aktive SPOOL-Dateien (solche, die von aktiven Threads oder Prozessen gelesen oder geschrieben werden) werden ohne Auswirkungen auf die Anwendungen, die SPOOL-Dateien benutzen, gehandhabt. Zusätzlich handhabt eine Ausführungsform Anwendungen, die Kenntnis des Speicherorts von Daten im SPOOL-Dateisystem haben (eine SPOOL-Datenadresse im logischen SPOOL-Dateisystem haben), und erlaubt ihnen, auf die Daten zuzugreifen, nachdem das SPOOL-Dateisystem verkleinert wurde. Anwendungen verwenden weiterhin logische Adressen, die an das „alte” SPOOL-Objekt adressiert sind. Dieses „alte” SPOOL-Objekt besteht noch als ein virtualisiertes Objekt, das in einem anderen physischen SPOOL-Objekt abgebildet ist, und die Anwendungen führen E/A mit den „alten” Adressen durch. Die Abbildungsfunktion, die in der SPOOL-E/A-Funktion integriert ist, ist in der Lage, die virtualisierte Umgebung und die physische Ziel-E/A zum korrekten physischen nativen Objekt des Betriebssystems zu erkennen. Zusätzlich hört das „alte” SPOOL-Objekt auf, zu existieren, sobald alle Anwendungen, die den „alten” SPOOL-Datenträger benutzen, die Verarbeitung beenden.
  • Die Unterstützung beider Anwendungstypen verhindert den simplen Prozess des Verlagerns von SPOOL-Dateien im logischen SPOOL-Dateisystem (LFS), da aktive Prozesse nicht in der Lage wären, Daten, die verlagert wurden, weiterzuverarbeiten, und SPOOL-Datenadressen, die Anwendungen bekannt sind, nicht mehr gültig sind, wenn die Daten verlagert worden sind.
  • Eine Ausführungsform wird in einer Umgebung verwendet, die mehrere verbundene Betriebssysteme und SPOOL-Daten einschließt, auf die von mehreren Prozessen (Threads) auf diesen Betriebssystemen zugegriffen wird.
  • Eine Ausführungsform, die hierin beschrieben wird, erlaubt die sofortige Löschung des nativen Betriebssystemobjekts, das verwendet wird, um ein Spool-Objekt unterzubringen. Dies erlaubt den Austausch eines Plattenlaufwerks ohne Auswirkung auf die Daten, die im SPOOL-Dateisystem gespeichert sind. Zudem gibt es keine Auswirkungen auf die Anwendungen, da keine Änderungen an SPOOL-„Zeigern” in Anwendungen und anderen SPOOL-Daten erforderlich sind, wenn das Plattenlaufwerk ausgebaut wird.
  • Eine Ausführungsform unterstützt sowohl ein LFS, das auf ein natives Dateisystem (wie z. B. ein SPOOL-Dateisystem) abgebildet ist, als auch ein LFS, das auf ein physisches Dateisystem (PFS) abgebildet ist, das auf mehrere physische Einheiten verteilt ist.
  • Eine Ausführungsform betrifft das Migrieren eines logischen Dateisystems (LFS), das auf einem Satz physischer Datenträger beruht, zu einem neuen Satz physischer Datenträger, auf eine transparente und unterbrechungsfreie Weise. Mehrere Hauptmerkmale des LFS bleiben während des Migrationsprozesses und danach beibehalten. Beispielsweise bleibt das Datenadressierungssystem erhalten, das von Anwendungen verwendet wird, um auf Daten im LFS zuzugreifen. Datenadressen werden auf automatische und transparente Weise umgestellt, um während des Migrationsprozesses und danach auf korrekte physische Datenträger zuzugreifen. Zusätzlich können physische Quellen- und Zieldatenträger mit unterschiedlichen Geometrien definiert werden, und der Umstellungsprozess berücksichtigt diese Unterschiede beim Generieren von physischen Datenadressen automatisch. Zudem sind keine Änderungen an Anwendungsdaten oder Anwendungscode erforderlich, da E/A-Operationen automatisch zum korrekten physischen Zieldatenträger umgeleitet werden. Falls notwendig, werden E/A-Operationen auf transparente Weise wiederholt, wenn Daten von einem physischen Quellendatenträger zu einem physischen Zieldatenträger migriert werden. Ferner wird der gleichzeitige Zugriff auf Daten im LFS aus mehreren Prozessen, die auf mehreren eng verbundenen Computersystemen laufen, während des Fortschritts der Migration unterstützt. Darüber hinaus können mehrere physische Datenträger ohne Änderungen an Daten oder Anwendungen zu einem einzigen physischen Datenträger zusammengeführt werden, wodurch Datenträgerverwaltungsaufgaben potenziell vereinfacht werden.
  • Der Ausdruck „SPOOL-Dateisystem” oder einfach „SPOOL”, wie hierin verwendet, bezieht sich auf das logische Behältnis für SPOOL-Daten, die von System- und Anwendungsprozessen erzeugt werden, die in einem verteilten Computersystem ausgeführt werden. Das SPOOL-Dateisystem verwaltet die Speicherplatz-Zuweisungen/Freigaben von mehreren Prozessen. Zusätzlich gewährleistet das SPOOL-Dateisystem den gleichzeitigen Zugriff auf Spool-Daten aus mehreren Prozessen, die auf mehreren eng verbundenen Computersystemen ausgeführt werden. Dieser Mehrfachzugriff auf SPOOL-Daten ist ein wichtiges Merkmal des SPOOL-Dateisystems. Der Ausdruck „eng verbundenes Computersystem”, wie hierin verwendet, bezieht sich auf ein verteiltes Computersystem, das mehrere physisch getrennte Betriebssystemimages enthält, die symmetrischen Zugriff auf die gemeinsamen Daten haben und die für Anwendungen ein Einzelsystemimage aufweisen (z. B. ein Sysplex, das auf einem IBM System z® ausgeführt wird).
  • Ein SPOOL-Dateisystem schließt ein oder mehrere SPOOL-Datenträger ein, die separat verwaltet werden können (operatives Management). Der Ausdruck „SPOOL-Datenträger”, wie hierin verwendet, bezieht sich auf eine logische Entität, die auf bestimmte Weise auf Datenmanagement-Komponenten des zugrundeliegenden Betriebssystems abgebildet ist. In heutigen Betriebssystemen wird ein einzelner logischer SPOOL-Datenträger in einer Eins-zu-eins-Beziehung auf einen einzelnen physischen Datensatz auf einem physischen Plattendatenträger abgebildet. In Ausführungsformen, die hierin beschrieben werden, können mehrere logische SPOOL-Datenträger als Ergebnis der Migration in einer Viele-zu-eins-Beziehung auf einen einzelnen physischen Datensatz abgebildet werden.
  • Der Ausdruck „Migration”, wie hierin verwendet, bezieht sich auf die Verschiebung von Daten von einem SPOOL-Datenträger zu einem anderen SPOOL-Datenträger. „Vom” SPOOL-Datenträger bezieht sich hierin auf einen „Quellendatenträger”, und „zum” SPOOL-Datenträger bezieht sich hierin auf einen „Zieldatenträger”. Die Laufzeit-Eingabe/Ausgabe (E/A) zu migrierenden SPOOL-Datenträgern wird von Ausführungsformen, die hierin beschrieben werden, auf transparente Weise gehandhabt. Es ist anzumerken, dass Ausführungsformen, die hierin beschrieben werden, auf Dateisysteme jeden Typs ausgeweitet werden können.
  • Der Ausdruck „Laufzeit”, wie hierin verwendet, bezieht sich auf einen Einzel- oder Multithread-Benutzerausführungskontext, der eine Benutzeranwendung ausführt und in der Lage ist, E/A zu SPOOL-Datenträgern durchzuführen. Die Laufzeit integriert eine maschinennahe Schnittstelle, die die Kommunikation mit einem Migratorausführungskontext erlaubt. Wie hierin beschrieben, gewährleistet das SPOOL-Dateisystem die zentralisierte Verwaltung von SPOOL-Speicherplatz, doch die Laufzeit-E/A ist dezentralisiert. Das SPOOL-Dateisystem leitet und koordiniert den Zugriff auf SPOOL-Daten, doch für den tatsächlichen Zugriff auf physische Einheiten werden die Datenverwaltungsfunktionen des zugrundeliegenden Betriebssystems verwendet. Die Laufzeit-E/A verwendet ein flaches Adressierungssystem, um auf einzelne Datensätze im SPOOL-Dateisystem zuzugreifen. Die Zuordnung einer logischen Adresse eines Datensatzes zu einem physischen Speicherort wird auf für die Anwendung transparente Weise durchgeführt, auch bei laufender Migration und wenn der logische Datensatz zwischen den physischen Datenträgern verschoben wird.
  • Der Ausdruck „Migrator”, wie hierin verwendet, bezieht sich auf einen Einzel- oder Multithread-Ausführungskontext, der alle Phasen der Migration koordiniert. Wie oben erwähnt, sind in der Laufzeit „Hooks” vorhanden, um dem Migrator vorher zu melden, dass E/A zu migrierenden Datenträgern durchgeführt werden. Der Migrator gibt Anweisungen an die Laufzeit zurück, wobei die eigentlichen E/A im Laufzeitausführungskontext bleiben. In einer Ausführungsform stellt jeder Migrator eine Migration dar.
  • Der Ausdruck „Assistent”, wie hierin verwendet, bezieht sich auf einen Einzel- oder Multithread-Ausführungskontext, der mit dem Migrator zusammenarbeitet, um unter eng verbundenen Computersystemen Migrationsfunktionalitäten auszuweiten. In einer Ausführungsform hostet jedes Image im eng verbundenen Computersystem einen Assistenten, und ein Assistent kann mehrere Migrationen handhaben. Der Assistent koordiniert Migrationsphasenübergänge unter der Leitung des Migrators.
  • Der Ausdruck „Spurbitmap”, wie hierin verwendet, bezieht sich auf eine Bitmap, die in der Konfigurationsphase erzeugt wird und die Quellenspuren darstellt, die von einem SPOOL-Quellendatenträger zu einem SPOOL-Zieldatenträger migriert werden sollen. Es ist anzumerken, dass eine Ausführungsform als kleinste Speichereinheit eine Spur verwendet, doch Ausführungsformen können Speichereinheiten jeden Typs (z. B. Datensätze) unterstützen.
  • Der Ausdruck „Laufzeitbitmap”, wie hierin verwendet, bezieht sich auf eine Bitmap, die verwendet wird, um zu bestimmen, ob vor dem Durchführen von E/A zum SPOOL-Quellendatenträger eine Kommunikation mit dem Migrator erforderlich ist. In einer Ausführungsform entspricht die Granularität der Laufzeitbitmap einer Spur.
  • Der Ausdruck „Remigrationsbitmap”, wie hierin verwendet, bezieht sich auf eine Bitmap, die verwendet wird, um zu ermitteln, welche Spuren während einer zweiten Phase erneut migriert werden müssen. In einer Ausführungsform ermittelt der Migrator in Zusammenarbeit mit der Laufzeit, welche Spur(en) erneut migriert werden müssen, und speichert diese Information in der Remigrationsbitmap. In einer Ausführungsform wird die Remigrationsbitmap auch benutzt, um Neustart- und Übernahmefunktionalitäten in einem System innerhalb des eng verbundenen Komplexes bereitzustellen.
  • 1 zeigt ein System, das einer Ausführungsform entsprechend realisiert ist. Wie in 1 gezeigt, wird ein SPOOL-Teilsystem 104 von mehreren Betriebssystemen 102 gleichzeitig benutzt. Das in 1 gezeigte SPOOL-Teilsystem 104 ist auch mit einer E/A-Einheit 106 verbunden. In einer Ausführungsform werden die Betriebssysteme 102 auf Prozessoren ausgeführt, die Teil eines Multiprozessor-Computersystems sind. Die E/A-Einheit 106 schließt Peripherieeinheiten (z. B. Drucker, Festplattenlaufwerke, Personal-Computer usw.) sowie Netzwerke (Internet, lokales Netzwerk usw.) ein (oder ist eine Schnittstelle dazu). Das in 1 gezeigte SPOOL-Teilsystem 104 kann auf jede dem Fachmann bekannte Weise genutzt werden und wird typischerweise verwendet, um große Datensätze zu speichern. Die Daten im SPOOL-Teilsystem 104 schließen Daten ein, die von einem Betriebssystem 102 zu einer E/A-Einheit 106 übertragen werden, und Daten, die durch das Betriebssystem 102 von einer E/A-Einheit 106 empfangen werden.
  • 2 zeigt ein Spool-Dateisystem vor der Migration gemäß einer Ausführungsform. Es gibt „M” Systeme 202, die Anwendungen und Systemprozesse ausführen, welche in 2 gezeigt werden, und „N” physische SPOOL-Datenträger 206 (z. B. native Dateisystemobjekte) und „N” logische SPOOL-Datenträger, die von einer SPOOL-Teilsystemabbildung 204 verwaltet werden. Wie in 2 gezeigt, entspricht jedem physischen SPOOL-Datenträger 206 ein logischer SPOOL-Datenträger in der SPOOL-Teilsystemabbildung 204. 2 zeigt logische E/A 208 durch die Systeme 202 zum SPOOL-Dateisystem und physische E/A 210 durch die Systeme zu den physischen SPOOL-Datenträgern. 2 zeigt auch Zuordnungen 212, durch die SPOOL-Teilsystemabbildung 204, von logischen E/A 208 zu physischen SPOOL-Datenträgern 206.
  • Wie in 2 gezeigt, sind zwei physische E/A 210a und 210b zum physischen SPOOL-Datenträger 206b vorhanden. Zusätzlich sind zwei logische E/A 208b zum physischen SPOOL-Datenträger 206b vorhanden. Die zwei logischen E/A 208b werden in eine physische Adresse umgesetzt, die auf dem physischen SPOOL-Datenträger 206b liegt, wie durch die Zuordnung 212b gezeigt. Der Ausdruck „physische E/A”, wie hierin verwendet, bezieht sich auf eine E/A-Operation, die auf physische Medien zugreift, auf denen die Daten sich physisch befinden. Bei physischen E/A führen Anwendungen die E/A daher direkt an nativen Betriebssystem-Dateisystemobjekten durch. Der Ausdruck „logische E/A”, wie hierin verwendet, bezieht sich auf eine E/A-Operation, die auf im SPOOL-Teilsystem gespeicherte Daten zugreift, indem sie eine Abbildung 204 verwendet, um eine logische Adresse in eine physische Adresse umzusetzen, die auf einem physischen SPOOL-Datenträger 206 liegt. Um die Anforderung zu erfüllen, führt das SPOOL-Teilsystem im Auftrag des Anforderers eine physische E/A an tatsächlichen physischen Medien durch.
  • Wie in 3 gezeigt, weist eine Ausführungsform einen Migrationsprozess in vier Phasen auf. Zuerst wird in Block 302 die Migrationskonfiguration durchgeführt, die das Identifizieren der physischen Quellen/Ziel-SPOOL-Datenträger und das Initialisieren von Daten und Systemen einschließt. In Block 304 tritt die Phase eins der Migration auf, und sie schließt ein Durchführen eines ersten Migrationsdurchlaufs ein, in welchem Spuren von der Quelle zum Ziel kopiert werden, sowie das Identifizieren von Spuren, die einer erneuten Migration bedürfen. In Block 306 wird die Phase zwei der Migration durchgeführt, die einen zweiten Migrationsdurchlauf einschließt, in welchem alle Spuren, die als eine erneute Migration erfordernd identifiziert wurden, von der Quelle zum Ziel kopiert werden. In Block 308 wird die Migrationsbereinigung durchgeführt, um die Migration abzuschließen.
  • 4 ist ein Prozessablauf einer Migrationskonfiguration gemäß einer Ausführungsform, um von einem physischen SPOOL-Quellendatenträger zu einem physischen SPOOL-Zieldatenträger zu migrieren. In Block 402 wird auf einem Einzelsystem, das die Migration steuern wird, ein Migratorausführungskontext erzeugt, und auf jedem der Systeme werden Assistentenausführungskontexte erzeugt. In Block 404 wird bestimmt, welche Spuren migriert werden sollen, und eine Migrator-Spurbitmap wird generiert (oder vorbereitet). Zusätzlich wird in Block 406 auf jedem der Systeme im Komplex, die auf das SPOOL-Dateisystem zugreifen, eine Laufzeitbitmap erzeugt. Die Laufzeitbitmap wird mit allen Bits eingeschaltet erzeugt, um die Laufzeit zu informieren, dass dem Migrator vorher zu melden ist, dass E/A zum Quellendatenträger durchgeführt werden. In Block 408 werden keine neuen Zuordnungen auf dem Quellendatenträger mehr zugelassen.
  • Der Ausdruck „Übergangszähler”, wie hierin verwendet, bezieht sich auf eine Zählung durch den Migrator, um Phase-eins-zu-Phase-zwei-Übergänge zwischen dem Migratorkontext und dem Laufzeitkontext zu verwalten. Der Übergangszähler ist dem Quellendatenträger zugeordnet und auf allen Systemen im eng verbundenen Komplex vorhanden. An geeigneten Zeitpunkten informiert der Migrator die Assistenten, den Übergangszähler um eins (oder um einen anderen festgelegten Wert) zu erhöhen. Ein Beispiel für einen geeigneten Zeitpunkt ist der Übergang des migrierenden Datenträgers von einem Zustand zu einem anderen Zustand. In Ausführungsformen wird der Übergangszähler aktualisiert, wenn der Migrationsprozess Änderungen durchführt, die E/A-Operationen beeinflussen können. Für eine gegebene E/A erfasst der Laufzeitkontext vor jeder E/A eine Kopie des Übergangszählers, führt die E/A durch und vergleicht dann eine Kopie eines aktuellen Übergangszählers mit dem Originalübergangszähler, um festzustellen, ob eine Wiederholung erforderlich ist. In einer Ausführungsform ist bei jeder Änderung des Übergangszählers eine Wiederholung erforderlich. Der Zweck des Übergangszählers besteht darin, der Laufzeit zu signalisieren, dass für eine momentan ausgeführte E/A eine Wiederholung erforderlich ist. Eine Wiederholung kann zum Beispiel erforderlich sein, wenn eine Entscheidung der Laufzeit-E/A, eine physische E/A zu einem Quellendatenträger durchzuführen, nicht mehr gültig ist und dieselbe logische E/A nun einen physischen Zieldatenträger adressieren sollte. Bei einer Wiederholung sendet der Laufzeitkontext eine andere Nachricht an den Migratorkontext, um Anweisungen anzufordern. Dies erlaubt dem Migrator, die Laufzeit zu informieren, sobald die E/A von der Quelle zum Ziel wechselt. Die Verwendung des Übergangszählers dient dazu, die Serialisierung jeder Laufzeit-E/A-Operation mit dem Migratorprozess, die kostenintensiv sein kann, zu vermeiden. Die Laufzeit verwendet den Übergangszähler, um Änderung im Zustand des Datenträgers zu erkennen und eine E/A-Operation zu wiederholen, wenn die Änderung während der E/A-Operation erkannt wurde.
  • Während der Migration werden Daten von einem physischen Quelldatenträger zu einem spezifischen Speicherort auf dem physischen Zieldatenträger verschoben. Für eine gegebene Quellenspuradresse kann der zugeordnete Wert auf die Quellenspuradresse angewandt werden, um den genauen Speicherort der Daten auf dem physischen Zieldatenträger zu erhalten. Daher braucht die Anwendung sich nicht um Adressierungsdifferenzen während der Migration zu kümmern.
  • 5 zeigt einen Prozessablauf einer ersten Phase einer Migration gemäß einer Ausführungsform. Während dieser Phase werden Daten so schnell wie möglich vom Quellendatenträger zum Zieldatenträger kopiert, ohne Laufzeit-E/A zum Quellen- oder Zieldatenträger zu unterbrechen. Vor dem Schreiben in den Quellendatenträger benachrichtigt der Laufzeitkontext den Migratorkontext über die anstehende Schreiboperation. Der Migrator zeichnet die Schreiboperation in der Remigrationsbitmap auf, damit diese Spuren in Phase zwei erneut migriert werden können. In Block 502 weist der Migrator die Assistenten an, den Quellendatenträger-Status so einzustellen, dass die Laufzeit vor dem Lesen oder Schreiben einer Spur im zugeordneten Quellendatenträger die Laufzeitbitmap abfragt. In Block 504 inkrementieren die Assistenten den Quellendatenträger-Übergangszähler. In Block 506 geht der Migrator dazu über, mit der Spurbitmap als Vorgabe Spuren aus dem Quellendatenträger in den Zieldatenträger zu kopieren. Die Spurbitmap wurde in der Konfigurationsphase erzeugt und gibt Quellenspuren an, die eine Migration erfordern.
  • Während in Block 506 das Kopieren erfolgt, wird Block 508 durchgeführt, um E/A zum Quellendatenträger zu überwachen. Das Migrieren und das Bedienen von Schreibanforderungen werden daher gleichzeitig durchgeführt. Vor dem Lesen oder Schreiben einer Quellenspur fragt die Laufzeit die Laufzeitbitmap ab. Die Laufzeitbitmap wurde in der Konfigurationsphase mit allen Bits eingeschaltet erzeugt. Für eine gegebene Spur und ein entsprechendes Bit, das eingeschaltet ist, sendet die Laufzeit eine Anforderungs-/Antwortnachricht an den Migrator. In der Nachricht gibt die Laufzeit an, ob die anstehende E/A eine Lese- oder Schreiboperation ist. Wenn die Nachricht eine Schreiboperation betrifft, wird Block 510 durchgeführt, und der Migrator zeichnet diese Tatsache zur Vorbereitung von Phase zwei in der Remigrationsbitmap auf. In Reaktion auf diese Nachricht weist der Migrator die Laufzeit an, in den Quellendatenträger zu schreiben und das zugehörige Bit in der Laufzeitbitmap im eingeschalteten Zustand zu lassen.
  • In Ausführungsformen, die hierin beschrieben werden, geschieht die physische E/A im Laufzeitausführungskontext, und die Kommunikation mit dem Migrator ist relativ schnell, da sehr wenig Verarbeitung stattfindet.
  • Wenn die Verarbeitung in Block 506 abgeschlossen ist, ist Phase eins beendet und der Migrator ist bereit, zur Verarbeitung von Phase zwei überzugehen. Es ist anzumerken, dass die Migration während der Verarbeitung in Block 506 ohne Datenverlust abgebrochen werden kann.
  • 6 zeigt das SPOOL-Dateisystem von 2 während einer Migration vom physischen Datenträger 206b zum physischen Datenträger 206d während (oder bei Abschluss) von Phase eins gemäß einer Ausführungsform. Wie in 6 gezeigt, wurden einige der Dateien auf dem physischen Datenträger 206b, auf welche über logische E/A 208 zugegriffen wurde, zum physischen Datenträger 206d verschoben, und der Zugriff erfolgt über die Abbildung 204, während andere (z. B. jene, die in Phase zwei erneut migriert werden müssen, jene, die noch nicht migriert wurden) sich noch auf dem physischen Datenträger 206b befinden und der Zugriff über die Zuordnung 212b erfolgt. Zusätzlich wurde eine physische E/A 602 zum physischen Datenträger 206d hinzugefügt, um die physische E/A 210b zum physischen Datenträger 206b zu ersetzen.
  • Vor der Migration ist der Datenträger 2 in der Abbildung 204 dem physischen Datenträger 206d zugeordnet, und der Datenträger 1 in der Abbildung 204 ist dem physischen Datenträger 206b zugeordnet. Während der Migration weist der Datenträger 1 in der Abbildung 204 zwei gleichzeitige Zuordnungen auf – eine zum physischen Datenträger 206b und eine andere zu einer Teilmenge des physischen Datenträgers 206d. Diese Zuordnung wird durch Steuerinformation realisiert, die in der Abbildung für den Datenträger 1 verwaltet wird. Abhängig vom Status der Migration verwendet die Laufzeit-E/A die eine oder andere dieser zwei Zuordnungen, wenn sie physische E/A für eine logische E/A zum Datenträger 1 in der Abbildung 204 ausgibt. Nach der Migration wird die Zuordnung vom Datenträger 1 in der Abbildung 204 zum physischen Datenträger 206b entfernt, und nur die Zuordnung vom Datenträger 1 in der Abbildung 204 zu einer Teilmenge des physischen Datenträgers 206 bleibt übrig. Der Datenträger 1 in der Abbildung 204 ist nun virtualisiert, da er nun keinen eigenen physischen SPOOL-Datenträger 206 mehr hat.
  • 7 zeigt einen Prozessablauf der Phase zwei der Migration gemäß einer Ausführungsform. Die Phase zwei wird zum erneuten Migrieren von Spuren benutzt, die zum Abschluss der Migration benötigt werden. In einer Ausführungsform wird die Remigrationsbitmap zu Wiederherstellungszwecken und auch aus Leistungsgründen in den Zieldatenträger geschrieben. Während der Phase zwei werden Spuren, für welche eine erneute Migration angegeben ist, dementsprechend behandelt, und die Laufzeit wird vom Migrator angewiesen, physische E/A auf einem Zieldatenträger durchzuführen. Sobald die Remigrationsbitmap verarbeitet worden ist, ist die Phase zwei abgeschlossen. In einer Ausführungsform werden Maßnahmen ergriffen, um sicherzustellen, dass die Migration neu gestartet werden kann, wenn der Migratorkontext fehlschlagen sollte.
  • Während der Phase zwei ist der Migrator im Begriff, in Reaktion auf die Laufzeit-Anforderungs-/Antwortnachrichten einen Übergang durchzuführen. Der Übergang weist die Laufzeit an, an Stelle des Quellendatenträgers den Zieldatenträger zu verwenden. Vor Beginn einer E/A zum Ziel müssen alle momentan ausgeführten E/A zum Quellendatensatz abgeschlossen sein, oder es muss mindestens über eine weitere Anforderungs-/Antwortnachricht an den Migrator ermittelt werden, ob die E/A wiederholt werden muss. Um dies zu gewährleisten, wird der Übergangszähler verwendet, der dem Quellendatenträger zugeordnet ist. Beim Start der Migration ist der Übergangszähler auf einen beliebigen Wert gesetzt. Während der Migration erfasst die Laufzeit diesen Zähler und ordnet ihn einer einmaligen E/A zu, bevor sie eine Anforderungs-/Antwortnachricht an den Migrator sendet. Nach Abschluss der E/A vergleicht die Laufzeit den gespeicherten Zähler mit einem aktuellen Zähler, der dem Quellendatenträger zugeordnet ist. Wenn die Werte verschieden sind, muss die E/A mit einer weiteren Anforderungs-/Antwortnachricht an den Migrator wiederholt werden. Im Antwortteil der Nachricht informiert der Migrator die Laufzeit, ob die E/A zum Quellendatenträger oder zum Zieldatenträger durchgeführt werden soll. In Phase eins wurden alle E/A zum Quellendatenträger durchgeführt. In Phase zwei werden E/A umgeleitet, um zum Zieldatenträger durchgeführt zu werden.
  • Wie in Block 702 von 7 gezeigt, sendet der Migrator beim Start von Phase zwei eine Anforderung „Phase zwei starten” an alle Assistenten aus. Die Assistenten inkrementieren den Übergangszähler für jedes System (z. B. um eins). Zudem stellen die Assistenten auch sicher, dass der zugeordnete Wert des Quellendatenträgers eingestellt wird. Der zugeordnete Wert wird auf die Quellenadresse angewandt, wodurch die zugehörige Zieladresse erzeugt wird. Sobald alle Assistenten angegeben haben, dass sie fertig sind, wird Block 704 durchgeführt, und der Migrator schreibt die Remigrationsbitmap in den Zieldatenträger heraus. In einer Ausführungsform wird in der Konfigurationsphase frühzeitig Speicherplatz für diese Bitmap reserviert.
  • Die Härtung der Remigrationsbitmap im Zieldatenträger erlaubt die Wiederherstellung und die Migrator-Übernahme, falls das Migratorsystem ausfallen sollte. Die Remigrationsbitmap kann gelesen werden, und die Phase zwei kann nahtlos fortgesetzt werden. Während die Phase zwei fortschreitet, liest jeder Assistent auf jedem System zusätzlich die Remigrationsbitmap aus dem Zieldatenträger und wendet sie automatisch auf die Speicher-Laufzeitbitmap seines Systems an. Wie zuvor beschrieben, lenkt die Laufzeitbitmap die an den Migrator zu sendenden Anforderungs-/Antwortnachrichten. Sobald Spuren erneut migriert worden sind, besteht für die Laufzeit keine Notwendigkeit mehr, den Migrator zu benachrichtigen. Statt dessen verwendet die E/A den zugeordneten Wert und führt die E/A zum Zieldatenträger durch. Der Akt des Lesens und Anwendens der Remigrationsbitmap auf die Laufzeitbitmap reduziert die Anforderungs-/Antwortkommunikation mit dem Migrator stark.
  • Beim Start von Phase zwei werden keine Anforderungs-/Antwortnachrichten verarbeitet, bis alle Assistenten den Übergangszähler inkrementiert und (z. B. über eine Bestätigungsnachricht) den Abschluss des Inkrementierens bestätigt haben. Dies tritt typischerweise sofort ein, der Algorithmus muss jedoch eine übermäßige Wartezeit berücksichtigen und die Migration bei Bedarf abbrechen. Es ist anzumerken, dass die Migration bis zu diesem Punkt abgebrochen werden kann, da alle E/A zum Quellendatenträger durchgeführt worden sind. Um eine übermäßige Wartezeit zu erkennen, verwendet der Migrator in einer Ausführungsform einen Überwachungssignal-Zeitgeber, um zu erkennen, wenn eine spezifizierte Zeitperiode überschritten wird, und die Migration abzubrechen. Sobald Block 706 in 7 gestartet ist, kann die Migration nicht mehr abgebrochen werden, da die Daten nun sowohl den Quellen- als auch den Zieldatenträger umspannen. Dies bedeutet, dass Wiederherstellungsmechanismen vorhanden sein müssen, um die Migration fortzusetzen, wenn ein Fehler auftritt.
  • In Block 710 ergreift der Migrator andere Maßnahmen und beantwortet Laufzeit-Anforderungs-/Antwortnachrichten auf andere Weise als in Phase eins der Migration. Für (eine) gegebene Spur(en) in einer Laufzeit-Nachricht fragt der Migrator die Remigrationsbitmap ab. Wenn die Spuren erneut migriert werden müssen, wird (werden) die Quellenspur(en) gelesen und in die zugehörige Zielspur geschrieben, bevor auf die Laufzeit-Nachricht geantwortet wird. Der Migrator schaltet auch die zugehörigen Bits in der Remigrationsbitmap ab, und die Bitmap-Änderung wird in den Zieldatenträger geschrieben. Die E/A-Ordnung zwischen erneut migrierten Spuren und der Bitmap ist hier wichtig, um sicherzustellen, dass die Remigrationsbitmap auf dem Zieldatenträger im Wiederherstellungsmodus genutzt werden kann, wenn das Migratorsystem ausfallen sollte. Die Spur-Schreiboperation von der Quelle zum Ziel tritt zuerst auf, gefolgt von der Bitmap-Schreiboperation zum Zieldatenträger. Wenn ein Ausfall auftritt, nachdem die Spur geschrieben wurde, aber bevor die Bitmap geschrieben wurde, wird der Wiederherstellungscode lediglich die Spur erneut migrieren. Dies gewährleistet, dass keine Remigrationsaktion ausgelassen wird.
  • Sobald der Migrator in Block 706 eine Remigration gehandhabt hat, wird Block 708 durchgeführt, und die Antwort an die Laufzeit ist, den Zieldatenträger zu aktualisieren und die zugehörigen Bits in der Laufzeitbitmap auszuschalten. Durch Aktualisieren der Laufzeitbitmap nimmt die Zahl der Laufzeit-Anforderungs-/Antwortnachrichten stetig ab. Selbstverständlich wird dadurch nur der Datenverkehr vom betreffenden System verringert. Um den Laufzeit-Verkehr von allen Systemen zu verringern, lesen die Assistenten periodisch in der Remigrationsbitmap vom Zieldatenträger und wenden sie atomar auf die Laufzeitbitmap an.
  • Wenn die Laufzeit Daten im Quellendatenträger aktualisiert, wird der zugeordnete Wert verwendet, um Quellenadressen auf transparente Weise in Zieldatenträger-Speicherorte umzuwandeln. Mit diesem einzigartigen Mechanismus sind Benutzeranwendungen in der Lage, die bestehende Adressierung während der Migration zu verwenden. Sobald alle Remigrationsaktionen abgewickelt worden sind, ist Phase zwei abgeschlossen.
  • 8 zeigt das SPOOL-Dateisystem von 2 und 6, nachdem eine Migration vom physischen Datenträger 206b zum physischen Datenträger 206d gemäß einer Ausführungsform abgeschlossen wurde. Wie in 8 gezeigt, ist der physische Datenträger 206b aus der SPOOL-Konfiguration entfernt worden. Wie in 8 gezeigt, sind alle Daten, die sich zuvor auf dem physischen Datenträger 206b befanden und auf welche über logische E/A 208 zugegriffen wurde, zum physischen Datenträger 206b verschoben worden, und der Zugriff erfolgt über die Zuordnung 604. Zusätzlich wurde eine physische E/A 802 zum physischen Datenträger 206d hinzugefügt, um die physische E/A 210a zum physischen Datenträger 206b zu ersetzen. Die Zuordnung vom logischen Datenträger zum physischen Datenträger wird in der Steuerinformation für den SPOOL-Datenträger gespeichert. Die logische E/A wird stets auf dem Datenträger 1 in der Abbildung 204 durchgeführt, doch die physische E/A kann abhängig davon, was diese Steuerinformation vorgibt, zu verschiedenen Orten gehen. Auch wenn dies in 8 nicht gezeigt wird, gehen neue Lese- oder Schreiboperationen (logische E/A), die an den logischen Datenträger 1 in der Abbildung 204 gerichtet sind, zum physischen Datenträger 206b.
  • In einer Ausführungsform wird eines der anderen Systeme zum Migrator, wenn das den Migrator ausführende System ausfällt. Diese Realisierung verwendet ein gesichertes Nachrichtenübermittlungssystem, in welchem alle Laufzeit-Anforderungs-/Antwortnachrichten zum Übernahmesystem weitergeleitet werden. Daher muss der Übernahme-Migrator entscheiden, ob die Migration abgebrochen werden oder fortgesetzt und fertiggestellt werden sollte. In einer Ausführungsform stützt sich diese Entscheidung darauf, ob die Remigrationsbitmap in Phase zwei erfolgreich in den Zieldatenträger geschrieben wurde. Wenn ja, liest der Migrator die Remigrationsbitmap erneut und setzt die Migration im Phase-zwei-Modus fort. Andernfalls, wenn die Remigrationsbitmap nicht geschrieben wurde, wird die Migration abgebrochen und auf den Zustand vor der Migration zurückgesetzt. Die Remigrationsbitmap stellt einzigartige Wiederherstellungs- und Leistungsfähigkeiten bereit.
  • Zu den technischen Wirkungen und Vorteilen gehört die Fähigkeit, Daten aus einem bestehenden nativen Dateisystemobjekt in einem SPOOL-Dateisystem in verfügbaren Speicherplatz auf einem anderen Objekt zu kopieren, das im SPOOL-Dateisystem definiert ist, ohne dass laufende Anwendungen davon Kenntnis haben.
  • Die hierin verwendete Terminologie dient lediglich der Beschreibung bestimmter Ausführungsformen und soll die Erfindung in keiner Weise einschränken. Die Singularformen „ein, eine” und „der, die, das”, wie sie hierin verwendet werden, schließen auch die Pluralformen ein, sofern der Kontext nicht eindeutig etwas anderes besagt. Ferner versteht es sich, dass die Ausdrücke „aufweist” und/oder „aufweisend”, wenn sie in dieser Patentschrift verwendet werden, das Vorhandensein der genannten Funktionen, Ganzzahlen, Schritte, Operationen, Elemente und/oder Komponenten angeben, aber das Vorhandensein oder den Zusatz einer oder mehrerer anderer Funktionen, Ganzzahlen, Schritte, Operationen, Elemente, Komponenten und/oder Gruppen davon nicht ausschließen.
  • Die entsprechenden Strukturen, Materialien, Vorgänge und Entsprechungen aller Mittel oder Schritte und Funktionselemente in den folgenden Ansprüchen sollen alle Strukturen, Materialien und Vorgänge zur Durchführung der Funktion in Kombination mit anderen beanspruchten Elementen einschließen, wie spezifisch beansprucht. Die Beschreibung der vorliegenden Erfindung soll der Veranschaulichung und Beschreibung dienen, ohne aber erschöpfend oder auf die Erfindung in der offenbarten Form beschränkt zu sein. Dem Fachmann werden viele Modifikationen und Varianten einfallen, ohne vom Umfang und Geist der Erfindung abzuweichen. Die Ausführungsform wurde gewählt und beschrieben, um die Prinzipien der Erfindung und die praktische Anwendung am besten zu erklären, und um anderen Fachleuten das Verständnis der Erfindung für verschiedene Ausführungsformen mit verschiedenen Modifikationen zu ermöglichen, wie sie für die vorgesehene spezifische Anwendung geeignet sind.
  • Wie der Fachmann erkennen wird, können Aspekte der vorliegenden Erfindung als System, Verfahren oder Computerprogrammprodukt ausgeführt werden. Daher können Aspekte der vorliegenden Erfindung die Form einer kompletten Hardware-Ausführungsform, einer kompletten Software-Ausführungsform (einschließlich Firmware, speicherresidenter Software, Mikrocode usw.) oder einer Ausführungsform annehmen, die Software- und Hardwareaspekte kombiniert, die hierin alle allgemein als „Schaltung”, „Modul” oder „System” bezeichnet werden können. Darüber hinaus können Aspekte der vorliegenden Erfindung die Form eines Computerprogrammprodukts annehmen, das in einem computerlesbaren Medium oder in mehreren computerlesbaren Medien mit einem darauf ausgeführten computerlesbaren Programmcode ausgeführt ist.
  • Jede Kombination eines computerlesbaren Mediums oder mehrerer computerlesbarer Medien kann verwendet werden. Das computerlesbare Medium kann ein computerlesbarer Signalträger oder ein computerlesbares Speichermedium sein. Ein computerlesbares Speichermedium kann zum Beispiel, ohne darauf beschränkt zu sein, ein elektronisches, magnetisches, optisches, elektromagnetisches, Infrarot- oder Halbleiter-System, eine entsprechende Vorrichtung oder Einheit oder jede geeignete Kombination des Vorstehenden sein. Spezifischere Beispiele (eine nicht erschöpfende Liste) des computerlesbaren Speichermediums schließen folgendes ein: eine elektrische Verbindung mit einem Draht oder mehreren Drähten, eine tragbare Computerdiskette, eine Festplatte, einen Arbeitsspeicher (RAM), einen Nur-Lese-Speicher (ROM), einen löschbaren programmierbaren Nur-Lese-Speicher (EPROM oder Flashspeicher), einen Lichtwellenleiter, eine CD-ROM, eine optische Speichereinheit, eine magnetische Speichereinheit oder jede geeignete Kombination des Vorstehenden. Im Kontext dieses Dokuments kann ein computerlesbares Speichermedium jedes materielle Medium sein, das ein Programm zur Verwendung durch oder in Verbindung mit einem Befehlsausführungssystem oder einer entsprechenden Vorrichtung oder Einheit enthalten oder speichern kann.
  • Ein computerlesbares Signalmedium kann ein verbreitetes Datensignal mit einem computerlesbaren Programmcode sein, der zum Beispiel im Basisband oder als Teil einer Trägerwelle darin ausgeführt ist. Solch ein verbreitetes Signal kann verschiedene Formen annehmen, einschließlich, ohne darauf beschränkt zu sein, elektromagnetisch, optisch oder jede geeignete Kombination daraus. Ein computerlesbares Signalmedium kann jedes computerlesbare Medium sein, das kein computerlesbares Speichermedium ist und das ein Programm zur Verwendung durch oder in Verbindung mit einem Befehlsausführungssystem oder einer entsprechenden Vorrichtung oder Einheit übertragen, verbreiten oder transportieren kann.
  • Der Programmcode, der auf einem computerlesbaren Medium ausgeführt ist, kann durch jedes geeignete Medium übertragen werden, einschließlich, ohne darauf beschränkt zu sein, drahtlos, leitungsgebunden, Glasfaserkabel, HF usw., oder jede geeignete Kombination des Vorstehenden.
  • Der Computerprogrammcode zur Durchführung von Operationen für Aspekte der vorliegenden Erfindung kann in jeder Kombination einer oder mehrerer Programmiersprachen geschrieben sein, einschließlich einer objektorientierten Programmiersprache wie Java, Smalltalk, C++ oder dergleichen und konventioneller prozeduraler Programmiersprachen wie die Programmiersprache „C” oder ähnliche Programmiersprachen. Der Programmcode kann gänzlich 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 fernen Computer oder gänzlich auf dem fernen Computer oder Server ausgeführt werden. Im letzteren Szenario kann der ferne Computer durch jede Art von Netzwerk einschließlich eines lokalen Netzes (LAN) oder eines Weitverkehrsnetzes (WAN) mit dem Computer eines Benutzers verbunden sein, oder die Verbindung kann zu einem externen Computer hergestellt werden (zum Beispiel über das Internet durch einen Internet-Dienstanbieter).
  • Aspekte der vorliegenden Erfindung werden im Folgenden Bezug nehmend auf Ablaufpläne und/oder Blockschaltbilder von Verfahren, Vorrichtungen (Systemen) und Computerprogrammprodukten nach Ausführungsformen der Erfindung beschrieben. Es versteht sich, dass jeder Block der Ablaufpläne und/oder Blockschaltbilder und Kombinationen von Blöcken in den Ablaufplänen und/oder Blockschaltbildern durch Computerprogrammbefehle realisiert werden können. Diese Computerprogrammbefehle können einem Prozessor eines Universalcomputers, Spezialcomputers oder einer sonstigen programmierbaren Datenverarbeitungsvorrichtung zur Herstellung einer Maschine so bereitgestellt werden, dass die Befehle, die über den Prozessor des Computers oder der sonstigen programmierbaren Datenverarbeitungsvorrichtung ausgeführt werden, Mittel zur Durchführung der Funktionen/Vorgänge ergeben, die im Block oder in Blöcken der Ablaufpläne und/oder Blockschaltbilder angegeben sind.
  • Diese Computerprogrammbefehle können auch in einem computerlesbaren Medium gespeichert sein, das einen Computer, eine andere programmierbare Datenverarbeitungsvorrichtung oder sonstige Einheiten anweisen kann, auf eine bestimmte Weise zu funktionieren, sodass die Befehle, die im computerlesbaren Medium gespeichert sind, ein Erzeugnis mit Befehlen ergeben, die die Funktionen/Vorgänge realisieren, die die im Block oder in Blöcken der Ablaufpläne und/oder Blockschaltbilder angegeben sind.
  • Die Computerprogrammbefehle können auch in einen Computer, in eine andere programmierbare Datenverarbeitungsvorrichtung oder in sonstige Einheiten geladen werden, um die Durchführung einer Reihe von Arbeitsgängen auf dem Computer, der anderen programmierbaren Vorrichtung oder sonstigen Einheiten zu bewirken, um einen computergestützten Prozess zu ergeben, sodass die Befehle, die auf dem Computer oder der sonstigen programmierbaren Vorrichtung ausgeführt werden, Prozesse zur Ausführung der Funktionen/Vorgänge ergeben, die im Block oder in Blöcken der Ablaufpläne und/oder Blockschaltbilder angegeben sind.
  • Die Ablaufpläne und Blockschaltbilder in den Figuren veranschaulichen die Architektur, Funktionalität und Arbeitsweise möglicher Realisierungen von Systemen, Verfahren und Computerprogrammprodukten gemäß verschiedenen Ausführungsformen der vorliegenden Erfindung. In diesem Zusammenhang kann jeder Block in den Ablaufplänen oder Blockschaltbildern ein Codemodul, ein Codesegment oder einen Codeteil darstellen, der einen oder mehrere ausführbare Befehle zur Realisierung der spezifizierten logischen Funktion(en) aufweist. Es ist auch anzumerken, dass die in den Blöcken genannten Funktionen in einigen alternativen Realisierungen in einer anderen Reihenfolge als der in der Figur genannten auftreten können. Zum Beispiel können zwei Blöcke, die aufeinanderfolgend dargestellt sind, tatsächlich im Wesentlichen gleichzeitig ausgeführt werden, oder die Blöcke können abhängig von der beteiligten Funktionalität manchmal in umgekehrter Reihenfolge ausgeführt werden. Es ist auch anzumerken, dass jeder Block der Blockschaltbilder und/oder Ablaufpläne und Kombinationen von Blöcken in den Blockschaltbildern und/oder Ablaufplänen durch Systeme auf der Grundlage von Spezialhardware, die die spezifizierten Funktionen der Vorgänge durchführen, oder durch Kombinationen von Spezialhardware und Computerbefehlen realisiert werden können.

Claims (15)

  1. Verfahren zum Migrieren eines transparenten Dateisystems zu einem neuen physischen Speicherort, wobei das Verfahren aufweist: Identifizieren eines physischen Quellenspeicherorts in einem Dateisystem, das den gleichzeitigen Zugriff durch mehrere unabhängige Prozesse unterstützt; Identifizieren eines physischen Zielspeicherorts im Dateisystem; Migrieren des Inhalts des physischen Quellenspeicherorts zum physischen Zielspeicherort, wobei das Migrieren aufweist: Nichtzulassen neuer Zuordnungen zum physischen Quellenspeicherort; Kopieren des Inhalts vom physischen Quellenspeicherort zum physischen Zielspeicherort; Empfangen einer Schreibanforderung, Daten in den physischen Quellenspeicherort zu schreiben, wobei das Empfangen vor oder während des Migrierens erfolgt; Bedienen der Schreibanforderung gleichzeitig mit dem Migrieren; und Umleiten, in Reaktion auf das Abschließen des Migrierens, von an den physischen Quellenspeicherort gerichteten Lese- und Schreibanforderungen zum physischen Zielspeicherort, wobei die Anforderungen von den mehreren unabhängigen Prozessen kommen und sowohl logische Ein/Ausgaben (E/A) als auch physische E/A aufweisen.
  2. Verfahren nach Anspruch 1, außerdem aufweisend das Entfernen des physischen Quellenspeicherorts aus dem Dateisystem.
  3. Verfahren nach Anspruch 1, wobei das Dateisystem ein „Simultaneous Peripheral Operations On-Line”(SPOOL)-Dateisystem ist.
  4. Verfahren nach Anspruch 1, wobei das Migrieren und das Umleiten ohne jede Änderung an den mehreren unabhängigen Prozessen durchgeführt werden.
  5. Verfahren nach Anspruch 1, wobei die mehreren unabhängigen Prozesse auf mehreren unterschiedlichen Computersystemen ausgeführt werden.
  6. Verfahren nach Anspruch 1, wobei das Umleiten mit einem virtualisierten Objekt durchgeführt wird.
  7. Verfahren nach Anspruch 1, wobei das Umleiten mit einem logischen Dateisystem durchgeführt wird.
  8. System, aufweisend einen Prozessor, der konfiguriert ist, um ein Verfahren durchzuführen, wobei das Verfahren aufweist: Mittel zum Identifizieren eines physischen Quellenspeicherorts in einem Dateisystem, das den gleichzeitigen Zugriff durch mehrere unabhängige Prozesse unterstützt; Mittel zum Identifizieren eines physischen Zielspeicherorts im Dateisystem; Mittel zum Migrieren des Inhalts des physischen Quellenspeicherorts zum physischen Zielspeicherort, wobei das Migrieren aufweist: Mittel zum Nichtzulassen neuer Zuordnungen zum physischen Quellenspeicherort; Mittel zum Kopieren des Inhalts vom physischen Quellenspeicherort zum physischen Zielspeicherort; Mittel zum Empfangen einer Schreibanforderung, Daten in den physischen Quellenspeicherort zu schreiben, wobei das Empfangen vor oder während des Migrierens erfolgt; Mittel zum Bedienen der Schreibanforderung gleichzeitig mit dem Migrieren; und Mittel zum Umleiten, in Reaktion auf das Abschließen des Migrierens, von an den physischen Quellenspeicherort gerichteten Lese- und Schreibanforderungen zum physischen Zielspeicherort, wobei die Anforderungen von den mehreren unabhängigen Prozessen kommen und sowohl logische Ein-/Ausgaben (E/A) als auch physische E/A aufweisen.
  9. System nach Anspruch 8, wobei das Verfahren außerdem Mittel zum Entfernen des physischen Quellenspeicherorts aus dem Dateisystem aufweist.
  10. System nach Anspruch 8, wobei das Dateisystem ein „Simultaneous Peripheral Operations On-Line”(SPOOL)-Dateisystem ist.
  11. System nach Anspruch 10, wobei die Mittel zum Migrieren und Umleiten ohne jede Änderung an den mehreren unabhängigen Prozessen durchgeführt werden.
  12. System nach Anspruch 8, wobei die mehreren unabhängigen Prozesse auf mehreren unterschiedlichen Computersystemen durchgeführt werden.
  13. System nach Anspruch 8, wobei das Mittel zum Umleiten mit einem virtualisierten Objekt durchgeführt wird.
  14. System nach Anspruch 8, wobei das Mittel zum Umleiten mit einem logischen Dateisystem durchgeführt wird.
  15. Computerprogramm, aufweisend Computerprogrammcode, um alle Schritte des Verfahrens nach einem der Ansprüche 1 bis 7 durchzuführen, wenn er in ein Computersystem geladen und ausgeführt wird.
DE112012002241.6T 2011-05-26 2012-05-24 Migration eines transparenten Dateisystems zu einem neuen physischen Speicherort Pending DE112012002241T5 (de)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US13/116,847 US9003149B2 (en) 2011-05-26 2011-05-26 Transparent file system migration to a new physical location
US13/116,847 2011-05-26
PCT/IB2012/052598 WO2012160533A1 (en) 2011-05-26 2012-05-24 Transparent file system migration to a new physical location

Publications (1)

Publication Number Publication Date
DE112012002241T5 true DE112012002241T5 (de) 2014-04-10

Family

ID=47216682

Family Applications (1)

Application Number Title Priority Date Filing Date
DE112012002241.6T Pending DE112012002241T5 (de) 2011-05-26 2012-05-24 Migration eines transparenten Dateisystems zu einem neuen physischen Speicherort

Country Status (5)

Country Link
US (1) US9003149B2 (de)
CN (1) CN103562879B (de)
DE (1) DE112012002241T5 (de)
GB (1) GB2506045B (de)
WO (1) WO2012160533A1 (de)

Families Citing this family (29)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2011142762A1 (en) * 2010-05-13 2011-11-17 Hewlett-Packard Development Company, L.P. File system migration
US9122689B1 (en) 2013-03-15 2015-09-01 Emc Corporation Recovering performance of a file system post-migration
US9026502B2 (en) * 2013-06-25 2015-05-05 Sap Se Feedback optimized checks for database migration
US9710187B1 (en) * 2013-06-27 2017-07-18 EMC IP Holding Company LLC Managing data relocation in storage systems
US10235053B1 (en) * 2014-03-31 2019-03-19 Emc Corporation Method and system for using host driver for flexible allocation fast-sideways data movements
US9569322B2 (en) 2014-03-31 2017-02-14 Oracle International Corporation Memory migration in presence of live memory traffic
US9959203B2 (en) 2014-06-23 2018-05-01 Google Llc Managing storage devices
US11099763B1 (en) * 2014-06-30 2021-08-24 Pure Storage, Inc. Migrating generational storage to a decentralized agreement protocol paradigm
US9836419B2 (en) 2014-09-15 2017-12-05 Microsoft Technology Licensing, Llc Efficient data movement within file system volumes
US20160154649A1 (en) * 2014-12-01 2016-06-02 Mediatek Inc. Switching methods for context migration and systems thereof
US10255336B2 (en) 2015-05-07 2019-04-09 Datometry, Inc. Method and system for transparent interoperability between applications and data management systems
US10594779B2 (en) 2015-08-27 2020-03-17 Datometry, Inc. Method and system for workload management for data management systems
US10409787B1 (en) * 2015-12-22 2019-09-10 EMC IP Holding Company LLC Database migration
CN105635276B (zh) * 2015-12-28 2019-05-21 国云科技股份有限公司 云平台分布式物理卷对象迁移到非分布式存储的方法
US9936019B2 (en) 2016-03-16 2018-04-03 Google Llc Efficient live-migration of remotely accessed data
JP2018010507A (ja) * 2016-07-14 2018-01-18 富士通株式会社 メモリ管理プログラム、メモリ管理方法及びメモリ管理装置
US11726979B2 (en) 2016-09-13 2023-08-15 Oracle International Corporation Determining a chronological order of transactions executed in relation to an object stored in a storage system
US10860534B2 (en) 2016-10-27 2020-12-08 Oracle International Corporation Executing a conditional command on an object stored in a storage system
US10275177B2 (en) * 2016-10-31 2019-04-30 Oracle International Corporation Data layout schemas for seamless data migration
CN106572163B (zh) * 2016-11-02 2019-08-27 Oppo广东移动通信有限公司 一种数据迁移的方法及终端
US10353640B2 (en) * 2016-12-06 2019-07-16 Dell Products L.P. Seamless data migration in a clustered environment
US10540111B2 (en) 2017-06-28 2020-01-21 International Business Machines Corporation Managing data container instances in a dispersed storage network
CN110413213B (zh) * 2018-04-28 2023-06-27 伊姆西Ip控股有限责任公司 存储卷在存储阵列之间的无缝迁移
US11294869B1 (en) * 2018-12-19 2022-04-05 Datometry, Inc. Expressing complexity of migration to a database candidate
US11204898B1 (en) 2018-12-19 2021-12-21 Datometry, Inc. Reconstructing database sessions from a query log
US11403282B1 (en) 2018-12-20 2022-08-02 Datometry, Inc. Unbatching database queries for migration to a different database
US10489344B1 (en) 2018-12-28 2019-11-26 Nasuni Corporation Cloud-native global file system with direct-to-cloud migration
CN113448740B (zh) * 2021-09-01 2021-11-30 北京鲸鲮信息系统技术有限公司 操作系统的电源管理方法及装置
CN113835902B (zh) * 2021-09-22 2023-12-05 抖音视界有限公司 一种数据处理方法、装置、计算机设备及存储介质

Family Cites Families (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6466328B1 (en) * 1997-01-03 2002-10-15 Ncr Corporation System and method for remote printing in a distributed network environment
US7539828B2 (en) * 2000-08-08 2009-05-26 Faronics Corporation Method and system for automatically preserving persistent storage
JP3757847B2 (ja) 2001-10-24 2006-03-22 ブラザー工業株式会社 スプールファイル加工装置、プログラム及び記録媒体
US7546482B2 (en) * 2002-10-28 2009-06-09 Emc Corporation Method and apparatus for monitoring the storage of data in a computer system
US20060149889A1 (en) * 2003-02-05 2006-07-06 Sridhar Sikha Method and system for backup data access through standard network file sharing protocols
US7415591B1 (en) * 2003-04-23 2008-08-19 Emc Corporation Method and apparatus for migrating data and automatically provisioning a target for the migration
US20050172072A1 (en) 2004-01-30 2005-08-04 Cochran Robert A. Multiple site data replication
US8243317B2 (en) 2004-05-03 2012-08-14 Microsoft Corporation Hierarchical arrangement for spooling job data
US7058731B2 (en) * 2004-08-03 2006-06-06 Hitachi, Ltd. Failover and data migration using data replication
JP4168991B2 (ja) 2004-08-10 2008-10-22 ブラザー工業株式会社 印刷制御装置、印刷システム、プログラム及び印刷制御方法
US7171532B2 (en) 2004-08-30 2007-01-30 Hitachi, Ltd. Method and system for data lifecycle management in an external storage linkage environment
US7577693B2 (en) 2004-09-03 2009-08-18 Infoprint Solutions Company Llc Performing multiple actions on a spool file by assigning a particular action to be performed on each segment of the spool file
US8516211B2 (en) * 2005-06-17 2013-08-20 Flexera Software Llc Secure storage management system and method
JP4640702B2 (ja) 2005-10-07 2011-03-02 富士ゼロックス株式会社 ネットワーク・プリント・システムおよびネットワーク・プリント制御方法
US7685382B2 (en) 2006-12-20 2010-03-23 International Business Machines Corporation Dynamic media format conversion of physical volumes
US20090138530A1 (en) 2007-11-26 2009-05-28 Inventec Corporation Data management method for logical volume manager
US7953945B2 (en) 2008-03-27 2011-05-31 International Business Machines Corporation System and method for providing a backup/restore interface for third party HSM clients
US8261254B2 (en) * 2008-03-31 2012-09-04 Symantec Corporation Dynamic insertion and removal of virtual software sub-layers
JP2010097533A (ja) 2008-10-20 2010-04-30 Hitachi Ltd パーティションで区切られた計算機システムにおけるアプリケーション移動及び消費電力の最適化
US8601213B2 (en) 2008-11-03 2013-12-03 Teradata Us, Inc. System, method, and computer-readable medium for spool cache management
JP2010123055A (ja) 2008-11-21 2010-06-03 Fujitsu Ltd データ移行プログラム,データ移行方法及びデータ移行装置
US20100174878A1 (en) * 2009-01-06 2010-07-08 Crawford Communications Systems and Methods for Monitoring Archive Storage Condition and Preventing the Loss of Archived Data
US8407436B2 (en) * 2009-02-11 2013-03-26 Hitachi, Ltd. Methods and apparatus for migrating thin provisioning volumes between storage systems
US8510280B2 (en) 2009-06-30 2013-08-13 Teradata Us, Inc. System, method, and computer-readable medium for dynamic detection and management of data skew in parallel join operations
JP5124551B2 (ja) 2009-09-30 2013-01-23 株式会社日立製作所 ボリューム割り当てを管理する計算機システム及びボリューム割り当て管理方法

Also Published As

Publication number Publication date
CN103562879A (zh) 2014-02-05
CN103562879B (zh) 2016-09-07
GB2506045B (en) 2016-09-28
GB2506045A (en) 2014-03-19
GB201322043D0 (en) 2014-01-29
WO2012160533A1 (en) 2012-11-29
US20120303913A1 (en) 2012-11-29
US9003149B2 (en) 2015-04-07

Similar Documents

Publication Publication Date Title
DE112012002241T5 (de) Migration eines transparenten Dateisystems zu einem neuen physischen Speicherort
DE112011103026B4 (de) Bedarfsgesteuertes Streaming von Abbildern virtueller Maschinen
DE112010003554B4 (de) Symmetrische Direktmigration von Virtuellen Maschinen
DE112012000693B4 (de) Ausführen einer Vielzahl von Instanzen einer Anwendung
DE102004038649B4 (de) Dauerspeichervorrichtung für Sicherungsprozess-Prüfpunktzustände
DE60224598T2 (de) Umkehr eines Kommunikationspfades zwischen Speichergeräten
DE112012004893B4 (de) Implementieren eines Software-Abbildes auf mehreren Zielen unter Verwendung einer Datenstromtechnik
DE112011104356B4 (de) Aktualisieren von Software-Images auf der Grundlage von Streaming-Technik
DE112014006156B4 (de) Speichersystem und Datenmigrationsverfahren
DE102020120553A1 (de) Virtuell persistente volumes für containerisierte anwendungen
DE102012218269B4 (de) Schnittstelle zur Verwaltung von Datenverschiebung in einem Speichersystem mit thin provisioning
DE60313468T2 (de) Speicherdienste und -systeme
DE112007001988T5 (de) Gemeinsames Nutzen von Informationen durch Gäste in einer Virtuelle-Maschine-Umgebung
US20150227543A1 (en) Method and apparatus for replication of files and file systems using a deduplication key space
DE102016105589A1 (de) Anwenden von Firmware-Updates in einem System mit Null-Stillstandszeit durch wahlweise Abschalten und Einschalten von Hardware unter Verwenden einer Hypervisor-Schicht
DE3786069T2 (de) Virtueller Programmablauf auf einem Mehrfachverarbeitungssystem.
DE112012001660T5 (de) Speicher-Checkpointing in einem System gespiegelter virtueller Maschinen
DE112013004250T5 (de) Systeme, Verfahren und Schnittstellen für adaptive Persistenz
DE112007001171T5 (de) Verfahren für virtualisierten Transaktionsspeicher bei globalem Überlauf
DE102019111068A1 (de) Datenspeichersystem mit LUN-Archivierung in die Cloud unter Verwendung einer Volume-to-Object(Volumen-zu-Objekt)-Umsetzung
DE112017001027T5 (de) Seitenfehlerbehebung
DE112010004573T5 (de) System und verfahren zur optimierten wiedernutzbarmachungsverarbeitung in einem virtuellen bandbibliotheksystem
DE112013000369T5 (de) Verwaltung von Threads innerhalb einer Datenverarbeitungsumgebung
DE102021108572A1 (de) Containerisierte anwendungsmanifeste und virtuelle persistente volumes
DE112006002582T5 (de) Bewirken einer Zusatzspeicherung in einem User-Levelspeicher

Legal Events

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

Free format text: PREVIOUS MAIN CLASS: G06F0012000000

Ipc: G06F0017300000

R082 Change of representative

Representative=s name: SPIES DANNER & PARTNER PATENTANWAELTE PARTNERS, DE

Representative=s name: LIFETECH IP SPIES DANNER & PARTNER PATENTANWAE, DE

Representative=s name: LIFETECH IP SPIES & BEHRNDT PATENTANWAELTE PAR, DE

Representative=s name: SPIES & BEHRNDT PATENTANWAELTE PARTG MBB, DE

R082 Change of representative

Representative=s name: LIFETECH IP SPIES DANNER & PARTNER PATENTANWAE, DE

Representative=s name: LIFETECH IP SPIES & BEHRNDT PATENTANWAELTE PAR, DE

Representative=s name: SPIES & BEHRNDT PATENTANWAELTE PARTG MBB, DE

R082 Change of representative

Representative=s name: LIFETECH IP SPIES & BEHRNDT PATENTANWAELTE PAR, DE

Representative=s name: SPIES & BEHRNDT PATENTANWAELTE PARTG MBB, DE

R082 Change of representative

Representative=s name: SPIES & BEHRNDT PATENTANWAELTE PARTG MBB, DE

R079 Amendment of ipc main class

Free format text: PREVIOUS MAIN CLASS: G06F0017300000

Ipc: G06F0016000000