DE10051610B4 - Datenspeichersystem und Verfahren zum Testen desselben - Google Patents

Datenspeichersystem und Verfahren zum Testen desselben Download PDF

Info

Publication number
DE10051610B4
DE10051610B4 DE10051610A DE10051610A DE10051610B4 DE 10051610 B4 DE10051610 B4 DE 10051610B4 DE 10051610 A DE10051610 A DE 10051610A DE 10051610 A DE10051610 A DE 10051610A DE 10051610 B4 DE10051610 B4 DE 10051610B4
Authority
DE
Germany
Prior art keywords
data
raid
time
raid1
raid5
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.)
Expired - Fee Related
Application number
DE10051610A
Other languages
English (en)
Other versions
DE10051610A1 (de
Inventor
Brian L. Patterson
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.)
Hewlett Packard Development Co LP
Original Assignee
Hewlett Packard Development Co LP
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 Hewlett Packard Development Co LP filed Critical Hewlett Packard Development Co LP
Publication of DE10051610A1 publication Critical patent/DE10051610A1/de
Application granted granted Critical
Publication of DE10051610B4 publication Critical patent/DE10051610B4/de
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/004Error avoidance
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1004Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's to protect a block of data words, e.g. CRC or checksum

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Debugging And Monitoring (AREA)

Abstract

Verfahren zum Verifizieren von in einem RAID-Datenspeichersystem (104) gespeicherten Daten, wobei das RAID-Datenspeichersystem (104) einen ersten Datenspeicherbereich (112) einer ersten RAID-Ebene (RAID1), dem eine erste mittlere Zeit bis zum Auftreten eines Fehlers (MTTF) zugeordnet ist, und einen zweiten Datenspeicherbereich (114) einer zweiten RAID-Ebene (RAID5), dem eine zweite mittlere Zeit bis zum Auftreten eines Fehlers zugeordnet ist, umfaßt, wobei das Verfahren folgende Schritte umfaßt:
(a) Testen des ersten Speicherbereichs (112) während einer ersten Zeitdauer (t_RAID1); und
(b) Testen des zweiten Speicherbereichs (114) während einer zweiten Zeitdauer (t_RAID5),
wobei die Summe der ersten Zeitdauer (t_RAID1) und der zweiten Zeitdauer (t_RAID5) die zum Verifizieren verfügbare Zeitdauer (t_test) festlegt,
wobei die zweite Zeitdauer (t_RAID5) gleich der ersten Zeitdauer (t_RAID1) multipliziert mit einem Faktor (K) ist, und
wobei der Faktor (K) durch eine statistische Analyse basierend auf der ersten mittleren Zeit bis zum Auftreten eines Fehlers, der zweiten mittleren Zeit...

Description

  • Rechnersysteme umfassen oft ein Massenspeichersystem zum Speichern von Daten. Ein verbreiteter Typ eines Massenspeichersystems ist ein "RAID"-Speichersystem (RAID = redundant arrays of inexpensive disks = redundante Anordnung von kostengünstigen Platten). Eine detaillierte Diskussion von RAID-Systemen ist in einem Buch mit dem Titel "The RAID Book: A Source Book for RAID Technology" zu finden, das am 9. Juni 1993 durch den RAID Advisory Board in Lino Lakes, Minn., veröffentlicht wurde.
  • Ein typisches RAID-Speichersystem, wie es zum Beispiel in der US-A-5,392,244 beschrieben ist, umfaßt eine Steuerung und eine Platten- bzw. Laufwerksanordnung, die über eine Kommunikationsverbindung miteinander gekoppelt sind. Die Plattenanordnung umfaßt mehrere magnetische Speicherplatten zum Speichern von Daten. Während des Betriebs ist die Steuerung eines RAID-Speichersystems wirksam, um Eingabe/Ausgabe-Befehle (E/A-Befehle) von einem externen Host-Computer zu empfangen. Ansprechend auf diese E/A-Befehle liest und schreibt die Steuerung Daten auf die Platten bzw. von den Platten in der Plattenanordnung und koordiniert den Datentransfer zwischen der Plattenanordnung und dem Host-Computer. Abhängig von der RAID-Implementierungsebene erzeugt die Steuerung in einem RAID-System auch redundante Daten und schreibt sie auf die Plattenanordnung gemäß einem besonderen Datenredundanzschema. Die redundanten Daten ermöglichen die Wiederherstellung von Anwenderdaten in dem Fall, daß die Daten verfälscht bzw. korrumpiert werden.
  • Ein RAID-Speichersystem der Ebene 1 (RAID1) umfaßt eine oder mehrere Datenplatten zum Speichern von Daten und eine gleiche Anzahl zusätzlicher "Spiegel"-Platten zum Speichern der redundanten Daten. Die redundanten Daten sind in diesem Fall einfach eine Kopie der Daten, die in den Spiegelplatten gespeichert sind. Wenn Daten verfälscht werden, die in einer oder mehreren Datenplatten gespeichert sind, können die Spiegelplatten verwendet werden, um die verfälschten Daten zu rekonstruieren. Andere RAID-Ebenen speichern redundante Daten zu Anwenderdaten, verteilt über mehrere Platten. Wenn Daten auf einer Platte verfälscht werden, werden die Daten auf den anderen Platten verwendet, um die verfälschten Daten zu rekonstruieren.
  • Jeder der RAID-Ebenen ist eine besondere Mischung von Entwurfskompromissen bzw. -abstrichen zugeordnet. zum Beispiel hat ein RAID1-Speichersystem typischerweise eine längere mittlere Zeit bis zum Auftreten eines Fehlers (MTTF; MTTF = mean time to failure) und eine höhere E/A-Rate als ein RAID5-Speichersystem. Für die Zwecke dieses Dokuments bezieht sich der Begriff "Fehler" auf einen tatsächlichen Verlust von Daten. Wenn z. B. ein einzelnes Byte von Anwenderdaten in einem RAID1-Speichersystem verfälscht wird, tritt kein Fehler auf, solange die entsprechenden Spiegeldaten noch verwendet werden können, um die verfälschten Daten wiederherzustellen. Wenn jedoch die entsprechenden Spiegeldaten ebenfalls verfälscht werden, tritt ein Fehler auf, da die Daten dann nicht wiederherstellbar sind. Die MTTF kann somit als ein Maß für das Risiko eines Datenverlusts angesehen werden.
  • Um die Vorteile von mehr als einem Datenredundanzschema zu kombinieren, wurden hierarchische Datenspeichersysteme entwickelt. Solche Systeme umfassen typischerweise jeweils mehr als einen Speicherbereich, von denen jeder zum Speichern von Daten gemäß einem bestimmten Datenredundanzschema dient. Zum Beispiel können bei einem typischen hierarchischen RAID-Speichersystem Daten gemäß mehreren RAID-Architekturen gespeichert werden.
  • Ein allgemeiner Typ eines hierarchischen RAID-Speichersystems umfaßt einen RAID1-Speicherbereich und einen RAID5- Speicherbereich. Kritische Daten werden in dem RAID1-Speicherbereich gespeichert, um den Vorteil der relativ längeren MTTF und höheren E/A-Rate zu nutzen. Weniger kritische Daten werden in dem RAID5-Speicherbereich gespeichert, um den Vorteil der Charakteristik niedrigerer Kosten pro Megabyte eines RAID5-Speicherredundanzschemas zu nutzen.
  • Eine allgemeine Funktion der Steuerung bei einem hierarchischen RAID-Speichersystem ist es, intermittierend jede Platte in dem System bezüglich des Vorliegens einer Datenverfälschung zu testen. Dies dient dazu, die MTTF des Speichersystems zu verlängern, da verfälschte Daten, die detektiert wurden, wiederhergestellt werden können, bevor ein Fehler auftritt, d. h. bevor Daten, die verwendet würden, um verfälschte Daten wiederherzustellen, ebenfalls verfälscht werden. Historisch wurden diese Tests erreicht, indem die Daten gleichmäßig über das Speichersystem getestet wurden.
  • Die US-A-5,572,661 beschreibt Verfahren und Vorrichtungen zum Erfassen von Datenverlusten in hierarchischen Datenspeichersystemen. Der physikalische Speicherraum wird in einen ersten virtuellen Speicherraum abgebildet, welcher den physikalischen Speicherraum als mehrere Raid-Bereiche darstellt, die Daten gemäß verschiedenen Raid-Ebenen wiedergibt. Einzelne Raid-Bereiche erstrecken sich über mehrere Festplatten und schließen eine Region des physikalischen Speicherplatzes auf einzelnen Speicherfestplatten ein. Der erste virtuelle Speicherraum wird in einen zweiten virtuellen Speicherraum abgebildet, der den physikalischen Speicherraum als eine Vielzahl virtueller Blöcke wiedergibt. Die einzelnen Raid-Bereiche werden überwacht, um Datenverluste zu erfassen. Beim Erfassen von Datenverlusten innerhalb einer Region eines Raid-Bereichs wird diese Region als ungültig markiert. Beim Erfassen von Datenverlusten innerhalb eines zweiten Bereichs im selben Raid-Bereich wird bestimmt, wie umfangreich der Datenverlust ist, und für den Fall, daß nur geringfügige Verluste vorliegen, wird der Bereich als defekt markiert, um anzuzeigen, daß die Daten, die in diesem Bereich gespeichert sind, unzuverlässig sind. Handelt es sich bei dem Datenverlust um einen signifikanten Verlust, so wird der gesamte Raid-Bereich als nicht zugreifbar (tot) gekennzeichnet.
  • Die DE 19536232C1 beschreibt ein Festplatten-Speichersystem mit gekoppelten Platten. Bei einem solchen Raid-System sind zusätzliche Ersatzplatten vorgesehen, die in vorgegebenen Zeitabschnitten jeweils vorübergehend gestartet werden, um die Funktionsfähigkeit zu überprüfen. Im Fehlerfall stehen dann weniger abgenutzte Festplatten zur Verfügung, was die Betriebssicherheit erhöht.
  • Die US-A-5,832,204 beschreibt ein Speichersystem, welches einen Host aufweist, der mit einem Überwachungsprozessor verbunden ist, der seinerseits mit einem RAID-Speichersystem verbunden ist, welches eine Vielzahl von HDA-Anordnungen (HDA = Head Disk Assembly) aufweist. Wenn während eines Leseversuchs ein HDA-Gerät einen Fehler feststellt, wird ein Wiedererlangungssignal an den Überwachungsprozessor gesendet, wodurch der Prozessor und das HDA-Gerät einen Fern- und einen Lokal-Wiedergewinnungsprozess parallel starten.
  • Es ist die Aufgabe der vorliegenden Erfindung, ein Verfahren und ein Dateispeichersystem zu schaffen, um in einem RAID-System die zum Verifizieren der gespeicherten Daten verfügbare Zeit optimal zu verwenden, um die Wahrscheinlichkeit des Auftretens eines Datenverlusts in dem RAID-System zu reduzieren.
  • Diese Aufgabe wird durch ein Verfahren gemäß Anspruch 1 und durch ein RAID-Dateispeichersystem gemäß Anspruch 4 gelöst.
  • Bei einem bevorzugten Ausführungsbeispiel ist die Erfindung als ein Verfahren zum Testen eines Datenspeichersystems bezüglich verfälschter Daten implementiert. Das Speichersystem umfaßt einen ersten Datenspeicherbereich, dem eine erste MTTF zugeordnet ist, und einen zweiten Datenspeicherbereich, dem eine zweite MTTF zugeordnet ist. Das Verfahren umfaßt vorzugsweise das Testen des ersten Speicherbereichs während einer ersten Zeitdauer und das Testen des zweiten Speicherbereichs während einer zweiten Zeitdauer. Die erste Zeitdauer basiert mindestens auf der ersten MTTF und der zweiten MTTF. Auch die zweite Zeitdauer basiert auf der ersten MTTF und der zweiten MTTF.
  • Es wird darauf hingewiesen, daß das Verfahren in einem hierarchischen RAID-Speichersystem durchgeführt werden kann. Der erste Speicherbereich kann zum Speichern von Daten gemäß einem ersten RAID-Redundanzschema und der zweite Speicherbereich zum Speichern von Daten gemäß einem zweiten RAID-Redundanzschema dienen. Das erste RAID-Redundanzschema kann beispielsweise ein RAID-Redundanzschema der Ebene 1 sein. Das zweite RAID-Redundanzschema kann ein RAID-Redundanzschema der Ebene 5 oder der Ebene 6 sein.
  • Bei einem weiteren Ausführungsbeispiel ist die Erfindung als ein Datenspeichersystem implementiert. Das Datenspeichersystem umfaßt einen ersten Datenspeicherbereich, dem eine erste MTTF zugeordnet ist, einen zweiten Datenspeicherbereich, dem eine zweite MTTF zugeordnet ist, und eine Einrichtung zum Testen des ersten Datenspeicherbereichs bezüglich Datenverfälschung mit einer ersten Frequenz, die mindestens auf der ersten und der zweiten MTTF basiert. Außerdem kann die Testeinrichtung ferner dazu dienen, den zweiten Datenspeicherbereich bezüglich Datenverfälschung mit einer zweiten Frequenz zu testen, die mindestens auf der ersten MTTF und der zweiten MTTF basiert. Der erste Datenspeicherbereich kann zum Speichern von Daten gemäß einem ersten Datenredundanzschema dienen und der zweite Speicherbereich kann zum Speichern von Daten gemäß einem zweiten Datenredundanzschema dienen. Das erste Datenredundanzschema kann beispielsweise ein RAID-Datenredundanzschema der Ebene 1 sein. Außerdem kann das zweite Datenredundanzschema beispielsweise ein RAID-Datenredundanzschema der Ebene 5 oder der Ebene 6 sein.
  • Bei einem weiteren Ausführungsbeispiel ist die Erfindung als ein weiteres Datenspeichersystem implementiert. In diesem Fall umfaßt das Datenspeichersystem einen ersten Datenspeicherbereich, dem eine erste MTTF zugeordnet ist, einen zweiten Datenspeicherbereich, dem eine zweite MTTF zugeordnet ist, und eine Steuerung, die wirksam ist, um E/A-Befehle von einem externen Host zu empfangen und den Datentransfer zwischen dem externen Host und dem ersten und dem zweiten Da tenspeicherbereich zu koordinieren. Die Steuerung ist ferner wirksam, um den ersten Speicherbereich bezüglich Datenverfälschung mit einer ersten Frequenz zu testen, die mindestens auf der ersten MTTF und der zweiten MTTF basiert. Außerdem kann die Steuerung wirksam sein, um den zweiten Speicherbereich mit einer zweiten Frequenz zu testen, die mindestens auf der ersten MTTF und der zweiten MTTF basiert. Wenn die erste MTTF kürzer ist als die zweite MTTF, dann ist die erste Frequenz höher als die zweite Frequenz. Der erste Datenspeicherbereich kann dazu dienen, Daten gemäß einem RAID-Datenredundanzschema der Ebene 1 zu speichern, und der zweite Datenspeicherbereich kann dazu dienen, Daten gemäß einem RAID-Datenredundanzschema der Ebene 5 oder der Ebene 6 zu speichern.
  • Bevorzugte Ausführungsbeispiele der vorliegenden Erfindung werden nachfolgend Bezug nehmend auf die beiliegenden Zeichnungen näher erläutert. Es zeigen:
  • 1 ein Blockdiagramm eines hierarchischen Speichersystems, das ein erstes Ausführungsbeispiel der Erfindung einschließt;
  • 2 das Verhältnis zwischen der MTTF(System) und dem Verhältnis von (t_RAID_5)/(t_RAID_1) für das Speichersystem, das in 1 dargestellt ist;
  • 3 ein grobes Schema der Steuerung für das Speichersystem, das in 1 dargestellt ist;
  • 4 ein Flußdiagramm, das allgemein die Logik darstellt, der die Steuerung folgt, um jeden der beiden Speicherbereiche bezüglich Datenverfälschung zu testen; und
  • 5 ein Blockdiagramm eines zweiten Datenspeichersystems, das ein zweites Ausführungsbeispiel der Erfindung einschließt.
  • Gemäß 1 ist die Erfindung zu Zwecken der Darstellung in einem hierarchischen RAID-Speichersystem 104 verkörpert. Das Speichersystem 104 umfaßt eine Steuerung 106 und eine Plattenanordnung 108. Die Steuerung 106 ist über ein erstes Kommunikationsverbindungsglied 107 mit einem externen Host-Computer 105 und über ein zweites Kommunikationsverbindungsglied 110 mit der Plattenanordnung 108 verbunden. Jedes dieser Verbindungsglieder kann einen beliebigen geeigneten Kommunikationsweg darstellen. Zum Beispiel kann das erste Kommunikationsverbindungsglied 107 ein lokales Netz (LAN; LAN = local area network) darstellen. Das zweite Kommunikationsverbindungsglied 110 kann z. B. eine SCSI-Schnittstelle (SCSI = small computer system interface) darstellen.
  • Die Plattenanordnung 108 umfaßt magnetische Speicherplatten (Platten) zum Speichern von Datenblöcken auf herkömmliche Weise. Die Platten können für Erklärungszwecke so konzeptualisiert werden, daß sie einen ersten Speicherbereich 112 und einen zweiten Speicherbereich 114 bilden.
  • Der erste Speicherbereich (RAID1-Speicherbereich) 112 dient zum Speichern von Daten gemäß einem RAID1-Datenredundanzschema. Die Spiegelredundanz ist schematisch durch die drei Paare von Platten dargestellt. Anwenderdaten werden durch die Steuerung 106 auf Platten D1 bis D3 gespeichert, während eine Kopie der Anwenderdaten auf den Platten D4 bis D6 gespeichert wird. Der zweite Speicherbereich (RAID5-Speicherbereich) 114 dient zum Speichern von Daten gemäß einem RAID5-Datenredundanzschema. Anwenderdaten werden auf Platten D7 bis D10 und Paritätsdaten werden auf einer Platte D11 gespeichert.
  • Während des Betriebs kann die Steuerung 106 eine Anzahl von Standardfunktionen durchführen. Diese Funktionen können das Empfangen von E/A-Befehlen vom Host-Computer 105 und ansprechend auf einen E/A-Befehl ein Koordinieren von Datentransfer zwischen dem Host-Computer 105 und den beiden Speicher bereichen umfassen. Die Steuerung 106 kann ferner wirksam sein, um gemäß einer Standardmigrationspolitik Daten zwischen dem ersten Speicherbereich 112 und dem zweiten Speicherbereich 114 zu transferieren.
  • Bei diesem Ausführungsbeispiel wird angenommen, daß die Steuerung 106 Daten in Blöcken von jedem der Speicherbereiche liest und auf sie schreibt. Beim Schreiben eines Datenblocks auf eine Platte schreibt die Steuerung 106 auch einen "Fehlercode" (in einer herkömmlichen Weise) für den Block. Für Zwecke dieses Dokuments bezieht sich der Ausdruck "Fehlercode" auf einen beliebigen Satz von Daten, die verwendet werden können, um zu bestimmen, ob ein Datenblock verfälscht ist. Somit kann der Fehlercode beispielsweise eine zyklische Redundanzprüfung oder ein Prüfsummenwert sein.
  • Außer den gerade erwähnten Funktionen führt die Steuerung 106 auch eine Datentestfunktion aus. Wie unten detaillierter beschrieben wird, führt die Steuerung 106 diese Funktion aus, indem sie die Plattenanordnung 108 (blockweise) bezüglich des Vorliegens von Datenverfälschung überprüft. Wenn während des Tests verfälschte Daten gefunden werden, ist die Steuerung 106 (wenn möglich) wirksam, um die Daten unter Verwendung der gespeicherten redundanten Daten wiederherzustellen.
  • Wie zu erwarten ist, bestehen Beschränkungen dahingehend, wie oft und wann die Datentestfunktion durchgeführt wird. Dies erlaubt der Steuerung 106, andere Funktionen durchzuführen (wie z. B. auf eine E/A-Abfrage anzusprechen). Bei diesem Ausführungsbeispiel z. B. ist die Datentestfunktion eine unterbrechbare Hintergrundaufgabe mit niedriger Priorität, die jedesmal durchgeführt wird, wenn die Steuerung 106 einen Leerlaufzustand betritt. Im Ergebnis wird angenommen, daß während einer gegebenen Zeitdauer ("t_Periode") und unter erwarteten Bedingungen der Betrag der Zeit, die für das Testen der Plattenanordnung 108 aufgewandt wird, ("t_test") beträgt.
  • Um die Diskussion zu vereinfachen, wird auf den Betrag der Zeit, die während "t_test" zum Testen des RAID1-Speicherbereichs 112 aufgewendet wird, mit "t_RAID1" Bezug genommen. Desgleichen wird auf den Betrag der Zeit, die während t_test zum Testen des RAID5-Speicherbereichs 114 aufgewendet wird, mit "t_RAID5" Bezug genommen. Somit ist t_test gleich t_RAID1 + t_RAID5.
  • Es ist wichtig für diese Diskussion darauf hinzuweisen, daß jedem der beiden Speicherbereiche eine charakteristische MTTF zugeordnet ist. Der Wert der MTTF kann eine Funktion einer Anzahl von Faktoren sein, wie z. B. des speziellen Datenredundanzschemas und der Zuverlässigkeit der Komponenten, die in einem speziellen Speicherbereich verwendet werden. Zur Vereinfachung der Diskussion wird auf die MTTF des RAID1-Speicherbereichs 112 mit "MTTF(RAID1)" Bezug genommen. Desgleichen wird auf die MTTF des RAID5-Speicherbereichs 114 mit "MTTF(RAID5)" Bezug genommen.
  • Außerdem wird der Ausdruck "MTTF(System)" hierin mit Bezug auf die MTTF der Plattenanordnung 108 verwendet. Somit ist MTTF(System) ein Gesamtmaß für die Zuverlässigkeit der Plattenanordnung 108. Außerdem ist erkennbar, daß MTTF(System) eine Funktion sowohl von MTTF(RAID1) als auch von MTTF(RAID5) ist.
  • Wie zu erwarten ist, ist MTTF(RAID5) kleiner als MTTF(RAID1). Somit ist bei den beiden Speicherbereichen das Risiko eines Fehlers (d. h. eines Datenverlustes) für Daten, die in dem RAID5-Speicherbereich 114 gespeichert sind, größer. Demgemäß ist erkennbar, daß MTTF(System) optimiert werden kann, wenn t_RAID5 erhöht wird, um dieses größere Fehlerrisiko auszugleichen. Es ist jedoch auch erkennbar, daß, wenn t_RAID_5 erhöht wird, das Risiko eines Fehlers in dem RAID1-Speicherbereich 112 erhöht wird, da der Betrag der Zeit (t_RAID_1) reduziert wird, der zum Testen dieses Bereichs aufgewendet wird. Somit muß das erhöhte Risiko eines Fehlers im RAID1-Speicherbereich 112 berücksichtigt werden, wenn t_RAID_5 größer als t_RAID_1 gemacht wird.
  • Aus der vorangehenden Diskussion ist erkennbar, daß es einen optimalen Satz von Werten für t_RAID_1 und t_RAID_5 gibt, der eine optimale MTTF(System) ergibt. Zur Vereinfachung der Diskussion wird auf den optimalen Wert von t_RAID_1 mit "t_RAID_1(Optimum)" Bezug genommen. Desgleichen wird auf den optimalen Wert von t_RAID_5 mit "t_RAID_5(Optimum)" Bezug genommen. Es ist wichtig festzustellen, daß t_RAID_5(Optimum) und t_RAID_1(Optimum) beide Funktionen von MTTF(RAID1) und MTTF(RAID5) sind.
  • Um diesen Punkt darzustellen, zeigt 2 die Beziehung zwischen MTTF(System) und dem Verhältnis von (t_RAID_5)/(t_RAID_1) für das gegenwärtige Ausführungsbeispiel. Wie es in 2 angezeigt ist, wird ein optimierter Wert von MTTF(System) erhalten, wenn (t_RAID_5)/(t_RAID_1) = K. Somit ist t_RAID_5(Optimum) = K·t_RAID_1(Optimum).
  • Es wird darauf hingewiesen, daß in der Praxis der Wert von K unter Verwendung einer Standard-Statistikanalyse oder durch empirische Verfahren oder durch beide bestimmt wird. Diese Analyse basiert primär auf den Werten von MTTF(RAID1), MTTF(RAID5) und t_test. Es ist auch zu erwarten, daß K bei diesem Beispiel größer ist als 1, da MTTF(RAID5) kleiner ist als MTTF(RAID1).
  • Gemäß den Prinzipien der vorliegenden Erfindung ist die Steuerung 106 angepaßt, um die Datentestfunktion so durchzuführen, daß unter erwarteten Bedingungen t_RAID5 = K t_RAID1. Wie in 2 gezeigt ist, kann dies zu einer Optimierung des Wertes von MTTF(System) führen.
  • Um ein Beispiel darzustellen, wie die Testfunktion implementiert werden kann, wird auf die 3 und 4 Bezug genommen. 3 ist ein grobes Schema der Steuerung 106. Wie gezeigt ist, umfaßt die Steuerung 106 einen Prozessor 202, einen Speicher 204, eine Host-Schnittstelle 206 und eine Plattenschnittstelle 208, die alle über einen lokalen Bus 210 verbunden sind. Es wird darauf hingewiesen, daß jede dieser Komponenten tatsächlich mehrere Geräte umfassen kann. Zum Beispiel kann der Speicher 204 einen oder mehrere Nur-Lese-Speicher (ROM; ROM = read only memory) und einen oder mehrere Speicher mit wahlfreiem Zugriff (RAM; RAM = random access memory) umfassen. Der lokale Bus 210 kann z. B. einen oder mehrere Datenbusse mit begleitenden Steuerbussen umfassen. Wie gezeigt ist, versieht die Host-Schnittstelle 206 die Steuerung 106 mit einer Schnittstelle zu dem Host-Computer 105 (über das erste Kommunikationsverbindungsglied 107). Die Plattenschnittstelle 208 liefert eine Schnittstelle zu der Plattenanordnung 108 (über das zweite Kommunikationsverbindungsglied 110).
  • Der Prozessor 202 ist wirksam, um verschiedene Firmwareprogramme auszuführen, die im Speicher 204 gespeichert sind. Viele dieser Programme können herkömmlich sein und der Steuerung 106 ermöglichen, verschiedene Funktionen durchzuführen, die oben erwähnt wurden. Zum Beispiel können die Programme der Steuerung 106 ermöglichen, E/A-Befehle zu empfangen und zu verarbeiten, die über die Host-Schnittstelle 206 empfangen wurden, und in ansprechend auf die E/A-Befehle den Transfer von Daten zwischen dem Host-Computer 103 und der Plattenanordnung 108 zu koordinieren.
  • Es ist wichtig festzustellen, daß eines der Programme, die im Speicher 204 gespeichert sind und durch den Prozessor 202 ausgeführt werden, ein Testprogramm 214 ist, das der Steuerung 106 die Fähigkeit ermöglicht, die Datentestfunktionen durchzuführen.
  • Bei diesem Ausführungsbeispiel ist das Testprogramm 214 ein Hintergrundprogramm, das automatisch durch den Prozessor 202 ausgeführt wird, sooft die Steuerung 106 in einen Leerlaufzustand eintritt. Während das Testprogramm 214 ausgeführt wird, kann es unterbrochen werden, um zu erlauben, daß die Steuerung 106 andere Funktionen durchführt, die eine höhere Priorität aufweisen. Zum Beispiel wird angenommen, daß die Steuerung 106 gegenwärtig das Testprogramm 214 ausführt und ein E/A-Befehl vom Host-Computer 103 empfangen wird. Beim Empfang des E/A-Befehls wird das Testprogramm 214 unterbrochen, um der Steuerung 106 zu erlauben, den E/A-Befehl zu verarbeiten. Nachdem der E/A-Befehl verarbeitet ist und unter der Annahme, daß keine Funktionen einer höheren Ebene planmäßig zur Durchführung vorgesehen sind, wird die Ausführung des Testprogramms 214 wieder aufgenommen.
  • 4 ist ein Flußdiagramm, das allgemein die Logik darstellt, der die Steuerung 106 folgt, wenn der Prozessor 202 unter der Leitung durch das Testprogramm 214 wirksam ist.
  • Es wird nun Bezug genommen auf 4. Nach Einleitung des Testprogramms 214 (Schritt 302) ist die Steuerung 106 wirksam, um "X" Datenblöcke in dem RAID5-Speicherbereich 114 zu testen, um zu bestimmen, ob irgendwelche der Daten verfälscht sind (Schritt 304). Bei diesem Ausführungsbeispiel wird dieser Schritt durchgeführt, indem versucht wird, jeden Block von der Plattenanordnung 108 zu lesen. Wenn ein spezieller Block nicht gelesen werden kann, wird bestimmt, daß der Block verfälscht ist. Wenn der Block gelesen werden kann, wird ein neuer Fehlercode für den Block berechnet und dann mit dem Fehlercode verglichen, der für den Block gespeichert ist. Wenn die beiden Werte nicht identisch sind, wird entschieden, daß der Block verfälscht ist. Wenn jedoch die beiden Werte identisch sind, wird entschieden, daß der Block nicht verfälscht ist.
  • Wenn für einen beliebigen der Datenblöcke, die in Schritt 304 getestet werden, bestimmt wird, daß er verfälscht ist (Entscheidungsschritt 306), kann die Steuerung 106 unter Verwendung von herkömmlichen Techniken wirksam sein, um die verfälschten Daten wiederherzustellen (Schritt 310). Wenn jedoch für die getesteten Daten bestimmt wird, daß sie nicht verfälscht sind, testet die Steuerung 106 "Y" Datenblöcke, die in dem RAID1-Speicherbereich 112 gespeichert sind, auf eine ähnliche Weise, wie oben beschrieben wurde (Schritt 312). Wenn für einen beliebigen der "Y" Datenblöcke, die in Schritt 312 getestet werden, entschieden wird, daß er verfälscht ist (Entscheidungsschritt 314), kann die Steuerung 106 unter Verwendung von herkömmlichen Techniken wirksam sein, um die verfälschten Daten wiederherzustellen (Schritt 316).
  • Diese Schritte werden wiederholt, um alle Daten, die in der Plattenanordnung 108 gespeichert sind, fortschreitend und immer wieder zu testen. Es ist wichtig, festzustellen, daß die Anzahl der Datenblöcke ("X"), die in Schritt 304 getestet werden, größer ist als die Anzahl der Datenblöcke ("Y"), die in Schritt 312 getestet werden. Diese Werte werden so gewählt, daß das Verhältnis von t_RAID_5/t_RAID_1 gleich oder näherungsweise gleich dem Wert K ist.
  • Aus dem vorangehenden ist erkennbar, daß ein hierarchisches RAID-Speichersystem, das durch die Erfindung geliefert wird, eine neue und vorteilhafte Technik zum Reduzieren des Risikos eines Datenverlusts in dem System verwendet. Es ist auch wichtig, festzustellen, daß die vorliegende Erfindung verwendet werden kann, um die Zuverlässigkeit von anderen Typen von Speichersystemen zu verbessern.
  • Um die Anwendbarkeit der vorliegenden Erfindung auf andere Typen von Speichersystemen darzustellen, zeigt 5 ein Blockdiagramm eines zweiten Datenspeichersystems 402. Bei diesem Ausführungsbeispiel umfaßt das Speichersystem eine Steuerung 406 und mehrere Speicherbereiche 408. Die Steuerung 406 ist über ein erstes Kommunikationsverbindungsglied 412 mit einem externen Host-Computer 410 und über ein zweites Kommunikationsverbindungsglied 414 mit den mehreren Speicherbereichen 408 verbunden. Bei diesem Beispiel umfassen die mehreren Speicherbereiche 408 einen ersten Speicherbereich 420 und einen zweiten Speicherbereich 422. Jedem Speicherbereich ist eine charakteristische MTTF zugeordnet.
  • Der Wert der MTTF kann auf einer Anzahl von Faktoren basieren, einschließlich dem Datenredundanzschema, das verwendet wird, und der Zuverlässigkeit der Komponenten, die das Speichersystem bilden. Der erste Speicherbereich 420 kann z. B. eine Anordnung von Bandspeichergeräten zum Speichern von Daten gemäß einem ersten Datenredundanzschema darstellen. Der zweite Speicherbereich 422 kann z. B. eine Plattenanordnung zum Speichern von Daten gemäß einem zweiten Datenredundanzschema darstellen.
  • Zur Erleichterung der Diskussion wird auf die MTTF, die dem ersten Speicherbereich 420 zugeordnet ist, mit "MTTF(FIRST_AREA)" Bezug genommen. Auf die MTTF, die dem zweiten Speicherbereich 422 zugeordnet ist, wird mit "MTTF(SECOND_AREA)" Bezug genommen. Bei diesem Ausführungsbeispiel wird angenommen, daß MTTF(FIRST_AREA) kleiner ist als MTTF(SECOND_AREA).
  • Beim Betrieb kann die Steuerung 406 eine Anzahl von Funktionen durchführen, wie z. B. Empfangen und Verarbeiten von E/A-Befehlen vom Host-Computer 410. Ansprechend auf diese Befehle kann die Steuerung 406 Daten von den mehreren Speicherbereichen 408 lesen und auf sie schreiben.
  • Außerdem führt die Steuerung 406 auch eine Datentestfunktion durch, indem sie jeden der beiden Speicherbereiche bezüglich des Vorliegens von verfälschten Daten testet. Wenn während eines Testes verfälschte Daten erfaßt werden, können die Daten (wenn möglich) durch Verwendung von Standardtechniken wiederhergestellt werden.
  • Ähnlich wie beim ersten Ausführungsbeispiel bestehen Beschränkungen dahingehend, wie oft und wann die Datentestfunktion durchgeführt wird. Dies erlaubt der Steuerung 406, andere Funktionen durchzuführen (wie z. B. auf eine E/A-Anfrage anzusprechen). Als Folge dieser Beschränkungen wurde festgestellt, daß über eine gegebene Zeitdauer ("T_periode") und unter erwarteten Bedingungen der Betrag der Zeit, die zum Testen der mehrfachen Speicherbereiche 408 bezüglich Verfälschung aufgewendet wird, ein begrenzter Wert ist. Auf diesen begrenzten Wert wird mit "t_test" Bezug genommen.
  • Gemäß den Prinzipien der vorliegenden Erfindung ist die Steuerung 406 wirksam, um die Datentestfunktion durchzuführen, so daß während einer gegebenen "T_Periode" die Daten, die im ersten Speicherbereich 420 gespeichert sind, durchschnittlich häufiger getestet werden als der zweite Speicherbereich 422. Für die Zwecke dieses Dokuments, wird auf die Frequenz, mit der der erste Speicherbereich 420 getestet wird, mit "F_1" Bezug genommen. Desgleichen wird auf die Frequenz, mit der der zweite Speicherbereich 422 getestet wird, mit "F_2" Bezug genommen. Es ist wichtig, festzustellen, daß F_1 und F_2 so gewählt werden, daß MTTF(System) optimiert wird. Es ist erkennbar, daß F_1 und F_2 unter Verwendung einer Standard-Statistikanalyse bestimmt werden können. Auch basieren die Werte von F_1 und F_2 primär auf den Werten von MTTF(FIRST_AREA), MTTF(SECOND_AREA) und "t_test".
  • Es ist festzustellen, daß die Datentestfunktion durch ein erstes Testprogramm 436 und ein zweites Testprogramm 438 implementiert sein kann, die in einem internen Speicher 440 gespeichert sind. Das erste Testprogramm 436 leitet die Steuerung 406, um den ersten Speicherbereich 420 bezüglich einer Verfälschung zu testen. Außerdem leitet das zweite Testprogramm 438 die Steuerung 406, um den zweiten Speicherbereich 422 bezüglich einer Verfälschung zu testen. Wenn während eines der Tests eine Verfälschung detektiert wird, können die verfälschten Daten unter Verwendung von Standardtechniken wiederhergestellt werden.
  • Jedes der beiden Programme kann ein Hintergrundprogramm mit einer vorbestimmten Prioritätsebene sein. Außerdem ist für jedes dieser Programme planmäßig vorgesehen, daß sie zu unterschiedlichen Zeiten ausgeführt werden. Die Prioritätsebenen und die Ausführungszeiten werden so gewählt, daß unter erwarteten Bedingungen der erste Speicherbereich 420 mit einer Frequenz "F_1" getestet wird. Außerdem wird der zweite Speicherbereich 422 mit einer Frequenz "F_2" getestet.
  • Im Ergebnis ist MTTF(System) unter erwarteten Bedingungen optimiert. Demgemäß ist die Systemzuverlässigkeit verglichen mit ähnlichen Systemen nach dem Stand der Technik verbessert.
  • Es wird darauf hingewiesen, daß in den Ausführungsbeispielen, die oben beschrieben wurden, die Speichersysteme so beschrieben wurden, daß sie zwei Speicherbereiche aufweisen, denen jeweils eine unterschiedliche MTTF zugeordnet ist. Es ist jedoch erkennbar, daß die vorliegende Erfindung verwendet werden kann, um die Zuverlässigkeit von Speichersystemen mit mehr als zwei Speicherbereichen zu verbessern. Es sei z. B. angenommen, daß das Ausführungsbeispiel, das in 5 dargestellt ist, einen dritten Speicherbereich umfaßt, dem eine dritte MTTF zugeordnet ist. Auf die dritte MTTF wird hierin mit "MTTF(THIRD_AREA)" Bezug genommen. In diesem Fall basieren die Werte von "F_1", "F_2" und "F_3" vorzugsweise auf MTTF(FIRST_AREA), MTTF(SECOND_AREA), MTTF(THIRD_AREA) und t_test. Dabei ist F_3 die Frequenz, mit der der dritte Bereich getestet wird.
  • Es wird auch darauf hingewiesen, daß bei den oben beschriebenen Ausführungsbeispielen die Funktionalität, die durch das Testprogramm geliefert wird, tatsächlich durch mehr als ein Programm geliefert werden kann, die in mehr als einem Speichergerät gespeichert sind. Alternativ kann die Funktionalität ganz oder teilweise durch Hardwarekomponenten geliefert werden. Beispielsweise können ein oder mehrere Schritte, die in 3 dargestellt sind, durch den Betrieb (die folgende Liste ist nicht erschöpfend) einer anwendungsspezifischen integrierten Schaltung (ASIC; ASIC = application specific integrated circuit), eines programmierbaren Gatterarrays (PGA; PGA = programmable gate array), eines feldprogrammierbaren Gatterarrays (FPGA; FPGA = field programmable gate array) oder durch eine Kombination derselben durchge führt werden.
  • Außerdem kann die vorliegende Erfindung auch als ein computerverwendbares Medium verkörpert sein, das einen darin enthaltenen, computerlesbaren Programmcode aufweist, um zu bewirken, daß ein Computer einen oder mehrere der Schritte durchführt, die in 3 dargestellt sind. Im Kontext dieses Dokuments kann ein "computerverwendbares Medium" eine beliebige Einrichtung sein, die das Programm durch ein bzw. eine oder in Verbindung mit einem bzw. einer Anwendungsausführungs-System, -Vorrichtung oder -Gerät enthält, speichert, verbreitet oder anderweitig transportiert. Das computerverwendbare Medium kann z. B. (die folgende Liste ist nicht erschöpfend) ein magnetisches, optisches oder halbleiterbasierendes Speichergerät sein (z. B. der Speicher 304, der in 3 dargestellt ist).
  • Die vorliegende Erfindung kann z. B. verwendet werden, um viele unterschiedliche Typen von Speichersystemen zu verbessern. Zum Beispiel kann die vorliegende Erfindung verwendet werden, um Speichersysteme zu verbessern, die Daten gemäß mehr als zwei Datenredundanzschemata speichern.

Claims (7)

  1. Verfahren zum Verifizieren von in einem RAID-Datenspeichersystem (104) gespeicherten Daten, wobei das RAID-Datenspeichersystem (104) einen ersten Datenspeicherbereich (112) einer ersten RAID-Ebene (RAID1), dem eine erste mittlere Zeit bis zum Auftreten eines Fehlers (MTTF) zugeordnet ist, und einen zweiten Datenspeicherbereich (114) einer zweiten RAID-Ebene (RAID5), dem eine zweite mittlere Zeit bis zum Auftreten eines Fehlers zugeordnet ist, umfaßt, wobei das Verfahren folgende Schritte umfaßt: (a) Testen des ersten Speicherbereichs (112) während einer ersten Zeitdauer (t_RAID1); und (b) Testen des zweiten Speicherbereichs (114) während einer zweiten Zeitdauer (t_RAID5), wobei die Summe der ersten Zeitdauer (t_RAID1) und der zweiten Zeitdauer (t_RAID5) die zum Verifizieren verfügbare Zeitdauer (t_test) festlegt, wobei die zweite Zeitdauer (t_RAID5) gleich der ersten Zeitdauer (t_RAID1) multipliziert mit einem Faktor (K) ist, und wobei der Faktor (K) durch eine statistische Analyse basierend auf der ersten mittleren Zeit bis zum Auftreten eines Fehlers, der zweiten mittleren Zeit bis zum Auftreten eines Fehlers und der zum Verifizieren verfügbaren Zeitdauer (t_test) bestimmt wird.
  2. Verfahren gemäß Anspruch 1, bei dem die erste RAID-Ebene eine RAID1-Ebene ist.
  3. Verfahren gemäß Anspruch 1 oder 2, bei dem die zweite RAID-Ebene eine RAID5-Ebene ist.
  4. RAID-Datenspeichersystem (104) mit folgenden Merkmalen: (a) einem ersten Datenspeicherbereich (112) einer ersten RAID-Ebene (RAID1), dem eine erste mittlere Zeit bis zum Auftreten eines Fehlers zugeordnet ist; (b) einem zweiten Datenspeicherbereich (114) einer zweiten RAID-Ebene (RAID5), dem eine zweite mittlere Zeit bis zum Auftreten eines Fehlers zugeordnet ist; und (c) einer Einrichtung (106) zum Verifizieren von Daten, die in dem ersten Datenspeicherbereich (112) gespeichert sind, während einer ersten Zeitdauer (t_RAID1), und von Daten, die in dem zweiten Datenspeicherbereich (114) gespeichert sind, während einer zweiten Zeitdauer (t_RAID5), wobei die Summe der ersten Zeitdauer (t_RAID1) und der zweiten Zeitdauer (t_RAID5) die zum Verifizieren verfügbare Zeitdauer (t_test) festlegt, wobei die zweite Zeitdauer (t_RAID5) gleich der ersten Zeitdauer (t_RAID1) multipliziert mit einem Faktor (K) ist, und wobei der Faktor (K) durch eine statistische Analyse basierend auf der ersten mittleren Zeit bis zum Auftreten eines Fehlers, der zweiten mittleren Zeit bis zum Auftreten eines Fehlers und der zum Verifizieren verfügbaren Zeitdauer (t_test) bestimmt wird.
  5. RAID-Datenspeichersystem (104) gemäß Anspruch 4, bei dem die erste RAID-Ebene eine RAID1-Ebene ist.
  6. RAID-Datenspeichersystem (104) gemäß Anspruch 4 oder 5, bei dem die zweite RAID-Ebene eine RAID5-Ebene ist.
  7. RAID-Datenspeichersystem (104) gemäß Anspruch 4 oder 5, bei dem die zweite RAID-Ebene eine RAID6-Ebene ist.
DE10051610A 2000-01-24 2000-10-18 Datenspeichersystem und Verfahren zum Testen desselben Expired - Fee Related DE10051610B4 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US09/490,792 2000-01-24
US09/490,792 US6609219B1 (en) 2000-01-24 2000-01-24 Data corruption testing technique for a hierarchical storage system

Publications (2)

Publication Number Publication Date
DE10051610A1 DE10051610A1 (de) 2001-08-02
DE10051610B4 true DE10051610B4 (de) 2006-01-19

Family

ID=23949488

Family Applications (1)

Application Number Title Priority Date Filing Date
DE10051610A Expired - Fee Related DE10051610B4 (de) 2000-01-24 2000-10-18 Datenspeichersystem und Verfahren zum Testen desselben

Country Status (3)

Country Link
US (1) US6609219B1 (de)
JP (1) JP2001265536A (de)
DE (1) DE10051610B4 (de)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030009305A1 (en) * 2001-06-12 2003-01-09 Eden John S. Flexible, extensible, and portable testing platform
US7581253B2 (en) 2004-07-20 2009-08-25 Lenovo (Singapore) Pte. Ltd. Secure storage tracking for anti-virus speed-up
CN105957557B (zh) * 2016-05-03 2018-12-25 中国航天科技集团公司第九研究院第七七一研究所 一种面向指令存储器的可靠性评估方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5392244A (en) * 1993-08-19 1995-02-21 Hewlett-Packard Company Memory systems with data storage redundancy management
DE19536232C1 (de) * 1995-09-28 1996-10-24 Siemens Nixdorf Inf Syst Festplatten-Speichersystem mit gekoppelten Platten
US5572661A (en) * 1994-10-05 1996-11-05 Hewlett-Packard Company Methods and system for detecting data loss in a hierarchic data storage system
US5832204A (en) * 1996-03-12 1998-11-03 International Business Machines Corporation Efficient system for predicting and processing storage subsystem failure

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4775978A (en) 1987-01-12 1988-10-04 Magnetic Peripherals Inc. Data error correction system
JP2548480B2 (ja) * 1992-02-10 1996-10-30 富士通株式会社 アレイディスク装置のディスク装置診断方法
US5857112A (en) * 1992-09-09 1999-01-05 Hashemi; Ebrahim System for achieving enhanced performance and data availability in a unified redundant array of disk drives by using user defined partitioning and level of redundancy
US5621887A (en) * 1993-04-07 1997-04-15 Sequoia Systems, Inc. Fault tolerant disk management system which tests failed disks during varied time intervals which are based upon the criticality associated with the failed disks
US5504858A (en) 1993-06-29 1996-04-02 Digital Equipment Corporation Method and apparatus for preserving data integrity in a multiple disk raid organized storage system
US5581690A (en) 1993-06-29 1996-12-03 Digital Equipment Corporation Method and apparatus for preventing the use of corrupt data in a multiple disk raid organized storage system
US5500940A (en) 1994-04-25 1996-03-19 Hewlett-Packard Company Method for evaluating failure in an electronic data storage system and preemptive notification thereof, and system with component failure evaluation
US5615352A (en) 1994-10-05 1997-03-25 Hewlett-Packard Company Methods for adding storage disks to a hierarchic disk array while maintaining data availability
US5664187A (en) 1994-10-26 1997-09-02 Hewlett-Packard Company Method and system for selecting data for migration in a hierarchic data storage system using frequency distribution tables
US5961652A (en) 1995-10-13 1999-10-05 Compaq Computer Corporation Read checking for drive rebuild
KR100267366B1 (en) * 1997-07-15 2000-10-16 Samsung Electronics Co Ltd Method for recoding parity and restoring data of failed disks in an external storage subsystem and apparatus therefor
JP3557511B2 (ja) * 1997-08-27 2004-08-25 沖電気工業株式会社 半導体ディスク装置の寿命算出方法
US6138249A (en) * 1997-12-11 2000-10-24 Emc Corporation Method and apparatus for monitoring computer systems during manufacturing, testing and in the field

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5392244A (en) * 1993-08-19 1995-02-21 Hewlett-Packard Company Memory systems with data storage redundancy management
US5572661A (en) * 1994-10-05 1996-11-05 Hewlett-Packard Company Methods and system for detecting data loss in a hierarchic data storage system
DE19536232C1 (de) * 1995-09-28 1996-10-24 Siemens Nixdorf Inf Syst Festplatten-Speichersystem mit gekoppelten Platten
US5832204A (en) * 1996-03-12 1998-11-03 International Business Machines Corporation Efficient system for predicting and processing storage subsystem failure

Also Published As

Publication number Publication date
DE10051610A1 (de) 2001-08-02
US6609219B1 (en) 2003-08-19
JP2001265536A (ja) 2001-09-28

Similar Documents

Publication Publication Date Title
DE68924923T2 (de) Expertensystem zur Identifizierung wahrscheinlicher Ausfallspunkte in einem digitalen Verarbeitungssystem.
DE69631106T2 (de) On-line-Rekonfiguration einer Speicherplattenanordnung
DE69831732T2 (de) Verfahren und gerät zum korrigieren von fehlern in einem rechnersystem
DE69730449T2 (de) Erzeugung einer spiegeldatenkopie (bild) unter verwendung von referenzetiketten
DE112011100534B4 (de) Mehrstufiger Sicherungsprozess
DE69937768T2 (de) Externe Speichervorrichtung und Verfahren zur Datensicherung
DE69632219T2 (de) Speicherplattenanordnungssystem
DE3901579C2 (de)
DE102012109614B4 (de) Verfahren zum Wiederherstellen von Stapelüberlauf- oder Stapelunterlauffehlern in einer Softwareanwendung
DE112006002842B4 (de) Speicher-Diagnose-Vorrichtung
DE10233648A1 (de) Dynamischer Fehlerkorrekturcode mit variabler Länge
DE3876459T2 (de) Speicher und deren pruefung.
DE112010004947T5 (de) Wiederherstellung einer vollständigen Systemsicherung und inkrementeller Sicherungen unter Verwendung von mehreren gleichzeitigen Datenströmen von Einheiten
DE102009019961A1 (de) Vorrichtung, Systeme und Verfahren zum effizienten Verwenden von Hardware-Ressourcen für einen Softwaretest
DE69635713T2 (de) Diskarray-Teilsystem
EP0522332A1 (de) Rechner für den Leitstand einer Maschine, insbesondere eine Druckmaschine
DE102005012358A1 (de) Datenschutz unter Verwendung von Daten, die in Schnappschüsse verteilt sind
DE112018004637T5 (de) Maschinelles lernen zum verbessern von wiederherstellungen von redundanten anordnungen von unabhängigen festplatten
DE68922440T2 (de) Gerät und Verfahren zur gleichzeitigen Einreichung von Fehlerunterbrechung und Fehlerdaten zu einem Unterstützungsprozessor.
DE2225841B2 (de) Verfahren und Anordnung zur systematischen Fehlerprüfung eines monolithischen Halbleiterspeichers
DE102004039178A1 (de) Speichersteuerschaltung, Smartcard und Lesesteuerverfahren
DE10234138A1 (de) Verwalten einer Speicherkonkurrenz bei automatisierten Speichersystemen
DE102017126911A1 (de) Verknüpfter Speichersystem- und Hostsystem-Fehlerkorrekturcode
DE10051610B4 (de) Datenspeichersystem und Verfahren zum Testen desselben
DE69029164T2 (de) Vorrichtung und Verfahren zum Ersetzen der Parität

Legal Events

Date Code Title Description
OP8 Request for examination as to paragraph 44 patent law
8364 No opposition during term of opposition
R119 Application deemed withdrawn, or ip right lapsed, due to non-payment of renewal fee

Effective date: 20110502