-
Die
vorliegende Erfindung betrifft das Gebiet der Speicherung von EDV-Daten
auf Trägern,
wie zum Beispiel Kassetten mit hoher Kapazität, durch eine ferne Ausrüstung, die
im Allgemeinen einen Roboter zur Handhabung von Kassetten umfasst.
-
Als
Beispiel beschreibt das Patent PCT WO9844423 ein EDV-Netz, das eine bestimmte
Anzahl an Speichersteuereinheiten umfasst, wobei jede davon mit
einer Vielzahl von Speichergruppen verbunden ist, die mindestens
eine Hochleistungsspeichervorrichtung (MSD) umfassen. Jede Speichersteuereinheit
kann mit mindestens einem Wirtsverarbeitungssystem und mit mindestens
einer anderen Speichersteuereinheit verbunden sein, um den Zugriff
der Wirtsverarbeitungssysteme auf die Hochleistungsspeichervorrichtungen
zu steuern. Mehrere Kopien der Daten werden in Speichergruppen gespeichert,
die geographisch voneinander entfernt sind, so dass jeder beliebige
Wirt auf jede beliebige Kopie zugreifen kann. Jede Speichersteuereinheit
umfasst eine Schnittstelle mit dem Wirt, die eine Hochleistungsspeichervorrichtung
emuliert, die vom Typ der Speichervorrichtung unabhängig ist,
und eine Schnittstelle mit einer lokalen Speichergruppe, die einen
Wirt emuliert, der vom Wirtstyp unabhängig ist. Wirte greifen mit
Hilfe einer virtuellen Adressierung auf die gespeicherten Daten
zu. Die Speichersteuereinheiten gewährleisten die Sicherung und
automatische Fehlerkorrekturen sowie einen Schreibschutz der Sicherungskopien.
-
Weiterhin
ist das amerikanische Patent
US5,809,511 bekannt,
das ein System zur Übertragung
von Daten zwischen einem Wirtgerät
und einer ergänzenden
Ausrüstung
beschreibt, die einen Cache-Speicher und eine roboterisier te Ausrüstung zur Verwaltung
von Aufzeichnungsträgern
umfasst.
-
Die
Aufgabe der Erfindung besteht darin, ein verbessertes Sicherungssystem
vorzuschlagen, das die Nutzung durch einen heterogenen Park von Wirtsrechnern
ermöglicht,
die mit einem gemeinsamen, unspezifischen Sicherungssystem verbunden sind.
Zu diesem Zweck betrifft die Erfindung gemäß ihrer allgemeinsten Annahme
ein System zur Sicherung von Daten gemäß Anspruch 1.
-
Vorteilhafterweise
wird der Emulator von einem Rechner zur Durchführung der Analyse der Signale,
die der Wirtsrechner abgibt, und zur Erzeugung einer Antwort, die
dem Typ des Lese-Schreibgerätes der
simulierten Kassette entspricht, gebildet.
-
Die
Erfindung betrifft ebenfalls ein Verfahren zur Sicherung von Daten
von einem Wirtsrechner (Mainframe), dadurch gekennzeichnet, dass
die Eingangs-/Ausgangsschnittstelle einer Sicherungsausrüstung emuliert
wird, damit eine Sicherungsausrüstung
für einen
Wirtsrechner ein Verhalten aufweist, das einem Sicherungs-Lese-Schreibgerät (Bandabroller)
entspricht, wobei die besagte Sicherungsausrüstung ein Mittel zur Zwischenspeicherung
umfasst, das sich von einem Bandabroller unterscheidet.
-
Die
vorliegende Erfindung ist durch das Lesen der folgenden Beschreibung
eines uneingeschränkten
Ausführungsbeispiels,
das sich auf die beigefügte
Zeichnung bezieht, besser zu verstehen, wobei:
-
die 1 das
Prinzipschema der Erfindung darstellt.
-
Das
nachstehend beschriebene System ermöglicht die Sicherung von Daten
aus einem heterogenen Park von Wirtsrechnern (1) vom Typ „Mainframe", die mit einem EDV-Netz
(2) vom Typ SCSI verbunden sind.
-
Das
Sicherungssystem (3) umfasst einen oder mehrere Bandabroller
(4) oder „Streamer" zur Sicherung der
Daten auf dem Magnetträger.
-
Es
ist an das Netz über
eine Ein-/Ausgangsschnittstelle (5) angeschlossen, die
derart emuliert ist, dass das Sicherungssystem (3) vom
Wirtsrechner als emulierter Sicherungsabroller erkannt wird, und zwar
für alle
Funktionen, die von dem Sicherungssystem (3) erfüllt werden.
Die emulierte Schnittstelle gewährleistet
eine Emulation der bekannten Hauptbandabroller, um einen transparenten
Dialog zwischen dem Wirtsrechner und dem Sicherungssystem (3)
zu ermöglichen.
-
Das
Sicherungssystem (3) umfasst außerdem mindestens eine Zwischenspeichervorrichtung (9),
die sich in dem beschriebenen Beispiel aus RAID-Festplatten zusammensetzt.
-
Das
Sicherungssystem umfasst für
jeden Sicherungsträger
Initiatoren (6, 7). Die verschiedenen Ressourcen
werden von einem Rechner gesteuert, um die Datenübertragung von der Ein-/Ausgangsschnittstelle
(5) zur Zwischenspeichervorrichtung (9) und umgekehrt
zu gewährleisten
sowie die Datenübertragung
von der Zwischenspeichervorrichtung (9) zu den Bandabrollern
(4) und umgekehrt.
-
Vom
Wirtsrechner aus gesehen, entspricht das erfindungsgemäße Sicherungssystem
den folgenden Spezifikationen:
- – Es verhält sich
so wie das Sicherungs-Lese-Schreibgerät, an dessen
Stelle es gesetzt wird.
- – Es
verbessert die Speichergeschwindigkeit der Daten über einen
Festplatten-Cache. Zur Beschleunigung der Sicherung und der Wiederherstellung
der Daten werden diese auf einer Festplatten-Partition gespeichert.
Der Zugriff auf die Daten wird mit einem Meta-Modell der gesicherten
Daten, das die Kartographie der Daten speichert, verbessert. Dieses
Meta-Modell ermöglicht den
direkten Zugriff auf die sequentiell gespeicherten Daten.
- – Es
kopiert die Daten auf einen Abroller zurück. Die auf der Festplatten-Partition
gesicherten Daten werden auf Band zurückkopiert, indem der Anfangsschreibmechanismus
durch Nutzung des Modells reproduziert wird.
- – Es
garantiert die Beständigkeit
und die Kohärenz
der Daten. Am Ende der Sicherung ist das Sicherungssystem der Garant
für Beständigkeit
und Kohärenz
der Daten auf Band und Partition. Außerdem ermöglicht es, den Typ des stromaufwärtigen Abrollers
(den, den man emuliert) vom stromabwärtigen (den, den man tatsächlich steuert)
zu entkoppeln. Stromaufwärts
verwaltet das Sicherungssystem einen Abroller eines Modells und
sichert die Daten auf einem Abroller eines anderen Modells.
-
Das
Sicherungssystem (3) gewährleistet die folgenden Verbindungsarten:
- – stromaufwärts: SCSI,
FC, ESCON, Bus&Tag
- – stromabwärts: SCSI,
FC.
-
Das
Sicherungssystem verwaltet mehrere stromaufwärtige und stromabwärtige Verbindungen gleichzeitig.
Demzufolge führt
es mehrere Übertragungen
parallel aus. Jede Übertragung
wird von einer Übertragungseinheit
verwaltet.
-
Eine Übertragungseinheit
verwaltet drei Verbindungsarten:
- – Verbindung
mit einem Wirtssystem,
- – Verbindung
mit einer Partition einer physischen Festplatte,
- – Verbindung
mit dem Bandabroller.
-
Das
System umfasst außerdem
eine Supervisoreinheit (12), die durch Serienverbindungen
(13, 14) einerseits mit dem Wirtsrechner und andererseits mit
dem Sicherungssystem verbunden ist.
-
Die
Emulation besteht in der Simulation des SCSI-Betriebs eines Bandabrollers
gegenüber
einem Wirtsrechner und in der Verwaltung der SCSI-Antworten auf
die verschiedenen Anfragen des Wirtsrechners und der Aufzeichnungsübertragungen.
-
Die
Supervisoreinheit (12) steuert eine Datenbank, in der die
Identifizierungsmarken der gesicherten Daten gespeichert werden.
-
Die
von den Wirtsrechnern geschriebenen Datenspeichermedien werden zunächst in
einer Zwischenspeichervorrichtung (9) erstellt. Diese Mengen haben
eine maximale Größe, die zum
Zeitpunkt der Konfiguration des Sicherungssystems festgelegt wird und
in der Regel ziemlich klein ist, in der Größenordnung von 250 MB. Anschließend werden
die Mengen in einem Exemplar oder in mehreren an Kassetten übertragen.
Nur die Daten, die wirklich signifikant sind, werden auf Band übertragen.
Auf diese Weise kann eine Menge mit der maximalen Größe von 250 MB
zum Beispiel nur 10 MB Daten enthalten. In diesem Fall werden nur
diese 10 MB auf Band übertragen,
um den Bandbereich zu optimieren.
-
Dank
einer Datenbank verwaltet das Sicherungssystem intern die Liste
der bekannten Mengen, indem eine bestimmte Anzahl von Informationen
gespeichert wird, wie zum Beispiel:
- – der Name
der Menge,
- – der
Träger,
auf dem sie gespeichert ist (Festplatte, Kassette),
- – die
Position auf dem Träger
(Nummer der Festplattenpartition oder logische Adressen von Kassettenanfang
und -ende),
- – usw.
-
Diese
Informationen sind notwendig, um eine Menge wiederfinden zu können.
-
Bei
der Übertragung
der Daten aus dem Festplatten-Cache an Kassetten werden am Ende der Übertragung
jeder Menge private Informationen, so genannte „Basisinformationen", hinzugefügt. Diese
Informationen werden nur auf Kassetten geschrieben und bei Übertragungen
in umgekehrter Richtung ignoriert, wenn eine Menge von einer Kassette
an einen Festplatten-Cache übertragen
wird, zum Beispiel zwecks Wiederherstellung durch den Wirtsrechner. Sie
werden daher vollkommen intern verwaltet und sind für die Wirtsrechner
transparent.
-
Die
Basisinformationen für
eine vorgegebene Menge werden in Form einer ASCII-Zeichenkette mit
folgender Struktur geschrieben:
‣titre CR LF positionDébutVolume
positionFinVolume tailleVolume voieLecteur\voieDisque partitionDisque numéroProcesseur\codeBarre
nomCartouche\typeCartouche tailleUtilisée tailleCartouche\cptChargement
nomVolume étatVolume
codeHost typeCodage\dateEcriture heureEcriture dateLecture heureLecture\dateVidage
heureVidage CR LF‣
Titre: Titel, der in abgekürzter Form
die Bedeutung der folgenden Hauptfelder angibt.
CR: ASCII-Zeichen
mit dem Code 0x13 (hexadezimal).
LF: ASCII-Zeichen mit dem
Code 0x10 (hexadezimal).
- – positionDébutVolume: logische Adresse
auf der Kassette am Anfang der Menge.
- – positionFinVolume:
logische Adresse auf der Kassette des Endes der Menge.
- – tailleVolume:
ungefähre
Größe der Menge
in KB.
- – voieLecteur:
Nummer des Lesegerätes
(in der Konfiguration HBS festgelegt), das zur Realisierung der Übertragung
der Menge vom Festplatten-Cache zur Kassette eingesetzt wird.
- – voieDisque:
Nummer der Festplatte (in der Konfiguration HBS festgelegt), auf
der sich die Menge während
ihrer Übertragung
auf die Kassette befand.
- – partitionDisque:
Nummer der Festplattenpartition, auf der sich die Menge vor ihrer Übertragung auf
die Kassette befand.
- – numéroProcesseur:
Nummer des Prozessors, der zur Übertragung
der Menge aus dem Festplatten-Cache zur Kassette eingesetzt wird.
- – codeBarre:
Barcode der Kassette, die die Menge enthält.
- – nomCartouche:
Name der Kassette, so wie er unter HBS festgelegt ist. Dieser Name
ist unabhängig
vom Barcode.
- – typeCartouche:
Hexadezimalcode, der den Typ der Kassette angibt. Die möglichen
Werte sind wie folgt:
- – 0x00000001L
Betriebskassette
- – 0x00000010L
Kassette mit Zugriff auf autorisiertes Lesen
- – 0x00000020L
Kassette mit Zugriff auf autorisiertes Schreiben
- – 0x00000080L
Kassette in Umstrukturierung
- – 0x00000100L
umzustrukturierende Kassette
- – 0x00000200L
nicht wiederzuverwendende Kassette
- – 0x00000400L
leere blockierte Kassette
- – 0x00000800L
umstrukturierte Kassette
- – 0x00001000L
Kassette vom Typ Archiv
- – 0x00002000L
Kassette vom Typ Spiegel
- – 0x00010000L
Kassette für
DLT-Lesegerät
- – 0x00020000L
Kassette für
Exabyte-Lesegerät
- – 0x00040000L
Kassette für
Lesegerät
3480
- – 0x00080000L
Kassette für
Lesegerät
3590
- – 0x01F00000L
Maske für
Nummer des Archiv oder Spiegel, zu dem die Kassette gehört.
-
Der
Code, der für
das Feld typeCartouche verwendet wird, kann eventuell eine Kombination
der vorhergehenden Werte sein.
- – tailleUtilisée: Gesamtgröße der auf
der Kassette gespeicherten Daten in Megabyte
- – tailleCartouche:
maximale Kapazität
der Kassette in Megabyte.
- – cptChargement:
Speicherwerk zum Laden der Kassette. Gibt an, wie oft die Kassette
in ein Lesegerät
geladen wurde. Diese Information dient zur Ermittlung der Abnutzung
der Kassette.
- – nomVolume:
Name der Menge, wie er dem Wirtsrechner bekannt ist.
- – étatVolume:
Hexadezimalcode, der den Zustand der Menge angibt. Dieser Code ist
eine Kombination der Hinweisadressen, deren Zugriffsmasken und derenmögliche Werte
wie folgt sind:
- – 0x00000001L
1, wenn die Menge gültig
ist, 0, wenn sie ungültig
ist (alte Version oder logisch gelöschte Menge)
- – 0x00000008L
1, wenn die Menge vom Typ Spiegel ist
- – 0x00000010L
1, wenn die Menge eine Spiegelkopie auf einer anderen Kassette hat
- – 0x00000020L
1, wenn eine Kopie dieser Menge auf einer Spiegelkassette erfolgen
muss
- – 0x00001000L
1, wenn die Menge vom Typ Archiv ist
- – 0x00002000L
1, wenn die Menge zwischen mehreren Wirtsrechnern aufgeteilt wird
- – 0x00010000L
1, wenn die Menge immer auf DLT-Kassetten
kopiert werden muss
- – 0x00020000L
1, wenn die Menge immer auf Exabyte-Kassetten kopiert werden muss
- – 0x00040000L
1, wenn die Menge immer auf 3480-Kassetten
kopiert werden muss
- – 0x00080000L
1, wenn die Menge immer auf 3590-Kassetten
kopiert werden muss
- – 0x01F00000L
Nummer des Archivs oder Spiegel (von 0 bis 31)
- – codeHost:
Nummer des Wirtsrechners der HBS-Konfiguration,
zu der die Menge gehört.
- – typeCodage:
Zeichencode, der in der Kopfzeile der Menge verwendet wird (0 =
ASCII, 1 = EBCDIC).
- – dateEcriture:
Datum der letzten Erstellung oder Änderung der Menge durch den
Wirtsrechner in Form von JJJJ-MM-TT
- – heureEcriture:
Uhrzeit der letzten Erstellung oder Änderung der Menge durch den
Wirtsrechner in Form von hh:mm:ss
- – dateLecture:
Datum des letzten Lesezugriffs auf die Menge durch den Wirtsrechner
in Form von JJJJ-MM-TT
- – heureLecture:
Uhrzeit des letzten Lesezugriffs auf die Menge durch den Wirtsrechner
in Form von hh:mm:ss
- – dateVidage:
Datum der Übertragung
der Menge vom Festplatten-Cache auf die Kassette in Form von TT-MM-JJJJ
- – heureVidage:
Uhrzeit der Übertragung
der Menge vom Festplatten-Cache auf die Kassette in Form von hh:mm:ss.
Die Basisinformationen sind kumulativ, um die Analyse der Kassetten
zur Wiederherstellung der Datenbank zu beschleunigen.
-
Angenommen,
ein Band umfasst die Mengen V1, V2, V3, V4 und V5. Die jeder dieser
Mengen zugeordneten Basisinformationen werden B1, B2, B3, B4 und
B5 genannt. Auf dem Band befinden sich demzufolge: Die Basisinformationen
B1 enthalten nur Informationen, die sich auf die Menge V1 beziehen.
Die Basisinformationen B2 enthalten in einer einzigen Datenaufzeichnung
eine Summierung von B1 und Informationen, die sich auf die Menge
V2 beziehen. B2 enthalten daher die Informationen von V1 und V2.
-
Die
Basisinformationen B3 enthalten in einer einzigen Datenaufzeichnung
eine Summierung von B2 und Informationen, die sich auf die Menge
V3 beziehen. B3 enthalten daher die Informationen von V1, V2 und
V3.
-
Die
letzten Basisinformationen der Kassette, B5 in dem vorherigen Beispiel,
enthalten daher eine Summierung aller Informationen, die sich auf
alle Mengen beziehen, die sich auf der Kassette befinden.
-
Wenn
eine Kassette sehr viele Mengen enthält, können die summierten Basisinformationen
eine erhebliche Größe erreichen.
Zur Begrenzung dieser Zunahme wurde eine maximale Größe willkürlich auf 132
KB festgelegt. Wenn die Standardgestaltung der Basisinformationen
eine Menge 132 KB überschreitet,
ordnet das System (3) dieser Menge reduzierte Basisinformationen
zu, die nur die Basisinformationen dieser neuen Menge enthalten,
ohne Summierung der Informationen der vorhergehenden Mengen. Für die folgenden
Mengen wird der Standardmechanismus der Summierung der Informationen
der laufenden Menge mit denen der vorhergehenden Menge wieder aufgenommen.
-
Bei
einem vollständigen
Verlust der Datenbank des Systems kann die vollständige Wiederherstellung
der Datenbank mit diesen Basisinformationen erfolgen. Dank einer
im Prozessorcode integrierten Funktion ist es möglich, eine Kassette zu analysieren,
um von ihr die letzten Basisinformationen zu entnehmen. Diese Analyse
kann auch von einer externen Software durchgeführt werden: Dazu muss man sich
nur an das Ende des Bandes begeben, eine Aufzeichnung zurückgehen
und die letzte Datenaufzeichnung lesen. Die auf diese Weise am Ende
der Kassette zurückgewonnenen
Basisinformationen enthalten eine Beschreibung der Mengen der Kassette.
Wie im vorherigen Absatz beschrieben, bedeutet es, wenn das Feld
adresseVolume der ersten Menge einen anderen Wert als 0 enthält, dass
sich die erste Menge nicht am Anfang des Bandes befindet. Daraus
ist abzuleiten, dass es sich um eingeschränkte Basisinformationen handelt.
Man muss sich also nur auf der Kassette bei der Adresse adresseVolume
mit einem Wert von 1 positionieren und eine Aufzeichnung zurückgehen,
um die Basisinformationen der vorhergehenden Menge lesen zu können. Letztere sind
selbst eine Summierung der Basisinformationen der vorhergehenden
Mengen.
-
Die
Rückwärtsanalyse
der Kassette ist fortzusetzen, bis man Basisinformationen mit einem Feld
adresseVolume mit 0 für
die erste Menge findet. Damit können
alle Mengen der Kassette durch Summierung aller wiedergewonnenen
Basisinformationen ermittelt werden.
-
Die
Wiederherstellung der Datenbank erfordert die Wiedergewinnung aller
Basisinformationen, die auf allen Kassetten der Bibliothek gespeichert sind,
sowie ihre anschließende
Analyse durch eine geeignete Software. Alle diese Informationen
umfassen alle diejenigen Informationen, die zur Wiederherstellung
der Datenbank notwendig sind. Hierzu ist es nicht nur ratsam, alle
Mengen aufzulisten, die sich auf allen Kassetten befinden, sondern
auch für
jede Menge einer Kassette festzulegen, ob sie für den Wirtsrechner gültig ist
oder nicht. Eine gleiche Menge (gleicher Name, gleicher Wirtsrechner)
kann nämlich auf
mehreren unterschiedlichen Kassetten vorhanden sein oder an mehreren
Stellen auf derselben Kassette. Letzteres kann aus folgenden Gründen geschehen:
- – entweder
es handelt sich um mehrere unterschiedliche Versionen einer gleichen
Menge, die mehrmals von dem Wirtsrechner aktualisiert wurde,
- – oder
es handelt sich um dieselben Daten, die durch HBS intern übertragen
wurden. In jedem Fall kann durch Analyse der Basisinformationen dateEcriture
und heureEcriture aller Vorkommen dieser Menge die aktuellste bestimmt
werden, welche demzufolge die einzig gültige ist. Wenn die aktuellste
Version an mehreren Stellen vorhanden ist (gleiche Informationen
dateEcriture und heureEcriture), kann jedes dieser Vorkommen eingesetzt
werden, um die gültige
Version der Menge in der neuen Datenbank zu werden. Dann müssen lediglich
eine leere Datenbank neu erstellt und alle Tabellen mit den gesammelten
Informationen gefüllt
werden.