DE102004064056B4 - Plattenarraysystem - Google Patents

Plattenarraysystem Download PDF

Info

Publication number
DE102004064056B4
DE102004064056B4 DE102004064056A DE102004064056A DE102004064056B4 DE 102004064056 B4 DE102004064056 B4 DE 102004064056B4 DE 102004064056 A DE102004064056 A DE 102004064056A DE 102004064056 A DE102004064056 A DE 102004064056A DE 102004064056 B4 DE102004064056 B4 DE 102004064056B4
Authority
DE
Germany
Prior art keywords
data
disk drive
hard disk
disk
controller
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
DE102004064056A
Other languages
English (en)
Inventor
Azuma Kano
Takuji Ogawa
Ikuya Yagisawa
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.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
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 Hitachi Ltd filed Critical Hitachi Ltd
Application granted granted Critical
Publication of DE102004064056B4 publication Critical patent/DE102004064056B4/de
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0662Virtualisation aspects
    • G06F3/0665Virtualisation aspects at area level, e.g. provisioning of virtual or logical volumes
    • 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/1076Parity data used in redundant arrays of independent storages, e.g. in RAID systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/382Information transfer, e.g. on bus using universal interface adapter
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0614Improving the reliability of storage systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0659Command handling arrangements, e.g. command buffers, queues, command scheduling
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0683Plurality of storage devices
    • G06F3/0689Disk arrays, e.g. RAID, JBOD
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • G11B20/18Error detection or correction; Testing, e.g. of drop-outs
    • G11B20/1816Testing
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • G11B20/18Error detection or correction; Testing, e.g. of drop-outs
    • G11B20/1879Direct read-after-write methods
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0866Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches for peripheral storage systems, e.g. disk cache
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • G11B20/18Error detection or correction; Testing, e.g. of drop-outs

Abstract

Plattenarraysystem, aufweisend: eine mit einer Informationsverarbeitungsvorrichtung (300) verbundene Steuerung (500) zur Kommunikation mit der Informationsverarbeitungsvorrichtung und zum Ausführen eines Datenlese- bzw. -schreibprozesses über eine Fibre-Channel-Arbitrated-Loop (FC-AL) (506), die Schaltungen (602) zum Umgehen eines daran angeschlossenen Plattenlaufwerks (51), in dem ein Fehler auftritt, aufweist, mehrere erste Plattenlaufwerkseinheiten (52), die in einer ersten RAID-Gruppe (Redundant Array of Inexpensive Disks) (1001) enthalten sind und jeweils ein mit einem Fibre-Channel-Interface (FC-Interface) versehenes und mit den Schaltungen der FC-AL verbundenes erstes Plattenlaufwerk (51) zum Speichern von Daten aufweisen, und ein Gehäuse (2101), das die ersten Plattenlaufwerkseinheiten (52) enthält, gekennzeichnet durch mehrere zweite Plattenlaufwerkseinheiten (52), die in einer zweiten RAID-Gruppe (1001) enthalten sind und jeweils einen mit den Schaltungen (602) der FC-AL (506) verbundenen Wandler (801) zum Umsetzen zwischen dem FC-Protokoll und dem seriell ATA-Protokoll (SATA-Protokoll) sowie ein mit einem SATA-Interface versehenes zweites Plattenlaufwerk zum Speichern von Daten, die über den...

Description

  • HINTERGRUND DER ERFINDUNG
  • Die Erfindung betrifft ein Plattenarraysystem.
  • In den letzten Jahren wird einhergehend mit der Zunahme von Speicherkapazität in Plattenarraysystemen deren Bedeutung in Informationsverarbeitungssystemen immer größer. Daher ist es wesentlich, Daten korrekt an einer angeforderten Position einzuschreiben und eine Inkorrektheit gelesener Daten auf eine Daten-Eingabe/Ausgabe-Anforderung von einer Informationsverarbeitungsvorrichtung oder dergleichen zu erkennen.
  • JP-A-5-150909 offenbart ein Verfahren, bei dem in einer Magnetplatteneinheit zwei Köpfe vorhanden sind und von den zwei Köpfen gelesene identische Daten miteinander verglichen werden, um die Zuverlässigkeit beim Schreiben und Lesen in der Magnetplatteneinheit zu verbessern.
  • Wenn das in JP-A-5-150909 offenbarte Verfahren bei einem Plattenarraysystem angewandt wird, müssen in jeder Magnetplatteneinheit zwei Köpfe angebracht werden. Demgemäß steigen die Einheitskosten zum Herstellen jedes Festplattenlaufwerks an. Daher ist ein Verfahren zum Verbessern der Zuverlässigkeit bei einem Festplattenlaufwerk ohne Änderung des körperlichen Aufbaus desselben, z. B. ohne Hinzufügens irgendeines Kopfs zu ihm, gefordert.
  • Außerdem wurden bei Plattenarraysystemen Festplattenlaufwerke gemäß seriell-ATA oder parallel-ATA sowie Faserkanal-Festplattenlaufwerke in Betrieb genommen. Festplattenlaufwerke gemäß seriell-ATA oder parallel-ATA sind hinsichtlich der Zuverlässigkeit Faserkanal-Festplattenlaufwerken unterlegen, sind jedoch billiger. Daher besteht Bedarf an der Entwicklung eines Verfahrens zum Verbessern der Zuverlässigkeit bei anderen Festplattenlaufwerken als solchen mit Faserkanal (FC) innerhalb eines Plattenarraysystems, das aus einer Kombination von Faserkanal-Festplattenlaufwerken und anderen Festplattenlaufwerken, die dem Seriell-ATA-Standard (SATA) oder dergleichen genügen, besteht.
  • Ein Plattenarraysystem mit FC-Plattenlaufwerken, die jeweils mit FC-AL-Kommunikationskanälen verbunden sind, ist in US 2001/0,014,956 A1 offenbart. Der Oberbegriff des Anspruchs 1 enthält die Merkmale, die die Erfindung mit dem aus dieser Druckschrift bekannten Stand der Technik gemeinsam hat.
  • US 2003/0,135,577 A1 offenbart ein System mit Plattenlaufwerkseinheiten, die über jeweils zwei SATA-Anschlüsse verfügen. Von jeder Laufwerkseinheit verlaufen zwei SATA-Verbindungen über eine Rückwand-Platine zu zwei Vorrichtungen, die jeweils einen FC-Anschluß zur Verfügung stellen.
  • EP 1 353 264 A2 betrifft die Verbindung von Plattenlaufwerken über ein Schaltnetzwerk mit einem Controller.
  • US 2003/0189811 A1 offenbart einen Adapter und eine Anordnung, bei der ATA-Festplattenlaufwerke mittels des Adapters in die Gehäuse von FC-Plattenlaufwerken elektrisch und mechanisch kompatibel eingebracht werden können.
  • ZUSAMMENFASSUNG DER ERFINDUNG
  • Der Erfindung liegt die Aufgabe zugrunde, ein Plattenarraysystem zu schaffen, das bei hoher Zuverlässigkeit und einfacher Handhabbarkeit preiswert erweiterbar ist.
  • Die Lösung dieser Aufgabe gelingt mit dem in Anspruch 1 angegebenen Plattenarraysystem. Die abhängigen Ansprüche betreffen bevorzugte Ausführungsformen der Erfindung.
  • Ein Plattenarraysystem gemäß einem Ausführungsbeispiel der Erfindung verfügt über ein erstes Gehäuse, ein zweites Gehäuse und einen Controller. Das erste Gehäuse beherbergt eine oder mehrere RAID-Gruppen. Jede RAID-Gruppe besteht aus mehreren Festplattenlaufwerken zum Senden/Empfangen von Daten entsprechend dem FC Schnittstellenstandard. Die Festplattenlaufwerke sind über einen Kommunikationspfad miteinander verbunden. Das zweite Gehäuse beherbergt eine oder mehrere RAID-Gruppen. Jede RAID-Gruppe besteht aus mehreren Festplattenlaufwerken zum Senden/Empfangen von Daten entsprechend dem SATA Schnittstellenstandard. Die Festplattenlaufwerke sind über den Kommunikationspfad mittels mehrerer Wandeleinheiten zum Wandeln des FC und des SATA Schnittstellenstandards ineinander verbunden. Die dem SATA Schnittstellenstandard genügenden Festplattenlaufwerke verfügen über geringere Zuverlässigkeit als die dem FC Schnittstellenstandard genügenden Festplattenlaufwerke. Der Controller verfügt über einen Kanal-Steuerabschnitt, einen Platten-Steuerabschnitt, einen Cachespeicher und eine CPU. Der Kanal-Steuerabschnitt ist mit einer Informationsverarbeitungsvorrichtung verbunden, um mit dieser in Kommunikation treten zu können. Der Kanal-Steuerabschnitt empfängt Anforderungen von der Informationsverarbeitungsvorrichtung. Die Anforderung beinhaltet eine Leseanforderung zum Lesen von Daten von den Festplattenlaufwerken im ersten oder zweiten Gehäuse sowie eine Schreibanforderung zum Schreiben von Daten in die Festplattenlaufwerke im ersten oder zweiten Gehäuse. Der Platten-Steuerabschnitt ist über den Kommunikationspfad mit den mehreren Festplattenlaufwerken im ersten und zweiten Gehäuse verbunden, um mit den mehreren Festplattenlaufwerken im ersten und zweiten Gehäuse in Kommunikation treten zu können. Der Platten-Steuerabschnitt führt eine Eingabe/Ausgabe von Daten und Paritätsdaten von/in die mehreren Festplattenlaufwerke im ersten und zweiten Gehäuse entsprechend der vom Kanal-Steuerabschnitt empfangenen Leseanforderung oder Schreibanforderung aus. Die Paritätsdaten sind Daten zum Erkennen von Fehlern über mehrere Datenstücke hinweg, einschließlich der Daten von/an die mehreren Festplattenlaufwerke im ersten und zweiten Gehäuse. Der Cachespeicher führt eine Zwischenspeicherung von Daten aus, die in die mehreren Festplattenlaufwerke zu schreiben sind. Die CPU überwacht die Steuerung über den Kanal-Steuerabschnitt und den Platten-Steuerabschnitt. Der Controller liest mehrere Datenstücke einschließlich Daten, wie sie in den mehreren Festplattenlaufwerken im zweiten Gehäuse gespeichert sind, und Paritätsdaten für die mehreren Datenstücke aus allen Festplattenlaufwerken der RAID-Gruppe, zu der die die Daten speichernden Festplattenlaufwerk gehören, und er untersucht, ob die die Daten enthaltenden mehreren Datenstücke mit fehlerhaftem Inhalt oder nicht in die Festplattenlaufwerke geschrieben wurden.
  • Außerdem verstellt der Controller beim Schreiben von Daten in eines der Festplattenlaufwerke im zweiten Gehäuse entsprechend der Schreibanforderung von der Informationsverarbeitungsvorrichtung einen zum Festplattenlaufwerk gehörenden Kopf ausgehend von einer Position, an der die Daten abgespeichert wurden. Danach liest der Controller die Daten von einer zum Festplattenlaufwerk gehörenden Magnetplatte sowie aus dem Cachespeicher, und er vergleicht die zwei ausgelesenen Datenstücke.
  • Außerdem bildet der Controller beim Empfangen der Schreibanforderung von der Informationsverarbeitungsvorrichtung zum Einschreiben von Daten in eines der Festplattenlaufwerke im zweiten Gehäuse aus den aus mehreren Sektoren bestehenden Daten eine Dateneinheit auf Grundlage der zu schreibenden Daten sowie Paritätsdaten zum Erkennen von Datenfehlern in den mehreren Sektoren, und er schreibt die Dateneinheit in das Festplattenlaufwerk. Wenn die Steuerung die Leseanforderung zum Lesen der Daten von der Informationsverarbeitungsvorrichtung empfängt, liest sie die Dateneinheit, und sie untersucht, ob die Daten mit fehlerhaftem Inhalt oder nicht im Festplattenlaufwerk gespeichert sind.
  • Der Kommunikationspfad ist ein FC-AL (Fiber Channel-Arbitrated Loop). Außerdem ist jede Wandlungseinheit ein Wandler zum Wandeln eines Faserkanalprotokolls und eines Seriell-ATA-Protokolls ineinander. Außerdem dient jede RAID-Gruppe zum Verwalten mehrerer Festplattenlaufwerke als eine Gruppe, wenn die Festplattenlaufwerke über RAID-Konfiguration verfügen. Für jede RAID-Gruppe werden logische Datenbereiche gebildet, die als Zugriffseinheiten ausgehend von der Informationsverarbeitungsvorrichtung dienen. Jedem logischen Datenbereich wird eine als LUN bezeichnete Kennung zugewiesen. Wenn von der Informationsverarbeitungsvorrichtung eine Schreibanforderung zum Schreiben von Daten in einen logischen Datenbereich empfangen wird, schreibt der Platten-Steuerabschnitt die Daten und Paritätsdaten zum Erkennen von Fehlern in den Daten in die die RAID-Gruppe bildenden Festplattenlaufwerke.
  • Demgemäß kann gemäß der Erfindung ein Plattenarraysystem geschaffen werden.
  • KURZE BESCHREIBUNG DER ZEICHNUNGEN
  • Die in dieser Beschreibung offenbarten Probleme und Lösungen für diese werden aus der folgenden detaillierten Beschreibung bevorzugter Ausführungsformen in Verbindung mit den beigefügten Zeichnungen besser ersichtlich werden.
  • 1A und 1B sind Diagramme, die das Aussehen eines Plattenarraysystems gemäß einer Ausführungsform der Erfindung zeigen;
  • 2A und 2B sind Diagramme, die die Konfiguration eines Mastergehäuses des Plattenarraysystems gemäß der Ausführungsform zeigen;
  • 3A und 3B sind Diagramme, die die Konfiguration eines Erweiterungsgehäuses des Plattenarraysystems gemäß der Ausführungsform zeigen;
  • 4 ist ein Diagramm, das die Konfiguration eines Festplattenlaufwerks gemäß der Ausführungsform zeigt;
  • 5 ist ein Diagramm, das die Konfiguration eines Plattenarraysystems zeigt;
  • 6 ist ein Diagramm, das den Zustand zeigt, gemäß dem durch eine CPU eines Controllers auszuführende Mikroprogramme in einen Speicher gemäß der Ausführungsform eingespeichert wurden;
  • 7 ist ein Diagramm, das einen Modus zum Verbinden von Faserkanal-Festplattenlaufwerken mit einem Platten-Steuerabschnitt des Controllers gemäß der Ausführungsform zeigt;
  • 8 ist ein Diagramm, das einen ersten Modus zum Verbinden von Seriell-ATA-Festplattenlaufwerken mit dem Platten-Steuerabschnitt des Controllers zeigt;
  • 9 ist ein Diagramm, das einen zweiten Modus zum Verbinden von Seriell-ATA-Festplattenlaufwerken mit dem Platten-Steuerabschnitt des Controllers gemäß einem Vergleichsbeispiel zeigt;
  • 10 ist ein Diagramm, das ein Beispiel zeigt, bei dem Daten in Festplattenlaufwerke geschrieben werden, die eine RAID-Gruppe gemäß der Ausführungsform bilden;
  • 11 ist ein Diagramm, das eine Aktualisierungskontrolltabelle gemäß der Ausführungsform zeigt;
  • 12 ist ein Flussdiagramm zum Vergleichen von in einem Cachespeicher abgespeicherten Daten mit in einer Magnetplatte abgespeicherten Daten, wenn Daten geschrieben werden;
  • 13 ist ein Flussdiagramm zum Vergleichen von in einem Cachespeicher abgespeicherten Daten mit in einer Magnetplatte abgespeicherten Daten unter Berücksichtigung der Datengröße, wenn Daten geschrieben werden;
  • 14 ist ein Flussdiagramm zum Vergleichen von in einem Cachespeicher abgespeicherten Daten mit in einer Magnetplatte abgespeicherten Daten, wenn im Cachespeicher abgespeicherte Daten in die Magnetplatte geschrieben werden;
  • 15 ist ein Diagramm, das eine Kopfprüf-Kontrolltabelle gemäß der Ausführungsform zeigt;
  • 16 ist ein Flussdiagramm für eine Kopfprüfung, wie sie gemäß der Ausführungsform periodisch auszuführen ist;
  • 17 ist ein Flussdiagramm zum Ausführen der Kopfprüfung, wenn Daten gelesen werden;
  • 18 ist ein Diagramm, das ein Beispiel zeigt, bei dem eine Dateneinheit in ein Festplattenlaufwerk gemäß der Ausführungsform geschrieben wurde;
  • 19 ist ein Diagramm, das ein Beispiel zeigt, bei dem jede Dateneinheit über mehrere Plattenlaufwerke gemäß der Ausführungsform eingeschrieben und verteilt wurde;
  • 20 ist ein Diagramm, das eine Dateneinheit-Kontrolltabelle gemäß der Ausführungsform zeigt; und
  • 21 ist ein Diagramm, das die Konfiguration eines erfindungsgemäßen Plattenarraysystems zeigt, bei dem Faserkanal-Festplattenlaufwerke in einem ersten Gehäuse untergebracht sind und Seriell-ATA-Festplattenlaufwerke in einem zweiten Gehäuse untergebracht sind.
  • DETAILLIERTE BESCHREIBUNG DER AUSFÜHRUNGSFORMEN
  • == Systemkonfiguration ==
  • Die 1A ist eine Vorderansicht eines Plattenarraysystems 10, das als eine Ausführungsform der Erfindung beschrieben wird. Die 1B ist eine Rückansicht des Plattenarraysystems 10. Die 2A ist eine perspektivische Ansicht eines Mastergehäuses 20, das am Plattenarraysystem 10 anzubringen ist, wobei man das Mastergehäuse 20 von seiner Vorderseite her sieht. Die 2B ist eine perspektivische Ansicht des Mastergehäuses 20 von seiner Rückseite her gesehen. Die 3A ist eine perspektivische Ansicht eines Erweiterungsgehäuses 30, das am Plattenarraysystem 10 anzubringen ist, wobei man das Erweiterungsgehäuse 30 von seiner Vorderseite her sieht. Die 3B ist eine perspektivische Ansicht des Erweiterungsgehäuses 30 von seiner Rückseite her gesehen.
  • Wie es in den 1A und 1B dargestellt ist, wird das Plattenarraysystem 10 unter Verwendung eines Rackrahmens 11 als Basis hergestellt. Montagerahmen 12 sind in mehreren Etagen ausgebildet, die oben und unten an der linken und rechten Innenseitenfläche des Rackrahmens 11 so angeordnet sind, dass sie sich in den Richtungen nach vorne/nach hinten erstrecken. Das Mastergehäuse 20 und das Erweiterungsgehäuse 30 sind ausziehbar entlang den Montagerahmen 12 montiert. Wie es in den 2A und 2B dargestellt ist, sind Platten oder Einheiten zum Bereitstellen verschiedener Funktionen für das Plattenarraysystem 10 am Mastergehäuse 20 und am Erweiterungsgehäuse 30 angebracht.
  • Wie es in der 2A dargestellt ist, sind mehrere Plattenlaufwerkeinheiten 52, in die jeweils ein Festplattenlaufwerk 51 eingebracht ist, parallel in die vordere, obere Etage des Mastergehäuses 20 eingesetzt. Jedes Festplattenlaufwerk 51 ist ein Festplattenlaufwerk mit einer Kommunikationsschnittstelle zum Bereitstellen einer Kommunikationsfunktion entsprechend einem FC-AL-Standard, oder einem Seriell-ATA-Standard.
  • In die vordere, untere Etage des Mastergehäuses 20 sind eine Batterieeinheit 53, eine Anzeigetafel 54 zum Anzeigen von Betriebszuständen usw. der Festplattenlaufwerke 51 sowie ein Diskettenlaufwerk 55 eingesetzt. Die Batterieeinheit 53 verfügt über eine Sekundärbatterie. Die Batterieeinheit 53 hat eine Funktion als Ersatzspannungsversorgung zum Liefern von Spannung an Leiterplatten oder Einheiten, wenn die Spannungsversorgung von einer AC/DC-Spannungsversorgung 57 aufgrund eines Netzausfalls oder dergleichen stoppt. Die Anzeigetafel 54 ist mit Anzeigevorrichtungen wie LED-Lampen oder dergleichen zum Anzeigen der Betriebszustände usw. der Festplattenlaufwerke 51 versehen. Das Diskettenlaufwerk 55 wird z. B. zum Laden eines Wartungsprogramms verwendet.
  • Wie es in der 2B dargestellt ist, sind Spannungsversorger-Controllerplatten 56 an den entgegengesetzten Seitenflächen in der hinteren, oberen Etage des Mastergehäuses 20 einzeln eingesetzt. Jede Spannungsversorgungs-Controllerplatte 56 ist mit mehreren Festplattenlaufwerken 51 so verbunden, dass sie mit diesen Kommunikationsvorgänge errichten kann. Z. B. sind die Spannungsversorgung-Controllerplatte 56 und die mehreren Festplattenlaufwerke 51 so verbunden, dass für Kommunikationsvorgänge über einen schleifenartigen Kommunikationspfad wie einen solchen, der für Kommunikation in einem FC/AL-System (Topologie) sorgt, gesorgt werden kann.
  • Jede Spannungsversorgung-Controllerplatte 56 ist mit Schaltkreisen zum Überwachen des Zustands der AC/DC-Spannungsversorgung 57, zum Überwachen der Zustände der Festplattenlaufwerke 51, zum Steuern der Spannungsversorgung der Festplattenlaufwerke 51, zum Steuern der Kühlkapazität einer Kühleinheit, zum Steuern der Anzeigevorrichtungen auf der Anzeigetafel 54, zum Überwachen der Temperatur jedes Abschnitts des Gehäuses, usw. versehen. Übrigens ist die Kühleinheit eine Einheit zum Kühlen des Inneren des Plattenarraysystems 10 oder des Inneren des Gehäuses 20 oder 30. Z. B. ist die Kühleinheit ein Interkühler, eine Wärmesenke, ein Kühllüfter vom Luftkühltyp oder dergleichen. Die Spannungsversorgung-Controllerplatte 56 ist mit einem Faserkanalkabel-Verbinder 67 versehen, mit dem ein Faserkanalkabel 91 verbunden ist.
  • Wie es in der 2B dargestellt ist, sind zwei AC/DC-Spannungsversorgungen 57 parallel in einem Raum zwischen den zwei Spannungsversorgung-Controllerplatten 56 in der hinteren, oberen Etage des Mastergehäuses 20 angebracht. Jede AC/DC-Spannungsversorgung 57 liefert Spannung an die Festplattenlaufwerke 51, die Leiterplatten, die Einheiten usw. Die AC/DC-Spannungsversorgung 57 ist mit der Spannungsversorgung-Controllerplatte 56 verbunden, und sie ist so aufgebaut, dass sie Spannung entsprechend einem Signal von der Spannungsversorgung-Controllerplatte 56 an jedes Festplattenlaufwerk 51 liefern kann.
  • Übrigens ist diese Ausführungsform so konzipiert, dass zwei Spannungsversorgung-Controllerplatten 56 und zwei AC/DC-Spannungsversorgungen 57 redundant sowohl im Mastergehäuse 20 als auch im Erweiterungsgehäuse 30 vorhanden sind, um für Sicherheit hinsichtlich der Spannungsversorgung an jedes Gehäuse 20, 30 zu sorgen. Jedoch können in jedem Gehäuse 20, 30 eine Spannungsversorgung-Controllerplatte 56 und eine AC/DC-Spannungsversorgung 57 montiert sein.
  • Jede AC/DC-Spannungsversorgung 57 ist mit einem Unterbrechungsschalter 64 zum Ein-/Ausschalten des Ausgangssignals der AC/DC-Spannungsversorgung 57 versehen.
  • Wie es in der 2B dargestellt ist, sind zwei Luftkühlungs-Lüftereinheiten 58 parallel unter den AC/DC-Spannungsversorgungen 57 angebracht. Jede Kühlungslüftereinheit 58 ist mit einem oder mehreren Kühllüftern 66 versehen. Die Kühllüfter 66 ermöglichen es, dass Luft in das Gehäuse einströmt/aus ihm ausströmt, um dadurch Wärme, wie sie von den Festplattenlaufwerken 51, den AC/DC-Spannungsversorgungen 57 usw. erzeugt wird, zur Außenseite des Gehäuses auszugeben. Übrigens sind im Gehäuse 20, 30 Belüftungspfade oder Belüftungslöcher zum Umwälzen der Luft durch jedes Mastergehäuse 20/Erweiterungsgehäuse 30 und daran montierte Leiterplatten oder Einheiten ausgebildet, um einen Mechanismus zum effizienten Ausgeben von Wärme im Gehäuse 20, 30 nach außen mittels der Kühllüfter 66 zu bilden. Obwohl Kühllüfter 66 für jedes Festplattenlaufwerk 51 vorhanden sein können, ist es bevorzugt, dass für jedes Gehäuse größere Kühllüfter 66 vorhanden sind, so dass die Anzahl der Chips oder Einheiten verringert werden kann.
  • Jede Kühllüftereinheit 58 ist mit einer Controllerplatte 59 oder der Spannungsversorgung-Controllerplatte 56 über eine Steuerleitung verbunden. Die Drehzahl jedes Kühllüfters 66 der Kühllüftereinheit 58 wird durch die Controllerplatte 59 oder die Spannungsversorgung-Controllerplatte 56 über die Steuerleitung gesteuert.
  • Wie es in der 2B dargestellt ist, ist eine Controllerplatte 59 in die hintere, untere Etage des Mastergehäuses 20 eingesetzt. Die Controllerplatte 59 ist mit einer Kommunikationsschnittstelle zu den im Mastergehäuse 20 und den Erweiterungsgehäusen 30 angebrachten Festplattenlaufwerken 51, Schaltkreisen zum Steuern der Betriebsabläufe der Festplattenlaufwerke 51 (z. B. zum Steuern derselben in einem RAID-System) oder zum Überwachen der Zustände der Festplattenlaufwerke 51, usw., versehen.
  • Übrigens steuern zwar bei dieser Ausführungsform die Spannungsversorgung-Controllerplatten 56 die Spannungsversorgung für die Festplattenlaufwerke 51 oder die Kühlkapazität der Kühleinheiten, jedoch kann die Controllerplatte 59 eine derartige Steuerung ausführen.
  • Diese Ausführungsform verwendet einen Modus, bei dem die Controllerplatte 59 mit einer Kommunikations-Schnittstellenkarte 61, zum Bereitstellen einer Funktion einer Kommunikationsschnittstelle zu einer Informationsverarbeitungsvorrichtung 300, z. B. einer Kommunikationsfunktion entsprechend einem SCSI Standard oder einem Faserkanalstandard, einem Cachespeicher 62 zum Speichern von in die Festplattenlaufwerke 51 zu speichernden Daten oder von aus ihnen auszulesenden Daten, usw., versehen ist. Jedoch können diese Funktionen auf einer anderen Leiterplatte untergebracht sein.
  • Die an der Controllerplatte 59 angebrachte Kommunikations-Schnittstellenplatte 61 ist mit einem externen Verbinder 63 zum Herstellen einer Verbindung zur Informationsverarbeitungsvorrichtung 300 versehen. Der externe Verbinder 63 genügt einem vorbestimmten Schnittstellenstandard wie SAN (Storage Area Network), LAN (Local Area Network) oder SCSI, der durch ein Protokoll wie Faserkanal, Ethernet (registrierte Handelsbezeichnung) oder dergleichen gebildet ist. Das Plattenarraysystem 10 ist über ein mit dem Verbinder 63 verbundenes Kommunikationskabel 92 mit der Informationsverarbeitungsvorrichtung 300 verbunden.
  • Übrigens können zwei Controllerplatten 59 redundant im Mastergehäuse 20 angebracht sein, um für Sicherheit hinsichtlich der Steuerung der Festplattenlaufwerke 51 zu sorgen.
  • Wie es in der 3A dargestellt ist, sind mehrere Plattenlaufwerkseinheiten 52, die Festplattenlaufwerke 51 aufnehmen, parallel an der Vorderseite jedes Erweiterungsgehäuses 30 angebracht. Wie es in der 3B dargestellt ist, sind Spannungsversorgung-Controllerplatten 56 einzeln an den hinteren, entgegengesetzten Seitenflächen des Erweiterungsgehäuses 30 eingesetzt. Außerdem sind zwei AC/DC-Spannungsversorgungen 57 parallel in einem Raum zwischen den zwei Spannungsversorgung-Controllerplatten 56 angebracht. Zusätzlich sind zwei Kühllüftereinheiten 58 parallel unter den AC/DC-Spannungsversorgungen 57 angebracht. Jede AC/DC-Spannungsversorgung 57 ist mit einem Unterbrechungsschalter 64 zum Ein-/Ausschalten der Spannung der AC/DC-Spannungsversorgung 57 versehen.
  • Diese Ausführungsform ist so konzipiert, dass zwei Spannungsversorgung-Controllerplatten 56 und zwei AC/DC-Spannungsversorgungen 57 redundant in jedem Erweiterungsgehäuse 30 vorhanden sind, um, wie oben beschrieben, für Sicherheit hinsichtlich der Spannungsversorgung zum Erweiterungsgehäuse 30 zu sorgen. Jedoch können eine Spannungsversorgung-Controllerplatte 56 und eine AC/DC-Spannungsversorgung 57 im Erweiterungsgehäuse 30 angebracht sein. Übrigens können die Funktionen der Spannungsversorgung-Controllerplatten 56 zum Steuern der Spannungsversorgung für die Festplattenlaufwerke 51, zum Steuern der Kühlkapazität der Kühleinheiten usw. auf der Controllerplatte 59 vorhanden sein.
  • Die 4 zeigt ein Beispiel für die Konfiguration jedes Festplattenlaufwerks 51, wie es in jeder Plattenlaufwerkeinheit 52 aufgenommen ist. Das Festplattenlaufwerk 51 verfügt über ein Gehäuse sowie Magnetplatten 73, Stellglieder 71, einen Spindelmotor 72, Köpfe 74 zum Lesen/Schreiben von Daten, eine Mechanismussteuerschaltung 75 zum Steuern von Mechanismusteilen wie den Köpfen 74 und dergleichen, eine Signalverarbeitungsschaltung 76 zum Steuern eines Lese/Schreib-Signals für Daten von/in jede Magnetplatte 73, eine Kommunikations-Schnittstellenschaltung 77, einen Schnittstellenverbinder 79 zum Eingeben/Ausgeben verschiedener Befehle oder Daten über ihn sowie einen Spannungsversorgungsverbinder 80, die alle im Gehäuse 70 angeordnet sind. Übrigens ist in der Kommunikations-Schnittstellenschaltung 77 ein Cachespeicher zum Zwischenspeichern von Daten enthalten. Übrigens wird der zum Festplattenlaufwerk 51 gehörende Cachespeicher als Plattencache bezeichnet, um ihn von einem Cachespeicher 62 in einem Controller 500, der später beschrieben wird, zu unterscheiden.
  • Jedes Festplattenlaufwerk 51 ist z. B. eine Speichereinheit, die mit 3,5-Zoll-Magnetplatten vom Contact-Start-Stop(CSS)-Typ, 2,5-Zoll-Magnetplatten vom Lade/Entlade-Typ oder dergleichen versehen ist. So verfügt jede 3,5-Zoll-Magnetplatte über eine Kommunikationsschnittstelle gemäß FC-AL. Andererseits verfügt jede 2,5-Zoll-Magnetplatte über eine Kommunikationsschnittstelle gemäß seriell-ATA.
  • Wenn jede 2,5-Zoll-Magnetplatte im Gehäuse 20, 30 des Plattenarraysystems 10 aufgenommen wird, kann sie in einem Behälter mit 3,5-Zoll-Form aufgenommen werden. So kann die Stoßfestigkeitsfunktion der Magnetplatten verbessert werden. Übrigens unterscheiden sich eine 2,5-Zoll-Magnetplatte und eine 3,5-Zoll-Magnetplatte nicht nur hinsichtlich der Kommunikationsschnittstelle voneinander, sondern auch hinsichtlich der I/O-Funktion, des Energieverbrauchs, der Lebensdauer usw. Eine 2,5-Zoll-Magnetplatte ist hinsichtlich der I/O-Funktion einer 3,5-Zoll-Magnetplatte unterlegen, und die Lebensdauer der ersteren ist kürzer als die der letzteren. Jedoch ist eine 2,5-Zoll-Magnetplatte einer 3,5-Zoll-Magnetplatte dahingehend überlegen, dass der Energieverbrauch der ersteren kleiner als der der letzteren ist.
  • == Hardwarekonfiguration des Plattenarraysystems ==
  • Die 5 ist ein Blockdiagramm, das die Hardwarekonfiguration des Plattenarraysystems 10 zeigt.
  • Wie es in der 5 dargestellt ist, sind Informationsverarbeitungsvorrichtungen 300 über ein SAN mit dem Plattenarraysystem 10 verbunden. Die Informationsverarbeitungsvorrichtungen 300 sind z. B. PCs, Workstations, Großrechner oder dergleichen.
  • Das Plattenarraysystem 10 verfügt über ein Mastergehäuse 20 und eines oder mehrere Erweiterungsgehäuse 30, wie bereits beschrieben. Bei dieser Ausführungsform verfügt das Mastergehäuse 20 über Controller 500, Festplattenlaufwerke 51 usw. Jeder Controller 500 verfügt über Kanal-Steuerabschnitte 501, Platten-Steuerabschnitte 502, eine CPU 503, einen Speicher 504, einen Cachespeicher 62, einen Datencontroller 505 usw. Der Controller 500 ist an der oben genannten Steuerplatte 59 angebracht. Andererseits verfügt jedes Erweiterungsgehäuse 30 über Festplattenlaufwerke 51 usw. Die Festplattenlaufwerke 51 im Mastergehäuse und in den Erweiterungsgehäusen sind über eine FC-AL 506 mit den Platten-Steuerabschnitte 502 verbunden, um für Kommunikation mit diesen sorgen zu können. Übrigens wird der Verbindungsmodus zwischen jedem Platten-Steuerabschnitt 502 und jedem Festplattenlaufwerk 51 später detailliert beschrieben.
  • Jeder Kanal-Steuerabschnitt 501 ist eine Schnittstelle zum Errichten von Kommunikation mit den Informationsverarbeitungsvorrichtungen 300. Der Kanal-Steuerabschnitt 501 verfügt über eine Funktion zum Aufnehmen einer Blockzugriffsanforderung entsprechend einem Faserkanalprotokoll.
  • Jeder Platten-Steuerabschnitt 502 ist eine Schnittstelle zum Austauschen von Daten mit den Festplattenlaufwerken 51 entsprechend einer Anweisung von der CPU 503. Der Platten-Steuerabschnitt 502 verfügt über eine Funktion zum Senden einer Daten-Eingabe/Ausgabe-Anforderung an die Festplattenlaufwerke 51 entsprechend einem Protokoll, in dem Befehle usw. zum Steuern der Festplattenlaufwerke 51 festgelegt sind.
  • Die CPU 503 verwaltet die Steuerung des Plattenarraysystems 10 insgesamt. Die CPU 503 führt im Speicher 504 abgespeicherte Mikroprogramme aus, um die Kanal-Steuerabschnitte 501, die Platten-Steuerabschnitte 502, den Datencontroller 505 usw. zu steuern. Zu den Mikroprogrammen gehören ein Datenleseprozess 601, ein Datenschreibprozess 602 und dergleichen, wie es in der 6 dargestellt ist.
  • Der Cachespeicher 62 dient zum zeitweiligen Abspeichern von Daten, wie sie zwischen jedem Kanal-Steuerabschnitt 501 und jedem Platten-Steuerabschnitt 502 auszutauschen sind.
  • Der Datencontroller 505 führt eine Datenübertragung zwischen jedem Kanal-Steuerabschnitt 501 und dem Cachespeicher 62 oder zwischen diesem und jedem Platten-Steuerabschnitt 502 unter Steuerung durch die CPU 503 aus.
  • Jeder Controller 500 verfügt aber eine Funktion des Steuerns der Festplattenlaufwerke 51 auf RAID-Ebene (z. B. 0, 1 oder 5), entsprechend eine sogenannten RAID(Redundant Array of Inexpensive Disks)-System. Beim RAID-System werden mehrere Festplattenlaufwerke 51 als eine Gruppe verwaltet (nachfolgend als RAID-Gruppe bezeichnet). Logische Datenbereiche, die als Zugriffseinheiten von den Informationsverarbeitungsvorrichtungen 300 dienen, sind in jeder RAID-Gruppe ausgebildet. Eine als LUN (Logical Unit Number) bezeichnete Kennung ist jedem logischen Datenbereich zugewiesen. Im Speicher 504 ist Information zur RAID-Konfiguration in Form einer RAID-Konfigurationstabelle 603 abgespeichert, wie es in der 6 dargestellt ist. Die CPU 503 nimmt auf die RAID-Konfigurationstabelle 603 Bezug, wennsie den Datenleseprozess 601 oder den Datenschreibprozess 602 ausführt.
  • Übrigens muss das Plattenarraysystem z. B. nicht ein System sein, das auf die oben beschriebene Weise konzipiert ist, sondern es kann ein als NAS (Network Attached Storage) dienendes System sein, das so konzipiert ist, dass es eine Daten-Eingabe/Ausgabe-Anforderung auf Grundlage einer Datennamensspezifizierung von irgendeiner der Informationsverarbeitungsvorrichtungen 300 entsprechend einem Protokoll wie NFS (Network File System) akzeptiert.
  • == Verbindungsmodus von Festplattenlaufwerken ==
  • Als Nächstes erfolgt eine Beschreibung zum Verbindungsmodus zwischen jedem Controller 500 und jedem Festplattenlaufwerk 51.
  • Die 7 zeigt einen Verbindungsmodus zwischen jedem Platten-Steuerabschnitt 502 und jedem Faserkanal-Festplattenlaufwerk 51, wie es im Mastergehäuse 20 untergebracht ist.
  • Jeder Platten-Steuerabschnitt 502 ist über eine FC-AL mit mehreren Festplattenlaufwerken 51 verbunden. Die FC-AL 506 verfügt über mehrere PBCs (Port Bypass Circuits) 701. Die FaserkanalFestplattenlaufwerke 51 sind jeweils über die PBCs 701 mit der FC-AL 506 verbunden. Jede PBC 701 ist ein als Chip ausgebildeter elektronischer Schalter. Die PBCs 701 verfügen auch über eine Funktion des Umgehens der Platten-Steuerabschnitte 502 oder der Festplattenlaufwerke 51, um sie dadurch elektrisch von der FC-AL 506 auszuschließen. Genauer gesagt, trennen die PBCs 701, wenn in irgendwelchen Festplattenlaufwerke 51 Fehler auftreten, die Festplattenlaufwerke 51 von der FC-AL 506, so dass für Kommunikationsvorgänge zwischen einem beliebigen anderen Festplattenlaufwerk 51 und jedem Platten-Steuerabschnitt 502 gesorgt werden kann.
  • Außerdem ermöglichen es die PBCs 701, die Festplattenlaufwerke 51 zu entnehmen und einzusetzen, während der Betrieb der FC-AL 506 erhalten bleibt. Wenn z. B. ein neues Festplattenlaufwerk 51 eingesetzt wird, wird es in die FC-AL 506 eingebaut, damit zwischen dem Festplattenlaufwerk 51 und dem Platten-Steuerabschnitt 502 für Kommunikation gesorgt werden kann. Übrigens kann eine Leiterplatte der PBCs 701 am Rackrahmen 11 des Plattenarraysystems 10 vorhanden sein, oder sie kann teilweise oder ganz an der Controllerplatte 59 oder der Spannungsversorgung-Controllerplatte 56 angebracht sein.
  • Die 8 zeigt einen Verbindungsmodus zwischen jedem Platten-Steuerabschnitt 502 und jedem im Mastergehäuse 20 untergebrachten Seriell-ATA-Festplattenlaufwerk 51.
  • Jedes Festplattenlaufwerk 51 ist über einen Wandler 801 mit PBCs 602 der FC-AL 506 verbunden. Der Wandler 801 ist eine Schaltung zum Wandeln eines Faserkanalprotokolls und eines Seriell-ATA-Protokolls ineinander. Der Wandler 801 besteht aus einem Chip, in den eine Protokollwandelfunktion eingebaut ist. Der Wandler 801 ist in jeder Plattenlaufwerkeinheit 52 enthalten.
  • Die 9 zeigt ein Vergleichsbeispiel mit einem anderen Verbindungsmodus, bei dem Seriell-ATA-Festplattenlaufwerke 51 im Mastergehäuse 20 untergebracht sind.
  • Jeder Wandler 901 ist eine Schaltung zum Wandeln eines Faserkanalprotokolls und eines Seriell-ATA-Protokolls ineinander, auf dieselbe Weise wie beim Wandler 801 in der 8. Der Wandler 901 ist mit einer PBC 602 einer FC-AL 506 verbunden. Mehrere Festplattenlaufwerke 51 sind über jeweilige Schalter 902 mit jedem Wandler 901 verbunden. Die Schalter 902 sind Schaltungen zum Auswählen eines Festplattenlaufwerks 51, mit dem für Kommunikation gesorgt werden soll, wenn die Festplattenlaufwerke 51 mit mehreren Wandlern 901 verbunden sind. Jeder Schalter 902 ist jeder Plattenlaufwerkseinheit 52 vorhanden. Jeder Wandler 901 besteht aus einem Chip oder mehreren Schaltkreisen, in die eine Protokollwandelfunktion eingebaut ist. Z. B. kann der Wandler 901 durch die Konfiguration einer SATA-Mastervorrichtung implementiert sein, wie sie in der ”US-Patentanmeldung mit der Veröffentlichungs-Nr. 2003/0135577” offenbart ist. Der Wandler 901 ist auf der Controllerplatte 59, der Spannungsversorgung-Controllerplatte 56 oder dergleichen angebracht.
  • == Steuerung zum Verbessern der Zuverlässigkeit ==
  • Nun erfolgt eine Beschreibung zu einem Verfahren zum Verbessern der Zuverlässigkeit beim Lesen von den Festplattenlaufwerken oder beim Schreiben auf diese im oben beschriebenen Plattenarraysystem 10.
  • == Paritätsprüfung bei RAID-Konfiguration ==
  • Als Erstes erfolgt eine Beschreibung zu einem Verfahren zum Untersuchen, ob in einem Festplattenlaufwerk 51 von RAID-Konfiguration abgespeicherte Daten in einem falschen Zustand vorliegen oder nicht. Hierbei bedeutet der falsche Zustand einen solchen, bei dem Daten nicht an einen Ort geschrieben sind, wie er durch den Platten-Steuerabschnitt 502 spezifiziert wurde, und nicht mit entsprechend spezifiziertem Inhalt.
  • Die 10 zeigt einen Zustand, bei dem Daten in Festplattenlaufwerke 51 gemäß RAID-5 gespeichert sind. Bei RAID-5 besteht eine RAID-Gruppe 1001 aus mehreren Festplattenlaufwerken 51. Beim Beispiel der 10 sind Daten A–D und Paritätsdaten P(A–D) zum Erkennen von Fehlern in den Daten A–D in den Festplattenlaufwerken 51 gespeichert. Auf dieselbe Weise sind Daten E–H und Paritätsdaten P(E–H) für die Daten E–H abgespeichert. Eine derartige Kombination von Daten und Paritätsdaten wird als Streifengruppe 1002 bezeichnet. Bei einer RAID-Konfiguration mit derartigen darin ausgebildeten Streifengruppen 1002 kann der alle Daten und Paritätsdaten der Streifengruppe 1002 lesende Controller 500 untersuchen, ob sich die Daten in einem falschen Zustand befinden oder nicht. Als Erstes liest der Platten-Steuerabschnitt 502, entsprechend einer Anweisung von der CPU 503, die Daten A–D und die Paritätsdaten P(A–D). Als Nächstes führt die CPU 503 eine Paritätsprüfung unter Verwendung der Daten A–D und der Parität P(A–D) aus. So kann untersucht werden. ob irgendein Stück der Daten A–D in einem falschen Zustand vorliegt oder nicht.
  • Wenn eine Datenleseanforderung von irgendeiner der Informationsverarbeitungsvorrichtungen 300 empfangen wird, kann der Controller 500 alle Daten und Paritätsdaten in einer Streifengruppe einschließlich der zu lesenden Daten lesen. So kann verhindert werden, dass der Controller 500 falsche Daten von den Festplattenlaufwerken 51 liest und solche falsche Daten an die Informationsverarbeitungsvorrichtung 300 sendet. Übrigens kann die Prüfung auf falsche Daten nicht nur beim Empfangen einer Datenleseanforderung sondern zu jedem beliebigen gewünschten Zeitpunkt erfolgen. Auf solche Weise kann die Erkennung falscher Daten ausgeführt werden, ohne dass sich irgendein Einfluss auf die Datenlesefunktion ergäbe.
  • Außerdem ist es unter Verwendung einer Aktualisierungskontrolltabelle 1101, wie sie in der 11 dargestellt ist, möglich, zu untersuchen, ob sich die in die Festplattenlaufwerke 51 eingeschriebenen Daten in einem falschen Zustand befinden oder nicht. Die Aktualisierungskontrolltabelle 1101 besteht aus Laufwerksnummern und Sektornummern, und sie ist im Speicher 504 abgespeichert. Bei dieser Ausführungsform sind die Sektornummern durch die LBA (Logical Block Address) definiert, und sie werden mit Einheiten von 128 LBA verwaltet, wie es durch LBA #1–128 veranschaulicht ist. Übrigens besteht für die Packungseinheit der Sektornummern keine Beschränkung auf 128, sondern es kann sich um jede beliebige gewünschte Einheit handeln. Wenn Daten über den Platten-Steuerabschnitt 502 in ein Festplattenlaufwerk 51 eingeschrieben werden, ändert die CPU 503 den Sektorwert des dem Schreibvorgang unterliegenden Festplattenlaufwerks 51 in der Aktualisierungskontrolltabelle 1101 auf ”1”. Die CPU 503 liest, über den Platten-Steuerabschnitt 502, alle Daten und Paritätsdaten einer Streifengruppe einschließlich des Zielsektors des Festplattenlaufwerks 51, wie als ”1” in der Aktualisierungskontrolltabelle 1101 abgespeichert, und sie führt eine Paritätsprüfung aus. Wenn die gelesenen Daten nicht falsch sind, ändert die CPU 503 den Wert des Sektors in der Aktualisierungskontrolltabelle 1101 auf ”0”. Wenn die CPU 503 eine Datenleseanforderung von irgendeiner der Informationsverarbeitungsvorrichtungen 300 über den Kanal-Steuerabschnitt 501 empfängt, nimmt sie auf die Aktualisierungskontrolltabelle 1101 Bezug, und sie klärt, ob ein die zu lesenden Daten speichernder Sektor untersucht wurde oder nicht. Wenn der die Daten speichernde Sektor nicht untersucht wurde, untersucht die CPU 503 Daten einer die zu lesenden Daten enthaltenden Streifengruppe entsprechend der oben genannten Prozedur. Auf solche Weise wird eine Untersuchung an den in jedes Festplattenlaufwerk 51 eingeschriebenen Daten vor dem Empfang einer Leseanforderung zum Lesen der Daten ausgeführt. So kann verhindert werden, dass sich die Datenlesefunktion verschlechtert. Außerdem wird der noch fehlende Abschluss der Prüfung in der Aktualisierungskontrolltabelle 1101 abgespeichert, und es wird eine Paritätsprüfung ausgeführt, wenn nicht untersuchte Daten gelesen werden. So kann verhindert werden, dass falsche Daten gelesen werden.
  • == Untersuchung von Schreibdaten ==
  • Als Nächstes erfolgt eine Beschreibung zu einem Verfahren zum Untersuchen, ob Daten korrekt geschrieben werden oder nicht, wenn sie in ein Festplattenlaufwerk 51 geschrieben werden.
  • Die 12 ist ein Flussdiagramm, das die Kontrolle durch die CPU 503 zeigt, wenn der Controller 500 Daten in ein Festplattenlaufwerk 51 schreibt. Wenn die CPU 503 eine Datenschreibanforderung von irgendeiner der Informationsverarbeitungsvorrichtungen 300 über den Kanal-Steuerabschnitt 501 empfängt, sendet sie eine Anweisung zum Schreiben der Daten in ein Festplattenlaufwerk 51 an den Platten-Steuerabschnitt 502 (S1201). Dann sendet die CPU 503 eine Anweisung zum Ausführen eines Suchprozesses zum Verstellen der Position eines Kopfs einer Magnetplatte, wenn die Daten geschrieben wurden, an den Platten-Steuerabschnitt (S1202). Als Nächstes liest die CPU 503 die Daten aus dem Cachespeicher 62 (S1203), und sie liest die Daten von der Magnetplatte (S1204). Die CPU 503 vergleicht die Daten vom Cachespeicher 62 und diejenigen von der Magnetplatte, um zu untersuchen, ob sie miteinander übereinstimmen (S1205). Wenn die zwei Datenstücke nicht miteinander übereinstimmen, informiert die CPU 503 die Informationsverarbeitungsvorrichtung 300 über die Tatsache, dass der Schreibvorgang nicht normal ausgeführt wurde (S1206).
  • Wenn die in der Magnetplatte abgespeicherten Daten auf diese Weise mit den im Cachespeicher 62 abgespeicherten Daten verglichen werden, ist es möglich, zu klären, ob die Daten korrekt in die Magnetplatte geschrieben wurden oder nicht. Außerdem überleben die Daten selbst dann, wenn sich die geschriebenen Daten in einem falschen Zustand befinden, im Cachespeicher 62. So besteht keine Gefahr, dass die Daten verloren gehen. Übrigens ist es dann, wenn ein zu einem Festplattenlaufwerk mit einer Magnetplatte gehörender Kopf durch einen Suchprozess oder dergleichen verstellt wird, bevor zu vergleichende Daten von der Magnetplatte und aus dem Cachespeicher 62 gelesen wurden, möglich, zu verhindern, dass der Kopf zweimal an ein und derselben Position liest, wenn die Position beim Schreiben falsch ist.
  • Bei der Verarbeitung gemäß der 12 werden alle geschriebenen Daten aus dem Cachespeicher 62 und von der Magnetplatte gelesen, und die zwei Datenstücke werden zum Untersuchen der Daten verglichen. Jedoch müssen nicht alle Daten gelesen und verglichen werden, sondern es reicht, einen Teil der Daten, z. B. ein Segment am Kopf der Daten und ein Segment am Ende derselben zu lesen und zu vergleichen. Z. B. werden umfangreiche Daten (sequenzielle Daten) häufig in Seriell-ATA-Festplattenlaufwerke eingeschrieben, da sie für Anwendungen wie Datenbackup verwendet werden. In einem derartigen Fall wird das Funktionsvermögen bei der Schreibverarbeitung auffällig beeinträchtigt, wenn in einer Magnetplatte gespeicherte Daten für alle geschriebenen Daten mit im Cachespeicher 62 gespeicherten Daten verglichen werden. Außerdem ist es dann, wenn hinsichtlich der Schreibposition oder dergleichen ein Fehler auftritt, wenn sequenzielle Daten geschrieben werden, hoch wahrscheinlich, dass alle Daten falsch sind. Daher kann in den meisten Fällen die Beurteilung dahingehend, ob die Daten falsch sind oder nicht, dadurch erfolgen, dass ein Teil der Daten untersucht wird. D. h., dass dann, wenn für einen Teil geschriebener Daten, z. B. ein Segment am Kopf der Daten und ein Segment am Ende der Daten, ein Vergleich ausgeführt wird, die Möglichkeit besteht, falsche Daten zu prüfen, während verhindert wird, dass das Funktionsvermögen bei der Schreibverarbeitung beeinträchtigt wird.
  • Alternativ kann das Verfahren Zum Untersuchen von in das Festplattenlaufwerk 51 geschriebenen Daten entsprechend der Größe der Daten geändert werden. Die 13 ist ein Flussdiagramm, das die Verarbeitung zum Ändern des Untersuchungsverfahrens abhängig davon, ob geschriebene Daten sequenzielle Daten sind oder nicht, zeigt. Die CPU 503 sendet eine Anweisung zum Schreiben von Daten in ein Festplattenlaufwerk 51 an den Platten-Steuerabschnitt 502 (S1301). Dann sendet die CPU 503 eine Anweisung zum Ausführen eines Suchprozesses zum Verstellen der Position des Kopfs der Magnetplatte, wo die Daten geschrieben wurden, an den Platten-Steuerabschnitt (S1302). Die CPU 503 beurteilt, ob die Daten sequenzielle Daten sind oder nicht (S1303). Übrigens wird die Beurteilung dahingehend, ob die Daten sequenzielle Daten sind oder nicht, auf Grundlage davon ausgeführt, ob die Größe der ge schriebenen Daten eine vorbestimmte Größe erreicht oder nicht.
  • Wenn die Daten sequenzielle Daten sind, liest die CPU 503 ein Segment am Kopf derselben sowie ein Segment am Ende derselben vom Cachespeicher 62 und der Magnetplatte. Wenn die Daten dagegen keine sequenziellen Daten sind, liest die CPU 503 alle Daten vom Cachespeicher 62 und der Magnetplatte (S1306 und S1307). Danach vergleicht die CPU 503 die zwei Stücke gelesener Daten miteinander, und sie untersucht, ob sie miteinander übereinstimmen (S1308). Wenn sie nicht übereinstimmen, informiert die CPU 503 die Informationsverarbeitungsvorrichtung 300 über die Tatsache, dass der Schreibvorgang nicht normal ausgeführt wurde (S1309).
  • Wenn die geschriebene Daten sequenzielle Daten sind, erfolgt zwischen in der Magnetplatte gespeicherten Daten und im Cachespeicher 62 gespeicherten Daten auf solche Weise ein Vergleich hinsichtlich eines Teils der Daten. So ist es möglich, die Inkorrektheit von Daten zu erkennen, während ein Absinken des Funktionsvermögens bei der Schreibverarbeitung unterdrückt ist. Wenn dagegen die geschriebenen Daten keine sequenziellen Daten sind, erfolgt zwischen in der Magnetplatte gespeicherten Daten und im Cachespeicher 62 gespeicherten Daten ein Vergleich hinsichtlich aller geschriebenen Daten. So ist es möglich, eine Inkorrektheit von Daten perfekt zu erkennen, ohne dass das Funktionsvermögen bei der Schreibverarbeitung so auffällig abnimmt, wie im Fall sequenzieller Daten.
  • Um das Funktionsvermögen beim Schreiben von Daten zu verbessern, kann jedes Festplattenlaufwerk 51 über eine Funktion wie folgt verfügen. Wenn nämlich das Festplattenlaufwerk 51 eine Datenschreibanforderung vom Controller 500 empfängt, schreibt es die Daten nur in den Plattencache, und es informiert den Controller 500 über den Abschluss des Schreibvorgangs. In diesem Fall können beim mittels der 12 und 13 beschriebenen Verfahren die geschriebenen Daten nicht untersucht werden. Die 14 ist ein Flussdiagramm zur Verarbeitung zur Untersuchung geschriebener Daten, wenn das Festplattenlaufwerk 51 über eine derartige Funktion verfügt. Die CPU 503 überwacht das Festplattenlaufwerk 51 dahingehend, ob die Anzahl der Schreibvorgänge in das Festplattenlaufwerk 51 eine vorbestimmte Anzahl überschritten hat oder nicht (S1401). Wenn die vorbestimmte Anzahl überschritten ist, gibt die CPU 503 über den Platten-Steuerabschnitt 502 eine Anweisung zum Schreiben der im Plattencache abgespeicherten Daten in eine Magnetplatte an das Festplattenlaufwerk (S1402). Dann liest die CPU 503 die Daten vom Cachespeicher 62 und von der Magnetplatte (S1403 und S1404). Die CPU 503 klärt, ob die Daten vom Cachespeicher 62 und diejenigen von der Magnetplatte übereinstimmen oder nicht (S1405). Wenn sie nicht übereinstimmen, informiert die CPU 503 die Informationsverarbeitungsvorrichtung 300 über die Tatsache, dass der Schreibvorgang nicht normal ausgeführt wurde (S1406). So kann Inkorrektheit von Daten trotz der Verwendung der oben genannten Funktion des Verbesserns des Funktionsvermögens bei der Schreibverarbeitung erkannt werden. Übrigens werden bei der Verarbeitung gemäß der 14 in die Magnetplatte geschriebene Daten und in den Cachespeicher geschriebene Daten verglichen, wenn die Anzahl der Schreibvorgänge eine vorbestimmte Anzahl überschreitet. Jedoch kann die Untersuchung immer dann vorgenommen werden, wenn eine vorbestimmte Zeit verstrichen ist, oder immer dann, wenn der Plattencache über keinen freien Raum verfügt.
  • Im Fall eines Seriell-ATA-Festplattenlaufwerks 51 werden Daten häufig aufgrund eines Ausfalls seines Kopfs inkorrekt geschrieben. Daher erfolgt eine Beschreibung zu einem Verfahren zum Erkennen des Ausfalls eines Kopfs oder eines Festplattenlaufwerks 51, wenn Daten aus diesem gelesen werden.
  • Die 15 ist ein Diagramm, das eine Kopfprüf-Kontrolltabelle 1501 zeigt. Die Kopfprüf-Kontrolltabelle 1501 besteht aus Laufwerksnummern, Kopfnummern und Sektornummern, und sie ist im Speicher 504 abgespeichert. Jede Sektornummer ist auf dieselbe Weise wie in der Aktualisierungskontrolltabelle 1101 durch eine LBA definiert. Wenn Daten über den Platten-Steuerabschnitt 502 in das Festplattenlaufwerk 51 eingeschrieben werden, ändert die CPU 503 den Wert ”Vorliegen von Aktualisierung” des Sektors des Kopfs, mit dem die Daten geschrieben wurden, in der Kopfprüf-Kontrolltabelle 1501 auf ”1”.
  • Die 16 ist ein Flussdiagramm der durch die CPU 503 auszuführenden Kopfprüfverarbeitung. Die CPU 503 stellt 1 als Anfangswert einer Untersuchungskopfnummer ein (S1601). Die CPU 503 wartet eine vorbestimmte Zeit (S1602), und sie schreibt unter Verwendung eines durch die Untersuchungskopfnummer spezifizierten Kopfs Untersuchungsdaten in einen Steuerblock einer Magnetplatte (1603). Übrigens ist der Steuerblock ein vorbestimmter Speicherbereich auf der Magnetplatte. Als Nächstes liest die CPU 503 die in den Steuerblock geschriebenen Daten (S1604), und sie klärt, ob die gelesenen Daten und die Untersuchungsdaten miteinander übereinstimmen oder nicht (S1605).
  • Wenn die zwei Datenstücke miteinander übereinstimmen, schließt die CPU 503, dass keine Anormalität im Kopf besteht, und sie ändert den Wert von ”Vorliegen einer Aktualisierung” für den Kopf in der Kopfprüf-Kontrolltabelle 1501 auf ”0” (S1606). Die CPU 503 addiert 1 zur Untersuchungskopfnummer (S1607). Die CPU 503 klärt, ob die Untersuchungskopfnummmer größer als ein Maximalwert für die Kopfnummer ist oder nicht (S1608). Wenn die Untersuchungskopfnummer größer ist, stellt die CPU 503 1 als Untersuchungskopfnummer ein. Die CPU 503 führt die Kopfprüfverarbeitung wiederholt auf die eingestellte Kopfnummer hin aus.
  • Wenn die aus dem Steuerblock gelesenen Daten nicht mit den Untersuchungsdaten übereinstimmen, informiert die CPU 503 die Informationsverarbeitungsvorrichtung 300 über die Tatsache, dass im fraglichen Festplattenlaufwerk 51 eine Anormalität auftritt, und dann beendet sie die Verarbeitung.
  • Die 17 ist ein Flussdiagramm einer Verarbeitung, wenn die CPU 503 eine Datenleseanforderung von irgendeiner der Informationsverarbeitungsvorrichtungen 300 empfängt. Die CPU 503 empfängt die Datenleseanforderung von der Informationsverarbeitungsvorrichtung 300 über den Kanal-Steuerabschnitt 501 (S1701). Die CPU 503 klärt den Wert von ”Vorliegen einer Aktualisierung” eines Zielsektors eines Festplattenlaufwerks 51, wo die Daten in der Kopfprüf-Kontrolltabelle 1501 gespeichert sind (S1702 und S1703). Ein ”Vorliegen einer Aktualisierung” vom Wert ”1” zeigt den Zustand an, bei dem die oben genannte Kopfprüfverarbeitung nicht ausgeführt wurde, obwohl ein Datenschreibvorgang an der LBA des fraglichen Festplattenlaufwerks 51 ausgeführt wurde. Wenn der Wert von ”Vorliegen einer Aktualisierung” ”0” ist, liest die CPU 503 die Daten vom Festplattenlaufwerk 51 (S1708).
  • Wenn der Wert von ”Vorliegen einer Aktualisierung” ”1” ist, schreibt die CPU 503 Untersuchungsdaten unter Verwendung des fraglichen Kopfs auf dieselbe Weise wie bei der oben genannten Kopfprüfverarbeitung in einen Steuerblock einer Magnetplatte (S1704). Übrigens ist der Steuerblock ein vorbestimmter Speicherbereich auf der Magnetplatte. Als Nächstes liest die CPU 503 die in den Steuerblock geschriebenen Daten (S1705), und sie klärt, ob die gelesenen Daten mit den Untersuchungsdaten übereinstimmen oder nicht (S1706).
  • Wenn die zwei Datenstücke miteinander übereinstimmen, schließt die CPU 503, dass im Kopf keine Anormalität existiert, und sie ändert den Wert von ”Vorliegen einer Aktualisierung” für den Kopf in der Kopfprüf-Kontrolltabelle 1501 auf ”0” (S1707). Dann liest die CPU 503 die angeforderten Daten entsprechend der Leseanforderung vom Festplattenlaufwerk 51 (S1708).
  • Wenn die vom Steuerblock gelesenen Daten nicht mit den Untersuchungsdaten übereinstimmen, informiert die CPU 503 die Informationsverarbeitungsvorrichtung 300 über die Tatsache, dass im fraglichen Festplattenlaufwerk 51 eine Anormalität vorliegt (S1709), und dann beendet die CPU 503 die Verarbeitung ohne die Daten vom Festplattenlaufwerk 51 zu lesen.
  • Auf solche Weise ist es möglich, wenn in das Festplattenlaufwerk 51 geschriebene Daten gelesen werden, zu klären, ob der Kopf, mit dem die Daten geschrieben wurden, normal arbeitet oder nicht. Wenn der Kopf anormal ist, besteht die Möglichkeit, dass die Daten nicht korrekt geschrieben wurden, oder es besteht die Möglichkeit, dass die Daten nicht korrekt gelesen werden können. Durch Erkennen einer Anormalität im Kopf beim Lesen von Daten ist es möglich, zu verhindern, dass falsche Daten gelesen werden.
  • == Untersuchung auf Grundlage einer Paritätszuweisung ==
  • Gemäß dem oben genannten Verfahren, bei dem alle Daten einer Streifengruppe in der RAID-Konfiguration gelesen und einer Paritätsprüfung unterzogen werden, ist es nicht möglich, zu ermitteln, welche Daten der Streifengruppe in einem falschen Zustand vorliegen. Es ist tatsächlich möglich, zu verhindern, dass falsche Daten gelesen werden, jedoch ist es nicht möglich, falsche Daten wiederherzustellen. Demgemäß können Daten verloren gehen. Daher erfolgt eine Beschreibung zu einem Verfahren zum Zuweisen von Paritätsdaten zu jedem Datenstück gesondert von Paritätsdaten innerhalb der Streifengruppe.
  • Die CPU 503 erzeugt Paritätsdaten zum Erkennen von Fehlern für mehrere Sektoren, die als Minimaleinheit dienen, gemäß der Daten in jedes Festplattenlaufwerk 51 geschrieben werden. Bei dieser Ausführungsform wird eine Kombination von Daten und Paritätsdaten für derartige mehrere Sektoren als Dateneinheit bezeichnet. Wenn die CPU 503 eine Datenschreibanforderung von irgendeiner der Informationsverarbeitungsvorrichtungen 300 über den Kanal-Steuerabschnitt 501 empfängt, erzeugt sie aus den zu schreibenden Daten eine Dateneinheit. Die CPU 503 schreibt die Dateneinheit über die Platten-Steuereinheit 502 in das Festplattenlaufwerk 51.
  • Die 18 ist ein Diagramm, das den Zustand zeigt, wenn ein Datenstück 1801 in ein Festplattenlaufwerk geschrieben wird. Die Daten 1801 bestehen aus mehreren Sektoren S#1 bis S#4, und aus den Daten 1801 und Paritätsdaten 1802 für die Daten 1801 der mehreren Sektoren wird eine Dateneinheit 1803 gebildet. Wenn die CPU 503 eine Datenleseanforderung von irgendeiner der Informationsverarbeitungsvorrichtungen 300 über den Kanal-Steuerabschnitt 501 empfängt, liest sie die Dateneinheit 1803 der angeforderten Daten über den PlattenSteuerabschnitt 502, und sie führt an den Daten eine Paritätsprüfung aus, um zu untersuchen, ob sie sich in einem falschen Zustand befinden oder nicht. Auf diese Weise ist es nur durch Lesen der zu lesenden Daten auf die Leseanforderung hin möglich, zu beurteilen, ob sich die Daten in einem falschen Zustand befinden oder nicht. Außerdem können, wenn die Festplattenlaufwerke 51 über eine redundante RAID-Konfiguration, wie RAID 5, verfügen, die Daten unter Verwendung anderer Daten und Paritätsdaten in der Streifengruppe wiederhergestellt werden. So besteht keine Gefahr, dass die Daten verloren gehen.
  • Wenn ein Ausfall eines Kopfs oder dergleichen in einem Festplattenlaufwerk 51 auftritt, ist es hoch wahrscheinlich, dass mehrere falsche Sektoren auftreten. Es sei angenommen, dass mehrere Sektoren der Dateneinheit 1803 falsch werden, wenn die Dateneinheit 1803 in ein Festplattenlaufwerk 51 eingeschrieben wird. Bei einem derartigen Ereignis besteht der Fall, dass Inkorrektheit nicht durch eine Paritätsprüfung erkannt werden kann.
  • Daher kann, wie es in der 19 dargestellt ist, die CPU 503 die Dateneinheit 1803 zwischen mehreren Festplattenlaufwerken 51 innerhalb der RAID-Gruppe mittels des Platten-Steuerabschnitts 502 schreiben und verteilen. Die 20 ist ein Diagramm, das eine Dateneinheit-Kontrolltabelle 2001 zeigt. Die Dateneinheits-Kontrolltabelle 2001 zeigt die Entsprechung von Dateneinheiten 1803 aus jeweils mehreren Sektoren mit LBAs von Festplattenlaufwerken 51. Das Beispiel der 20 zeigt, dass eine aus 130 Sektoren 000–129 bestehende Dateneinheit 1803 durch LBAs 000–064 von Festplattenlaufwerken 51 gebildet wird, deren Laufwerksnummern #0 und #1 sind. Wenn die CPU 503 die Datenschreibanforderung von irgendeiner der Informationsverarbeitungsvorrichtungen 300 empfängt, nimmt sie auf die Dateneinheits-Kontrolltabelle 2001 Bezug, und sie schreibt und verteilt jede Dateneinheit 1803 der angeforderten Daten über mehrere Festplattenlaufwerke 51.
  • Demgemäß ist es selbst dann, wenn in einem Festplattenlaufwerk ein Fehler auftritt, möglich, die Wahrscheinlichkeit zu erhöhen, dass Inkorrektheit der Daten erkannt werden kann.
  • == Umgebung mit einer Mischung eines Faserkanals und seriell-ATA ==
  • Als Nächstes erfolgt eine Beschreibung zu einem Plattenarraysystem 10, bei dem Faserkanal-Festplattenlaufwerke 51 und Seriell-ATA-Festplattenlaufwerke 51 gemischt sind.
  • Die 21 ist ein Blockdiagramm, das ein Plattenarraysystem zeigt, bei dem Faserkanal-Festplattenlaufwerke 51 in einem ersten Gehäuse 2101 aufgenommen sind und Seriell-ATA-Festplattenlaufwerke 51 in einem zweiten Gehäuse 2102 aufgenommen sind. Übrigens entsprechen das erste und das zweite Gehäuse 2101 und 2102 dem Mastergehäuse 20 bzw. dem Erweiterungsgehäuse 30. Jedes Festplattenlaufwerk 51 ist im oben beschriebenen Modus mit dem Platten-Steuerabschnitt 502 verbunden. Außerdem zeigt die 21 einen Modus, bei dem mehrere Seriell-ATA-Festplattenlaufwerke mit einem Wandler 901 verbunden sind. Jedoch ist jedes Seriell-ATA-Festplattenlaufwerk beim Ausführungsbeispiel mit einem Wandler 801 verbunden der, wie bei 8 beschrieben, für jede Plattenlaufwerkseinheit vorhanden ist.
  • Beim auf diese Weise konfigurierten Plattenarraysystem 10 ist es erforderlich, die Zuverlässigkeit der Seriell-ATA-Festplattenlaufwerke 51 zu erhöhen, deren Zuverlässigkeit niedriger als die der Faserkanal-Festplattenlaufwerke 51 ist. Daher wendet der Controller 500 das oben genannte Verfahren zum Verbessern der Zuverlässigkeit nur der Seriell-ATA-Festplattenlaufwerke 51 an. Demgemäß kann die Zuverlässigkeit beim Lesen/Schreiben von Daten von den/in die Seriell-ATA-Festplattenlaufwerke 51 verbessert werden, ohne dass das Funktionsvermögen beim Lesen/Schreiben von Daten von den/in die Faserkanal-Festplattenlaufwerke 51, die zur Verarbeitung wie einer wesentlichen Arbeit, die über hohes Zugriffsfunktionsvermögen verfügen muss, gesenkt würde. Außerdem ist es nicht erforderlich, den körperlichen Aufbau zu ändern, z. B. zwei Köpfe für jede Magnetplatte jedes Seriell-ATA-Festplattenlaufwerks 51 anzubringen. Daher ist es möglich, die Herstellkosten der Seriell-ATA-Festplattenlaufwerke 51 niedrig zu halten.
  • Übrigens sind bei dieser Ausführungsform die Faserkanal-Festplattenlaufwerke 51 und die Seriell-ATA-Festplattenlaufwerke 51 gemischt vorhanden. Jedoch können andere Festplattenlaufwerke 51 verwendet werden, wenn sie zu Schnittstellenstandards mit verschiedenen Zuverlässigkeiten gehören. Z. B. können die Seriell-ATA-Festplattenlaufwerke 51 durch Parallel-ATA-Festplattenlaufwerke 51 ersetzt werden.
  • Die Ausführungsformen wurden oben beschrieben, um die Erfindung leicht verständlich zu machen. Die Erfindung soll nicht als auf die Ausführungsformen beschränkt interpretiert werden.

Claims (7)

  1. Plattenarraysystem, aufweisend: eine mit einer Informationsverarbeitungsvorrichtung (300) verbundene Steuerung (500) zur Kommunikation mit der Informationsverarbeitungsvorrichtung und zum Ausführen eines Datenlese- bzw. -schreibprozesses über eine Fibre-Channel-Arbitrated-Loop (FC-AL) (506), die Schaltungen (602) zum Umgehen eines daran angeschlossenen Plattenlaufwerks (51), in dem ein Fehler auftritt, aufweist, mehrere erste Plattenlaufwerkseinheiten (52), die in einer ersten RAID-Gruppe (Redundant Array of Inexpensive Disks) (1001) enthalten sind und jeweils ein mit einem Fibre-Channel-Interface (FC-Interface) versehenes und mit den Schaltungen der FC-AL verbundenes erstes Plattenlaufwerk (51) zum Speichern von Daten aufweisen, und ein Gehäuse (2101), das die ersten Plattenlaufwerkseinheiten (52) enthält, gekennzeichnet durch mehrere zweite Plattenlaufwerkseinheiten (52), die in einer zweiten RAID-Gruppe (1001) enthalten sind und jeweils einen mit den Schaltungen (602) der FC-AL (506) verbundenen Wandler (801) zum Umsetzen zwischen dem FC-Protokoll und dem seriell ATA-Protokoll (SATA-Protokoll) sowie ein mit einem SATA-Interface versehenes zweites Plattenlaufwerk zum Speichern von Daten, die über den Wandler übermittelt werden, aufweisen, so daß jedes zweite Plattenlaufwerk seinen eigenen Wandler aufweist, und ein weiteres Gehäuse (2102), das die zweiten Plattenlaufwerkseinheiten (52) enthält, die parallel zueinander an der Vorderseite des weiteren Gehäuses angeordnet sind, wobei die Steuerung (500) nur für die zweiten Plattenlaufwerke (51) ein Verfahren zur Erhöhung der Zuverlässigkeit anwendet, bei dem Daten mittels eines Kopfes eines jeweiligen zweiten Plattenlaufwerks in einen Steuerblock einer Magnetplatte des zweiten Plattenlaufwerks geschrieben und wieder gelesen werden, um einen Ausfall des Kopfes des zweiten Plattenlaufwerks mittels Datenvergleich zu erkennen.
  2. System nach Anspruch 1, wobei das weitere Gehäuse (2102) zwei Spannungsversorgungen (57) jeweils zur Spannungsversorgung für die zweiten Plattenlaufwerke (51) aufweist.
  3. System nach Anspruch 2, wobei das weitere Gehäuse (2102) zwei Spannungsversorgungs-Controllerplatten (56) zum Steuern der Spannungsversorgungen (57) für die zweiten Plattenlaufwerke (51) aufweist, wobei die Spannungsversorgungs-Controllerplatten jeweils einen Verbinder (67) aufweisen, der mit einem FC-Kabel (91) verbunden ist.
  4. System nach Anspruch 1, wobei die Schaltungen (602) der FC-AL (506) Port-Bypass-Schaltungen sind.
  5. System nach Anspruch 1, wobei die RAID-Gruppen mehrere logische Datenbereiche betreffen, die als Zugriffseinheiten für die Informationsverarbeitungsvorichtung (300) dienen.
  6. System nach Anspruch 1, wobei die Steuerung (500) zum Schreiben von Daten jeweils in die ersten sowie in die zweiten Plattenlaufwerke (51) eingerichtet ist.
  7. System nach Anspruch 1, wobei die Schaltungen (602) der FC-AL eine Funktion zum Trennen eines zweiten Plattenlaufwerks (51) von der FC-AL so aufweisen, daß Kommunikationsvorgänge zwischen beliebigen anderen Plattenlaufwerken und der Steuerung (500) vorgenommen werden können.
DE102004064056A 2003-11-28 2004-03-17 Plattenarraysystem Expired - Fee Related DE102004064056B4 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2003400517A JP4156499B2 (ja) 2003-11-28 2003-11-28 ディスクアレイ装置
JP2003/400517 2003-11-28

Publications (1)

Publication Number Publication Date
DE102004064056B4 true DE102004064056B4 (de) 2013-01-24

Family

ID=32212195

Family Applications (2)

Application Number Title Priority Date Filing Date
DE102004013129A Ceased DE102004013129A1 (de) 2003-11-28 2004-03-17 Plattensystem und Verfahren zum Steuern eines Plattenarraysystems
DE102004064056A Expired - Fee Related DE102004064056B4 (de) 2003-11-28 2004-03-17 Plattenarraysystem

Family Applications Before (1)

Application Number Title Priority Date Filing Date
DE102004013129A Ceased DE102004013129A1 (de) 2003-11-28 2004-03-17 Plattensystem und Verfahren zum Steuern eines Plattenarraysystems

Country Status (5)

Country Link
US (7) US7057981B2 (de)
JP (1) JP4156499B2 (de)
DE (2) DE102004013129A1 (de)
FR (2) FR2863096B1 (de)
GB (5) GB2415084B (de)

Families Citing this family (55)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7346135B1 (en) 2002-02-13 2008-03-18 Marvell International, Ltd. Compensation for residual frequency offset, phase noise and sampling phase offset in wireless networks
US7263153B2 (en) 2002-10-09 2007-08-28 Marvell International, Ltd. Clock offset compensator
US7319705B1 (en) 2002-10-22 2008-01-15 Marvell International Ltd. Programmable pre-emphasis circuit for serial ATA
US7246192B1 (en) 2003-01-10 2007-07-17 Marvell International Ltd. Serial/parallel ATA controller and converter
JP4651913B2 (ja) * 2003-02-17 2011-03-16 株式会社日立製作所 記憶装置システム
JP2004348464A (ja) * 2003-05-22 2004-12-09 Hitachi Ltd ストレージ装置、及び通信信号の整形回路
JP4060235B2 (ja) * 2003-05-22 2008-03-12 株式会社日立製作所 ディスクアレイ装置及びディスクアレイ装置の制御方法
US8930583B1 (en) 2003-09-18 2015-01-06 Marvell Israel (M.I.S.L) Ltd. Method and apparatus for controlling data transfer in a serial-ATA system
JP4863605B2 (ja) 2004-04-09 2012-01-25 株式会社日立製作所 記憶制御システム及び方法
JP4156499B2 (ja) * 2003-11-28 2008-09-24 株式会社日立製作所 ディスクアレイ装置
JP4480386B2 (ja) * 2003-11-28 2010-06-16 株式会社日立製作所 ディスクアレイ装置及びディスクアレイ装置のデータ中継方法
JP4497918B2 (ja) * 2003-12-25 2010-07-07 株式会社日立製作所 ストレージシステム
JP4634049B2 (ja) 2004-02-04 2011-02-16 株式会社日立製作所 ディスクアレイ装置における異常通知制御
JP2005316861A (ja) 2004-04-30 2005-11-10 Hitachi Ltd ディスクアレイ装置
US7958292B2 (en) * 2004-06-23 2011-06-07 Marvell World Trade Ltd. Disk drive system on chip with integrated buffer memory and support for host memory access
US7350102B2 (en) * 2004-08-26 2008-03-25 International Business Machine Corporation Cost reduction schema for advanced raid algorithms
US20060112303A1 (en) * 2004-11-09 2006-05-25 Arco Computer Products, Llc. Local backup device with remote management capability and method for remote backup management
US7949806B2 (en) * 2004-11-18 2011-05-24 International Business Machines Corporation Apparatus and method to provide an operation to an information storage device including protocol conversion and assigning priority levels to the operation
US7360112B2 (en) * 2005-02-07 2008-04-15 International Business Machines Corporation Detection and recovery of dropped writes in storage devices
JP4585325B2 (ja) * 2005-02-08 2010-11-24 株式会社日立製作所 ディスクアレイ装置
JP4606233B2 (ja) * 2005-04-14 2011-01-05 株式会社日立製作所 ストレージ装置、ストレージ装置のファン制御方法およびファン制御プログラム
US7523319B2 (en) * 2005-11-16 2009-04-21 Lenovo (Singapore) Pte. Ltd. System and method for tracking changed LBAs on disk drive
JP2007206766A (ja) * 2006-01-31 2007-08-16 Fujitsu Ltd データストレージシステム、データストレージ制御装置及びその障害箇所診断方法。
JP4775846B2 (ja) * 2006-03-20 2011-09-21 株式会社日立製作所 物理リンクの割当てを制御するコンピュータシステム及び方法
US7761657B2 (en) 2006-07-10 2010-07-20 Hitachi, Ltd. Storage control system, control method for storage control system, port selector, and controller
JP4919752B2 (ja) * 2006-09-29 2012-04-18 株式会社日立製作所 記憶制御装置
KR100845527B1 (ko) * 2006-12-06 2008-07-10 삼성전자주식회사 메모리 장치 및 메모리 컨트롤러의 클럭 싸이클 제어방법
US7958263B2 (en) * 2007-02-20 2011-06-07 International Business Machines Corporation Address reduction for data storage enclosures
US8140787B2 (en) 2007-10-05 2012-03-20 Imation Corp. Methods for implementation of an active archive in an archiving system and managing the data in the active archive
US8930651B2 (en) 2007-10-05 2015-01-06 Imation Corp. Archiving system with partitions of individual archives
US20090094423A1 (en) * 2007-10-05 2009-04-09 Prostor Systems, Inc. Methods for implementation of an archiving system which uses removable disk storage system
US7849263B1 (en) 2007-12-24 2010-12-07 Emc Corporation Techniques for controlling storage capacity of a data storage system
JP2010033287A (ja) * 2008-07-28 2010-02-12 Hitachi Ltd ストレージサブシステム及びこれを用いたデータ検証方法
US8429514B1 (en) * 2008-09-24 2013-04-23 Network Appliance, Inc. Dynamic load balancing of distributed parity in a RAID array
JP4809413B2 (ja) 2008-10-08 2011-11-09 株式会社日立製作所 ストレージシステム
JP5279634B2 (ja) * 2009-06-30 2013-09-04 キヤノン株式会社 情報処理装置、情報処理装置の制御方法及び制御プログラム
US8164936B2 (en) * 2009-10-14 2012-04-24 Seagate Technology Llc Switched memory devices
US20110162570A1 (en) * 2010-01-06 2011-07-07 Robert Moser Boat Hull Washing Apparatus
US8255737B1 (en) * 2010-04-29 2012-08-28 Netapp, Inc. System and method for a redundant communication fabric in a network storage system
US8639872B1 (en) * 2010-08-13 2014-01-28 Western Digital Technologies, Inc. Hybrid drive comprising write cache spanning non-volatile semiconductor memory and disk
US9251097B1 (en) 2011-03-22 2016-02-02 Amazon Technologies, Inc. Redundant key management
US8743549B2 (en) 2011-03-22 2014-06-03 Amazon Technologies, Inc. Modular mass storage system
TWI453737B (zh) * 2011-04-21 2014-09-21 Promise Tecnnology Inc 資料儲存系統之管理方法
CN102262882B (zh) * 2011-06-20 2013-12-04 华为数字技术(成都)有限公司 硬盘阵列的读/写方法及装置、网络设备
US8908326B1 (en) 2012-03-26 2014-12-09 Amazon Technologies, Inc. Hard disk drive mechanical modules with common controller
US8929024B1 (en) * 2012-03-26 2015-01-06 Amazon Technologies, Inc. Hard disk drive assembly with field-separable mechanical module and drive control
US9904788B2 (en) 2012-08-08 2018-02-27 Amazon Technologies, Inc. Redundant key management
US10222842B2 (en) 2013-08-02 2019-03-05 Amazon Technologies, Inc. System for compute node maintenance with continuous cooling
US9141156B2 (en) 2013-08-02 2015-09-22 Amazon Technologies, Inc. Compute node cooling with air fed through backplane
US10398060B1 (en) 2014-03-17 2019-08-27 Amazon Technologies, Inc. Discrete cooling module
CN105718331A (zh) * 2015-06-27 2016-06-29 巫立斌 一种存储系统
JP6224186B1 (ja) 2016-08-01 2017-11-01 株式会社東芝 Raidストレージシステム、ストレージコントローラ及びraidアレイパトロール方法
CN106775456B (zh) * 2016-11-22 2019-11-26 华为技术有限公司 一种数据处理方法、装置及系统
US10481828B2 (en) * 2017-10-10 2019-11-19 Seagate Technology, Llc Slow drive detection
CN109210733B (zh) * 2018-08-30 2021-02-23 青岛海信日立空调系统有限公司 线控器以及空调器

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20010014956A1 (en) * 2000-02-10 2001-08-16 Hitachi, Ltd. Storage subsystem and information processing system
US20030135577A1 (en) * 2001-12-19 2003-07-17 Weber Bret S. Dual porting serial ATA disk drives for fault tolerant applications
EP1353264A2 (de) * 2002-04-09 2003-10-15 Hitachi, Ltd. Festplattenspeicherungssystem mit Speicherplattenanordnungen, die durch Schalter mit Plattenadaptern verbunden sind

Family Cites Families (193)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US147945A (en) * 1874-02-24 Improvement in magazine fire-arms
US135577A (en) * 1873-02-04 Improvement in devices for pressing hats
US163639A (en) * 1875-05-25 Improvement in sewing-machines
US204671A (en) * 1878-06-11 Improvement in cotton-seed drills
US182502A (en) * 1876-09-19 Improvement in water-closet valves
US243386A (en) * 1881-06-28 Steam-boiler
US149840A (en) * 1874-04-21 Improvement in wrenches
US629753A (en) * 1899-01-07 1899-07-25 Charles Herbert Ocumpaugh Door-holder.
JPS53106110A (en) * 1977-02-28 1978-09-14 Nec Corp Magnetic memory controller
WO1985001382A1 (en) * 1983-09-19 1985-03-28 Storage Technology Partners Ii Optically storing digital data
DE3704898A1 (de) * 1986-02-20 1987-08-27 Sharp Kk Diskettenaufzeichnungs-pruefverfahren
JPH05150909A (ja) * 1991-11-30 1993-06-18 Nec Corp データコンペアモード付き磁気デイスク装置
US5335119A (en) * 1992-02-28 1994-08-02 Ampex Corporation Data recording system having unique nonrecording detection
GB2264798A (en) * 1992-03-04 1993-09-08 Hitachi Ltd High speed access control
JP2868141B2 (ja) * 1992-03-16 1999-03-10 株式会社日立製作所 ディスクアレイ装置
JPH05303539A (ja) 1992-04-24 1993-11-16 Nec Corp ディスク制御装置
US5423046A (en) * 1992-12-17 1995-06-06 International Business Machines Corporation High capacity data storage system using disk array
JP3258117B2 (ja) * 1993-03-08 2002-02-18 株式会社日立製作所 記憶装置サブシステム
JP3264465B2 (ja) 1993-06-30 2002-03-11 株式会社日立製作所 記憶システム
US6154850A (en) 1993-11-01 2000-11-28 Beaufort River, Inc. Data storage system and method
US5546558A (en) * 1994-06-07 1996-08-13 Hewlett-Packard Company Memory system with hierarchic disk array and memory map store for persistent storage of virtual mapping information
JP2831602B2 (ja) * 1995-01-13 1998-12-02 富士通株式会社 圧縮データ管理装置及び圧縮データ管理方法
JPH08263225A (ja) 1995-03-22 1996-10-11 Mitsubishi Electric Corp データストレージシステム及びストレージ管理方法
US5845319A (en) 1995-08-23 1998-12-01 Fujitsu Limited Disk array device which separates local and physical disks using striping and operation mode selection
US5680640A (en) * 1995-09-01 1997-10-21 Emc Corporation System for migrating data by selecting a first or second transfer means based on the status of a data element map initialized to a predetermined state
US5822782A (en) 1995-10-27 1998-10-13 Symbios, Inc. Methods and structure to maintain raid configuration information on disks of the array
US6484269B1 (en) 1995-11-09 2002-11-19 Emc Corporation Data storage system and method with improved data integrity value calculation
KR100260380B1 (ko) 1996-01-26 2000-07-01 윤종용 마이크로 프로세서칩의 냉각팬 제어장치 및 그 제어방법
US5832244A (en) 1996-02-20 1998-11-03 Iomega Corporation Multiple interface input/output port for a peripheral device
US5717850A (en) 1996-03-12 1998-02-10 International Business Machines Corporation Efficient system for predicting and processing storage subsystem failure
US5867736A (en) * 1996-03-29 1999-02-02 Lsi Logic Corporation Methods for simplified integration of host based storage array control functions using read and write operations on a storage array control port
US5884098A (en) * 1996-04-18 1999-03-16 Emc Corporation RAID controller system utilizing front end and back end caching systems including communication path connecting two caching systems and synchronizing allocation of blocks in caching systems
US5805788A (en) * 1996-05-20 1998-09-08 Cray Research, Inc. Raid-5 parity generation and data reconstruction
JP3245364B2 (ja) * 1996-09-02 2002-01-15 株式会社日立製作所 互いに異なるインタフェースを介して記憶装置を共用する方法及びシステム
US5812754A (en) * 1996-09-18 1998-09-22 Silicon Graphics, Inc. Raid system with fibre channel arbitrated loop
EP0834878A2 (de) * 1996-10-04 1998-04-08 Sony Corporation Verfahren und Vorrichtung zur Steuerung des Zugriffs auf einen Plattenspeicherungsvorrichtung
JP3133004B2 (ja) 1996-11-21 2001-02-05 株式会社日立製作所 ディスクアレイ装置およびその制御方法
JPH10326107A (ja) 1997-03-25 1998-12-08 Mitsubishi Electric Corp サーボ制御方法およびサーボ制御システム
US6504817B2 (en) * 1997-03-31 2003-01-07 Hewlett-Packard Company Fiber channel arbitrated loop dynamic loop sizing
US5951691A (en) * 1997-05-16 1999-09-14 International Business Machines Corporation Method and system for detection and reconstruction of corrupted data in a data storage subsystem
JPH1153235A (ja) * 1997-08-08 1999-02-26 Toshiba Corp ディスク記憶装置のデータ更新方法、ならびにディスク記憶制御システム
JP3618529B2 (ja) * 1997-11-04 2005-02-09 富士通株式会社 ディスクアレイ装置
US6338110B1 (en) 1997-11-14 2002-01-08 Sun Microsystems, Inc. Partitioning of storage channels using programmable switches
US6173360B1 (en) * 1998-01-09 2001-01-09 International Business Machines Corporation Apparatus and method for allowing existing ECKD MVS DASD using an ESCON interface to be used by an open storage using SCSI-type interface
US6061750A (en) * 1998-02-20 2000-05-09 International Business Machines Corporation Failover system for a DASD storage controller reconfiguring a first processor, a bridge, a second host adaptor, and a second device adaptor upon a second processor failure
US6170063B1 (en) * 1998-03-07 2001-01-02 Hewlett-Packard Company Method for performing atomic, concurrent read and write operations on multiple storage devices
JPH11272427A (ja) 1998-03-24 1999-10-08 Hitachi Ltd データ退避方法および外部記憶装置
US6415355B1 (en) * 1998-05-11 2002-07-02 Kabushiki Kaisha Toshiba Combined disk array controller and cache control method for parity generation mode and data restoration mode
US6449709B1 (en) * 1998-06-02 2002-09-10 Adaptec, Inc. Fast stack save and restore system and method
US6137679A (en) 1998-06-04 2000-10-24 Chang; Cheng-Chun Multi-bus mobile hard disk drive rack
JP3946873B2 (ja) 1998-06-19 2007-07-18 株式会社日立製作所 ディスクアレイ制御装置
US6865642B2 (en) * 1998-06-24 2005-03-08 International Business Machines Corporation Method and apparatus for disk caching for an intermediary controller
US6282602B1 (en) 1998-06-30 2001-08-28 Emc Corporation Method and apparatus for manipulating logical objects in a data storage system
JP4392877B2 (ja) * 1998-09-18 2010-01-06 株式会社日立製作所 ディスクアレイ制御装置
JP2000148604A (ja) 1998-11-12 2000-05-30 Hitachi Ltd 記憶装置の制御方法
US6477139B1 (en) 1998-11-15 2002-11-05 Hewlett-Packard Company Peer controller management in a dual controller fibre channel storage enclosure
JP2000187561A (ja) * 1998-12-24 2000-07-04 Hitachi Ltd 記憶装置システム
JP4400895B2 (ja) * 1999-01-07 2010-01-20 株式会社日立製作所 ディスクアレイ制御装置
US6351375B1 (en) * 1999-01-26 2002-02-26 Dell Usa, L.P. Dual-purpose backplane design for multiple types of hard disks
JP4294142B2 (ja) * 1999-02-02 2009-07-08 株式会社日立製作所 ディスクサブシステム
US6400730B1 (en) * 1999-03-10 2002-06-04 Nishan Systems, Inc. Method and apparatus for transferring data between IP network devices and SCSI and fibre channel devices over an IP network
US6640278B1 (en) 1999-03-25 2003-10-28 Dell Products L.P. Method for configuration and management of storage resources in a storage network
US6553408B1 (en) * 1999-03-25 2003-04-22 Dell Products L.P. Virtual device architecture having memory for storing lists of driver modules
US6201692B1 (en) * 1999-03-31 2001-03-13 International Business Machines Corporation Disk drive enclosure optimized for mixed slim and half high drive size
US6219753B1 (en) 1999-06-04 2001-04-17 International Business Machines Corporation Fiber channel topological structure and method including structure and method for raid devices and controllers
US6636934B1 (en) 1999-06-30 2003-10-21 Emc Corporation Fiber channel port by-pass selector section for dual ported disk drives
JP2001035096A (ja) * 1999-07-19 2001-02-09 Hitachi Ltd 書き込みデータのチェック方法及びこれを用いたデータ記憶装置
JP3952640B2 (ja) * 1999-09-07 2007-08-01 株式会社日立製作所 データバックアップ方法、メインフレーム系ストレージシステムおよびメインフレームホストコンピュータ
US6772108B1 (en) 1999-09-22 2004-08-03 Netcell Corp. Raid controller system and method with ATA emulation host interface
KR20010101145A (ko) * 1999-10-07 2001-11-14 로리 비. 키팅 디스크 드라이브에서 과도적 쓰기 에러를 검출하는 방법및 영구적 미디어 손상으로부터 과도적인 쓰기 에러를구분하는 방법
US6502108B1 (en) 1999-10-25 2002-12-31 International Business Machines Corporation Cache-failure-tolerant data storage system storing data objects with version code equipped metadata tokens
JP2001142650A (ja) 1999-11-18 2001-05-25 Nec Corp アレイディスク制御方法及び装置
JP2001167040A (ja) 1999-12-14 2001-06-22 Hitachi Ltd 記憶サブシステム及び記憶制御装置
US6510491B1 (en) * 1999-12-16 2003-01-21 Adaptec, Inc. System and method for accomplishing data storage migration between raid levels
GB2357602A (en) * 1999-12-22 2001-06-27 Nokia Mobile Phones Ltd Memory controller for a memory array comprising different memory types
JP2001216206A (ja) 2000-02-01 2001-08-10 Nec Corp ループ状インターフェースの障害解析方法及び障害解析機能を有するシステム
US6834326B1 (en) 2000-02-04 2004-12-21 3Com Corporation RAID method and device with network protocol between controller and storage devices
JP2001337868A (ja) 2000-05-24 2001-12-07 Hitachi Ltd Fc−al用ディスク装置
JP2001338486A (ja) 2000-05-25 2001-12-07 Hitachi Ltd 情報記憶装置
JP2002007077A (ja) 2000-06-21 2002-01-11 Nec Corp ディスクアレイ装置のループ診断システム及びその方法
JP2002014777A (ja) * 2000-06-29 2002-01-18 Hitachi Ltd データ移行方法並びにプロトコル変換装置及びそれを用いたスイッチング装置
JP2002023966A (ja) 2000-06-30 2002-01-25 Toshiba Corp 転送データを冗長化したディスクシステム
US6658592B1 (en) 2000-07-20 2003-12-02 Emc Corporation Error detection in disk storage systems
US6728922B1 (en) * 2000-08-18 2004-04-27 Network Appliance, Inc. Dynamic data space
US6496900B1 (en) * 2000-09-12 2002-12-17 3Ware, Inc. Disk array system, controller, and method for verifying command data written to disk drives
EP1191442A2 (de) * 2000-09-19 2002-03-27 Matsushita Electric Industrial Co., Ltd. Datenspeicherungsmatrize und Betriebsverfahren um Fehlerdaten ohne Datenzugriffsverzögerung zu speichern
US7032119B2 (en) * 2000-09-27 2006-04-18 Amphus, Inc. Dynamic power and workload management for multi-server system
US6862648B2 (en) * 2000-10-30 2005-03-01 Sun Microsystems, Inc. Interface emulation for storage devices
JP2002150746A (ja) 2000-11-14 2002-05-24 Hitachi Ltd 磁気ディスク装置
US20020069317A1 (en) * 2000-12-01 2002-06-06 Chow Yan Chiew E-RAID system and method of operating the same
US6349056B1 (en) * 2000-12-28 2002-02-19 Sandisk Corporation Method and structure for efficient data verification operation for non-volatile memories
KR100388498B1 (ko) 2000-12-30 2003-06-25 한국전자통신연구원 복수 개의 레이드를 구비한 계층적 레이드 시스템
ATE306102T1 (de) * 2001-01-03 2005-10-15 Nice Systems Ltd Auf inhalt basierende speicherungsverwaltung
US6549978B2 (en) * 2001-01-17 2003-04-15 International Business Machines Corporation Method for storage controllers with different data formats to access common storage configuration information
US6684282B1 (en) * 2001-01-26 2004-01-27 Dell Products L.P. System and method for adding an internal RAID controller
US7007141B2 (en) 2001-01-30 2006-02-28 Data Domain, Inc. Archival data storage system and method
US6763409B1 (en) * 2001-01-31 2004-07-13 Hewlett-Packard Development Company, L.P. Switch-on-the-fly GBIC disk channel adapter and disk channel system
AU2002306495A1 (en) 2001-02-13 2002-08-28 Candera, Inc. Storage virtualization and storage management to provide higher level storage services
US6606690B2 (en) * 2001-02-20 2003-08-12 Hewlett-Packard Development Company, L.P. System and method for accessing a storage area network as network attached storage
US6986075B2 (en) 2001-02-23 2006-01-10 Hewlett-Packard Development Company, L.P. Storage-device activation control for a high-availability storage system
JP2002259062A (ja) * 2001-02-28 2002-09-13 Hitachi Ltd 記憶装置システム及び記憶装置システムにおけるデータの複写方法
US6766412B2 (en) 2001-03-31 2004-07-20 Quantum Corporation Data storage media library with scalable throughput rate for data routing and protocol conversion
US20020147945A1 (en) 2001-04-06 2002-10-10 Seagate Technology Llc Automated analysis of interface timing measurements
US6886108B2 (en) 2001-04-30 2005-04-26 Sun Microsystems, Inc. Threshold adjustment following forced failure of storage device
US6955921B2 (en) * 2001-04-30 2005-10-18 Bayer Corporation Trypsin substrate and diagnostic device, and method of using same
US6934904B2 (en) * 2001-04-30 2005-08-23 Sun Microsystems, Inc. Data integrity error handling in a redundant storage array
US6628513B1 (en) * 2001-06-07 2003-09-30 Emc Corporation Mass storage device mounting system
US20020188592A1 (en) * 2001-06-11 2002-12-12 Storage Technology Corporation Outboard data storage management system and method
US6850410B2 (en) 2001-06-29 2005-02-01 Emc Corporation Advanced technology attachment disk drive module with fibre channel system characteristics
US6874100B2 (en) * 2001-07-12 2005-03-29 Digi-Data Corporation Raid system with multiple controllers and proof against any single point of failure
JP2003036146A (ja) 2001-07-23 2003-02-07 Hitachi Ltd ディスクアレイ制御方式
US20030033463A1 (en) * 2001-08-10 2003-02-13 Garnett Paul J. Computer system storage
TW579503B (en) * 2001-08-24 2004-03-11 Icp Electronics Inc Disk array control apparatus
JP2003084919A (ja) * 2001-09-06 2003-03-20 Hitachi Ltd ディスクアレイ装置の制御方法およびディスクアレイ装置
US20030061491A1 (en) * 2001-09-21 2003-03-27 Sun Microsystems, Inc. System and method for the allocation of network storage
JP2003108508A (ja) 2001-09-27 2003-04-11 Matsushita Electric Ind Co Ltd コンピュータ周辺機器システム
JP2003108510A (ja) 2001-09-28 2003-04-11 I-O Data Device Inc インタフェース変換機構及び外付用ストレージ機器
US6904482B2 (en) * 2001-11-20 2005-06-07 Intel Corporation Common boot environment for a modular server system
US7055056B2 (en) * 2001-11-21 2006-05-30 Hewlett-Packard Development Company, L.P. System and method for ensuring the availability of a storage system
JP2003162439A (ja) 2001-11-22 2003-06-06 Hitachi Ltd ストレージシステム及びその制御方法
JP3714613B2 (ja) * 2001-12-12 2005-11-09 インターナショナル・ビジネス・マシーンズ・コーポレーション 記憶装置、該記憶装置を含む情報処理装置および情報記憶システムのリカバリ方法
US20030115204A1 (en) * 2001-12-14 2003-06-19 Arkivio, Inc. Structure of policy information for storage, network and data management applications
JP3590381B2 (ja) * 2001-12-18 2004-11-17 株式会社東芝 ディスクアレイ装置及び同装置におけるデータ更新方法
US6931576B2 (en) * 2002-01-07 2005-08-16 Sun Microsystems, Inc. Data integrity device providing heightened error protection in a data processing system
US20030135609A1 (en) * 2002-01-16 2003-07-17 Sun Microsystems, Inc. Method, system, and program for determining a modification of a system resource configuration
US6763436B2 (en) * 2002-01-29 2004-07-13 Lucent Technologies Inc. Redundant data storage and data recovery system
JP3702231B2 (ja) * 2002-01-31 2005-10-05 株式会社東芝 ディスクアレイ装置及び同装置における動的記憶容量拡張方法
US6892275B2 (en) 2002-02-05 2005-05-10 Quantum Corporation Storage system utilizing an active subset of drives during data storage and retrieval operations
US20030163639A1 (en) 2002-02-25 2003-08-28 Seagate Technology Llc Sequential command processing mode in a disc drive using command queuing
US6831839B2 (en) 2002-02-28 2004-12-14 Netezza Corporation Adjustable sled module for mass storage devices
US6871244B1 (en) 2002-02-28 2005-03-22 Microsoft Corp. System and method to facilitate native use of small form factor devices
US7426554B2 (en) * 2002-03-06 2008-09-16 Sun Microsystems, Inc. System and method for determining availability of an arbitrary network configuration
US6880051B2 (en) 2002-03-14 2005-04-12 International Business Machines Corporation Method, system, and program for maintaining backup copies of files in a backup storage device
US7000077B2 (en) * 2002-03-14 2006-02-14 Intel Corporation Device/host coordinated prefetching storage system
US7200715B2 (en) 2002-03-21 2007-04-03 Network Appliance, Inc. Method for writing contiguous arrays of stripes in a RAID storage system using mapped block writes
US6886051B2 (en) 2002-03-28 2005-04-26 Seagate Technology Llc Device discovery method and apparatus
US6996642B2 (en) 2002-04-02 2006-02-07 International Business Machines Corporation Adapter, converted data storage device and method of operation of a converted data storage device
US6859896B2 (en) * 2002-04-02 2005-02-22 International Business Machines Corporation Adapter and method for handling errors in a data storage device converted to be accessible to multiple hosts
DE10214700B4 (de) 2002-04-03 2006-02-23 Advanced Micro Devices, Inc., Sunnyvale Kombinierter ATA/SATA-Controller als integrierter Schaltkreischip und dazugehöriges Verfahren zum Betreiben
JP2003316713A (ja) 2002-04-26 2003-11-07 Hitachi Ltd 記憶装置システム
JP4704659B2 (ja) 2002-04-26 2011-06-15 株式会社日立製作所 記憶装置システムの制御方法および記憶制御装置
US6792486B1 (en) 2002-04-30 2004-09-14 Western Digital Ventures, Inc. System and method for managing information storage among plural disk drives
US20030212859A1 (en) 2002-05-08 2003-11-13 Ellis Robert W. Arrayed data storage architecture with simultaneous command of multiple storage media
JP4454204B2 (ja) 2002-05-16 2010-04-21 日本電気株式会社 ディスクアレイ制御装置及び方法並びにディスクアレイ制御プログラム
US7073022B2 (en) 2002-05-23 2006-07-04 International Business Machines Corporation Serial interface for a data storage array
US7080190B2 (en) 2002-05-30 2006-07-18 Lsi Logic Corporation Apparatus and method for providing transparent sharing of channel resources by multiple host machines
JP4166516B2 (ja) 2002-06-14 2008-10-15 株式会社日立製作所 ディスクアレイ装置
US6862173B1 (en) 2002-07-11 2005-03-01 Storage Technology Corporation Modular multiple disk drive apparatus
US6925531B2 (en) * 2002-07-11 2005-08-02 Storage Technology Corporation Multi-element storage array
US6769765B2 (en) * 2002-07-22 2004-08-03 Xerox Corporation Filter with integral heating element
US6925519B2 (en) 2002-07-25 2005-08-02 Lsi Logic Corporation Automatic translation from SCSI command protocol to ATA command protocol
US6934769B2 (en) 2002-07-29 2005-08-23 Lsi Logic Corporation Methods and structure for SCSI/IDE translation in a storage subsystem
US7487283B2 (en) * 2002-08-16 2009-02-03 American Megatrends, Inc. Apparatus for bridging two or more data communications interfaces
CN1190735C (zh) * 2002-09-26 2005-02-23 深圳市朗科科技有限公司 数据交换及存储方法与装置
US6807605B2 (en) * 2002-10-03 2004-10-19 Hewlett-Packard Development Company, L.P. Managing a data storage array, a data storage system, and a raid controller
US6952794B2 (en) * 2002-10-10 2005-10-04 Ching-Hung Lu Method, system and apparatus for scanning newly added disk drives and automatically updating RAID configuration and rebuilding RAID data
JP4318902B2 (ja) * 2002-10-15 2009-08-26 株式会社日立製作所 記憶装置システムの制御方法、記憶装置システム、およびプログラム
US6925526B2 (en) * 2002-10-31 2005-08-02 International Business Machines Corporation Method and apparatus for servicing mixed block size data access operations in a disk drive data storage device
US6886059B2 (en) 2002-10-31 2005-04-26 Lsi Logic Corporation Methods and structure for SCSI/IDE translation for non-SCSI enclosures in a storage subsystem
US20040088482A1 (en) * 2002-11-04 2004-05-06 Tanzer Herbert J. Systems for storing data
US20040177218A1 (en) * 2002-11-06 2004-09-09 Meehan Thomas F. Multiple level raid architecture
JP4334966B2 (ja) 2002-11-13 2009-09-30 株式会社日立製作所 ディスクモジュール、及びディスクアレイ装置
US7543085B2 (en) 2002-11-20 2009-06-02 Intel Corporation Integrated circuit having multiple modes of operation
JP2004192105A (ja) * 2002-12-09 2004-07-08 Hitachi Ltd 記憶装置の接続装置およびそれを含むコンピュータシステム
JP4352693B2 (ja) * 2002-12-10 2009-10-28 株式会社日立製作所 ディスクアレイ制御装置及びその制御方法
US20040117522A1 (en) * 2002-12-11 2004-06-17 Dell Products L.P. System and method for addressing protocol translation in a storage environment
US7054972B2 (en) * 2002-12-13 2006-05-30 Lsi Logic Corporation Apparatus and method for dynamically enabling and disabling interrupt coalescing in data processing system
US7028147B2 (en) * 2002-12-13 2006-04-11 Sun Microsystems, Inc. System and method for efficiently and reliably performing write cache mirroring
US6829658B2 (en) * 2002-12-16 2004-12-07 Emc Corporation Compatible signal-to-pin connector assignments for usage with fibre channel and advanced technology attachment disk drives
EP1573540A4 (de) 2002-12-18 2008-05-21 Emc Corp Automatisiertes media-management
US20040128627A1 (en) * 2002-12-27 2004-07-01 Zayas Fernando A. Methods implementing multiple interfaces for a storage device using a single ASIC
US20040138705A1 (en) * 2003-01-09 2004-07-15 Harri Heino Surgical staple for tissue treatment
US7353321B2 (en) * 2003-01-13 2008-04-01 Sierra Logic Integrated-circuit implementation of a storage-shelf router and a path controller card for combined use in high-availability mass-storage-device shelves that may be incorporated within disk arrays
US7167929B2 (en) * 2003-01-13 2007-01-23 Sierra Logic Integrated-circuit implementation of a storage-shelf router and a path controller card for combined use in high-availability mass-storage-device shelves that may be incorporated within disk arrays, and a storage-shelf-interface tunneling method and system
US7634614B2 (en) * 2003-01-13 2009-12-15 Sierra Logic Integrated-circuit implementation of a storage-shelf router and a path controller card for combined use in high-availability mass-storage-device shelves and that support virtual disk formatting
US7664909B2 (en) * 2003-04-18 2010-02-16 Nextio, Inc. Method and apparatus for a shared I/O serial ATA controller
JP4274523B2 (ja) * 2003-01-24 2009-06-10 株式会社日立製作所 記憶装置システム、及び記憶装置システムの起動方法
US20040153614A1 (en) * 2003-02-05 2004-08-05 Haim Bitner Tape storage emulation for open systems environments
JP4651913B2 (ja) * 2003-02-17 2011-03-16 株式会社日立製作所 記憶装置システム
US6882525B2 (en) * 2003-02-27 2005-04-19 Storcase Technology, Inc. Universal receptacles for interchangeably receiving different removable computer drive carriers
JP4322031B2 (ja) * 2003-03-27 2009-08-26 株式会社日立製作所 記憶装置
US7516272B2 (en) * 2003-03-28 2009-04-07 Emc Corporation Midplane-independent implementations of data storage system enclosures
US7237021B2 (en) 2003-04-04 2007-06-26 Bluearc Uk Limited Network-attached storage system, device, and method supporting multiple storage device types
JP4060235B2 (ja) 2003-05-22 2008-03-12 株式会社日立製作所 ディスクアレイ装置及びディスクアレイ装置の制御方法
US20040243699A1 (en) 2003-05-29 2004-12-02 Mike Koclanes Policy based management of storage resources
JP2005018185A (ja) 2003-06-24 2005-01-20 Hitachi Ltd 記憶装置システム
US7213102B2 (en) 2003-06-26 2007-05-01 International Business Machines Corporation Apparatus method and system for alternate control of a RAID array
US7308397B2 (en) 2003-06-30 2007-12-11 Lsi Corporation Method for controlling and emulating functional and logical behaviors of an array of storage devices for different protocols
US7146461B1 (en) * 2003-07-01 2006-12-05 Veritas Operating Corporation Automated recovery from data corruption of data volumes in parity RAID storage systems
US20050050261A1 (en) * 2003-08-27 2005-03-03 Thomas Roehr High density flash memory with high speed cache data interface
US20050097132A1 (en) * 2003-10-29 2005-05-05 Hewlett-Packard Development Company, L.P. Hierarchical storage system
JP4156499B2 (ja) * 2003-11-28 2008-09-24 株式会社日立製作所 ディスクアレイ装置
US20050138154A1 (en) * 2003-12-18 2005-06-23 Intel Corporation Enclosure management device

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20010014956A1 (en) * 2000-02-10 2001-08-16 Hitachi, Ltd. Storage subsystem and information processing system
US20030135577A1 (en) * 2001-12-19 2003-07-17 Weber Bret S. Dual porting serial ATA disk drives for fault tolerant applications
EP1353264A2 (de) * 2002-04-09 2003-10-15 Hitachi, Ltd. Festplattenspeicherungssystem mit Speicherplattenanordnungen, die durch Schalter mit Plattenadaptern verbunden sind

Also Published As

Publication number Publication date
JP4156499B2 (ja) 2008-09-24
FR2863096B1 (fr) 2007-04-27
GB0511865D0 (en) 2005-07-20
US8468300B2 (en) 2013-06-18
US7447121B2 (en) 2008-11-04
GB0406621D0 (en) 2004-04-28
DE102004013129A1 (de) 2005-06-30
GB0511856D0 (en) 2005-07-20
GB2415082A (en) 2005-12-14
JP2005165443A (ja) 2005-06-23
US7200074B2 (en) 2007-04-03
GB2415083B (en) 2006-04-19
GB0511860D0 (en) 2005-07-20
GB2415084A (en) 2005-12-14
GB0511862D0 (en) 2005-07-20
GB2415084B (en) 2006-08-23
US20050154942A1 (en) 2005-07-14
US20110082975A1 (en) 2011-04-07
US7865665B2 (en) 2011-01-04
FR2863096A1 (fr) 2005-06-03
US20050117468A1 (en) 2005-06-02
GB2408624A (en) 2005-06-01
GB2415081B (en) 2006-05-03
US20050120263A1 (en) 2005-06-02
GB2415082B (en) 2006-08-09
GB2415083A (en) 2005-12-14
US20050120264A1 (en) 2005-06-02
US7057981B2 (en) 2006-06-06
US7203135B2 (en) 2007-04-10
GB2408624B (en) 2006-03-29
FR2898198A1 (fr) 2007-09-07
GB2415081A (en) 2005-12-14
US20050117462A1 (en) 2005-06-02
US20070192539A1 (en) 2007-08-16
US7453774B2 (en) 2008-11-18

Similar Documents

Publication Publication Date Title
DE102004064056B4 (de) Plattenarraysystem
US7475283B2 (en) Anomaly notification control in disk array
DE69632219T2 (de) Speicherplattenanordnungssystem
DE602004007878T2 (de) Speicherplattenanordnung mit einer Mehrzahl von austauschbaren Magnetplatteneinheiten
JP3078972B2 (ja) ディスクアレイ装置
DE69738159T2 (de) Anordnung und Verfahren zur Wiederzuteilung von logischen an physikalische Plattengeräte unter Verwendung eines Speichersteuergerätes
DE60012769T2 (de) Verfahren und system zum dynamischen auswählen von bandantrieben zur verbindung mit hauptrechnern
DE202004021459U1 (de) Diskarrayvorrichtung
US7612467B2 (en) Power device and power device power supply method
DE20321583U1 (de) Speichersteuervorrichtung
DE102014112943B4 (de) Modulares Computersystem und Servermodul
DE69534994T2 (de) Steuerungsvorrichtung für speicherplattenanordnung und speicherplattenanordnungsgerät
DE69635713T2 (de) Diskarray-Teilsystem
DE602004007884T2 (de) Speichersteuerungssystem und -Verfahren
DE10220886A1 (de) Datenspeichersysteme mit verbesserten Netzwerkschnittstellen
DE102008046577A1 (de) Anschlussvorrichtung zum Anschluss einer Mehrzahl von Peripheriegeräten und Betriebsverfahren
DE10317925A1 (de) Steuerungskommunikation über eine ständig eingeschaltete Steuerungsverbindung
DE112020003062T5 (de) Dynamische anpassung einer logischen speicherkapazität für speicherlaufwerke
JP2002297322A (ja) 冗長性を有するディスク記憶装置
DE202004021442U1 (de) Plattensystem
DE69635879T2 (de) E/A-Bus in einem Mehrfachlaufwerkbibliothekrechnersystem
DE69636805T2 (de) Massenspeicherplattenanordnung zur Verwendung in Rechnersystemen
DE69630326T2 (de) Informationsspeicherungssteuerungsgerät
JP2000347812A (ja) 情報処理装置およびディスクアレイ装置
DE10327955A1 (de) Massenspeichereinrichtung und Verfahren zum Betrieb einer Massenspeichereinrichtung

Legal Events

Date Code Title Description
Q172 Divided out of (supplement):

Ref document number: 102004013129

Country of ref document: DE

Kind code of ref document: P

8110 Request for examination paragraph 44
R019 Grant decision by federal patent court
R020 Patent grant now final

Effective date: 20130425

R119 Application deemed withdrawn, or ip right lapsed, due to non-payment of renewal fee