-
HINTERGRUND DER ERFINDUNG
-
Bereich der Erfindung
-
Die
vorliegende Erfindung betrifft ein Verfahren und ein System zum
Sichern von Daten von einer Mehrzahl von Platten und insbesondere
zum Verschachteln der Daten von den Platten beim Sichern, um dadurch
die Zeit zum Durchführen
einer Sicherung sowie einer Rückspeicherung
zu verkürzen.
-
Verwandte
Technik
-
Das
Sichern von Daten von einer oder mehreren Computerplatten erfolgt
typischerweise zur Wiederherstellung nach einem versehentlichen
Löschen/Überschreiben
durch den Benutzer oder nach einem Ausfall von Plattenhardware.
Bei einem versehentlichen Löschen/Überschreiben
durch den Benutzer werden nur die den zerstörten Daten entsprechenden Daten
von der Sicherungskopie auf die ursprüngliche Platte kopiert. Im Falle
eines Ausfalls der Plattenhardware kann der Benutzer alle Dateien
von der jüngsten
Sicherungskopie auf die ursprüngliche
Platte zurückspeichern.
-
In
den meisten Computersystemen ist das Sicherungsgerät ein Bandlaufwerk,
das große
Datenmengen zu relativ niedrigen Kosten pro gespeichertem Byte aufnehmen
kann. Da jedoch ein Bandlaufwerk grundsätzlich ein sequentielles Zugangsmedium
ist, dauert ein Direktzugriff oder eine Rückwärts-/Vorwärtseinstellung wesentlich länger bei
einem Bandlaufwerk als bei einem Plattenlaufwerk. Daher besteht
die effizienteste Art und Weise, ein Bandlaufwerk zu benutzen, darin,
die Daten zu „streamen", d.h. sicherzustellen,
dass das Bandlaufwerk nicht zu stoppen braucht, bis der Sicherungs- oder Rückspeichervorgang
zu Ende ist.
-
Herkömmliche
Sicherungsmethoden ermöglichen
im Allgemeinen entweder eine Datei-für-Datei-Sicherung oder eine
Image-Sicherung. Bei einer Datei-für-Datei-Sicherung kopiert das Sicherungsprogramm
jeweils eine Datei von der Platte auf das Band. Speziell, das Programm
setzt alle Daten für
jede Datei, unabhängig
von den tatsächlichen
Positionen auf der Platte, in einen einzelnen sequentiellen Block,
der auf dem Band gespeichert ist. Somit kann eine Datei-für-Datei-Sicherung
eine inkrementale Sicherung bereitstellen (in der nur diejenigen
Dateien auf Band geschrieben werden, die seit der letzten Sicherung
geändert
wurden), ist aber für
eine volle Sicherung äußerst zeitaufwändig.
-
Bei
einer Image-Sicherung wird das Datenbild sequentiell von der Platte
gelesen und auf das Band geschrieben. So kann bei Systemen des Standes
der Technik, in denen das Plattenlaufwerk erheblich schneller ist
als das Bandlaufwerk, eine Image-Sicherung das Streaming des Bandlaufwerks
beibehalten. Moderne Technologie hat jedoch die Geschwindigkeit
des Bandlaufwerks erheblich verbessert. In der Tat ist bei Systemen
des Standes der Technik die Geschwindigkeit des Bandlaufwerks tatsächlich genauso
hoch oder noch höher
als die Geschwindigkeit des Plattenlaufwerks. Bei diesen Systemen
ist kein Streamen des Bandlaufwerks möglich und daher beginnt die
Leistung von Sicherung und Rückspeicherung
abzunehmen.
-
Daher
besteht Bedarf an Sicherungs- und Rückspeicheroperationen, die
die technologischen Verbesserungen der Bandlaufwerksgeschwindigkeit
nutzen können.
-
Die
EP 0 259 912 A (Barlett)
lehrt eine Sicherungseinrichtung, mit der Dateien zum Sichern auf
einem Massenspeichergerät
ausgewählt
werden können.
Die zu sichernden Dateien werden in verschachtelte Blöcke auf
dem Massenspeichergerät
unterteilt. Bedeutsamerweise ermittelt der Band-Handler während einer
Sicherungsoperation, ob die Gesamtgröße der vorübergehend auf dem Plattengerät gespeicherten
Dateiblöcke
zum Streamen des Bandgerätes
ausreicht. Wenn ja, leitet der Band-Handler eine Übertragung
der entsprechenden Dateiblöcke
von dem Plattengerät
auf das Bandgerät
ein. Wenn nicht, dann tut der Band-Handler nichts.
-
Somit
besteht Bedarf an einer effizienten Verschachtelung von Daten von
einer Mehrzahl von primären Datenquellen
auf einer sekundären
Datenquelle.
-
ZUSAMMENFASSUNG DER ERFINDUNG
-
Gemäß der vorliegenden
Erfindung werden die Daten von einer Mehrzahl von primären Datenquellen verschachtelt
und während
einer Sicherungsoperation in einer sekundären Datenquelle erfasst. Somit
wird gemäß einem
Aspekt ein Verfahren zum Sichern von Daten in einem Computersystem
von einer Mehrzahl von primären
Datenquellen auf einer sekundären
Datenquelle bereitgestellt, wobei das Verfahren die folgenden Schritte
umfasst: Verschachteln von Daten von einer Mehrzahl von primären Datenquellen
in der sekundären Datenquelle,
wobei das Verschachteln das Schreiben von Daten von wenigstens einem
Datenblock einer primären
Datenquelle auf die sekundäre
Datenquelle beinhaltet, bis eine Menge von erfassten Bits für diese
primäre
Datenquelle wenigstens gleich einer größten Menge von Daten ist, die
zuvor von einer beliebigen primären
Datenquelle erfasst wurden.
-
Gemäß einem
zweiten Aspekt wird ein Verfahren zum Zurückspeichern von Daten in einem
Computersystem von einem Bandlaufwerk auf eine Mehrzahl von Plattenlaufwerken
bereitgestellt, wobei das Verfahren die folgenden Schritte umfasst:
Lesen von verschachtelten Daten von dem Bandlaufwerk, wobei die
verschachtelten Daten auf der Basis von einem der Folgenden organisiert
sind: einer Menge von erfassten Bits für ein Plattenlaufwerk, die
wenigstens gleich einer größten Menge
von Daten ist, die zuvor von einem beliebigen Plattenlaufwerk in
dem Computersystem erfasst wurden, und einem Prozentanteil der Bandbreite
für jedes
Plattenlaufwerk während
eines Transfers, wobei der Prozentanteil der Bandbreite als eine
Gesamtmenge von Daten von einem Plattenlaufwerk dividiert durch
eine Gesamtmenge von Daten von allen Plattenlaufwerken in dem Computersystem
definiert ist; und parallelem Schreiben der verschachtelten Daten
auf die Mehrzahl von Plattenlaufwerken.
-
Ein
dritter Aspekt stellt eine Sicherungsdatei bereit, die Folgendes
aufweist: erste Bits von einer primären Datenquelle; und zweite
Bits von wenigstens einer weiteren primären Datenquelle, wobei die
ersten und die zweiten benutzten Bits in der Sicherungsdatei auf
der Basis von einem der Folgenden verschachtelt sind: einer Menge
von erfassten Bits für
eine primäre
Datenquelle, die wenigstens gleich einer größten Menge von Daten ist, die
zuvor von einer beliebigen primären
Datenquelle erfasst wurden, und einem Prozentanteil der Bandbreite
für jede
primäre
Datenquelle während
eines Transfers, wobei der Prozentanteil der Bandbreite als eine
Gesamtmenge von Daten von einer primären Datenquelle dividiert durch
eine Gesamtmenge von Daten von allen primären Datenquellen definiert
ist.
-
In
einem vierten Aspekt wird ein Sicherungssystem in einem Computer
bereitgestellt, wobei das System Folgendes umfasst: eine Mehrzahl
von primären
Datenquellen; eine sekundäre
Datenquelle; und Mittel zum Verschachteln von Daten der primären Datenquellen
in der sekundären
Datenquelle auf der Basis von einem der Folgenden: einer Menge von
erfassten Bits für
eine primäre
Datenquelle, die wenigstens gleich einer größten Menge von Daten ist, die
zuvor von einer beliebigen primären
Datenquelle erfasst wurden, und einem Prozentanteil der Bandbreite
für jede
primäre
Datenquelle während
eines Transfers, wobei der Prozentanteil der Bandbreite als eine
Gesamtmenge von Daten von einer primären Datenquelle dividiert durch
eine Gesamtmenge von Daten von allen primären Datenquellen definiert
ist.
-
Das
Verschachteln von Daten ermöglicht
eine Überlappung
der von der Mehrzahl von primären
Datenquellen ausgeführten
Lese-/Schreiboperationen, wodurch die Leistung des Sicherns sowie
des Zurückspeicherns
optimiert wird. Typische primäre Datenquellen
könnten
Plattenlaufwerke oder Plattenarrays beinhalten. Eine typische sekundäre Datenquelle
könnte
ein Bandlaufwerk beinhalten.
-
Die
vorliegende Erfindung erkennt die Vorteile von im Wesentlichen gleichen
Datentransfers, wenn die meisten Plattenlaufwerke im Wesentlichen
dieselbe Menge an benutzten Bits haben. Speziell, im Wesentlichen
gleiche Datentransfers ermöglichen
Multitasking sowohl beim Sichern als auch beim Zurückspeichern, wodurch
die Leistung dieser Operationen verbessert wird. So kann beispielsweise
die Sicherungsleistung optimiert werden, wenn Daten von einer Mehrzahl
von Plattenlaufwerken parallel auf das Bandlaufwerk übertragen
werden. Auf ähnliche
Weise kann die Rückspeicherleistung
optimiert werden, wenn Daten vom Bandlaufwerk parallel auf die Mehrzahl
von Plattenlaufwerken übertragen
werden. Um diese Optimierung in einer Ausgestaltung bereitzustellen,
wird die maximale Größe eines
zu analysierenden Datenblocks von jedem Plattenlaufwerk während eines
Sicherungstransfers ermittelt. Die benutzten Bits von einem oder
mehreren Datenblöcken
eines Plattenlaufwerks werden gelesen und auf das Bandlaufwerk geschrieben,
bis die Menge an erfassten benutzten Bits für dieses Plattenlaufwerk gleich
oder größer ist
als die größte Menge
von benutzten Datenbits, die von einem beliebigen Plattenlaufwerk
vor diesem Zeitpunkt erfasst wurden. Die Plattenlaufwerke können in
einer zyklischen Sequenz gelesen werden. Wenn alle benutzten Bits
von einem Plattenlaufwerk auf das Bandlaufwerk geschrieben sind,
dann wird dieses Plattenlaufwerk aus der Sequenz herausgenommen. Auf
die übrigen
Plattenlaufwerke wird in einer modifizierten Sequenz zugegriffen.
Diese Datenverschachtelung wird so lange fortgesetzt, bis alle benutzten
Bits von allen Plattenlaufwerken auf das Bandlaufwerk geschrieben
sind.
-
Bei
einer Rückspeicheroperation
werden die verschachtelten Daten von dem Bandlaufwerk gelesen und
auf die Mehrzahl von Plattenlaufwerken geschrieben. In einer Ausgestaltung
beinhalten die verschachtelten Daten Informationen über die
ursprüngliche
Konfiguration der Daten, so dass die ursprünglichen Daten (d.h. sowohl
benutzte als auch unbenutzte Bits) für jedes Plattenlaufwerk rekonstruiert
werden können.
-
In
einer anderen Ausgestaltung wird eine bestimmte Anzahl von Bits,
die von jedem Plattenlaufwerk während
eines Sicherungstransfers gelesen werden soll, ermittelt. Diese
Bits könnten
nur benutzte Bits beinhalten oder könnten sowohl benutzte als auch
unbenutzte Bits beinhalten. Die Plattenlaufwerke werden typischerweise
in einer zyklischen Sequenz gelesen. Wenn alle Bits von einem Plattenlaufwerk
auf das Bandlaufwerk geschrieben sind, dann wird dieses Plattenlaufwerk
aus der Sequenz herausgenommen. Auf die übrigen Plattenlaufwerke wird
in einer modifizierten Sequenz zugegriffen. Diese Datenverschachtelung
wird so lange fortgesetzt, bis alle Bits von allen Plattenlaufwerken
auf das Bandlaufwerk geschrieben sind.
-
Die
vorliegende Erfindung erkennt auch die Vorteile eines Datentransfers
auf der Basis eines Prozentanteils der Bandbreite, wenn mehrere
Plattenlaufwerke wesentlich weniger als die Menge von benutzten
Bits anderer Plattenlaufwerke haben. In dieser Ausgestaltung kann
ein Prozentanteil der Bandbreite in Verbindung mit jedem Plattenlaufwerk
durch Dividieren der Menge an benutzten Bits von jedem Plattenlaufwerk
durch die Gesamtzahl der benutzten Bits von allen Plattenlaufwerken
erzeugt werden. Die Menge an benutzten Bits, die von jedem Bandlaufwerk
gelesen und während
eines Transfers auf das Bandlaufwerk geschrieben werden, basiert
auf dem Prozentanteil der Bandbreite. Die Plattenlaufwerke können in
einer zyklischen Sequenz gelesen werden. Wenn alle benutzten Bits
von einem Plattenlaufwerk auf das Bandlaufwerk geschrieben sind,
dann wird das Plattenlaufwerk aus der Sequenz herausgenommen. Auf
die übrigen
Plattenlaufwerke wird in einer modifizierten Sequenz zugegriffen.
Diese Datenverschachtelung wird so lange fortgesetzt, bis alle benutzten Bits
von allen Plattenlaufwerken auf das Bandlaufwerk geschrieben sind.
Bei dieser gewichteten verschachtelten Ausgestaltung ist jedes Plattenlaufwerk
an einem Transfer direkt proportional zur Gesamtzahl seiner benutzten
Bits beteiligt. Auf diese Weise erhalten Plattenlaufwerke mit vergleichsweise
großen
Informationsmengen mehr Datenbandbreite und erhalten somit mehr
Gelegenheit, mit voller Geschwindigkeit zu laufen. Daher kann diese
Ausgestaltung die Leistung der Plattenlaufwerke mit vergleichsweise
großen
Informationsmengen verbessern.
-
KURZBESCHREIBUNG DER ZEICHNUNGEN
-
1 illustriert
eine vereinfachte Sicherungs-/Rückspeicherkonfiguration
gemäß der vorliegenden
Erfindung;
-
2A ist
ein Fließschema,
das ein Sicherungsverfahren der vorliegenden Erfindung zeigt;
-
2B ist
ein Fließschema,
das ein Rückspeicherverfahren
der vorliegenden Erfindung zeigt;
-
3 illustriert
ein vereinfachtes Computersystem, das die vorliegende Erfindung
implementieren kann;
-
4 ist
ein Fließschema,
das ein weiteres Sicherungsverfahren der vorliegenden Erfindung
zeigt;
-
5 ist
ein Fließschema,
das noch ein anderes Sicherungsverfahren der vorliegenden Erfindung zeigt.
-
AUSFÜHRLICHE BESCHREIBUNG DER ZEICHNUNGEN
-
1 illustriert
eine vereinfachte Sicherungs-/Rückspeicherkonfiguration
100 gemäß der vorliegenden
Erfindung. In der Konfiguration 100 sendet eine Mehrzahl
von Plattenlaufwerken 101A, 101B und 101C bei
der Sicherung Daten zu einem Bandlaufwerk 102. Gemäß der vorliegenden
Erfindung sendet jedes Plattenlaufwerk 101 seine Daten
in einer zyklischen Sequenz zum Bandlaufwerk 102. Speziell,
während
jedes Transfers 103 sendet das Plattenlaufwerk 101A seine
Sicherungsdaten zuerst, das Plattenlaufwerk 101B seine
Sicherungsdaten als Zweites und das Plattenlaufwerk 101C seine
Sicherungsdaten als Drittes. Man beachte, dass zwar nur drei Plattenlaufwerke 101 dargestellt
sind, dass andere Ausgestaltungen der Erfindung aber jede beliebige
Anzahl von Plattenlaufwerken beinhalten können.
-
In
einer Sicherungsoperation ist die Anzahl der Transfers 103 von
der übertragenen
Datenmenge und der Gesamtmenge an Daten abhängig, die in jedem Plattenlaufwerk 101 gespeichert
sind. So kann beispielsweise in einer Ausgestaltung jeder Transfer
maximal 48 MB Daten von jedem Plattenlaufwerk 101 beinhalten. Speziell,
während
eines ersten Transfers 103A analysiert die vorliegende
Erfindung die ersten 48 MB Daten sequentiell von den Plattenlaufwerken 101A, 101B und 101C.
Diese Datenanalysesequenz wird auch in einem zweiten Transfer 103B sowie
in einem dritten Transfer 103C benutzt.
-
Wie
der Fachperson hinlänglich
bekannt sein wird, kann ein Datenblock in einem Plattenlaufwerk
sowohl benutzte als auch unbenutzte Bits beinhalten. Gemäß einer
Ausgestaltung der vorliegenden Erfindung werden beim Transfer 103A nur
benutzte Bits tatsächlich
auf das Bandlaufwerk 102 kopiert. In dieser Ausgestaltung
kann die vorliegende Erfindung die Informationen über die
Positionen dieser benutzten Bits erfassen und diese Information
zusammen mit den benutzten Bits im Bandlaufwerk 102 für eine nachfolgende
Rückspeicheroperation
(nachfolgend ausführlich
erläutert)
speichern. Daher kann diese Ausgestaltung der vorliegenden Erfindung,
da nur benutzte Bits bei einer Sicherung oder Rückspeicherung kopiert werden,
wesentlich schneller sein als herkömmliche Sicherungssysteme auf
Image-Basis.
-
2A ist
ein Fließschema,
das ein Verfahren 200 zum Sichern von Daten gemäß einer
Ausgestaltung der vorliegenden Erfindung zeigt. Zum Verdeutlichen
der darin beschriebenen Schritte zeigt Tabelle 1 illustrative Mengen
von benutzten Bits (in Megabyte) für drei Datenblöcke.
-
-
In
Schritt 201 wird die Menge an benutzten Bits von jedem
Plattenlaufwerk bestimmt. In dem Beispiel in Tabelle 1 hat das Plattenlaufwerk 101A insgesamt
27 MB an benutzten Bits, Plattenlaufwerk 101B hat insgesamt
75 MB an benutzten Bits und Plattenlaufwerk 101C hat insgesamt
90 MB an benutzten Bits. Diese Informationen können beim Ermitteln der maximalen
Größe des zu
analysierenden Datenblocks von jedem Plattenlaufwerk in Schritt 202 benutzt
werden.
-
Speziell,
ein Vorteil der vorliegenden Erfindung ist, dass mehrere Plattenlaufwerke
Lese-/Schreiboperationen parallel durchführen können, wodurch wertvolle Systemzeit
sowohl bei Sicherungs- als auch bei Rückspeicheroperationen gespart
wird. Es ist klar, dass, wenn die maximale Datenblockgröße gleich
oder größer ist
als die benutzten Bits des größten Plattenlaufwerks,
nur eine einzelne herkömmliche
Sicherungssequenz für
die Mehrzahl von Plattenlaufwerken durchgeführt würde. Somit ist gemäß einer
Ausgestaltung der vorliegenden Erfindung die maximale Datenblockgröße geringer
als die benutzten Bits in Verbindung mit einer Mehrzahl von Plattenlaufwerken.
Man beachte, dass das Dateisystem in typischen Ausgestaltungen die
Datenblockgröße auf der
Basis davon ermittelt, wie die Zuordnung von Daten auf den Plattenlaufwerken
erfolgt. Man beachte, dass das Dateisystem auch die benutzten Bits
jedes Datenblocks als Teil von Schritt 203 (siehe unten)
identifiziert. Zu Illustrationszwecken sei angenommen, dass die
maximale Datenblockgröße 48 MB
ist.
-
Unter
Anwendung der Informationen in Tabelle 1 für Schritt 203 liest
die vorliegende Erfindung in einem ersten Datentransfer sequentiell
2 MB an benutzten Bits vom Plattenlaufwerk 101A, 10 MB
vom Plattenlaufwerk 101B und 20 MB vom Plattenlaufwerk 101C,
und schreibt diese benutzten Bits auf das Bandlaufwerk. Man beachte,
dass dieser erste Datentransfer dazu führte, dass weniger als die
Gesamtzahl der benutzten Bits auf das Bandlaufwerk geschrieben wurden.
Darüber
hinaus wurden in dem ersten Datentransfer erheblich mehr Daten von
Plattenlaufwerken 101B und 101C geschrieben als
vom Plattenlaufwerk 101A.
-
Die
vorliegende Erfindung erkennt die Vorteile von im Wesentlichen gleichen
Datentransfers, wenn die meisten Plattenlaufwerke im Wesentlichen
dieselbe Menge an benutzten Bits haben. Speziell, im Wesentlichen
gleiche Datentransfers erlauben Multitasking sowohl beim Sichern
als auch beim Zurückspeichern,
wodurch die Leistung dieser Operationen verbessert wird. So kann
beispielsweise die Sicherungsleistung optimiert werden, wenn Daten
von einer Mehrzahl von Plattenlaufwerken parallel auf das Bandlaufwerk übertragen werden.
Auf ähnliche
Weise kann die Rückspeicherleistung
optimiert werden, wenn Daten vom Bandlaufwerk parallel auf die Mehrzahl
von Plattenlaufwerken übertragen
werden.
-
Man
beachte, dass eine vereinfachte Lese-/Schreiboperation (die für einen
Transfer bei einer Sicherungs- oder Rückspeicheroperation erfolgt)
einen Setup-Schritt, einen Formatierungsschritt und einen Lese-/Schreibschritt
beinhaltet. Im Setup-Schritt wird das Plattenlaufwerk zum Senden
oder Empfangen von Daten vorbereitet. Im Formatierungsschritt werden
die benutzten Bits in Verbindung mit jedem Plattenlaufwerk und die
Positionen dieser benutzten Bits auf jedem Plattenlaufwerk identifiziert.
In einem Lese-/Schreibschritt werden die Daten auf das Bandlaufwerk
(bei der Sicherungsoperation) oder auf die Plattenlaufwerke (bei
der Rückspeicheroperation)
kopiert. Somit bezieht sich der Begriff der „parallelen" Ausführung von
Lese-/Schreiboperationen
auf die Überlappung
jedes von einem Plattenlaufwerk durchgeführten Schritts mit einem Schritt, der
von wenigstens einem anderen Plattenlaufwerk durchgeführt wird.
Der Versuch, im Wesentlichen gleiche Datentransfers beim Sichern
zu erzielen, wie er von der vorliegenden Erfindung ermöglicht wird,
erhöht
die Wahrscheinlichkeit, dass es zu parallelen Lese- und/oder Schreibvorgängen kommt,
wodurch die Gesamtsystemleistung optimiert wird.
-
Daher
kompensiert die vorliegende Erfindung in dieser Ausgestaltung für ungleiche
Datentransfers durch Lesen der benutzten Bits von einem oder mehreren
Datenblöcken
auf einem Plattenlaufwerk und Schreiben dieser Bits auf das Bandlaufwerk
bei jedem Transfer. So wird beispielsweise beim zweiten Transfer
von Daten eine Menge von benutzten Bits vom Plattenlaufwerk 101A auf
wenigstens die gleiche Menge der erfassten benutzten Bits von Plattenlaufwerk 101C gelesen
(d.h. das Plattenlaufwerk mit den meisten erfassten benutzten Bits
zu diesem Zeitpunkt). Wie jedoch aus Tabelle 1 ersichtlich ist,
hat das Plattenlaufwerk 101A nur 10 MB an benutzten Bits
in seinem zweiten Datenblock von 48 MB. Daher werden die benutzten
Bits des dritten Datenblocks von Plattenlaufwerk 101A analysiert.
In seinem dritten Datenblock hat das Plattenlaufwerk 101A zusätzliche
15 MB an benutzten Bits.
-
In
einer Ausgestaltung werden alle benutzten Bits in einem Block in
einem einzigen Transfer geschrieben. Daher werden während des
zweiten Transfers 25 MB vom Plattenlaufwerk 101A (sowohl
2. als auch 3. Datenblock) auf das Bandlaufwerk geschrieben. An
dieser Stelle hat das Plattenlaufwerk 101A die meisten
erfassten Bits (27 MB) von jedem beliebigen Plattenlaufwerk. Daher
würde das
Bandlaufwerk 101B, das derzeit nur 10 MB an erfassten benutzten
Bits hat, optimal wenigstens die Menge an benutzten Bits bereitstellen,
die für
das Plattenlaufwerk 101A erfasst wurden. Im zweiten Datenblock
hat das Plattenlaufwerk 101B 20 MB an benutzten Bits, was,
wenn sie mit den im ersten Transfer (30 MB) erfassten 10 MB kombiniert
werden, eine größere Menge
bedeutet als die gesamten erfassten Bits des Plattenlaufwerks 101A.
Daher werden die 20 MB an benutzten Bits vom Plattenlaufwerk 101B gelesen
und während
des zweiten Transfers auf das Bandlaufwerk geschrieben.
-
An
dieser Stelle hat das Plattenlaufwerk 101C weniger erfasste
Bits (20 MB) als das Plattenlaufwerk 101B (30 MB). In seinem
zweiten Datenblock hat das Plattenlaufwerk 101C jedoch
40 MB an benutzten Bits, die, wenn sie mit den im ersten Transfer
(60 MB) erfassten 20 MB kombiniert werden, mehr sind als die erfassten
Bits vom Plattenlaufwerk 101B. Daher werden diese 40 MB
an benutzten Bits vom Plattenlaufwerk 101C gelesen und
während
des zweiten Transfers auf das Bandlaufwerk geschrieben.
-
Während des
dritten Transfers verschachtelt die vorliegende Erfindung, weil
alle benutzten Datenbits vom Plattenlaufwerk 101A erfasst
sind, Daten von eventuellen übrigen
Plattenlaufwerken, in diesem Beispiel den Plattenlaufwerken 101B und 101C.
Daher werden 45 MB vom Plattenlaufwerk 101B gelesen und
auf das Bandlaufwerk geschrieben, dann werden 30 MB vom Plattenlaufwerk 101C gelesen
und auf das Bandlaufwerk geschrieben. Da alle benutzten Bits von
allen Plattenlaufwerken jetzt auf das Bandlaufwerk geschrieben sind, endet
die Sicherungsoperation in Schritt 204.
-
2B ist
ein Fließschema,
das ein Rückspeicherverfahren 210 gemäß der vorliegenden
Erfindung zeigt. In Schritt 211 werden die Positionen der
Daten in einem Transferblock gelesen. Man beachte, dass diese Positionen
angeben, wie viele der Daten auf bestimmte Plattenlaufwerke kopiert
werden müssen.
In anderen Ausgestaltungen beinhalten diese Positionen die ursprüngliche
Konfiguration der Daten von diesem Plattenlaufwerk (d.h. einschließlich benutzter
und unbenutzter Bits). In Schritt 212 werden die Daten
in Verbindung mit dem Transferblock auf das/die bezeichnete(n) Plattenlaufwerke)
geschrieben. Wenn in Schritt 213 nicht alle Daten zurückgespeichert
wurden, dann wird in Schritt 211 der nächste Transferblock analysiert.
Andererseits, wenn in Schritt 213 alle Daten zurückgespeichert
wurden, dann wird die Rückspeicheroperation
in Schritt 214 beendet.
-
Mit
Bezug auf 3, ein Computersystem 300,
das die vorliegende Erfindung implementieren kann, beinhaltet ein
Betriebssystem 301 mit einer Softwareplattform, auf der
Sicherungsbefehle/Dienstprogramme 302 laufen können. Speziell,
zum Anweisen des Betriebssystems 301 während der Sicherungs- oder
Rückspeicheroperationen,
die Plattenlaufwerke 101A-101C und das Band 102 beinhalten,
kann ein Benutzer einen Satz von Betriebssystembefehlen geben oder
kann von der Zessionarin der vorliegenden Erfindung eine Lizenz
für ein
proprietäres
Sicherungsdienstprogramm erwerben (dessen Funktionalität hierin
ausführlich
beschrieben wird). Man beachte, dass die Sicherungsbefehle/Dienstprogramme 302 an
den Anfang eines bestimmten Betriebssystems geschrieben werden müssen. Illustrative
Betriebssysteme beinhalten, sind aber nicht begrenzt auf, DOS, OS/2,
Windows NT und Unix (einschließlich
Linux). In einer Ausgestaltung kann ein System gemäß der vorliegenden
Erfindung eine Mehrzahl von Personal Computern jeweils mit Intel-Mikroprozessoren
beinhalten, auf denen ein Unix OS läuft. Dieses System kann mit
lokal angeschlossenen Bandlaufwerken konfiguriert werden und kann
bis zu 500 GB Plattenspeicherkapazität aufweisen.
-
Wie
oben beschrieben, liest eine Ausgestaltung der Erfindung alle benutzten
Bits von einem oder mehreren Datenblöcken und schreibt diese Bits
während
eines Transfers auf ein Bandlaufwerk. In einer anderen Ausgestaltung
der Erfindung, wie in 4 dargestellt ist, wird in jedem
Transfer eine vorbestimmte Zahl von benutzten Bits gelesen/geschrieben.
So ermittelt das System beispielsweise in Schritt 401 von
Verfahren 400 die Menge an benutzten Bits von jedem Plattenlaufwerk.
Die Kenntnis der Menge an benutzten Bits in jedem Plattenlaufwerk,
wie in Verfahren 300 (3), erleichtert
die Ermittlung (in Schritt 402) der Anzahl von benutzten
Bits, die während
eines Transfers von jedem Plattenlaufwerk zu schreiben sind. In
einer Ausgestaltung können
die benutzten Bits für
jeden Transfer anhand des Dateisystems auf der Basis davon ermittelt
werden, wie die Zuordnung von Daten auf den Plattenlaufwerken erfolgt.
-
Zu
Illustrationszwecken sei angenommen, dass die Plattenlaufwerke 101A-101C jeweils
27 MB, 75 MB und 90 MB an benutzten Bits haben. In dieser Ausgestaltung
sei angenommen, dass benutzte Bitblöcke von 10 MB in Schritt 403 von
jedem Plattenlaufwerk gelesen und auf verschachtelte Weise auf das
Bandlaufwerk geschrieben werden. In dieser Ausgestaltung würden neun
Transfers stattfinden, bis alle benutzten Bits von Daten auf das
Bandlaufwerk geschrieben sind (Schritt 404). Man beachte,
dass das Plattenlaufwerk 101A während des dritten Transfers
nur 7 MG an benutzten Bits schreiben könnte. Ebenso könnte das
Plattenlaufwerk 101B während
des achten Transfers nur 5 MB an benutzten Bits schreiben.
-
Bedeutsamerweise
ergibt die vorliegende Erfindung erhebliche Zeiteinsparungen aufgrund
kürzliche Fortschritte
in der Bandlaufwerkstechnologie. In der Vergangenheit waren die
Transferraten von Plattenlaufwerken immer höher als die von Bandlaufwerken.
In der Tat waren die Transferraten von einigen Plattenlaufwerken
bis zu zehn Mal schneller als die Transferrate seines vergleichbaren
Bandlaufwerks. In der modernsten Technologie übersteigen jedoch die Transferraten
von Bandlaufwerken die von Plattenlaufwerken. So erlaubt die vorliegende
Erfindung durch Verschachteln der Daten von mehreren Plattenlaufwerken
im Bandlaufwerk parallele Lese-/Schreiboperationen.
Dieses Multitasking erlaubt ein Bandlaufwerksstreaming sowie eine
drastische Reduzierung der Sicherungs- und Rückspeicherzeit.
-
Gemäß einer
weiteren Ausgestaltung der vorliegenden Erfindung ermittelt die
Menge an benutzten Daten von jedem Plattenlaufwerk die Datenbandbreite,
die jedem Plattenlaufwerk beim Sichern und Zurückspeichern gegeben wird. Diese
Ausgestaltung ist besonders vorteilhaft, wenn mehrere Plattenlaufwerke
erheblich weniger benutzte Daten haben als andere Plattenlaufwerke.
In dieser Ausgestaltung wird nicht versucht, gleiche Datenmengen
von den Plattenlaufwerken zu übertragen,
sondern die Menge an von jedem Plattenlaufwerk übertragenen benutzten Daten
basiert auf der Gesamtmenge an benutzten Daten, die auf diesem Plattenlaufwerk
gespeichert sind. Speziell, j edes Plattenlaufwerk mit einer vergleichsweise
großen
Menge an benutzten Daten erhält
eine größere Datenbandbreite
sowohl beim Sichern als auch beim Zurückspeichern als ein Plattenlaufwerk
mit einer vergleichsweise geringen Menge an benutzten Daten. Auf
diese Weise gewährleistet
die vorliegende Erfindung den effizientesten Datentransfer für ein beliebiges
Plattenlaufwerk mit einer vergleichsweise großen Menge an benutzten Daten.
-
Mit
Bezug auf 5, dieses gewichtete Verfahren 500 beginnt
in Schritt 501 mit dem Ermitteln der Menge an benutzten
Bits von jedem Plattenlaufwerk. Schritt 501 beinhaltet
auch das Ermitteln der Menge an benutzten Daten für jeden
Transfer. Die Menge an benutzten Daten für jeden Transfer wird anhand
des Dateisystems wie oben mit Bezug auf 4 beschrieben
ermittelt. In Schritt 502 wird ein Prozentanteil der mit
jedem Plattenlaufwerk assozierten Datenbandbreite durch Dividieren
der Menge an benutzten Bits von jedem Plattenlaufwerk durch die
Gesamtzahl an benutzten Bits von allen Plattenlaufwerken erzeugt.
In Schritt 503 werden benutzte Bits von jedem Plattenlaufwerk
auf der Basis seiner Datenbandbreite übertragen. So sei beispielsweise
angenommen, dass die Menge von jedem Datentransfer auf 10 MB an
benutzten Bits festgelegt wird. Ferner sei angenommen, dass die
Plattenlaufwerke 101A-101C (1)
15 MB an benutzten Bits haben und dass Plattenlaufwerk 101B 20
MB und Plattenlaufwerk 101C 80 MB hat. Somit beträgt die Gesamtmenge an
benutzten Bits 115 MB. Gemäß Schritt 502 sollte
das Plattenlaufwerk 101A eine Datenbandbreite von 13% (15/115),
Plattenlaufwerk 101B eine Datenbandbreite von 17% (20/115)
und Plattenlaufwerk 101C eine Datenbandbreite von 70% (80/115)
haben. Daher würden
in Schritt 503 von den im Datentransfer bereitgestellten
10 MB Plattenlaufwerk 101A 1,3 MB, Plattenlaufwerk 101B 1,7
MB und Plattenlaufwerk 101C 7 MB beitragen. Diese gewichtete
Verschachtelung wird so lange fortgesetzt, bis alle benutzten Bits
von Daten gemäß Schritt 504 auf
das Bandlaufwerk geschrieben sind.
-
Wie
aus dem Obigen ersichtlich ist, ist jedes Plattenlaufwerk an der
gewichteten verschachtelten Ausgestaltung an einem Transfer direkt
proportional zu seinen benutzten Bits beteiligt. Auf diese Weise
erhalten Plattenlaufwerke mit vergleichsweise großen Informationsmengen
mehr Datenbandbreite und somit mehr Gelegenheit, mit voller Geschwindigkeit
zu laufen. Daher kann diese Ausgestaltung die Leistung der Plattenlaufwerke
mit vergleichsweise großen
Informationsmengen verbessern.
-
Man
beachte, dass unabhängig
von der Ausgestaltung Speicherpuffer in der vorliegenden Erfindung vorgesehen
werden können,
um eventuelle potentielle Streamingverluste aufgrund von Variationen
der Datenrate von den Plattenlaufwerken oder vom Bandlaufwerk zu
reduzieren. In einer Ausgestaltung der Erfindung kann ein Speicherpuffer
zwischen 1 und 8 MB während
der Sicherungsoperation vorgesehen werden, während ein Speicherpuffer zwischen
128 und 200 MB während
der Rückspeicheroperation
vorgesehen werden kann. In einer anderen Ausgestaltung werden Speicherpuffer
für Sicherungs-
und Rückspeicheroperationen
dynamisch auf der Basis der verfügbaren
Speicherkapazität
und der Anzahl der simultanen Ein-/Ausgabeports zugeordnet.
-
Es
wurden hierin verschiedene Ausgestaltungen eines Systems und eines
Verfahren zum Bereitstellen von verschachtelter Sicherung beschrieben.
Die Fachperson wird Modifikationen an diesen Ausgestaltungen erkennen.
So ist die vorliegende Erfindung beispielsweise gleichermaßen auf
eine Mehrzahl von Plattenarrays anwendbar. Somit ist der Umfang
der vorliegenden Erfindung nur durch den beiliegenden Anspruchssatz
begrenzt.