DE602004011467T2 - Speichersteuerungssystem und -verfahren - Google Patents

Speichersteuerungssystem und -verfahren Download PDF

Info

Publication number
DE602004011467T2
DE602004011467T2 DE602004011467T DE602004011467T DE602004011467T2 DE 602004011467 T2 DE602004011467 T2 DE 602004011467T2 DE 602004011467 T DE602004011467 T DE 602004011467T DE 602004011467 T DE602004011467 T DE 602004011467T DE 602004011467 T2 DE602004011467 T2 DE 602004011467T2
Authority
DE
Germany
Prior art keywords
data
memory
control system
processor
storage
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.)
Active
Application number
DE602004011467T
Other languages
English (en)
Other versions
DE602004011467D1 (de
Inventor
Junichi Hitachi Iida
Hiroki Hitachi Kanai
Keishi Hitachi Tamura
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
Publication of DE602004011467D1 publication Critical patent/DE602004011467D1/de
Application granted granted Critical
Publication of DE602004011467T2 publication Critical patent/DE602004011467T2/de
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

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/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0661Format or protocol conversion arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0604Improving or facilitating administration, e.g. storage management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0604Improving or facilitating administration, e.g. storage management
    • G06F3/0607Improving or facilitating administration, e.g. storage management by facilitating the process of upgrading existing storage systems, e.g. for improving compatibility between host and storage device
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0629Configuration or reconfiguration of storage systems
    • G06F3/0631Configuration or reconfiguration of storage systems by allocating resources to 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/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/067Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1097Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]

Description

  • Die vorliegende Erfindung betrifft ein Speichersteuersystem und ein Speichersteuerverfahren.
  • In Datenbanksystemen zur Handhabung von großen Datenmengen, etwa in Datenzentren und dergleichen, werden die Daten mit einem Speichersteuersystem verwaltet, das vom Host-Computer getrennt ist. Dieses Speichersteuer-Subsystem umfaßt zum Beispiel ein RAID-Array (ein redundantes Array von unabhängigen, preiswerten Speicherplatten), das von einer Anordnung einer Anzahl von Platten-Speichervorrichtungen gebildet wird.
  • Mit dem Fortschreiten der Informationsgesellschaft wird die in Datenbanken zu verwaltende Datenmenge ständig größer. Es sind daher Speichersteuersysteme mit immer größerer Zuverlässigkeit und immer höherer Kapazität erforderlich. In Reaktion auf diese Anforderungen des Marktes wurden neue Speichersteuersysteme entwickelt. Zum Einführen eines neuen Speichersteuersystems gibt es zum Beispiel das im japanischen offengelegten Patent Nr. (Hei) 10-508967 beschriebene Verfahren, bei dem das alte Speichersteuersystem vollständig durch ein neues Speichersteuersystem ersetzt wird und das Speichersystem dann allein vom neuen Speichersteuersystem gebildet wird.
  • Wenn komplett von einem alten Speichersteuersystem auf ein neues Speichersteuersystem übergegangen wird, können zwar die Funktionen und Eigenschaften des neuen Speichersteuersystems voll genutzt werden, es ist jedoch nicht möglich, das alte Speichersteuersystem weiter zu benutzen. Außerdem sind die Kosten zum Einführen des neuen Systems hoch.
  • Die EP 1 357 476 beschreibt eine Speichersteuervorrichtung mit einer zweiten, externen Speichersteuervorrichtung, wobei die Speichersteuervorrichtung feststellt, ob eine Anforderung von einem Host die erste oder die zweite Speichersteuervorrichtung betrifft, und die Anforderung gegebenenfalls zu der zweiten Speichersteuervorrichtung weiterleitet.
  • Aufgabe der vorliegenden Erfindung ist es, ein Speichersteuersystem und ein Speichersteuerverfahren zu schaffen, bei dem das alte Speichersteuersystem weiter verwendet werden kann.
  • Aus der folgenden Beschreibung gehen weitere Ziele der vorliegenden Erfindung hervor.
  • Das erfindungsgemäße Speichersteuersystem ist in den unabhängigen Patentansprüchen angegeben.
  • Dieses Speichersteuersystem kann zum Beispiel wie folgt allgemein beschrieben werden:
    Speichersteuersystem mit einem Zuordnungssteuerdaten-Speicherbereich zum Speichern von Zuordnungssteuerdaten und einem Prozessor zum Verarbeiten von Daten auf Dateiebene und/oder Daten auf Blockebene, die über ein externes Kommunikationsnetzwerk erhalten werden; wobei die Zuordnungssteuerdaten Adresseninformationen enthalten, die den Speicherort von in Daten auf Blockebene enthaltenen Dateiidentifikations informationen oder in Daten auf Blockebene enthaltenen Adresseninformationen sowie die zu den Adresseninformationen gehörenden Adressenortinformationen angeben; und wobei der Prozessor auf die Zuordnungssteuerdaten zugreift, die Adressenortinformationen für die den Speicherort der Dateiidentifikationsinformationen aus den erhaltenen Daten auf Blockebene angebenden Adressenortinformationen oder die in den erhaltenen Daten auf Blockebene erhaltenen Adresseninformationen identifiziert und feststellt, ob die aus den Daten auf Dateiebene erhaltenen Daten auf Blockebene oder die erhaltenen Daten auf Blockebene in entweder einer Speichervorrichtung zu speichern sind, die zu dem Speichersteuersystem gehört, oder in einer Speichervorrichtung zu speichern sind, die zu dem zweiten Speichersteuersystem gehört.
  • In diesem Fall kann das erste Speichersteuersystem das erwähnte Speichersteuersystem selbst sein.
  • Bei einer ersten Ausführungsform des erfindungsgemäßen Speichersteuersystems erhält der erste Prozessor die Daten auf Dateiebene über ein externes lokales Netzwerk von einem Host-Computer. Der zweite Prozessor überträgt auf der Basis des Ergebnisses der Feststellung einen Teil der auf den vom Host-Computer erhaltenen Daten auf Dateiebene basierenden Daten auf Blockebene zum zweiten Kanalsteuerabschnitt, damit sie in einem externen Speicherbereich gespeichert werden, der zu dem externen Speichersteuersystem gehört, wobei er den Rest der Daten auf Blockebene zu dem Speichervorrichtungssteuerabschnitt überträgt, damit sie in einem internen Speicherbereich gespeichert werden, der zu der Anzahl von Speichervorrichtungen gehört. Bei dieser ersten Ausführungsform werden die auf den Daten vom Host-Computer basierenden Daten auf Blockebene in einem Speicherbereich gespeichert, der den externen Speicherbereich und den internen Speicherbereich verbindet.
  • Bei einer zweiten Ausführungsform des erfindungsgemäßen Speichersteuersystems legt der ersten Kanalsteuerabschnitt einen Speicherbereich, der einen zum externen Speichersteuersystem gehörenden externen Speicherbereich und einen zu dem Speichersteuersystem gehörenden internen Speicherbereich verbindet, als logische Einheit fest, auf die vom Host-Computer bei der Übertragung der Daten auf Dateiebene zugegriffen werden kann.
  • Bei einer dritten Ausführungsform des erfindungsgemäßen Speichersteuersystems umfaßt das Speichersteuersystem des weiteren einen zweiten Steuerinformationen-Speicherbereich, in dem die zweiten Steuerinformationen gespeichert werden. Der erste Prozessor befindet sich im ersten Kanalsteuerabschnitt. Der erste und/oder der zweite Prozessor stellt/stellen auf der Basis der im zweiten Steuerinformationen-Speicherbereich gespeicherten zweiten Steuerinformationen fest, ob alle oder ein Teil der Daten auf Blockebene im Speichersteuersystem oder im externen Speichersteuersystem gespeichert werden sollen. Der zweite Steuerinformationen-Speicherbereich befindet sich zum Beispiel in einem Cache-Speicher.
  • Bei einer vierten Ausführungsform des erfindungsgemäßen Speichersteuersystems enthalten die zweiten Steuerinformationen eine Anzahl von Adresseninformationselementen und Informationen darüber, ob die Adresseninformationselemente dem Speichersteuersystem oder dem externen Speichersteuersystem entsprechen. Der erste und/oder der zweite Prozessor greift/greifen auf die zweiten Steuerinformationen zu und stellen fest, ob die in den Daten auf Blockebene enthaltenen Adresseninformationen dem Speichersteuersystem oder dem externen Speichersteuersystem entsprechen.
  • Bei einer fünften Ausführungsform des erfindungsgemäßen Speichersteuersystems enthalten die zweiten Steuerinformationen Datei-Metadaten für die vom ersten Prozessor verwalteten Dateien. Die Datei-Metadaten enthalten für die Anzahl der Dateien eine Anzahl von Dateiidentifikationsinformationselementen und von Speicherortadresseninformationselementen. Der erste Prozessor identifiziert die Speicherortadresseninformationen, die den in den erhaltenen Daten auf Dateiebene enthaltenen Dateiidentifikationsinformationen entsprechen, anhand der Datei-Metadaten. Der erste und/oder der zweite Prozessor greift/greifen auf die zweiten Steuerinformationen zu und stellt/stellen fest, ob die identifizierten Speicherortadresseninformationen dem Speichersteuersystem oder dem externen Speichersteuersystem entsprechen.
  • Bei einer sechsten Ausführungsform des erfindungsgemäßen Speichersteuersystems ist zwischen dem internen Speicherbereich, der zu dem Speichersteuersystem gehört, und den Speichervorrichtungen eine virtuelle Zwischenspeichervorrichtung vorgesehen. Die virtuelle Zwischenspeichervorrichtung verbindet den internen Speicherbereich mit dem externen Speicherbereich, der zu dem externen Speichersteuersystem gehört.
  • Das erfindungsgemäße Speichersteuerverfahren umfaßt einen Umwandlungsschritt, einen Feststellungsschritt, einen ersten Übertragungsschritt, einen Speicherschritt und einen zweiten Übertragungsschritt. Im Umwandlungsschritt wandelt ein erster Prozessor die über ein lokales Netzwerk erhaltenen Daten auf Dateiebene in Daten auf Blockebene um. Im Feststellungsschritt stellt/stellen der erste Prozessor und/oder ein zweiter Prozessor, der zu einem ersten Kanalsteuerabschnitt gehört, der mit einem zum Speichersteuersystem externen Kommunikationsnetzwerk verbunden ist, auf der Basis von zweiten Steuerinformationen fest, ob alle oder ein Teil der Daten auf Blockebene im Speichersteuersystem oder im externen Speichersteuersystem zu speichern sind, wobei die zweiten Steuerinformationen angeben, ob die Daten im Speichersteuersystem oder im externen Speichersteuersystem zu speichern sind. Im ersten Übertragungsschritt überträgt der zweite Prozessor die vom ersten Prozessor erhaltenen Daten auf Blockebene zu einem Speichervorrichtungs-Steuerabschnitt, der das Speichern der Daten in der Anzahl von Speichervorrichtungen des Speichersteuersystems steuert, und/oder zu einem zweiten Kanalsteuerabschnitt, der über ein Speichernetzwerk mit dem externen Speichersteuersystem verbunden ist. Im Speicherschritt speichert der Speichervorrichtungs-Steuerabschnitt die erhaltenen Daten in wenigstens einer der Speichervorrichtungen, nachdem die Daten vom zweiten Prozessor erhalten wurden. Im zweiten Übertragungsschritt überträgt der zweite Kanalsteuerabschnitt die er haltenen Daten zu dem externen Speichersteuersystem, nachdem die Daten vom zweiten Prozessor erhalten wurden.
  • In einer ersten Ausführungsform des erfindungsgemäßen Speichersteuerverfahrens erhält der erste Prozessor die Daten auf Dateiebene von einem Host-Computer über ein lokales Netzwerk. Im ersten Übertragungsschritt überträgt der zweite Prozessor auf der Basis des Ergebnisses der Feststellung einen Teil der auf den vom Host-Computer erhaltenen Daten auf Dateiebene basierenden Daten auf Blockebene zum zweiten Kanalsteuerabschnitt, damit sie in einem externen Speicherbereich gespeichert werden, der zu dem externen Speichersteuersystem gehört, wobei er den Rest der Daten auf Blockebene zu dem Speichervorrichtungssteuerabschnitt überträgt, damit sie in einem internen Speicherbereich gespeichert werden, der zu der Anzahl von Speichervorrichtungen gehört.
  • Bei einer zweiten Ausführungsform des erfindungsgemäßen Speichersteuerverfahrens legt in einem weiteren Schritt der ersten Kanalsteuerabschnitt einen Speicherbereich, der einen zum externen Speichersteuersystem gehörenden externen Speicherbereich und einen zu dem Speichersteuersystem gehörenden internen Speicherbereich verbindet, als logische Einheit fest, auf die vom Host-Computer bei der Übertragung der Daten auf Dateiebene zugegriffen werden kann.
  • Bei einer dritten Ausführungsform des erfindungsgemäßen Speichersteuerverfahrens ist ein weiterer Schritt vorgesehen, in dem die zweiten Steuerinformationen in einem zweiten Steuerinformationen-Speicherbereich gespeichert werden. Der erste Prozessor befindet sich im ersten Kanalsteuerabschnitt. Im Feststellungsschritt stellt/stellen der erste und/oder der zweite Prozessor auf der Basis der im zweiten Steuerinformationen-Speicherbereich gespeicherten zweiten Steuerinformationen fest, ob alle oder ein Teil der Daten auf Blockebene im Speichersteuersystem oder im externen Speichersteuersystem gespeichert werden sollen.
  • Bei einer vierten Ausführungsform des erfindungsgemäßen Speichersteuerverfahrens enthalten die zweiten Steuerinformationen eine Anzahl von Adresseninformationselementen und Informationen darüber, ob die Adresseninformationselemente dem Speichersteuersystem oder dem externen Speichersteuersystem entsprechen. Im Feststellungsschritt greift/greifen der erste und/oder der zweite Prozessor auf die zweiten Steuerinformationen zu und stellen fest, ob die in den Daten auf Blockebene enthaltenen Adresseninformationen dem Speichersteuersystem oder dem externen Speichersteuersystem entsprechen.
  • Bei einer fünften Ausführungsform des erfindungsgemäßen Speichersteuerverfahrens enthalten die zweiten Steuerinformationen Datei-Metadaten für die vom ersten Prozessor verwalteten Dateien. Die Datei-Metadaten enthalten für die Anzahl der Dateien eine Anzahl von Dateiidentifikationsinformationselementen und von Speicherortadresseninformationselementen. Das Speichersteuerverfahren umfaßt des weiteren einen Schritt, in dem der erste Prozessor anhand der Datei-Metadaten die Speicherortadresseninformationen identifiziert, die den in den erhaltenen Daten auf Dateiebene enthaltenen Dateiidentifikati onsinformationen entsprechen. Im Feststellungsschritt greift/greifen der erste und/oder der zweite Prozessor auf die zweiten Steuerinformationen zu und stellt/stellen fest, ob die identifizierten Speicherortadresseninformationen dem Speichersteuersystem oder dem externen Speichersteuersystem entsprechen.
  • Bei einer sechsten Ausführungsform des erfindungsgemäßen Speichersteuerverfahrens wird ein interner Speicherbereich, der zu dem Speichersteuersystem gehört, mittels einer virtuellen Zwischenspeichervorrichtung zwischen dem internen Speicherbereich und den Speichervorrichtungen mit dem externen Speicherbereich verbunden, der zu dem externen Speichersteuersystem gehört.
  • Das erfindungsgemäße Speichersteuersystem ist ein Speichersteuersystem, das über ein lokales Netzwerk Daten auf Dateiebene aufnimmt und das einen Speicher zum Speichern von erhaltenen Daten auf Dateiebene und einen Prozessor zum Umwandeln der im Speicher gespeicherten Daten auf Dateiebene in Daten auf Blockebene umfaßt. Der Prozessor stellt auf der Basis von zweiten Steuerinformationen, die angeben, ob die Daten im Speichersteuersystem oder im externen Speichersteuersystem zu speichern sind, fest, ob alle oder ein Teil der Daten auf Blockebene im ersten externen Speichersteuersystem oder in einem zweiten externen Speichersteuersystem zu speichern sind, und übertragt das Ergebnis der Feststellung sowie die Daten auf Blockebene über ein Speichernetzwerk zum ersten Speichersteuersystem.
  • Das Speichersteuersystem kann in diesem Fall zum Beispiel ein NAS-Kopf oder der NAS selbst sein (NAS: Network Area Storage, Netzwerkspeicher).
  • Darüberhinaus ist das erste Speichersteuersystem und/oder das zweite Speichersteuersystem zum Beispiel ein RAID-System. Das erste Speichersteuersystem umfaßt zum Beispiel eine Anzahl von Speichervorrichtungen zum Speichern von Daten; ein Speichersteuer-Subsystem zum Übertragen von Daten, die über ein lokales Netzwerk und/oder ein zum ersten Speichersteuersystem externes Speichernetzwerk erhalten werden, über das gleiche oder ein anderes Speichernetzwerk zu einem externen Speichersteuersystem; und einen Speicher zum vorübergehenden Speichern von Daten, über das lokale Netzwerk und/oder das Speichernetzwerk erhalten werden. Das Speichersteuer-Subsystem enthält einen eigenen Prozessor für die Aufnahme von Daten auf Blockebene vom Prozessor des Speichersteuersystems (zum Beispiel dem NAS-Kopf). Dieser eigene Prozessor überträgt die vom Prozessor erhaltenen Daten auf Blockebene auf der Basis der Feststellung zum Speichervorrichtungs-Steuerabschnitt und/oder zum zweiten Kanalsteuerabschnitt.
  • Das Speichersteuer-Subsystem des ersten Speichersteuersystems kann zum Beispiel einen Prozessor umfassen, der über ein lokales Netzwerk Dateidaten erhält und der die erhaltenen Dateidaten in Blockdaten umwandelt. Dabei stellt/stellen der Prozessor und/oder der separate Prozessor auf der Basis von Steuerinformationen, die angeben, ob die Daten im ersten Speichersteuersystem oder im zweiten Speichersteuersystem zu speichern sind, fest, ob alle oder ein Teil der Blockdaten im ersten Speichersteuersystem oder im zweiten Speichersteuersystem zu speichern sind.
  • In den Zeichnungen zeigen:
  • 1 eine allgemeine Ansicht des äußeren Erscheinungsbilds einer ersten erfindungsgemäßen Ausführungsform eines Speichersteuersystems;
  • 2 eine Blockdarstellung des Aufbaus eines Speichersystems bei der vorliegenden Ausführungsform;
  • 3 eine schematische Darstellung der logischen Verbindungen zwischen dem ersten Speichersteuersystem 600 und dem zweiten Speichersteuersystem 40;
  • 4 eine beispielhafte Darstellung einer Abbildungstabelle Tm;
  • 5 eine Blockdarstellung für einen beispielhaften Aufbau eines CHN 21A;
  • 6 eine Blockdarstellung für einen beispielhaften Aufbau eines CHF 21B;
  • 7 den Prozeßablauf beim Aussenden und Aufnehmen von Ein/Ausgabe-Zuordnungssteuerdaten 820;
  • 8 den Prozeßablauf bei der Umwandlung und Ausgabe eines vom Host 10A erhaltenen Datei-Ein/Ausgabe-Befehls in einen Block-Ein/Ausgabe-Befehl;
  • 9 eine beispielhafte Zusammensetzung von Adressenverwaltungsdaten 853 und Datei-Megadaten 854 in den Zuordnungssteuerdaten 820 zusammen mit dem genauen Prozeßablauf bei den Ein/Ausgabe-Zuordnungsprozessen, die auf der Basis der Zuordnungssteuerdaten 820 ausgeführt werden;
  • 10 den Prozeßablauf bei der Aktualisierung der Datei-Metadaten 854;
  • 11 den Prozeßablauf bei der Erzeugung einer Abbildungstabelle Tm durch den CHF 21B des ersten Speichersteuersystems 600;
  • 12 eine schematische Darstellung der Prozesse beim Dateneinschreiben;
  • 13 beispielhaft den Ablauf der Prozesse der 12 in Relation zu den jeweiligen Tabellen;
  • 14 das Auslesen von Daten aus einer externen LDEV;
  • 15 beispielhaft den Aufbau eines CHN 21A bei einer ersten Modifikation der vorliegenden Ausführungsform;
  • 16 beispielhaft den Prozeßablauf bei der ersten Modifikation der vorliegenden Ausführungsform;
  • 17 beispielhaft den Aufbau eines CHN 21A bei einer zweiten Modifikation der vorliegenden Ausführungsform;
  • 18 beispielhaft den Prozeßablauf bei der zweiten Modifikation der vorliegenden Ausführungsform;
  • 19 eine Blockdarstellung des Aufbaus eines Speichersystems bei einer dritten Modifikation der vorliegenden Ausführungsform;
  • 20 beispielhaft den Aufbau des integrierten CHF/CHN-Adapters 21D;
  • 21 eine Blockdarstellung des Aufbaus eines Speichersystems bei einer vierten Modifikation der vorliegenden Ausführungsform;
  • 22 beispielhaft den Aufbau eines NAS-Kopfes 950 und eines CHA 21C;
  • 23 den Prozeßablauf bei der vierten Modifikation der vorliegenden Ausführungsform beim Austausch der Ein/Ausgabe-Zuordnungssteuerdaten 820; und
  • 24 beispielhaft den Prozeßablauf bei der vierten Modifikation der vorliegenden Ausführungsform bei der Übertragung eines vom Host 10A ausgegebenen Datei-Ein/Ausgabe-Befehls als Block-Ein/Ausgabe-Befehl.
  • Es folgt ein Überblick über eine Ausführungsform der vorliegenden Erfindung.
  • Bei der vorliegenden Ausführungsform ist das Speichersteuersystem, etwa ein RAID-System und dergleichen, über ein erstes Kommunikationsnetzwerk (zum Beispiel ein lokales Netzwerk LAN) zum Austausch von Daten auf Dateiebene mit einem Host-Terminal verbunden. Außerdem ist das Speichersteuersystem über ein zweites Kommunikationsnetzwerk zum Austausch von Daten auf Blockebene (zum Beispiel ein Speichernetzwerk SAN) mit einem externen Speichersteuersystem verbunden. Sowohl das Speichersteuersystem als auch das externe Speichersteuersystem sind mit logischen Speichervorrichtungen zum Speichern von Daten (im folgenden für die Abkürzung von "Logischer Vorrichtung" als "LDEV" bezeichnet) versehen. Die LDEVs sind in einer oder einer Anzahl von Plattenspeichervorrichtungen untergebracht. Das Speichersteuersystem und das externe Speichersteuersystem sind mit einem Plattensteuerabschnitt zum Steuern des Speicherns von Daten in den Plattenspeichervorrichtungen versehen. Das Speichersteuersystem umfaßt einen ersten und einen zweiten Kanalsteuerabschnitt. Der erste Kanalsteuerabschnitt umfaßt einen ersten Prozessor für die Aufnahme von Dateidaten über das erste Kommunikationsnetzwerk und das Umwandeln dieser Daten in Blockdaten und einen zweiten Prozessor für das Aufnehmen der Blockdaten vom ersten Prozessor. Der zweite Kanalsteuerabschnitt überträgt die vom ersten Kanalsteuerabschnitt erhaltenen Blockdaten über das zweite Kommunikationsnetzwerk zum externen Speichersteuersystem. Auf der Basis von Ein/Ausgabe-Zuordnungssteuerdaten, die angeben, ob die Daten im Speichersteuersystem oder im externen Speichersteuersystem zu speichern sind, stellt/stellen der ersten Prozessor und/oder der zweite Prozessor fest, ob alle oder ein Teil der Blockdaten im Speichersteuersystem oder im externen Speichersteuersystem zu speichern sind. Der zweite Prozessor überträgt die vom ersten Prozessor erhaltenen Blockdaten auf der Basis des Ergebnisses dieser Feststellung zum Plattensteuerabschnitt und/oder zum zweiten Kanalsteuerabschnitt.
  • Im folgenden wird die vorliegende Ausführungsform anhand der Zeichnungen näher erläutert.
  • Die 1 zeigt eine allgemeine Ansicht des äußeren Erscheinungsbildes des Speichersteuersystems der ersten erfindungsgemäßen Ausführungsform.
  • Das Speichersteuersystem 600 wird von einer Basiseinheit 10 mit einer Anzahl von Zusatzeinheiten 12 gebildet (es kann auch von einer Basiseinheit 11 allein gebildet werden).
  • Die Basiseinheit 10 ist die kleinste Baueinheit des Speichersteuersystems 600. An dieser Basiseinheit 10 sind zum Beispiel abnehmbar eine Anzahl von Plattenspeichervor richtungen (zum Beispiel Festplattenlaufwerke HDD) 300, eine Anzahl von Steuerungen (zum Beispiel Kanalsteuerabschnitte oder Anzeigesteuerabschnitte) 105, eine Anzahl von Stromversorgungseinheiten 400 und eine Anzahl von Paritätseinheiten 500 angebracht. An der Basiseinheit 10 ist auch eine Anzahl von Kühlgebläsen 13 angebracht.
  • Jede Zusatzeinheit 12 stellt ein zusätzlich mögliches Speichersteuersystem 600 dar. Zum Beispiel können maximal vier Zusatzeinheiten 12 mit einer Basiseinheit 10 verbunden werden. An jeder Zusatzeinheit 12 ist eine Anzahl von Kühlgebläsen 13 angebracht. An jeder Zusatzeinheit 12 sind abnehmbar eine Anzahl von Plattenspeichervorrichtungen 300, eine Anzahl von Stromversorgungseinheiten 400 und eine Anzahl von Paritätseinheiten 500 angebracht. Diese Elemente werden jeweils durch eine Steuerung 105 in der Basiseinheit 10 gesteuert.
  • Die 2 zeigt in einer Blockdarstellung den Aufbau des Speichersystems bei der vorliegenden Ausführungsform.
  • Ein Host oder eine Anzahl von Hosts, zum Beispiel zwei Hosts 10A, 10B, stellen Computer mit Informationsverarbeitungseinrichtungen wie einer CPU (Zentraleinheit), einem Speicher und dergleichen dar. Sie haben die Form eines Personalcomputers, einer Workstation, eines Mainframecomputers und dergleichen. Die Hosts 10A, 10B enthalten jeweils zum Beispiel Informationseingabevorrichtungen (nicht gezeigt) wie Tastaturen, Zeigevorrichtungen, Mikrophone und dergleichen sowie Informationsausgabevorrichtungen (nicht gezeigt) wie Monitore, Lautsprecher und dergleichen. Jeder der Hosts 10A, 10B ist zum Beispiel mit einem Anwendungsprogramm 11, etwa einer Datenbanksoftware für die Verwendung der Speicherbereiche eines ersten Speichersteuersystems 600, sowie mit Adapter 12A und 12B für den Zugriff auf das erste Speichersteuersystem 600 über ein Kommunikationsnetzwerk CN1 versehen.
  • Der Host 10A ist über ein erstes Kommunikationsnetzwerk CN1 mit dem ersten Speichersteuersystem 600 verbunden. Das Kommunikationsnetzwerk CN1 ist ein Kommunikationsnetzwerk für den Austausch von Daten auf Dateiebene. Je nach den Umständen kann ein lokales Netzwerk LAN, das Internet, ein besonderes Netz, ein öffentliches Netz und dergleichen dafür verwendet werden (im folgenden wird angenommen, daß das erste Kommunikationsnetzwerk das lokale Netzwerk "LAN" ist). Der Datenaustausch über das LAN erfolgt zum Beispiel gemäß TCP/IP (Übertragungssteuerprotokoll/Internetprotokoll). Der Host 10A fordert das erste Speichersteuersystem 600 unter Angabe eines Dateinamens zur Eingabe und Ausgabe von Daten in Dateieinheiten auf. Der mit dem LAN CN1 verbundene Adapter 12A ist zum Beispiel eine mit einem lokalen Netzwerk kompatible Netzwerkkarte (als "PORT" dargestellt).
  • Der Host 10B ist mit dem ersten Speichersteuersystem 600 über ein drittes Kommunikationsnetzwerk CN3 verbunden. Das dritte Kommunikationsnetzwerk CN3 ist ein Kommunikationsnetzwerk für den Austausch von Daten auf Blockebene, es wird zum Beispiel durch ein Speichernetzwerk SAN gebildet. (Im folgenden wird angenommen, daß das zweite Kommunikationsnetzwerk das Speichernetzwerk "SAN" ist). Der Host 10B fordert das erste Speichersteuersystem 600 in Blockeinheiten, den Datenverwaltungseinheiten im Speicherbereich einer Anzahl von Plattenspeichervorrichtungen (zum Beispiel Festplattenlaufwerken) mit einem Glasfaserkanalprotokoll zur Eingabe und Ausgabe von Daten auf. Der mit dem SAN CN3 verbundene Adapter 12 ist zum Beispiel ein Host-Bus-Adapter "HBA".
  • In der Darstellung sind die Hosts 10A und 10B jeweils nur über das LAN CN1 bzw. das SAN CN3 mit dem ersten Speichersteuersystem 600 verbunden, es ist jedoch auch möglich, daß wenigstens einer der Hosts 10A, 10B über ein zweites Kommunikationsnetzwerk CN2 mit einem zweiten Speichersteuersystem 40 verbunden ist. Das zweite Kommunikationsnetzwerk CN2 kann zum Beispiel ein Speichernetzwerk, ein lokales Netzwerk, das Internet, ein besonderes Netz, ein öffentliches Netz usw. sein. Bei der vorliegenden Ausführungsform wird angenommen, daß das zweite Kommunikationsnetzwerk CN2 ein Glasfaserkanalverteiler "FC-SW" ist.
  • Das erste Speichersteuersystem 600 ist zum Beispiel ein RAID-System mit einer Anzahl von Plattenspeichervorrichtungen, die in einem Array angeordnet sind. Das erste Speichersteuersystem 600 ist nicht darauf beschränkt, es kann zum Beispiel auch ein intelligenter Glasfaserkanalverteiler mit hoher Funktionalität sein. Wie im folgenden noch beschrieben, braucht das erste Speichersteuersystem 600 auch nicht mit einer sich selbst direkt steuernden lokalen Speichervorrichtung versehen zu sein, da die Speicherressourcen des zweiten Speichersteuersystems 40 dem Host 10 als individuelle logische Einheiten zugeteilt sind.
  • Das erste Speichersteuersystem 600 kann grob in ein Speichersteuer-Subsystem 20 und eine Platteneinheit 30 unterteilt werden. Das Speichersteuer-Subsystem 20 umfaßt zum Beispiel einen Kanalsteuerabschnitt 21, einen Plattensteuerabschnitt 800, einen SVP (Serviceprozessor) 23, einen Cache-Speicher 24, einen gemeinsamen Speicher 25 und einen Verbindungsabschnitt 26. Der Kanalsteuerabschnitt 21 umfaßt zum Beispiel einen oder mehrere Kanaladapter NAS (CHN) 21A, einen oder mehrere Kanaladapter (CHA) 21C und einen oder mehrere Glasfaserkanaladapter (CHF) 21B. Der Plattensteuerabschnitt 800 umfaßt eine Anzahl von Plattenadaptern (DKA) 22.
  • Der CHN 21A führt den Datenaustausch mit dem Host 10A aus. Der CHN 21A enthält einen Kommunikationsport 207A für die Kommunikation mit dem Host 10A. Der CHN 21A wird zum Beispiel von einem Mikrocomputersystem mit einer CPU, einem Speicher und dergleichen gebildet und interpretiert und führt verschiedene Befehle aus, die er vom Host 10A erhält. Dem CHN 21A ist zu seiner Identifikation eine Netzwerkadresse zugeordnet (zum Beispiel eine IP-Adresse oder WWN). Der CHN 21N kann über das LAN CN1 vom Host 10 einen Ein/Ausgabebefehl für eine Dateieinheit erhalten (zum Beispiel einen Befehl, der einen Dateinamen enthält, und einen Befehl zum Auslesen oder Einschreiben einer Datei mit diesem Dateinamen; im folgenden wird ein solcher Befehl als "Datei-Ein/Ausgabe-Befehl" bezeichnet), und sich wie ein NAS (Netzwerkspeicher) zum Verarbeiten des Datei-Ein/Ausgabe-Befehls verhalten. Der Aufbau und die Arbeitsweise des CHN 21A werden im folgenden noch beschrieben.
  • Der CHA 21C führt den Datenaustausch mit dem Host 10B aus. Der CHA 21C enthält einen Kommunikationsport 207C für die Kommunikation mit dem Host 10B. Der CHA 21C wird zum Beispiel von einem Mikrocomputersystem mit einer CPU, einem Speicher und dergleichen gebildet und interpretiert und führt verschiedene Befehle aus, die er vom Host 10B erhält. Dem CHA 21C ist zu seiner Identifikation eine Netzwerkadresse zugeordnet (zum Beispiel eine IP-Adresse oder WWN). Der CHA 21C kann über das SAN CN3 vom Host 10B Ein/Ausgabebefehle für Blockeinheiten erhalten (im folgenden "Block-Ein/Ausgabe-Befehle" genannt) und diese Block-Ein/Ausgabe-Befehle verarbeiten. Eine Blockeinheit ist die Verwaltungseinheit für Daten im Speicherbereich der im folgenden beschriebenen Plattenspeichervorrichtung 400.
  • Der CHF 21B ist über einen Kommunikationsport 207B mit dem FC-SW 2 verbunden. Der CHF 21B wird zum Beispiel von einem Mikrocomputer mit einer CPU, einem Speicher und dergleichen gebildet und kann über den FC-SW 2 Daten mit dem zweiten Speichersteuersystem 40 austauschen. Der Aufbau und die Arbeitsweise des CHF 21B werden im folgenden noch erläutert.
  • Die einzelnen DKAs 22 führen den Datenaustausch mit den logischen Speichervorrichtungen (im folgenden LDEVs) 31, 32 in der Platteneinheit 30 durch. Jeder DKA 22 enthält einen Kommunikationsport für die Verbindung mit der Plattenspeichervorrichtung 400 mit den LDEVs 31, 32. Jeder DKA 22 hat die Form eines Mikrocomputers mit einer CPU, einem Speicher und dergleichen, Jeder DKA 22 schreibt die vom CHN 21A oder CHA 21C erhaltenen Daten in die LDEVs 31, 32 ein und überträgt von den LDEVs 31, 32 ausgelesene Daten zum CHN 21A oder CHA 21C. Jeder DKA 22 wandelt bei der Eingabe oder Ausgabe von Daten in die oder von den LDEVs 31, 32 die logische Adresse in eine physikalische Adresse um.
  • Der Cache-Speicher (im folgenden auch als "CM" bezeichnet) 24 ist zum Beispiel ein flüchtiger oder nichtflüchtiger Speicher, der vorübergehend vom Host 10 erhaltene oder von den LDEVs 31, 32 ausgelesene Daten speichert. Der Cache-Speicher 24 kann auch die im folgenden noch erläuterten Ein/Ausgabe-Zuordnungssteuerdaten 820 speichern. Statt dessen oder zusätzlich können die Ein/Ausgabe-Zuordnungssteuerdaten 820 auch in der LDEV 31 gespeichert werden.
  • Der gemeinsame Speicher (im folgenden auch als "SM" bezeichnet) 25 ist zum Beispiel ein nichtflüchtiger gemeinsamer Speicher, der Steuerinformationen über die mit dem Host ausgetauschten Daten speichert (zum Beispiel Informationen darüber, in welchem von den im CM 24 reservierten Cache-Bereichen die Daten gespeichert werden sollen). Der gemeinsame Speicher 25, der als Arbeitsbereich ausgestaltet ist (zum Beispiel als Bereich, in dem zwischen den CPUs des CHN 21A, CHA 21C, CHF 21B und DKA 22 ausgetauschte Nachrichten vorübergehend gespeichert werden), wird auch zum Speichern verschiedener Arten von Daten verwendet, etwa zum Abbilden der Tabellengruppe TG und dergleichen. Es ist auch möglich, eine oder eine Anzahl der LDEVs 31, 32 als Cache-Plattenspeicher zu verwenden.
  • Der Verbindungsabschnitt 26 stellt die Verbindung zwischen dem CHN 21A, CHA 21C, CHF 21B, den jeweiligen DKAs 22, dem Cache-Speicher 24 und dem gemeinsamen Speicher 25 her. Der Verbindungsabschnitt 26 kann ein Hochgeschwindigkeitsbus, etwa ein ultraschneller Kreuzungsschalter und dergleichen sein, der durch schnelle Schaltvorgänge eine Datenübertragung bewirkt.
  • Die Platteneinheit 30 besteht aus einer Anzahl in einem Array angeordneten Plattenspeichervorrichtungen 400. In der Plattenspeichervorrichtung 400 können zum Beispiel Festplatten, Floppy Disks, Magnetbänder, Halbleiterspeicher, optische Platten und dergleichen verwendet werden. Die LDEVs 31, 32 befinden sich in einem Speicherbereich der Plattenspeichervorrichtung 400. Die LDEV 31 (oder 32) speichert die im folgenden noch erläuterten Ein/Ausgabe-Zuordnungssteuerdaten. Die gestrichelt dargestellte LDEV 32 zeigt den Zustand an, in dem die zum zweiten Speichersteuersystem 40 gehörende LDEV 42 in das erste Speichersteuersystem 600 eingebracht wird. Mit anderen Worten wird eine aus der Sicht der ersten Speichersteuersystems 600 externe LDEV (im folgenden "externe LDEV" genannt) 42 in der Form einer internen LDEV 32 des ersten Speichersteuersystems 600 dem Host 10 zur Verfügung gestellt.
  • Der SVP 23 ist ein Informationsverarbeitungsterminal zum Unterhalten oder Verwalten des ersten Speichersteuersystems 600 (zum Beispiel ein Notebook-PC). Der SVP 23 ist mit den Prozessoren (zum Beispiel den CPUs) des CHN 21A, CHA 21C, CHF 21B und den jeweiligen DKAs 22 zum Beispiel über ein internes LAN 410 verbunden. Der SVP 23 stellt das Auftreten von Fehlern im ersten Speichersteuersystem 600 fest, zeigt diese auf einem Bildschirm an und wird dazu verwendet, die Prozesse und dergleichen für die Plattenspeichervorrichtung 400 zu beenden.
  • Das zweite Speichersteuersystem 40 kann einen ähnlichen Aufbau haben wie das erste Speichersteuersystem 600; es kann aber auch einfacher aufgebaut sein als das erste Speichersteuersystem 600. Zum Beispiel enthält das zweite Speichersteuersystem 40 einen CHF 217 mit einem Kommunikationsport 41 und eine oder eine Anzahl von Plattenspeichervorrichtungen 401. Die LDEV 42 ist in einem Speicherbereich der Plattenspeichervorrichtung 401 enthalten. Das zweite Speichersteuersystem 40 ist mit dem ersten Speichersteuersystem 600 über den FC-SW 2 derart verbunden, daß die LDEV 42 des zweiten Speichersteuersystems 40 (mit anderen Worten die externe LDEV) als interne LDEV 32 des ersten Speichersteuersystems 600 behandelt wird.
  • Die interne LDEV 31 (oder die interne LDEV 32) und/oder der CM 24 speichert die Ein/Ausgabe-Zuordnungssteuerdaten 820, die angeben, ob Block-Ein/Ausgabedaten dem ersten Speichersteuersystem 600 oder dem zweiten Speichersteuersystem 40 zugeteilt werden (zum Beispiel in den Adressenverwaltungsdaten 853 oder den Datei-Metadaten 854, die noch erläutert werden). Diese Ein/Ausgabe-Zuordnungssteuerdaten 820 (zum Beispiel Adressenverwaltungsdaten 853) können vom SVP 23 in wenigstens einen der CHN 21A, CHA 21C, CHF 21B und der DKAs 22 eingegeben werden und im CM 24 und/oder der internen LDEV 31 (oder internen LDEV 32) gespeichert werden.
  • Soweit die allgemeine Beschreibung des Speichersystems 1 der vorliegenden Ausführungsform.
  • Die 3 ist eine schematische Ansicht der logischen Verbindungen zwischen dem ersten Speichersteuersystem 600 und dem zweiten Speichersteuersystem 40.
  • Wie gezeigt enthält das erste Speichersteuersystem 600 drei Speicherschichten aus den VDEVs 101, den LDEVs 31 und den LUNs 103 in aufsteigender Ordnung.
  • Die VDEVs 101 sind virtuelle Vorrichtungen an der untersten Stelle der logischen Speicherschichten. Die VDEVs 101 sind virtuelle Darstellungen von physikalischen Speicherressourcen und können als RAID-Struktur angesehen werden. Das heißt, daß aus einer einzigen Plattenspeichervorrichtung 400 durch "Aufschneiden" eine ganze Anzahl von VDEVs 101 erzeugt werden kann, und daß es auch möglich ist, aus einer Anzahl von Plattenspeichervorrichtungen 400 durch "Abstreifen" eine einzige VDEV 101 zu erzeugen. Die auf der linken Seite der 3 dargestellt VDEV 101 ist zum Beispiel eine virtuelle Darstellung einer Plattenspeichervorrichtung 400 mit der genannten RAID-Struktur.
  • Andererseits kann die auf der rechten Seite der 3 dargestellte VDEV 101 durch Abbilden von externen LDEVs 42 der Plattenspeichervorrichtung 401 des zweiten Speichersteuersystems 40 auf die VDEV 101 durch die Abbildungstabellengruppe TG (zum Beispiel die Abbildungstabelle Tm in dieser Gruppe) als interne LDEV 32 des ersten Speichersteuersystems 600 verwendet werden. Bei dem gezeigten Beispiel wird die VDEV 101 durch Abstreifen von vier externen LDEVs 42A bis 42D in den vier zweiten Speichersteuersystemen 40A bis 40D ausgebildet. Auf jede der externen LDEVs 42A bis 42D kann durch Angabe der jeweiligen LUN (Nummer der logischen Einheit) 43A bis 43D unabhängig über Kommunikationsports 41A bis 41D zugegriffen werden. Jeder Kommunikationsport 41A bis 41D hat einen WWN(World Wide Name), eine eindeutige Identifikationsinformation. Durch die Angabe eines WWN und einer LUN am FC-SW 2 kann das erste Speichersteuersystem 600 somit über den FC-SW 2 eine externe LDEV 42 einsehen, die zu der LUN in dieser Kombination gehört. Wenn zu der LUN mehrere LDEVs gehören, stellt diese Anzahl von LDEVs gegenüber dem Host 10 aufgrund des ersten Speichersteuersystems 600 eine einzige logische Speichervorrichtung dar.
  • Die Abbildungstabellengruppe TG enthält die Abbildungstabelle Tm sowie eine erste Umwandlungstabelle T1 und eine zweite Tabelle T2, die auf der Basis der Abbildungstabelle Tm erstellt werden. Die Tabellen Tm, T1 und T2 werden im folgenden noch erläutert.
  • Die internen LDEVs 32 befinden sich über den VDEVs 101. Die internen LDEVs 32 sind logische Vorrichtungen, die virtuelle Darstellungen der virtuellen Vorrichtungen (VDEVs) sind. Es ist möglich, zwei interne LDEVs 32 mit einer VDEV 101 zu verbinden oder eine interne LDEV 32 mit einer Anzahl von VDEVs 101. Auf die internen LDEVs 32 kann über die jeweilige LUN 103 zugegriffen werden. Auf diese Weise ist es bei der vor liegenden Ausführungsform möglich, dadurch externe LDEVs 42 als einzige interne LDEV 32 des ersten Speichersteuersystems 600 zu verwenden, daß die externen LDEVs 42 mit einer Zwischenspeicherschicht (VDEV 101 und interne LDEV 32) zwischen den LUNs 103 und den externen LDEVs 42 verbunden werden.
  • Wie gezeigt enthält das erste Speichersteuersystem 600 eine Mischung aus internen LDEVs, die mit den externen LDEVs 42 verbunden sind, und internen LDEVs 31, die nicht mit externen LDEVs verbunden sind. In dem gezeigten Beispiel sind einer internen LDEV 31 und einer internen LDEV 32 die LUN "1" zugeordnet. Wenn das erste Speichersteuersystem 600 vom Host 10A die LUN-Angabe "1" erhält, kann somit eine einzige logische Einheit (LU) den Speicherbereich der internen LDEV 32 und den Speicherbereich der dieser internen LDEV 32 zugehörigen externen LDEV 42 als Zugriffsobjekt für den Host 10A umfassen.
  • Die 4 zeigt einen Überblick über die Abbildungstabelle Tm.
  • In der Abbildungstabelle Tm sind die VDEV-Identifikationsinformationen zur Identifikation der jeweiligen VDEV 101 (im folgenden mit "VDEV#" bezeichnet) und die Informationen über die externe LDEV 42 (im folgenden als "Informationen über die externe Vorrichtung" bezeichnet) einander zugeordnet. Die Information über die externe Vorrichtung enthält zum Beispiel Systemidentifikationsinformationen, die Speicherkapazität der externen LDEV 42, Informationen über die Art der Vorrichtung (ob es zum Beispiel eine Bandlaufwerk oder ein Plattenlaufwerk ist und dergleichen), und Informationen über den Weg zu der externen LDEV 42. Die Systemidentifikationsinformationen enthalten zum Beispiel Informationen über den Hersteller, das Modell und die Seriennummer des zweiten Speichersteuersystems 40. Die Weginformationen können eindeutige Identifikationsinformationen (WWN) und eine LUN 4 für jeden Kommunikationsport 41 enthalten. Die in der 4 angegebenen Systemidentifikationsinformationen und WWNs und dergleichen sind zum Zwecke der Erläuterung verwendete Größen und haben keine besondere Bedeutung. Die VDEV 101 mit der VDEV-Nummer "3" in der 4 unten weist drei Weginformationselemente auf. Das heißt, daß die auf diese VDEV 101 abgebildete externe LDEV 42 (#3) eine interne Alternativwegstruktur mit drei Wegen aufweist und durch diese alternative Wegstruktur auf die VDEV 101 (#3) abgebildet wird. Da über jeden dieser drei Wege auf den gleichen Speicherbereich zugegriffen werden kann, ist es auch beim Auftreten eines Fehlers in einem oder in zweien der Wege noch möglich, über den verbleibenden Weg, der noch normal arbeitet, auf die gewünschten Daten zuzugreifen.
  • Die Abbildungstabelle Tm der 4 bildet eine oder eine Anzahl von externen LDEVs 42 auf eine oder mehrere interne LDEVs 32 im ersten Speichersteuersystem 600 ab.
  • Die 5 ist eine Blockdarstellung eines beispielhaften Aufbaus des CHN 21A.
  • Der CHN 21A enthält einen Kommunikationsport 207A, eine LAN-Steuerung 503, eine Datenübertragungs-LSI 501, eine Brücken-LSI 502, einen oder eine Anzahl von Ein/Ausgabe-Steuerabschnitten 510 mit einem Ein/Ausgabeprozessor 504 und einem Ein/Ausgabespeicher 507, eine Speichersteuerung 505, einen NAS-Prozessor 506, einen CHN-Speicher 508 und einen Verbinder 509.
  • Die LAN-Steuerung 503 steuert den Kommunikationsport 207A gemäß den Anweisungen vom NAS-Prozessor 506, die über die Speichersteuerung 505 und den Brücken-LSI erhalten werden. Die LAN-Steuerung 503 steuert die Übertragung und Aufnahme von Datei-Ein/Ausgabe-Befehlen zum Beispiel nach einem TCP/IP-Protokoll.
  • Der Brücken-LSI 502 ist zum Beispiel ein LSI (eine hoch integrierte Schaltung) für die Kommunikation zwischen der LAN-Steuerung 503, die Speichersteuerung 505 und den Datenübertragungs-LSI 501.
  • Die Speichersteuerung 505 ist ein LSI zum Steuern des Datenflusses zwischen dem NAS-Prozessor 506 und dem CHN-Speicher 508. Die Speichersteuerung 505 ist mit dem NAS-Prozessor 506, dem CHN-Speicher 508 und dem Brücken-LSI 502 verbunden.
  • Der CHN-Speicher 508 speichert Programme zum Steuern des NAS-Prozessors 506, Daten, die zwischen dem CM 24 und dem Host 10A ausgetauscht werden, und dergleichen. Der CHN-Speicher 508 kann zum Beispiel ein Befehlsanalyseprogramm 811, ein Ein/Ausgabe-Zuordnungsprogramm 812, ein Dateisystemprogramm 817 und ein Netzwerksteuerprogramm 818 enthalten. Wenn sie in einen Computer eingelesen werden, führen das Befehlsanalyseprogramm 811, das Ein/Ausgabe-Zuordnungsprogramm 812, das Dateisystemprogramm 817 und das Netzwerksteuerprogramm 818 vorgegebene Prozesse auf dem Computer, etwa einer CPU (zum Beispiel dem NAS-Prozessor 506), aus. Zum Beispiel ist das Befehlsanalyseprogramm 811 ein Computerprogramm, das einen Computer veranlaßt, einen vom Host 10A erhaltenen Datei-Ein/Ausgabe-Befehl zu analysieren. Das Ein/Ausgabe-Zuordnungsprogramm 812 ist ein Computerprogramm, das einen Computer veranlaßt, einen noch zu beschreibenden Ein/Ausgabe-Zuordnungsprozeß auszuführen. Das Dateisystemprogramm 817 ist zum Beispiel ein Programm zum Verwalten der Verbindung zwischen dem in einem Datei-Ein/Ausgabe-Befehl enthaltenen Dateinamen und der Adresseninformation des Ortes, an dem die Datei mit diesem Dateinamen gespeichert ist (zum Beispiel die LUN und die logische Blockadresse des Kopfes) sowie zum Umwandeln des Datei-Ein/Ausgabe-Befehls in einen Block-Ein/Ausgabe-Befehl auf der Basis dieser Verbindung. Das Netzwerksteuerprogramm 818 wird zum Beispiel von zwei Dateisystemprotokollen wie NFS (Network File System) und Samba gebildet. NFS akzeptiert Datei-Ein/Ausgabe-Befehle von einem Host mit einem UNIX-Betriebssystem (UNIX ist ein eingetragenes Warenzeichen), auf dem NFS läuft. Samba akzeptiert Datei-Ein/Ausgabe-Befehle von einem Host mit einem Windows-Betriebssystem (Windows ist ein eingetragenes Warenzeichen), auf dem CIFS(Common Interface File System) läuft.
  • Der NAS-Prozessor 506 ist eine CPU oder ein Mikroprozessor. Der NAS-Prozessor 506 weist zum Beispiel ein höheres Leistungsvermögen (zum Beispiel eine höhere Rechengeschwindigkeit) auf als der Ein/Ausgabe-Prozessor 504. Der NAS-Prozessor 506 ist mit der Speichersteuerung 505 verbunden. Der NAS-Prozessor 506 kann die im CHN-Speicher 508 gespeicherten Programme, das heißt das Befehlsanalyseprogramm 811, das Ein/Ausgabe-Zuordnungsprogramm 812, das Dateisystemprogramm 817, das Netzwerksteuerprogramm 818 undsoweiter auslesen und die entsprechenden Prozesse ausführen. Der NAS-Prozessor 506 nimmt zum Beispiel mit dem Netzwerksteuerprogramm 818 Datei-Ein/Ausgabe-Befehle vom Host 10A an. Mit dem Befehlsanalyseprogramm 811 analysiert der NAS-Prozessor 506 den vom Host 10A erhaltenen und im CHN-Speicher 508 gespeicherten Datei-Ein/Ausgabe-Befehl, um festzustellen, ob es ein Lesebefehl oder ein Schreibbefehl ist. Mit dem Dateisystemprogramm 817 wandelt der NAS-Prozessor 506 den vom Host 10A erhaltenen und im CHN-Speicher 508 gespeicherten Datei-Ein/Ausgabe-Befehl in einen Block-Ein/Ausgabe-Befehl um, den er zum Ein/Ausgabe-Prozessor 504 ausgibt. Mit dem Ein/Ausgabe-Zuordnungsprogramm 812 stellt der NAS-Prozessor fest, ob der Block-Ein/Ausgabe-Befehl in der internen LDEV 31 oder in der externen LDEV 42 zu speichern ist, und er veranlaßt auf der Basis dieser Feststellung den Ein/Ausgabe-Prozessor 504, den Block-Ein/Ausgabe-Befehl entweder der internen LDEV 31 oder der externen LDEV zuzuordnen.
  • Der Ein/Ausgabe-Prozessor 504 ist eine CPU oder ein Mikroprozessor, die oder der mit den aus dem Ein/Ausgabe-Speicher 507 ausgelesenen Programmen in der Lage ist, Prozesse wie den Datenaustausch mit dem Verbindungsabschnitt 26, den Austausch von Befehlen mit den Ein/Ausgabe-Prozessoren im CHA 21C oder CHF 21B oder eine Unterbrechung des Datenaustausches zwischen dem NAS-Prozessor 506 und dem Verbindungsabschnitt 26 und dergleichen zu steuern. Darüberhinaus kann der Ein/Ausgabe-Prozessor 504 mit dem SVP 23 in Verbindung treten.
  • Der Ein/Ausgabe-Speicher 507 speichert ein Computerprogramm und dergleichen zum Steuern des Ein/Ausgabe-Prozessors 504.
  • Die Datenübertragungs-LSI 501 ist mit dem Verbinder 509 verbunden, der wiederum mit dem Verbindungsabschnitt 26 verbunden ist. Außerdem ist die Datenübertragungs-LSI 501 mit dem Ein/Ausgabe-Prozessor 504 und dem Brücken-LSI verbunden. Die Datenübertragungs-LSI 501 steuert die Übertragung von Daten.
  • Es wurden insoweit der Aufbau und die Funktionen des CHN 21A beschrieben. Wenigstens das Ein/Ausgabe-Zuordnungsprogramm 812 des erwähnten Befehlsanalyseprogramms 811 und das Ein/Ausgabe-Zuordnungsprogramm 812 sind derart im Ein/Ausgabe-Speicher 507 gespeichert, daß der Ein/Ausgabe-Prozessor 504 die Ein/Ausgabe-Zuordnungsprozesse ausführen kann. Dies wird genauer weiter unten für eine Modifikation der vorliegenden Ausführungsform erläutert.
  • Die 6 ist eine Blockdarstellung eines beispielhaften Aufbaus des CHF 21B.
  • Der CHF 21B enthält einen Kommunikationsport 207B, eine FC-Steuerung 602, eine Datenübertragungs-LSI 601, einen Ein/Ausgabe-Prozessor 603, einen Ein/Ausgabe-Speicher 604 und einen Verbinder 605.
  • Der Kommunikationsport 207B ist ein Port für die Verbindung mit einer externen Vorrichtung, etwa dem zweiten Speichersteuersystem 40.
  • Die FC-Steuerung 602 ist zwischen dem Kommunikationsport 207B und dem Datenübertragungs-LSI 601 angeordnet. Die FC-Steuerung 602 steuert das Übertragen und die Aufnahme von Block-Ein/Ausgabe-Befehlen gemäß einem Glasfaserkanalprotokoll zum Beispiel.
  • Der Ein/Ausgabe-Speicher 604 speichert Programme zum Steuern des Ein/Ausgabe-Prozessors 603. Der Ein/Ausgabe-Speicher 604 enthält zum Beispiel ein Programm 814 für einen externen Zugriff. Das Programm 814 für einen externen Zugriff veranlaßt den Computer, der dieses Programm 814 einliest, die Prozesse zum Übertragen eines erhaltenen Block-Ein/Ausgabe-Befehls zum zweiten Speichersteuersystem 60 auszuführen.
  • Der Ein/Ausgabe-Prozessor 603 ist eine CPU oder ein Mikroprozessor. Der Ein/Ausgabe-Prozessor 603 ist mit dem Datenübertragungs-LSI 610, dem Ein/Ausgabe-Speicher 604 und dem SVP 23 verbunden. Er liest die im Ein/Ausgabe-Speicher 604 gespeicherten verschiedenen Computerprogramme aus und steuert die Übertragung und das Aufnahmen von Daten und Befehlen.
  • Die Datenübertragungs-LSI 601 ist mit dem Verbinder 605 verbunden, der wiederum mit dem Verbindungsabschnitt 26 verbunden ist. Außerdem ist die Datenübertragungs-LSI 601 mit dem Ein/Ausgabe-Prozessor 603 und der FC-Steuerung 602 verbunden. Die Datenübertragungs-LSI 601 steuert die Übertragung von Daten.
  • Im folgenden werden die verschiedenen Prozeßabläufe beschrieben, die bei der vorliegenden Ausführungsform ausgeführt werden.
  • Die 7 zeigt den Prozeßablauf beim Ausgeben und Erhalt von Ein/Ausgabe-Zuordnungssteuerdaten 820.
  • Die Ein/Ausgabe-Zuordnungssteuerdaten 820 werden zum Beispiel mit den in den 7(A) und 7(B) gezeigten Prozeßabläufen im CHN-Speicher 508 im CHA 21A gespeichert.
  • Wie in der 7(A) gezeigt, gibt dabei der NAS-Prozessor 506 eine Anweisung an den Ein/Ausgabe-Prozessor 504 aus, die Ein/Ausgabe-Zuordnungssteuerdaten 820 aufzunehmen (Schritt S500).
  • Auf diese Anweisung hin liest der Ein/Ausgabe-Prozessor 504 die im CM 24 gespeicherten Ein/Ausgabe-Zuordnungssteuerdaten 820 aus und gibt sie in den CHN-Speicher 508 ein (S501). Dadurch werden die Ein/Ausgabe-Zuordnungssteuerdaten 820 im CHN-Speicher 508 gespeichert (S502).
  • Genauer gesagt gibt, wie in der 7(B) gezeigt, der NAS-Prozessor 506 eine Anweisung an den Ein/Ausgabe-Prozessor 504 aus, die Ein/Ausgabe-Zuordnungssteuerdaten 820 aufzunehmen (Schritt S510).
  • Auf diese Anweisung hin gibt der Ein/Ausgabe-Prozessor 504 einen Auslesebefehl zum Auslesen der Ein/Ausgabe-Zuordnungssteuerdaten 820 an den DKA 22 aus, der auf die interne LDEV 31 zugreifen kann, in der die Ein/Ausgabe-Zuordnungssteuerdaten 820 gespeichert sind (S511).
  • Der den Ein/Ausgabe-Auslesebefehl aufnehmende DKA 22 reserviert im CM 24 einen Cache-Bereich, nimmt die Ein/Ausgabe-Zuordnungssteuerdaten 820 von der internen LDEV 31 auf und speichert sie im Cache-Bereich (S512).
  • Der Ein/Ausgabe-Prozessor 504 liest die Ein/Ausgabe-Zuordnungssteuerdaten 820 aus dem reservierten Cache-Bereich aus und gibt sie in den CHN-Speicher 508 ein (S513). Dadurch werden die Ein/Ausgabe-Zuordnungssteuerdaten 820 im CHN-Speicher 508 gespeichert (S514).
  • Der NAS-Prozessor 506 kann die im folgenden beschriebenen Ein/Ausgabe-Zuordnungsprozesse mit den im CHN-Speicher 508 gespeicherten Ein/Ausgabe-Zuordnungssteuerdaten 820 ausführen. Wie gezeigt enthalten die Ein/Ausgabe-Zuordnungssteuerdaten 820 zum Beispiel Adressenverwaltungsdaten 853 und Datei-Metadaten 854. Die Adressenverwaltungsdaten 853 und Datei-Metadaten 854 werden im folgenden noch beschrieben.
  • Die 8 zeigt den Prozeßablauf, wenn ein vom Host 10A erhaltener Datei-Ein/Ausgabe-Befehl in einen Block-Ein/Ausgabe-Befehl umgewandelt und ausgegeben wird.
  • Der vom Host 10A ausgegebene Datei-Ein/Ausgabe-Befehl wird vom CHN 21A aufgenommen und im CHN-Speicher 508 gespeichert (S550). Wenn der Datei-Ein/Ausgabe-Befehl ein Datei-Einschreibbefehl ist, enthält er die einzuschreibende Datei, den Dateinamen dieser Datei und die LUN. Wenn der Datei-Ein/Ausgabe-Befehl ein Datei-Auslesebefehl ist, enthält er die auszulesende Datei, den Dateinamen dieser Datei und die LUN.
  • Der NAS-Prozessor 506 liest den im CHN-Speicher 508 gespeicherten Datei-Ein/Ausgabe-Befehl aus (S551) und stellt mit Hilfe des Dateianalyseprogramms 811 fest, ob der Datei-Ein/Ausgabe-Befehl ein Dateieinschreibbefehl oder ein Dateiauslesebefehl ist (S552).
  • Darüberhinaus wandelt der NAS-Prozessor 506 den Datei-Ein/Ausgabe-Befehl mit Hilfe des Dateisystemprogramms 817 in einen Block-Ein/Ausgabe-Befehl um (S553). Der NAS-Prozessor 506 führt den später beschriebenen Ein/Ausgabe-Zuordnungsprozeß auf der Basis der im umgewandelten Block-Ein/Ausgabe-Befehl enthaltenen Adresseninformationen und der Ein/Ausgabe-Zuordnungssteuerdaten 820 aus (S554).
  • Wenn als Ergebnis des Ein/Ausgabe-Zuordnungsprozesses in S554 ein externer Zugriff erforderlich ist (J in S555), gibt der NAS-Prozessor 506 die externe Zugriffsanforderung und den umgewandelten Block-Ein/Ausgabe-Befehl an den Ein/Ausgabe-Prozessor 504 aus (S556). Der Ein/Ausgabe-Prozessor 504 überträgt dann den erhaltenen Block-Ein/Ausgabe-Befehl über den Verbindungsabschnitt 26 zum Ein/Ausgabe-Prozessor 603 im CHF 21A (S557). Der Ein/Ausgabe-Prozessor 603 des CHF 21A greift auf die Abbildungstabellengruppe TG zu und führt den externen Zugriff aus. Dazu wandelt er zum Beispiel die im Block-Ein/Ausgabe-Befehl vom CHN 21A enthaltene interne LUN in eine externe LUN um (S558) und überträgt den Block-Ein/Ausgabe-Befehl mit der externen LUN über das zweite Kommunikationsnetzwerk CN2 zum CHF 217 des zweiten Speichersteuersystems 40 (S559).
  • Wenn als Ergebnis des Ein/Ausgabe-Zuordnungsprozesses in S554 ein interner Zugriff erforderlich ist (N in S555), gibt der NAS-Prozessor 506 die interne Zugriffsanforderung und den umgewandelten Block-Ein/Ausgabe-Befehl an den Ein/Ausgabe-Prozessor 504 aus (S560). Der Ein/Ausgabe-Prozessor 504 überträgt in diesem Fall den erhaltenen Block-Ein/Ausgabe-Befehl über den Verbindungsabschnitt 26 zum DKA 22 (S561). Mit Hilfe des DKA 22 werden die Daten im Block-Ein/Ausgabe-Befehl entweder in den Speicherbereich im internen LDEV 31 eingeschrieben, der von den Adresseninformationen im Block-Ein/Ausgabe-Befehl bezeichnet wird, oder die Daten werden aus dem Speicherbereich im internen LDEV 31 ausgelesen, der von den Adresseninformationen im Block-Ein/Ausgabe-Befehl angegeben wird. Wenn Daten ausgelesen wurden, nimmt der Ein/Ausgabe-Prozessor 504 des CHN 21A die Daten vom DKA 22 über den CM 24 auf und überträgt sie zum Host 10A.
  • Bei dem dargestellten Prozeßablauf können die Prozesse für den externen Zugriff in S558 statt vom Ein/Ausgabe-Prozessor des CHF 21B auch vom Ein/Ausgabe-Prozessor im CHN 21A (oder im CHA 21C) ausgeführt werden. In diesem Fall überträgt der Ein/Ausgabe-Prozessor des CHF 21B den erhaltenen Block-Ein/Ausgabe-Befehl nur zum zweiten Speichersteuersystem 40.
  • Die 9 zeigt beispielhaft die Zusammensetzung der Adressenverwaltungsdaten 853 und der Datei-Metadaten 854, die in den Zuordnungssteuerdaten 820 enthalten sind, zusammen mit dem genauen Prozeßablauf bei dem Ein/Ausgabe-Zuordnungsprozeß, der auf der Basis der Zuordnungssteuerdaten 820 ausgeführt wird.
  • Wie erwähnt sind die Adressenverwaltungsdaten 853 und die Datei-Metadaten 854 in den Zuordnungssteuerdaten 820 enthalten.
  • Die Adressenverwaltungsdaten 853 enthalten eine Anzahl von Adresseninformationseinträgen und Informationen darüber, ob diese Adresseninformationseinträge jeweils einem internen oder einem externen Speicher entsprechen. Die Adresseninformationen können zum Beispiel aus der Kombination einer LUN mit einer Kopf-LBA (logischen Blockadresse) bestehen. Mit "intern" wird ein Bereich im ersten Speichersteuersystem 600 bezeichnet und mit "extern" ein Bereich im zweiten Speichersteuersystem, das sich außerhalb des ersten Speichersteuersystems 600 befindet.
  • Die Datei-Metadaten 854 enthalten Attributinformationen für die einzelnen Dateien, die vom Dateisystemprogramm 818 des NAS-Prozessors 806 verwaltet werden, zum Beispiel den Dateinamen und Adresseninformationen über den Ort, an dem die Datei mit diesem Dateinamen gespeichert ist (zum Beispiel die LUN und Kopf-LBA), sowie die Datengröße der Datei. Es ist zwar nicht dargestellt, die Datei-Metadaten 854 können aber auch noch andere Attributinformationen enthalten, etwa den Zeitpunkt der Aktualisierung und dergleichen. Darüberhinaus können die Datei-Metadaten 854 auch Attributinformationen für ein Verzeichnis und nicht nur für Dateien enthalten.
  • Im folgenden wird der Ein/Ausgabe-Zuordnungsprozeß beschrieben.
  • Das in den Computer (zum Beispiel den NAS-Prozessor 506) eingelesene Ein/Ausgabe-Zuordnungsprogramm 812 greift auf die Adressenverwaltungsdaten 853 zu und stellt fest, ob die Adresseninformationen im umgewandelten Block-Ein/Ausgabe-Befehl (mit anderen Worten die dem Dateinamen im Datei-Ein/Ausgabe-Befehl entsprechenden Adresseninformationen) einem internen oder einem externen Ort entsprechen (S554A). Alternativ nimmt das Ein/Ausgabe-Zuordnungsprogramm 812 die dem Dateinamen im Datei-Ein/Ausgabe-Befehl entsprechenden Adresseninformationen aus den Datei-Metadaten 854 auf und stellt unter Bezug auf die Adressenverwaltungsdaten 853 fest, ob die Adresseninformationen einem internen oder einem externen Ort entsprechen (S554A).
  • Wenn bei der Feststellung in S554A das Ein/Ausgabe-Zuordnungsprogramm 812 einen externen Ort identifiziert (extern in S554B), bestimmt es, daß eine externe Zugriffsanforderung ausgegeben wird (S554C). In diesem Fall wird der Prozeß in S556 der 8 ausgeführt.
  • Wenn bei der Feststellung in S554A das Ein/Ausgabe-Zuordnungsprogramm 812 einen internen Ort identifiziert (intern in S554B), bestimmt es, daß eine interne Zugriffsanforderung ausgegeben wird (S554D). In diesem Fall wird der Prozeß in S560 der 8 ausgeführt.
  • Wenn bei der Feststellung in S554A das Ein/Ausgabe-Zuordnungsprogramm 812 sowohl einen externen Ort als auch einen internen Ort identifiziert (beide in S554B), bestimmt es, daß sowohl eine externe Zugriffsanforderung als auch eine interne Zugriffsanforderung ausgegeben werden (S554D). In diesem Fall werden sowohl der Prozeß in S556 als auch der Prozeß in S560 der 8 ausgeführt. Eine Doppelidentifikation kann zum Beispiel dann erfolgen, wenn der Bereich der Adressen für Einschreiborte oder Leseorte sowohl Adresseninformationen für eine nicht mit einer externen LDEV 42 verbundene interne LDEV 31 als auch Adresseninformationen für eine mit einer externen LDEV 42 verbundene interne LDEV 32 umfaßt. In einem konkreten Beispiel entspricht dies dem Fall, daß Daten im gesamten Speicherbereich mit der LUN "1" der 3 gespeichert werden oder gespeichert sind.
  • Mit dem beschriebenen Ablauf wird der Ein/Ausgabe-Zuordnungsprozeß ausgeführt.
  • Die Datei-Metadaten 854 werden immer dann aktualisiert, wenn Daten in die interne LDEV 31 und die interne LDEV 32 (mit anderen Worten die externe LDEV 42) eingeschrieben werden oder Daten aus den internen LDEV 31, 32 gelöscht werden.
  • Die 10 zeigt den Prozeßablauf bei der Aktualisierung der Datei-Metadaten 854.
  • Die Datei-Metadaten 854 können mit dem Prozeßablauf der 10(A) oder dem Prozeßablauf der 10(B) aktualisiert werden.
  • Wie in der 10(A) gezeigt, aktualisiert der NAS-Prozessor 506 die aus dem CHN-Speicher 508 ausgelesenen Datei-Metadaten 854 (S700) immer dann, wenn ein be stimmtes Ereignis eintritt, zum Beispiel dann, wenn Daten in die internen LDEV 31, 32 eingeschrieben werden oder Daten in den internen LDEV 31, 32 gelöscht werden.
  • Zu einem vorgegebenen Zeitpunkt (zum Beispiel unmittelbar nach S700) gibt der NAS-Prozessor 506 daher eine Übertragungsanweisung an den Ein/Ausgabe-Prozessor 504 aus, die diesen anweist, die aktualisierten Datei-Metadaten 854 aus dem CHN-Speicher 508 zum CM 24 zu übertragen (S701).
  • Daraufhin liest der Ein/Ausgabe-Prozessor 504 die aktualisierten Datei-Metadaten 854 aus dem CHN-Speicher 508 aus und überträgt sie zum CM 24 (S702). Die im CM 24 gespeicherten Datei-Metadaten werden damit durch die aktualisierten Datei-Metadaten 854 aus dem CHN-Speicher 508 ersetzt.
  • Wie in der 10(B) gezeigt, aktualisiert der NAS-Prozessor 506 die aus dem CHN-Speicher 508 ausgelesenen Datei-Metadaten 854 ähnlich wie in S700 (S800).
  • Zu einem vorgegebenen Zeitpunkt (zum Beispiel unmittelbar nach S800) gibt der NAS-Prozessor 506 eine Übertragungsanweisung an den Ein/Ausgabe-Prozessor 504 aus, die diesen anweist, die aktualisierten Datei-Metadaten 854 aus dem CHN-Speicher 508 zur internen LDEV 31 zu übertragen (S801).
  • Daraufhin reserviert der Ein/Ausgabe-Prozessor 504 einen Cache-Bereich im CM 24, gibt an den DKA 22, der auf die interne LDEV 31 zugreifen kann, in der die Datei-Metadaten gespeichert sind, einen Ein/Ausgabe-Leitungsbefehl aus (S802), liest die aktualisierten Datei-Metadaten 813 aus dem CHN-Speicher 508 aus und gibt sie in den reservierten Cache-Bereich (S803).
  • Der DKA 22, der den Ein/Ausgabe-Leitungsbefehl erhält, nimmt die aktualisierten Datei-Metadaten 813 aus dem reservierten Cache-Bereich (S803) und überschreibt die Datei-Metadaten in der internen LDEV 31 mit den so erhaltenen aktualisierten Datei-Metadaten 854 (S805).
  • Es wird nun beschrieben, wie die erwähnte Abbildungstabelle Tm (4) durch den Austausch von Informationen zwischen dem CHF 21B des ersten Speichersteuersystems 600 (im folgenden erster CHF 21B genannt) und dem CHF 217 des zweiten Speichersteuersystems 40 (zweiter CHF 217) erzeugt wird.
  • Die 11 zeigt den Prozeßablauf, wenn der CHF 21B des ersten Speichersteuersystems 600 eine Abbildungstabelle Tm erzeugt.
  • Zum Beispiel gibt der CHF 21B einen Untersuchungsbefehl (nicht gezeigt) an den FC-SW 2 aus. Als Antwort darauf erhält er vom FC-SW 2 die Log-in-Informationen, die zum Einloggen in das mit dem FC-SW 2 verbundene zweite Speichersteuersystem 40 erforderlich sind (zum Beispiel die WWN des mit dem FC-SW 2 verbundenen Kommunikationsports 41). Der CHF 21B speichert die vom FC-SW 2 erhaltenen Login-Anforderungen für das zweite Speichersteuersystem 40 im Ein/Ausgabe-Speicher 604 (mit anderen Worten in einem lokalen Speicher) oder dem SM 25.
  • Wenn zum Beispiel der erste CHF 21B vom SVP 23 eine Anforderung für eine Verbindung mit einer VDEV 101 mit einer externen LDEV 42 erhält, werden die im Ein/Ausgabe-Speicher 604 (oder SM 25) gespeicherten Log-in-Anforderungen dazu verwendet, über den Initiatorport (207B) des CHF 21B ein Log-in in das zweite Speichersteuersystem 40 durchzuführen (S83). Der zweite CHF 217 gibt auf den Log-in-Vorgang eine Antwort an den ersten CHF 21B zurück (S84), wodurch das Log-in abgeschlossen wird.
  • Daraufhin überträgt der erste CHF 21B einen Anfragebefehl zum Beispiel gemäß den SCSI-Spezifikationen (Small Computer System Interface) zum zweiten CHF 217 (S85). Der Anfragebefehl wird dazu verwendet, die Art und den Aufbau der Vorrichtung festzustellen, bei der angefragt wird, wodurch die Vorrichtung, die den Anfragebefehl ausgibt, den physikalischen Aufbau der Vorrichtung feststellen kann, bei der angefragt wird.
  • Zum Beispiel nimmt der zweite CHF 217, der einen Anfragebefehl erhält, aus dem Speicher (nicht gezeigt) im zweiten Speichersteuersystem 40 Steuersysteminformationen über das zweite Speichersteuersystem 40A, überträgt diese Steuersysteminformationen zum ersten CHF 21B (S86) und gibt eine vorgeschriebene Antwort zurück (S87). Die Steuersysteminformationen enthalten zum Beispiel den Hersteller, den Gerätenamen und die Seriennummer für das zweite Speichersteuersystem 40, die WWN des Kommunikationsports 41A, an dem der Anfragebefehl erhalten wurde, die LUN für diese WWN, die zu dieser LUN gehörende LDEV-Nummer und die Art der Speicherplatte bei dieser LDEV.
  • Der erste CHF 21B speichert die erhaltenen Steuersysteminformationen (zum Beispiel den Hersteller, den Gerätenamen und die Seriennummer des zweiten Speichersteuersystems 40, die WWN, LUN und Art der Speicherplatte) an einer vorgegebenen Stelle der Abbildungstabelle Tm (zum Beispiel an der Stelle, die dem vom Klienten angegebenen VDEV# entspricht) (S88).
  • Dann überträgt der erste CHF 21B eine Anfrage über die Speicherkapazität der externen LDEV 42, die zu der LUN in den erhaltenen Steuersysteminformationen gehört (zum Beispiel einen Lesekapazitätsbefehl auf der Basis des SCSI-Protokolls) zum zweiten CHF 217 (S89). Der zweite CHF 217 greift auf die im zweiten Speichersteuersystem 40 gespeicherten Speicherkapazitätsinformationen (nicht gezeigt) zu (zum Beispiel auf die Gesamtspeicherkapazität der einen oder mehreren externen LDEVs 42 für die LUN) und gibt die so ermittelte Speicherkapazität (mit anderen Worten die Speicherkapazität der externen LDEVs 42) zum ersten CHF 21B (S90) und eine Antwort (S91) zurück. Der erste CHF 21B speichert die erhaltene Speicherkapazität an einer bestimmten Stelle der Abbildungstabelle Tm (zum Beispiel an der Stelle, die dem von Klienten angegebenen VDEV# entspricht) (S92).
  • Mit dem beschriebenen Prozeß entsteht eine Verbindung zwischen der VDEV#, den Steuersysteminformationen und der Speicherkapazität.
  • Nachdem die VDEV# auf die externen Systeminformationen (die Informationen schließen die Steuersysteminformationen und die Speicherkapazität ein) abgebildet wurde, erfolgt die Adressenumwandlung und dergleichen durch Bezug auf die verschiedenen Tabellen in der Abbildungstabellengruppe TG, wenn der Host 10A eine Dateneingabe oder Datenausgabe zu oder von der externen LDEV 42 über das erste Speichersteuersystem 600 ausführt.
  • Anhand der 12 bis 14 erfolgt nun eine Beschreibung der Dateneingabe und der Datenausgabe zwischen dem ersten Speichersteuersystem 600 und dem zweiten Speichersteuersystem 40. Auf der Basis der 12 und 13 wird zuerst das Einschreiben von Daten erläutert. Die 12 ist eine schematische Darstellung der Prozesse im Falle des Dateneinschreibens. Die 13 zeigt die Prozeßabfolge in der 12 mit Bezug zu den jeweiligen Tabellen.
  • Der CHN 21A kann Blockdaten, die durch Umwandeln der Dateidaten vom Host 10A erhalten werden, in die interne LDEV 31 oder 32 einschreiben.
  • Wenn die LDEV, in die der CHN 21A Daten einschreiben will, die interne LDEV 31 ist, werden die Daten mit dem Standardprozeß eingeschrieben. Das heißt, daß die Daten vom CHN 21A vorübergehend im Cache-Speicher 24 zwischengespeichert werden und dann über den DKA 22 an einer bestimmten Adresse auf einer bestimmten Plattenspeichervorrichtung 400 gespeichert werden. Dabei wandelt der DKA 22 die logische Adresse in eine physikalische Adresse um. Bei einem RAID-Aufbau werden die gleichen Daten in einer Anzahl von Plattenspeichervorrichtungen 400 gespeichert.
  • Wenn dagegen die LDEV, in die der CHN 21A Daten einschreiben will, die interne LDEV 32 ist, die über die VDEV 102 mit der externen LDEV 42 verbunden ist, werden die Daten mit einer Abfolge eingeschrieben, wie sie in der 12 gezeigt ist. Die 12(A) ist ein Flußdiagramm auf der Basis der Speicherschichten und die 12(B) ein Flußdiagramm zur Darstellung des Verfahrens, wie der Cache-Speicher 24 verwendet wird.
  • Der CHN 21A gibt die LDEV-Nummer für die interne LDEV 32 an, die Zielort für das Einschreiben ist, sowie die WWN des Kommunikationsports 207A für den Zugriff auf diese interne LDEV 32 an. Er gibt außerdem einen Blockeinheit-Schreibbefehl (Schreiben) aus (S121). Bei Erhalt dieses Schreibbefehls vom CHN 21A erzeugt der CHF 21B einen Blockeinheit-Schreibbefehl für das zweite Speichersteuersystem 40 und überträgt diesen zum zweiten Speichersteuersystem 40 (S122). Der CHF 21B erzeugt dann durch Ändern der Adresseninformationen für den Schreib-Zielort und dergleichen in dem vom CHN 21A erhaltenen Schreibbefehl für die externe LDEV 42 einen neuen Schreibbefehl.
  • Daraufhin sendet der CHN 21A die einzuschreibenden Daten zum CHF 21B (S123). Die am CHF 21B erhaltenen Daten werden von der internen LDEV 32 über die VDEV 101 (S124) zur externen LDEV 42 übertragen (S126). Zu dem Zeitpunkt, an dem die Daten vom Host 10A im Cache-Speicher 24 gespeichert werden (S125), gibt der CHN 21A eine Schreibendeantwort (Gut) zum Host 10 zurück. Zu dem Zeitpunkt, zu dem es die Daten vom CHF 21B erhält (oder dem Zeitpunkt, zu dem es das Einschreiben in die externe LDEV 42 beendet), überträgt das zweite Speichersteuersystem 40 einen Schreibendebericht zum CHF 21B (S127). Der Zeitpunkt, zu dem der Abschluß des Einschreibens vom CHN 21A zum Host 10A übermittelt wird (S125), ist nicht der Zeitpunkt, zu dem die Da ten tatsächlich in der Speichervorrichtung 42 gespeichert werden (asynchrones System). Der Host 10A wird daher vom Dateneinschreibprozeß befreit, bevor die Daten tatsächlich in der externen LDEV 42 gespeichert werden, und kann zu anderen Prozessen übergehen.
  • Wie in der 12(B) gezeigt, ist im Cache-Speicher 24 eine Anzahl von Subblöcken 24A vorgesehen. Das erste Speichersteuersystem 600 speichert die Daten an einem vorgegebenen Ort des Cache-Speichers 24, wozu es die vom Host angegebene logische Blockadresse in eine Subblockadresse umwandelt (S124).
  • Anhand der 13 wird nun der Vorgang des Umwandelns der Daten mit Hilfe der verschiedenen Tabellen beschrieben. Wie im oberen Teil der 13 gezeigt, überträgt der CHN 21A die Daten durch Angabe einer LUN und einer logischen Blockadresse (LBA) Der CHF 21B wandelt die für die interne LDEV 32 eingegebenen Daten (LUN + LBA) auf der Basis der ersten Umwandlungstabelle T1 der 13(a) in Daten für die VDEV 101 um. Die erste Umwandlungstabelle T1 ist eine LUN – LDEV – VDEV-Umwandlungstabelle zum Umwandeln von Daten, die eine interne LUN 103 angeben, in Daten für eine VDEV 101. Diese Tabelle T1 ist zum Beispiel im SM 25 gespeichert (das gleiche gilt für die im folgenden beschriebenen Tabellen T2 und T2a). Die Tabelle T1 wird durch die gegenseitigen Verbindungen zwischen zum Beispiel einer LUN, der Nummer der LDEV 32, die der LUN 103 entspricht (LDEV#) und der maximalen Anzahl von Slots dafür sowie der Nummer der VDEV 101, die der LDEV 102 entspricht (VDEV#) und der maximalen Anzahl von Slots dafür und dergleichen gebildet. Es ist, auch wenn es nicht dargestellt ist, auch möglich, in der Tabelle T1 zu speichern, welche LBA welcher LDEV 32 welchem Subblock entspricht oder welchem Slot des Cache-Speichers 24 und dergleichen. Durch Bezug auf eine Tabelle T1 dieser Art wandelt der CHF 21B (zum Beispiel der erste CHF 21B) die Daten vom CHA 21A (LUN + LBA) in Daten für die VDEV 101 (VDEV# + SLOT# + SUBBLOCK#) um.
  • Daraufhin greift der CHF 21B auf die in der 13(b) gezeigte zweite Umwandlungstabelle T2 zu und wandelt die Daten für die VDEV 101 in Daten um, die durch Übertagen zu einer externen LUN (externen LDEV 42) im zweiten Speichersteuersystem 40 gespeichert werden. Die zweite Umwandlungstabelle T2 enthält die gegenseitigen Verbindungen zwischen zum Beispiel der Nummer der VDEV 101 (VDEV#), der Nummer des Initiatorports beim Übertragen der Daten von der VDEV 101 zum zweiten Speichersteuersystem 40, die WWNs für die Identifikation der Kommunikationsports 41, zu denen die Daten zu übertragen sind, und die LUNs, auf die über diese Kommunikationsports zugegriffen werden kann. Auf der Basis dieser zweiten Umwandlungstabelle T2 wandelt der CHF 21B die Informationen über den Zielort der zu speichernden Daten in das Format Initiatorportnummer # + WWN + LUN + LBA um. Die Daten, die die auf diese Weise geänderten Informationen über den Zielort enthalten, werden vom angegebenen Initiatorport über das Kommunikationsnetzwerk CN2 übertragen und kommen am bezeichneten Kommunikationsport 41 an. Daraufhin werden die Daten am vorgegebenen Ort der externen LDEV 42 gespeichert, auf die mit der angegebenen LUN 43 zugegriffen werden kann. Da die externe LDEV 42 auf virtuelle Weise auf einer Anzahl von Plattenspeichervorrichtungen 401 konstruiert wird, wird die Datenadresse in eine physikalische Adresse umgewandelt, und die Daten werden unter einer bestimmten Adresse auf einer bestimmten Speicherplatte gespeichert.
  • Die 13(c) zeigt eine weitere zweite Umwandlungstabelle T2a. Diese Umwandlungstabelle T2a wird dann verwendet, wenn in der VDEV 101 in der externen Speichervorrichtung 42 ein Abstreifen erfolgt oder eine RAID-Konfiguration angewendet wird. Die Umwandlungstabelle T2a enthält die gegenseitigen Verbindungen zwischen der VDEV-Nummer (VDEV#), der Abstreifgröße, dem RAID-Level, einer Zahl zum Identifizieren des zweiten Speichersteuersystems 40 (SS# (Speichersystemnummer)), der Initiatorportnummer, dem WWN des Kommunikationsports 41 und der Nummer des LUN 43. Bei dem in der 13(c) gezeigten Beispiel bildet die VDEV 101 ein RAID 1, wobei insgesamt vier externe Speichersteuersysteme verwendet werden, die durch die SS# 1, 4, 6 und 7 identifiziert werden. Für die gleiche Vorrichtung (LDEV#) gibt es drei der SS#1 zugeteilte LUN (#0, #0, #4). Das Volumen von LUN #0 weist eine alternative Wegstruktur mit zwei Zugriffswegen auf. Auf diese Weise ist es bei der vorliegenden Ausführungsform möglich, weitere Funktionen wie ein Abstreifen oder eine RAID-Konfiguration und dergleichen zum CHN 21A hinzuzufügen, wozu aus einer Anzahl von externen logischen Volumen (LDEVs) die VDEV 101 ausgebildet wird.
  • Mit Bezug zu der 14 wird nun die Prozeßabfolge für den Fall beschrieben, daß Daten aus der externen LDEV 42 im zweiten Speichersteuersystem 40 ausgelesen werden.
  • Zuerst überträgt der CHN 21A einen Blockeinheit-Lesebefehl zum CHF 21B (S131). Bei Erhalt des Lesebefehls erzeugt der CHF 21B einen eigenen Blockeinheit-Lesebefehl, damit die erforderlichen Daten aus dem zweiten Speichersteuersystem 40 ausgelesen werden. Der CHF 21B überträgt den eigens erzeugten Lesebefehl zum zweiten Speichersteuersystem 40 (S132). In Reaktion auf diesen eigenen Lesebefehl vom CHF 21B liest das zweite Speichersteuersystem 40 die erforderlichen Daten aus der externen LDEV 42 aus, überträgt die Daten zum CHF 21B (S133) und gibt einen Bericht ab, daß das Auslesen normal beendet wurde (S135). Wie in der 14(B) gezeigt, speichert der CHF 21B die vom zweiten Speichersteuersystem 40 erhaltenen Daten an einem bestimmten Ort im Cache-Speicher 24 (S134).
  • Der CHF 21B leist die im Cache-Speicher 24 gespeicherten Daten aus und überträgt sie nach einer Adressenumwandlung über die LUN 103 und dergleichen zum CHN 21A (S136). Der CHN 21A gibt einen Auslese-Ende-Bericht ab (S137). Bei dieser Abfolge von Prozessen zum Auslesen von Daten wird die anhand der 13 beschriebene Umwandlungsoperation in umgekehrter Richtung ausgeführt.
  • Die 14 zeigt den Fall, daß in Reaktion auf eine Anforderung vom CHN 21A Daten aus dem zweiten Speichersteuersystem 40 ausgelesen und im Cache-Speicher 24 gespeichert werden. Die Abfolge ist jedoch nicht darauf beschränkt, und es ist auch möglich, alle oder einen Teil der Daten, die in der externen LDEV 42 gespeichert sind, vorher im Cache-Speicher 24 zu speichern. In diesem Fall können die Daten in Reaktion auf einen Auslesebefehl vom CHN 21A unmittelbar aus dem Cache-Speicher ausgelesen und zum CHN 21A übertragen werden.
  • Bei der beschriebenen Ausführungsform werden Ein/Ausgabe-Zuordnungssteuerdaten 820 erstellt, die Adresseninformationen für den in den vom Host 10A erhaltenen Datei-Ein/Ausgabe-Daten enthaltenen Dateinamen (mit anderen Worten die Adresseninformationen, die in den von Datei-Ein/Ausgabe-Daten in Block-Ein/Ausgabe-Daten umgewandelten Daten enthalten sind) und Informationen darüber enthalten, ob diese Adresseninformationen einem internen Speicherort oder einem externen Speicherort entsprechen. Der NAS-Prozessor 806 oder der Ein/Ausgabe-Prozessor 804 des CHN 21A nimmt auf diese Ein/Ausgabe-Zuordnungssteuerdaten 820 Bezug und stellt fest, ob die Adresseninformationen für den Dateinamen in dem Datei-Ein/Ausgabe-Daten vom Host 10A einen internen oder einen externen Speicherort betreffen. Auf der Basis dieser Feststellung wird der Übertragungszielort für die Block-Ein/Ausgabe-Daten entweder einem DKA 22 im ersten Speichersteuersystem 600 oder dem CHF 21B zugeordnet. Im letzten Fall wird der Block-Ein/Ausgabe-Befehl vom CHF 21B zum zweiten Speichersteuersystem 40 übertragen. Der Host 10A kann somit auf einen Speicherbereich in einem Speichersteuersystem zugreifen, das aus einer Anzahl von Speichersteuersystemen ausgewählt wird, auch wenn er einen Datei-Ein/Ausgabe-Befehl ausgibt, ohne daß ihm bekannt sein muß, ob der Zielort für den Zugriff eine interne LDEV 31 im ersten Speichersteuersystem 600 oder eine externe LDEV 42 im zweiten Speichersteuersystem 40 ist. Mit anderen Worten werden das erste Speichersteuersystem 600 und das zweite Speichersteuersystem 40 von den Hosts 10A, 10B wie ein einziges Speichersteuersystem verwendet.
  • Bei der beschriebenen Ausführungsform kann, wenn der CHA 21C vom Host 10B über das SAN CN3 einen Block-Ein/Ausgabe-Befehl erhält, der Ein/Ausgabe-Prozessor des CHA 21C auf die Ein/Ausgabe-Zuordnungssteuerdaten 820 zugreifen, feststellen, ob die in den erhaltenen Block-Ein/Ausgabe-Daten enthaltenen Adresseninformationen einem internen oder einem externen Speicherort entsprechen, und den Übertragungs-Zielort für die Block-Ein/Ausgabe-Daten in Abhängigkeit vom Ergebnis der Feststellung einem DKA 22 im ersten Speichersteuersystem 600 oder dem CHF 21B zuordnen.
  • Die beschriebene Ausführungsform kann auf vielfältige Weise modifiziert werden. Die folgende Beschreibung zeigt einige Unterschiede zwischen einigen Modifikationen und der vorliegenden Ausführungsform auf.
  • (1) Erste Modifikation
  • Die 15 zeigt einen beispielhaften Aufbau eines CHN 21A bei einer ersten Modifikation der vorliegenden Ausführungsform.
  • Wie gezeigt sind bei der ersten Modifikation der vorliegenden Ausführungsform im Ein/Ausgabe-Speicher 507 ein Befehlsanalyseprogramm 811 und ein Ein/Ausgabe-Zuordnungsprogramm 812 gespeichert.
  • Die 16 zeigt beispielhaft den Prozeßablauf bei der ersten Modifikation der vorliegenden Ausführungsform.
  • Ein vom Host 10A ausgegebener Datei-Ein/Ausgabe-Befehl wird vom CHN 21A aufgenommen und im CHN-Speicher 508 gespeichert (S950).
  • Der NAS-Prozessor 506 gibt an den Ein/Ausgabe-Prozessor 504 eine Anweisung zum Auslesen des im CHN-Speicher 508 gespeicherten Datei-Ein/Ausgabe-Befehls aus, woraufhin der Ein/Ausgabe-Prozessor 504 den Datei-Ein/Ausgabe-Befehl aus dem CHN-Speicher 508 ausliest (S951). Der Ein/Ausgabe-Prozessor 504 führt dann mit Hilfe des Dateianalyseprogramms 811 eine Analyse durch, um festzustellen, ob der Datei-Ein/Ausgabe-Befehl ein Dateieinschreibbefehl oder ein Dateiauslesebefehl ist (S952), und teilt das Ergebnis der Analyse dem NAS-Prozessor 506 mit (S953).
  • Auf der Basis des mitgeteilten Analyseergebnisses wandelt der NAS-Prozessor 506 mit dem Dateisystemprogramm 817 den Datei-Ein/Ausgabe-Befehl in einen Block-Ein/Ausgabe-Befehl um (S954) und überträgt den Block-Ein/Ausgabe-Befehl zum Ein/Ausgabe-Prozessor 504 (S955).
  • Der Ein/Ausgabe-Prozessor 504 führt auf der Basis der im umgewandelten Block-Ein/Ausgabe-Befehl enthaltenen Adresseninformationen und der Ein/Ausgabe-Zuordnungssteuerdaten 820 den oben beschriebenen Ein/Ausgabe-Zuordnungsprozeß aus (S956).
  • Wenn sich bei dem Ein/Ausgabe-Zuordnungsprozeß in S956 ergibt, daß ein externer Zugriff auszuführen ist (J in S957), gibt der Ein/Ausgabe-Prozessor 504 den Block-Ein/Ausgabe-Befehl an den Ein/Ausgabe-Prozessor 504 des CHF 21B aus (S958). Der Ein/Ausgabe-Prozessor 603 des CHF 21A führt dann den oben beschriebenen externen Zugriffsprozeß aus (S959).
  • Wenn sich bei dem Ein/Ausgabe-Zuordnungsprozeß in S956 ergibt, daß ein interner Zugriff auszuführen ist (N in S957), gibt der Ein/Ausgabe-Prozessor 504 den Block-Ein/Ausgabe-Befehl über den Verbindungsabschnitt 26 an den DKA 22 (S960).
  • Wenn sich bei dem Ein/Ausgabe-Zuordnungsprozeß in S956 ergibt, daß sowohl ein externer Zugriff als auch in interner Zugriff auszuführen sind, führt der Ein/Ausgabe-Prozessor 504 sowohl S958 als auch S960 aus.
  • (2) Zweite Modifikation
  • Die 17 zeigt einen beispielhaften Aufbau eines CHN 21A bei einer zweiten Modifikation der vorliegenden Ausführungsform.
  • Wie gezeigt ist bei der zweiten Modifikation der vorliegenden Ausführungsform im CHN-Speicher 508 ein Befehlsanalyseprogramm 811 gespeichert, und im Ein/Ausgabe-Speicher 507 ist ein Ein/Ausgabe-Zuordnungsprogramm 812 gespeichert.
  • Die 18 zeigt beispielhaft den Prozeßablauf bei der zweiten Modifikation der vorliegenden Ausführungsform.
  • Ein vom Host 10A ausgegebener Datei-Ein/Ausgabe-Befehl wird vom CHN 21A aufgenommen und im CHN-Speicher 508 gespeichert (S151).
  • Der NAS-Prozessor 506 liest dem im CHN-Speicher 508 gespeicherten Datei-Ein/Ausgabe-Befehl aus (S152) und führt mit Hilfe des Dateianalyseprogramms 811 eine Analyse des Befehls aus (S153). Der NAS-Prozessor 506 wandelt dann den Datei-Ein/Ausgabe-Befehl in einen Block-Ein/Ausgabe-Befehl um (S154) und überträgt den Block-Ein/Ausgabe-Befehl zum Ein/Ausgabe-Prozessor 504 (S155).
  • Der Ein/Ausgabe-Prozessor 504 führt den bereits beschriebenen Ein/Ausgabe-Zuordnungsprozeß auf der Basis der im umgewandelten Block-Ein/Ausgabe-Befehl enthaltenen Adresseninformationen und der Ein/Ausgabe-Zuordnungssteuerdaten 820 aus (S956).
  • Der weitere Ablauf ist der gleiche wie in S957 bis S960 der 16 (S157 bis S160).
  • (3) Dritte Modifikation
  • Die 19 zeigt in einer Blockdarstellung den Aufbau des Speichersystems bei einer dritten Modifikation der vorliegenden Ausführungsform.
  • Wie gezeigt ist es möglich, im ersten Speichersteuersystem 600 einen integrierten CHF/CHN-Adapter 21D zu installieren, der den CHN 21A und den CHF 21B zusammenfaßt.
  • Die 20 zeigt einen beispielhaften Aufbau des integrierten CHF/CHN-Adapters 21D.
  • Der integrierte CHF/CHN-Adapter 21D enthält zusätzlich zu den Elementen des CHN 21A der 5 einen Kommunikationsport 207B und eine FC-Steuerung 602. Die FC-Steuerung 602 ist mit dem Brücken-LSI 504 und dem Kommunikationsport 207B verbunden.
  • Im Ein/Ausgabe-Speicher 507 des integrierten CHF/CHN-Adapters 21D ist ein Programm 814 für einen externen Zugriff gespeichert, wie es in Verbindung mit der 6 beschrieben wurde.
  • In dem gezeigten Beispiel ist das Ein/Ausgabe-Zuordnungsprogramm 812 im Ein/Ausgabe-Speicher 507 gespeichert, und das Befehlsanalyseprogramm 811 ist im CHN-Speicher 508 gespeichert. Diese Programme 811, 821 können in jedem der Speicher 507, 508 gespeichert sein.
  • (4) Vierte Modifikation
  • Die 21 zeigt in einer Blockdarstellung den Aufbau des Speichersystems bei einer vierten Modifikation der vorliegenden Ausführungsform.
  • Wie gezeigt ist hier jeder aus einer Anzahl von CHAs 21C im ersten Speichersteuersystem 600, die anstelle des CHN 21A im ersten Speichersteuersystem 600 vorgesehen sind, über ein viertes Kommunikationsnetzwerk (zum Beispiel ein SAN) CN4 mit einem dritten Speichersteuersystem (zum Beispiel einem NAS-Kopf, der im folgenden "NAS-Kopf" genannt wird) verbunden, das sich außerhalb des ersten Speichersteuersystems 600 befindet. Im NAS-Kopf 950 sind ein Kommunikationsport 951A, der mit dem LAN CN1 verbunden ist, und ein Kommunikationsport 951B vorgesehen, der mit dem SAN CN4 verbunden ist.
  • Die 22 zeigt einen beispielhaften Aufbau des NAS-Kopfes 950 und des CHA 21C.
  • Der NAS-Kopf 950 enthält eine LAN-Steuerung 1503, die mit dem Kommunikationsport 951A verbunden ist, eine Brücken-LSI 1502, die mit der LAN-Steuerung 1503 verbunden ist, einen NAS-Speicher 1508, einen NAS-Prozessor 1506, eine Speichersteuerung 1505, die mit dem NAS-Speicher 1508 und dem NAS-Prozessor 1506 verbunden ist, und eine FC-Steuerung 1602, die mit dem Brücken-LSI 1502 und dem Kommunikationsport 951E verbunden ist. Wenn ein Element hier den gleichen Namen hat wie ein Element des CHN 21A der 5 oder des CHF 21B der 6, hat das Element auch die gleiche Funktion. Der NAS-Speicher 1508 hat die gleiche Funktion wie der CHN-Speicher 508.
  • Der CHA 21C enthält eine FC-Steuerung 711, die über einen Kommunikationsport 207C mit dem SAN CN4 verbunden ist, einen oder eine Anzahl von Ein/Ausgabe-Steuerabschnitten 771 mit einem Ein/Ausgabe-Prozessor 119 und einem Ein/Ausgabe-Speicher 121, eine Datenübertragungs-LSI 952, die mit der FC-Steuerung 711 und dem Ein/Ausgabe-Prozessor 119 verbunden ist, und einen Verbinder 954, der mit dem Verbindungsabschnitt 26 und dem Datenübertragungs-LSI 952 im ersten Speichersteuersystem 600 verbunden ist. Wenn ein Element hier den gleichen Namen hat wie ein Element des CHN 21A der 5 oder des CHF 21B der 6, hat das Element auch die gleiche Funktion.
  • Im ersten Speichersteuersystem 600 ist ein Knoten 953 vorgesehen. Der Ein/Ausgabe-Prozessor 119 ist über den Knoten 953 mit dem LAN CN1 und dem SVP 23 verbunden.
  • In dem gezeigten Beispiel ist das Ein/Ausgabe-Zuordnungsprogramm 812 im Ein/Ausgabe-Speicher 121 gespeichert, und das Befehlsanalyseprogramm 811 ist im NAS-Speicher 1508 gespeichert. Diese Programme 811, 821 können in jedem der Speicher 121, 1508 gespeichert sein.
  • Wie sich aus der vorstehenden Beschreibung ergibt, befindet sich bei der vierten Modifikation der NAS-Prozessor 506 des CHN 21A als NAS-Prozessor 1506 im NAS-Kopf 950, der sich außerhalb des ersten Speichersteuersystems 600 befindet. Wenn zwischen dem NAS-Prozessor 1506 und dem Ein/Ausgabe-Prozessor 119 im CHA 21C ein ähnlicher Datenaustausch erfolgt wie zwischen dem NAS-Prozessor 506 und dem Ein/Ausgabe-Prozessor 504, werden auch ähnliche Ergebnisse erhalten wie bei der oben beschriebenen Ausführungsform und den oben beschriebenen Modifikationen. Im folgenden wird ein Beispiel beschrieben.
  • Die 23 zeigt den Prozeßablauf bei der vierten Modifikation der vorliegenden Ausführungsform beim Austausch von Ein/Ausgabe-Zuordnungssteuerdaten 820.
  • Zum Beispiel gibt wie in der 23(A) gezeigt der NAS-Prozessor 1506 des NAS-Kopfs 950 eine Anweisung zur Aufnahme von Ein/Ausgabe-Zuordnungssteuerdaten 820 über das LAN CN1 an den Ein/Ausgabe-Prozessor 119 des CHA 21C (S300).
  • In Reaktion darauf liest der Ein/Ausgabe-Prozessor 119 des CHA 21C die im CM 24 gespeicherten Ein/Ausgabe-Zuordnungssteuerdaten 820 aus und speichert sie im Ein/Ausgabe-Speicher 121 (S301, S302). Der Ein/Ausgabe-Prozessor 119 des CHA 21C überträgt die Ein/Ausgabe-Zuordnungssteuerdaten 820 im Ein/Ausgabe-Speicher 121 über das LAN CN1 zum NAS-Kopf 950 (S303). Die Ein/Ausgabe-Zuordnungssteuerdaten 820 werden dadurch im NAS-Speicher 1508 des NAS-Kopfes 950 gespeichert (S304).
  • Außerdem gibt zum Beispiel wie in der 7(B) gezeigt der NAS-Prozessor 1506 des NAS-Kopfes 950 eine Anweisung zur Aufnahme der Ein/Ausgabe-Zuordnungssteuerdaten 820 über das LAN CN1 zum Ein/Ausgabe-Prozessor 119 des CHA 21C (S310).
  • In Reaktion auf diese Anweisung gibt der Ein/Ausgabe-Prozessor 119 einen Auslesebefehl zum Auslesen der Ein/Ausgabe-Zuordnungssteuerdaten 820 an den DKA 22, der auf die interne LDEV 31 zugreifen kann, in der die Ein/Ausgabe-Zuordnungssteuerdaten 820 gespeichert sind (S311).
  • Der DKA 22, der den Auslesebefehl erhält, reserviert im CM 24 einen Cache-Bereich, nimmt die Ein/Ausgabe-Zuordnungssteuerdaten 820 auf, die in der internen LDEV 31 gespeichert sind, und speichert sie im Cache-Bereich (S312).
  • Der Ein/Ausgabe-Prozessor 119 liest die Ein/Ausgabe-Zuordnungssteuerdaten 820 aus dem reservierten Cache-Bereich in den Ein/Ausgabe-Speicher 121 (S313). Die Ein/Ausgabe-Zuordnungssteuerdaten 820 werden dadurch im Ein/Ausgabe-Speicher 121 gespeichert (S314).
  • Der Ein/Ausgabe-Prozessor 119 überträgt dann die Ein/Ausgabe-Zuordnungssteuerdaten 820 aus dem Ein/Ausgabe-Speicher 121 über das SAN CN4 als die in Reaktion auf die Aufnahmeanweisung in S310 ausgelesenen Daten zum NAS-Kopf 950 (S315). Die Ein/Ausgabe-Zuordnungssteuerdaten 820 werden dadurch im NAS-Speicher 1508 des NAS-Kopfes 950 gespeichert (S316).
  • Die 24 zeigt beispielhaft den Prozeßablauf bei der vierten Modifikation der vorliegenden Ausführungsform, wenn ein vom Host 10A ausgegebener Datei-Ein/Ausgabe-Befehl als Block-Ein/Ausgabe-Befehl übertragen wird.
  • Der vom Host 10A ausgegebene Datei-Ein/Ausgabe-Befehl wird über das LAN CN1 vom NAS-Kopf 950 aufgenommen und im NAS-Speicher 1508 gespeichert (S451).
  • Der NAS-Prozessor 1506 liest den im NAS-Speicher 1508 gespeicherten Datei-Ein/Ausgabe-Befehl aus (S452) und analysiert den Befehl mit Hilfe des Dateianalyseprogramms 811 (S453). Der NAS-Prozessor 1506 wandelt den Datei-Ein/Ausgabe-Befehl in einen Block-Ein/Ausgabe-Befehl um (S454) und überträgt den Block-Ein/Ausgabe-Befehl über das SAN CN4 zum Ein/Ausgabe-Prozessor 119 des CHA 21C (S455).
  • Der Ein/Ausgabe-Prozessor 119 führt auf der Basis der im erhaltenen Block-Ein/Ausgabe-Befehl enthaltenen Adresseninformationen und der Ein/Ausgabe-Zuord nungssteuerdaten 820 den oben beschriebenen Ein/Ausgabe-Zuordnungsprozeß aus (S456).
  • Der nachfolgende Ablauf ist der gleiche wie in S957 bis S960 der 16 (S457 bis S460).
  • Die vorstehende Beschreibung betrifft den Datenaustausch zwischen dem NAS-Prozessor 1506 des NAS-Kopfes 950 und dem Ein/Ausgabe-Prozessor 119 des CHA 21C, wobei beispielhaft das Ein/Ausgabe-Zuordnungsprogramm 812 im Ein/Ausgabe-Speicher 121 gespeichert ist und das Befehlsanalyseprogramm 811 im NAS-Speicher 1508. Wenn zwischen dem NAS-Prozessor 1506 und dem Ein/Ausgabe-Prozessor 119 ein ähnlicher Datenaustausch erfolgt wie zwischen dem NAS-Prozessor 506 und dem Ein/Ausgabe-Prozessor 504, können die gleichen Ergebnisse erhalten werden wie bei der vorliegenden Ausführungsform und bei der ersten und zweiten Modifikation. Mit anderen Worten können bei der vierten Modifikation die gleichen Ergebnisse erhalten werden wie bei der Ausführungsform und der ersten und zweiten Modifikation, wenn in den 7, 8, 10, 16 und 18 der CHN-Speicher 508 durch den NAS-Speicher 1508 ersetzt wird, der NAS-Prozessor 506 durch den NAS-Prozessor 1506 und der Ein/Ausgabe-Prozessor 504 durch den Ein/Ausgabe-Prozessor 119. In den 12 und 14 kann auch der CHN 21A durch den CHA 21C ersetzt werden.
  • Es wurden vorstehend eine Ausführungsform und Modifikationen der vorliegenden Erfindung beschrieben, diese stellen jedoch nur Beispiele zum Zwecke der Beschreibung der vorliegenden Erfindung dar, und der Umfang der vorliegenden Erfindung ist nicht auf diese Ausführungsform und diese Modifikationen allein beschränkt. Die vorliegende Erfindung kann auf vielfältige Art ausgeführt werden. Zum Beispiel kann bei der beschriebenen Ausführungsform und den beschriebenen Modifikationen der Datenaustausch zwischen dem ersten Speichersteuersystem 600 und dem zweiten Speichersteuersystem 40 auch gemäß einem iSCSI-Protokoll erfolgen. Anstelle der CHF's im ersten Speichersteuersystem 600 und zweiten Speichersteuersystem 40 können dann iSCSI-Kanaladapter mit Kommunikationsports mit iSCSI-Namen (eindeutigen Identifikatoren im iSCSI-Protokoll) verwendet werden. In diesem Fall werden zwischen dem ersten Speichersteuersystem 600 und dem zweiten Speichersteuersystem 40 anstelle von WWNs die iSCSI-Namen ausgetauscht.

Claims (6)

  1. Erstes Speichersteuersystem (600), das mit einem zweiten externen Speichersteuersystem (40) verbunden ist, das außerhalb des ersten Speichersteuersystems angeordnet ist, und das die Speicherung von Daten in Speichervorrichtungen steuert, wobei das erste Speichersteuersystem (600) umfaßt eine Anzahl Plattenspeichervorrichtungen (400); einen Speichervorrichtungs-Steuerabschnitt (22) zum Steuern des Speicherns von aufgenommenen Daten in der Anzahl von Plattenspeichervorrichtungen (400); einen an den Speichervorrichtungs-Steuerabschnitt angeschlossenen Verbindungsabschnitt (26); einen ersten Kanalsteuerabschnitt (21A), der an ein erstes Kommunikationsnetzwerk (CN1), das extern vom ersten Speichersteuersystem angeordnet ist, und den Verbindungsabschnitt angeschlossen ist; einen zweiten Kanalsteuerabschnitt (21B) zum Übertragen von Daten, die vom ersten Kanalsteuerabschnitt (21A) über den Verbindungsabschnitt (26) und über ein zweites Kommunikationsnetzwerk (CN2) zum zweiten externen Speichersteuersystem (40) gesendet werden; und einen Cache-Speicher (24) zum vorübergehenden Speichern von Daten, die zwischen dem ersten Kanalsteuerabschnitt oder dem zweiten Kanalsteuerabschnitt und dem Speichervorrichtungs-Steuerabschnitt ausgetauscht werden, wobei der erste Kanalsteuerabschnitt (21A) einen zweiten Prozessor (504) für die Aufnahme von Daten auf Blockebene von einem ersten Prozessor (506) aufweist, der über das erste Kommunikationsnetzwerk erhaltene Daten auf Dateiebene in Daten auf Blockebene umwandelt, dadurch gekennzeichnet, daß das erste Speichersteuersystem (600) ferner umfaßt eine Anzahl von virtuellen Speichervorrichtungen (101), die virtuelle Repräsentanten von physikalischen Speicherressourcen darstellen, die von der Anzahl von Plattenspeichervorrichtungen (400) gebildet werden; und eine Anzahl von Logikvorrichtungen (32), die jeweils virtuelle Repräsentanten der Anzahl von virtuellen Speichervorrichtungen (400) darstellen; wobei der zweite Prozessor (504) die vom ersten Prozessor (506) erhaltenen Daten auf Blockebene an den Speichervorrichtungs-Steuerabschnitt (22) überträgt, wenn festgestellt wird, daß die Adresseninformationen einem internen Speicher entsprechen, die erhaltenen Daten auf Blockebene an den zweiten Kanalsteuerabschnitt (21B) überträgt, wenn festgestellt wird, daß die Adresseninformationen einem externen Speicher (400) entsprechen, und einen Teil der erhaltenen Daten auf Blockebene an den zweiten Kanalsteuerabschnitt (21B) überträgt und den verbleibenden Teil der erhaltenen Daten auf Blockebene an den Speichervorrichtungs-Steuerabschnitt (22) überträgt, wenn festgestellt wird, daß die Adresseninformationen sowohl einem internen als auch einem externen Speicher entsprechen.
  2. Erstes Speichersteuersystem (600) nach Anspruch 1, ferner mit einem Zuordnungssteuerdaten-Speicherbereich (507), in dem die Zuordnungssteuerdaten gespeichert sind; wobei der erste Prozessor (506) im ersten Kanalsteuerabschnitt (21A) vorgesehen ist; und wobei der erste Prozessor (506) und/oder der zweite Prozessor (504) auf der Basis der in dem Zuordnungssteuerdaten-Speicherbereich gespeicherten Zuordnungssteuerdaten feststellt/feststellen, ob alle oder ein Teil der Daten auf Blockebene im ersten Speichersteuersystem oder im zweiten, externen Speichersteuersystem zu speichern sind/ist.
  3. Erstes Speichersteuersystem (600) nach einem der vorstehenden Ansprüche, wobei die Zuordnungssteuerdaten Datei-Metadaten enthalten, die Dateien betreffen, die durch den ersten Prozessor (506) verwaltet werden; wobei die Datei-Metadaten entsprechend der Anzahl von Dateien eine Anzahl von Dateiidentifikationsinformationselementen und Speicherzieladresseninformationselementen enthalten; wobei der erste Prozessor (506) die Speicherzieladresseninformation entsprechend der Dateiidentifikationsinformationen aus den Datei-Metadaten identifiziert, die in den erhaltenen Daten auf Dateibasis enthalten sind; und wobei der erste Prozessor (506) und/oder der zweite Prozessor (504) auf die Zuordnungssteuerdaten Bezug nimmt und feststellt, ob die so identifizierte Speicherzieladresseninformationen dem ersten Speichersteuersystem oder dem zweiten, externen Speichersteuersystem entsprechen.
  4. Speichersteuerverfahren zum Steuern des Speicherns von Daten in Speichervorrichtungen, mit einem Schritt, in dem ein erster Prozessor (506) über ein lokales Netzwerk erhaltene Daten auf Dateiebene in Daten auf Blockebene umwandelt; einem Schritt, in dem der zweite Prozessor (504) die vom ersten Prozessor (506) erhaltenen Daten auf Blockebene an einen Speichervorrichtungs-Steuerabschnitt (22) überträgt, der die Speicherung von Daten in der Anzahl von durch das Speichersteuersystem bereitgestellten Speichervorrichtungen (400) steuert, wenn festgestellt wird, daß die Adresseninformationen dem internen Speicher entsprechen, die Daten auf Blockebene an einen zweiten Kanalsteuerabschnitt (21B) überträgt, wenn festgestellt wird, daß die Adresseninformationen dem externen Speicher entsprechen, und einen Teil der Daten auf Blockebene an den zweiten Kanalsteuerabschnitt (22) überträgt und den verbleibenden Teil der Daten auf Blockebene an den Speichervorrichtungs-Steuerabschnitt (21B) überträgt, wenn festgestellt wird, daß die Adresseninformationen sowohl dem internen als auch dem externen Speicher entsprechen; einem Schritt, in dem der Speichervorrichtungs-Steuerabschnitt die erhaltenen Daten in wenigstens einer der Anzahl von Speichervorrichtungen speichert, falls Daten vom zweiten Prozessor erhalten werden; und mit einem Schritt, in dem der zweite Kanalsteuerabschnitt die erhaltenen Daten an das externe Speichersteuersystem überträgt, falls Daten vom zweiten Prozessor erhalten werden.
  5. Verfahren nach Anspruch 4, ferner mit einem Schritt, in dem die Zuordnungssteuerdaten (853) in einem Zuordnungssteuerdaten-Speicherbereich (507) gespeichert werden; wobei der erste Prozessor (506) im ersten Kanalsteuerabschnitt (21A) vorgesehen ist; und wobei im Feststellschritt der erste Prozessor (506) und/oder der zweite Prozessor (504) auf der Basis der im Zuordnungssteuerdaten-Speicherbereich gespeicherten Zuordnungssteuerdaten feststellt, ob alle oder ein Teil der Daten auf Blockebene in dem Speichersteuersystem oder dem externen Speichersteuersystem zu speichern sind/ist.
  6. Verfahren nach Anspruch 4 oder 5, wobei die Zuordnungssteuerdaten (853) Datei-Metadaten enthalten, die Dateien betreffen, die durch den ersten Prozessor verwaltet werden; wobei die Datei-Metadaten eine Anzahl von Dateiidentifikationsinformationselementen und Speicherzieladresseninformationselementen für die Anzahl der Dateien enthalten; wobei das Steuerverfahren ferner einen Schritt aufweist, in dem der erste Prozessor die Speicherzieladresseninformation aus den Datei-Metadaten identifiziert, die den in den erhaltenen Daten auf Dateiebene enthaltenen Dateiidentifikationsinformationen entsprechen; und wobei im Feststellschritt der erste Prozessor (506) und/oder der zweite Prozessor (504) auf die Zuordnungssteuerdaten (853) Bezug nimmt und feststellt, ob die so identifizierten Speicherzieladresseninformationen dem Speichersteuersystem oder dem externen Speichersteuersystem entsprechen.
DE602004011467T 2004-03-05 2004-10-14 Speichersteuerungssystem und -verfahren Active DE602004011467T2 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2004061934 2004-03-05
JP2004061934A JP2005250938A (ja) 2004-03-05 2004-03-05 記憶制御システム及び方法

Publications (2)

Publication Number Publication Date
DE602004011467D1 DE602004011467D1 (de) 2008-03-13
DE602004011467T2 true DE602004011467T2 (de) 2009-01-22

Family

ID=34747690

Family Applications (1)

Application Number Title Priority Date Filing Date
DE602004011467T Active DE602004011467T2 (de) 2004-03-05 2004-10-14 Speichersteuerungssystem und -verfahren

Country Status (4)

Country Link
US (3) US7143228B2 (de)
EP (1) EP1571542B1 (de)
JP (1) JP2005250938A (de)
DE (1) DE602004011467T2 (de)

Families Citing this family (60)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7725760B2 (en) 2003-09-23 2010-05-25 Symantec Operating Corporation Data storage system
US7577806B2 (en) 2003-09-23 2009-08-18 Symantec Operating Corporation Systems and methods for time dependent data storage and recovery
US7991748B2 (en) 2003-09-23 2011-08-02 Symantec Corporation Virtual data store creation and use
US7287133B2 (en) 2004-08-24 2007-10-23 Symantec Operating Corporation Systems and methods for providing a modification history for a location within a data store
US7827362B2 (en) 2004-08-24 2010-11-02 Symantec Corporation Systems, apparatus, and methods for processing I/O requests
US7904428B2 (en) 2003-09-23 2011-03-08 Symantec Corporation Methods and apparatus for recording write requests directed to a data store
US7296008B2 (en) * 2004-08-24 2007-11-13 Symantec Operating Corporation Generation and use of a time map for accessing a prior image of a storage device
US7730222B2 (en) 2004-08-24 2010-06-01 Symantec Operating System Processing storage-related I/O requests using binary tree data structures
WO2005064480A2 (de) * 2003-12-30 2005-07-14 Wibu-Systems Ag Verfahren zum steuern eines datenverarbeitungsgeräts
JP2005250938A (ja) * 2004-03-05 2005-09-15 Hitachi Ltd 記憶制御システム及び方法
US7240154B2 (en) * 2004-06-28 2007-07-03 Emc Corporation Low cost flexible network accessed storage architecture
US7130960B1 (en) * 2005-04-21 2006-10-31 Hitachi, Ltd. System and method for managing disk space in a thin-provisioned storage subsystem
JP4824374B2 (ja) * 2005-09-20 2011-11-30 株式会社日立製作所 ディスクの回転を制御するシステム
US7363418B1 (en) * 2005-09-28 2008-04-22 Emc Corporation Data storage system volume matrix
JP4757038B2 (ja) * 2006-01-25 2011-08-24 株式会社日立製作所 ストレージシステム及び記憶制御装置
US20070214314A1 (en) * 2006-03-07 2007-09-13 Reuter James M Methods and systems for hierarchical management of distributed data
CN100581172C (zh) * 2006-04-19 2010-01-13 杭州华三通信技术有限公司 一种对目的磁盘进行访问的方法和扩展磁盘容量的系统
US8019940B2 (en) 2006-12-06 2011-09-13 Fusion-Io, Inc. Apparatus, system, and method for a front-end, distributed raid
US8489817B2 (en) 2007-12-06 2013-07-16 Fusion-Io, Inc. Apparatus, system, and method for caching data
US8706968B2 (en) 2007-12-06 2014-04-22 Fusion-Io, Inc. Apparatus, system, and method for redundant write caching
US9104599B2 (en) 2007-12-06 2015-08-11 Intelligent Intellectual Property Holdings 2 Llc Apparatus, system, and method for destaging cached data
US8443134B2 (en) 2006-12-06 2013-05-14 Fusion-Io, Inc. Apparatus, system, and method for graceful cache device degradation
US7836226B2 (en) 2007-12-06 2010-11-16 Fusion-Io, Inc. Apparatus, system, and method for coordinating storage requests in a multi-processor/multi-thread environment
US9519540B2 (en) 2007-12-06 2016-12-13 Sandisk Technologies Llc Apparatus, system, and method for destaging cached data
JP2009211234A (ja) * 2008-03-01 2009-09-17 Toshiba Corp メモリシステム
US9342528B2 (en) * 2010-04-01 2016-05-17 Avere Systems, Inc. Method and apparatus for tiered storage
US8214404B2 (en) 2008-07-11 2012-07-03 Avere Systems, Inc. Media aware distributed data layout
US9323681B2 (en) 2008-09-18 2016-04-26 Avere Systems, Inc. File storage system, cache appliance, and method
US8527697B2 (en) * 2009-07-20 2013-09-03 Netapp, Inc. Virtualized data storage in a network computing environment
EP2476055B1 (de) 2009-09-08 2020-01-22 SanDisk Technologies LLC Vorrichtung, system und verfahren zur cache-speicherung von daten auf einer festkörperspeichervorrichtung
US20110167210A1 (en) * 2009-10-16 2011-07-07 Samsung Electronics Co., Ltd. Semiconductor device and system comprising memories accessible through dram interface and shared memory region
US10025523B1 (en) * 2009-12-28 2018-07-17 EMC IP Holding Company LLC Techniques for processing data requests directed to virtualized devices
US8966184B2 (en) 2011-01-31 2015-02-24 Intelligent Intellectual Property Holdings 2, LLC. Apparatus, system, and method for managing eviction of data
US9201677B2 (en) 2011-05-23 2015-12-01 Intelligent Intellectual Property Holdings 2 Llc Managing data input/output operations
US9003104B2 (en) 2011-02-15 2015-04-07 Intelligent Intellectual Property Holdings 2 Llc Systems and methods for a file-level cache
US8874823B2 (en) 2011-02-15 2014-10-28 Intellectual Property Holdings 2 Llc Systems and methods for managing data input/output operations
US9141527B2 (en) 2011-02-25 2015-09-22 Intelligent Intellectual Property Holdings 2 Llc Managing cache pools
US9251052B2 (en) 2012-01-12 2016-02-02 Intelligent Intellectual Property Holdings 2 Llc Systems and methods for profiling a non-volatile cache having a logical-to-physical translation layer
US9767032B2 (en) 2012-01-12 2017-09-19 Sandisk Technologies Llc Systems and methods for cache endurance
US10102117B2 (en) 2012-01-12 2018-10-16 Sandisk Technologies Llc Systems and methods for cache and storage device coordination
US9251086B2 (en) 2012-01-24 2016-02-02 SanDisk Technologies, Inc. Apparatus, system, and method for managing a cache
US10359972B2 (en) 2012-08-31 2019-07-23 Sandisk Technologies Llc Systems, methods, and interfaces for adaptive persistence
US9116812B2 (en) 2012-01-27 2015-08-25 Intelligent Intellectual Property Holdings 2 Llc Systems and methods for a de-duplication cache
US10019353B2 (en) 2012-03-02 2018-07-10 Longitude Enterprise Flash S.A.R.L. Systems and methods for referencing data on a storage medium
US10339056B2 (en) 2012-07-03 2019-07-02 Sandisk Technologies Llc Systems, methods and apparatus for cache transfers
US9612966B2 (en) 2012-07-03 2017-04-04 Sandisk Technologies Llc Systems, methods and apparatus for a virtual machine cache
US8938481B2 (en) * 2012-08-13 2015-01-20 Commvault Systems, Inc. Generic file level restore from a block-level secondary copy
US9842053B2 (en) 2013-03-15 2017-12-12 Sandisk Technologies Llc Systems and methods for persistent cache logging
GB2534693B (en) * 2013-11-08 2017-02-08 Exacttrak Ltd Data accessibility control
US9798596B2 (en) 2014-02-27 2017-10-24 Commvault Systems, Inc. Automatic alert escalation for an information management system
US11249858B2 (en) 2014-08-06 2022-02-15 Commvault Systems, Inc. Point-in-time backups of a production application made accessible over fibre channel and/or ISCSI as data sources to a remote application by representing the backups as pseudo-disks operating apart from the production application and its host
US9852026B2 (en) 2014-08-06 2017-12-26 Commvault Systems, Inc. Efficient application recovery in an information management system based on a pseudo-storage-device driver
US10360110B2 (en) 2014-08-06 2019-07-23 Commvault Systems, Inc. Point-in-time backups of a production application made accessible over fibre channel and/or iSCSI as data sources to a remote application by representing the backups as pseudo-disks operating apart from the production application and its host
WO2016122491A1 (en) * 2015-01-28 2016-08-04 Hewlett-Packard Development Company, L.P. Page cache in a non-volatile memory
US9766825B2 (en) 2015-07-22 2017-09-19 Commvault Systems, Inc. Browse and restore for block-level backups
US10296368B2 (en) 2016-03-09 2019-05-21 Commvault Systems, Inc. Hypervisor-independent block-level live browse for access to backed up virtual machine (VM) data and hypervisor-free file-level recovery (block-level pseudo-mount)
US10740193B2 (en) 2017-02-27 2020-08-11 Commvault Systems, Inc. Hypervisor-independent reference copies of virtual machine payload data based on block-level pseudo-mount
US10664352B2 (en) 2017-06-14 2020-05-26 Commvault Systems, Inc. Live browsing of backed up data residing on cloned disks
US10872069B2 (en) 2019-01-22 2020-12-22 Commvault Systems, Inc. File indexing for virtual machine backups in a data storage management system
US11347707B2 (en) 2019-01-22 2022-05-31 Commvault Systems, Inc. File indexing for virtual machine backups based on using live browse features

Family Cites Families (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2508967B2 (ja) 1993-06-17 1996-06-19 日本電気株式会社 デ―タ処理指示方式
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
US5941972A (en) * 1997-12-31 1999-08-24 Crossroads Systems, Inc. Storage router and method for providing virtual local storage
US6715034B1 (en) 1999-12-13 2004-03-30 Network Appliance, Inc. Switching file system request in a mass storage system
US6739427B2 (en) * 2001-02-02 2004-05-25 Bacou-Dalloz Fall Protection Investment, Inc. Safety harness
US6779063B2 (en) * 2001-04-09 2004-08-17 Hitachi, Ltd. Direct access storage system having plural interfaces which permit receipt of block and file I/O requests
JP4632574B2 (ja) * 2001-05-25 2011-02-16 株式会社日立製作所 記憶装置およびファイルデータのバックアップ方法およびファイルデータのコピー方法
US6728848B2 (en) * 2001-06-11 2004-04-27 Hitachi, Ltd. Method and system for backing up storage system data
JP2003162439A (ja) * 2001-11-22 2003-06-06 Hitachi Ltd ストレージシステム及びその制御方法
JP4704659B2 (ja) 2002-04-26 2011-06-15 株式会社日立製作所 記憶装置システムの制御方法および記憶制御装置
JP2004021556A (ja) * 2002-06-14 2004-01-22 Hitachi Ltd 記憶制御装置およびその制御方法
JP2004185544A (ja) * 2002-12-06 2004-07-02 Hitachi Ltd 記憶デバイス制御装置システムの制御方法、及び記憶デバイス制御装置システム
JP2004220216A (ja) * 2003-01-14 2004-08-05 Hitachi Ltd San/nas統合型ストレージ装置
JP2004227098A (ja) * 2003-01-20 2004-08-12 Hitachi Ltd 記憶デバイス制御装置の制御方法、及び記憶デバイス制御装置
JP4387116B2 (ja) * 2003-02-28 2009-12-16 株式会社日立製作所 ストレージシステムの制御方法、及びストレージシステム
JP4297747B2 (ja) * 2003-08-06 2009-07-15 株式会社日立製作所 ストレージ装置
US20050071546A1 (en) 2003-09-25 2005-03-31 Delaney William P. Systems and methods for improving flexibility in scaling of a storage system
JP4307202B2 (ja) * 2003-09-29 2009-08-05 株式会社日立製作所 記憶システム及び記憶制御装置
JP4400913B2 (ja) 2003-11-26 2010-01-20 株式会社日立製作所 ディスクアレイ装置
JP4477365B2 (ja) * 2004-01-29 2010-06-09 株式会社日立製作所 複数インタフェースを有する記憶装置、および、その記憶装置の制御方法
JP2005250938A (ja) * 2004-03-05 2005-09-15 Hitachi Ltd 記憶制御システム及び方法
JP2005267111A (ja) * 2004-03-17 2005-09-29 Hitachi Ltd 記憶制御システム及び記憶制御システムの制御方法
JP4648674B2 (ja) * 2004-10-01 2011-03-09 株式会社日立製作所 記憶制御装置、記憶制御システム及び記憶制御方法

Also Published As

Publication number Publication date
DE602004011467D1 (de) 2008-03-13
EP1571542B1 (de) 2008-01-23
JP2005250938A (ja) 2005-09-15
US20050198436A1 (en) 2005-09-08
US7707357B2 (en) 2010-04-27
EP1571542A1 (de) 2005-09-07
US20080209123A1 (en) 2008-08-28
US20070033343A1 (en) 2007-02-08
US7337264B2 (en) 2008-02-26
US7143228B2 (en) 2006-11-28

Similar Documents

Publication Publication Date Title
DE602004011467T2 (de) Speichersteuerungssystem und -verfahren
DE602004008849T2 (de) System und Methode zur Partitionierung und zum Management von Speichersubsystemen
JP4939154B2 (ja) ストレージ装置及び構成設定方法
US8117387B2 (en) Storage system and method of managing a storage system using a management apparatus
JP4252301B2 (ja) 記憶システム及びそのデータバックアップ方法
US7272687B2 (en) Cache redundancy for LSI raid controllers
US20080168251A1 (en) Network system and method for setting volume group in the network system
US7660946B2 (en) Storage control system and storage control method
US7464235B2 (en) Storage system and control method thereof, and computer program product
JP4646574B2 (ja) データ処理システム
DE112013006549T5 (de) Computersystem und Datensteuerverfahren
US20020184439A1 (en) Storage control unit and method for handling data storage system using thereof
DE112013006655T5 (de) Speichervorrichtung und Verfahren zum Steuern der Speichervorrichtung
US20060190550A1 (en) Storage system and controlling method thereof, and device and recording medium in storage system
DE602004007884T2 (de) Speichersteuerungssystem und -Verfahren
US7017007B2 (en) Disk array device and remote copying control method for disk array device
US9003156B2 (en) Configurable and scalable storage system
US6185580B1 (en) Physical information and extensions file and file system translator
US9779004B2 (en) Methods and systems for real-time activity tracing in a storage environment
US20040230720A1 (en) Storage device controlling apparatus and method of controlling the same
US7721053B2 (en) Intelligent logical unit provisioning
JP2007257667A (ja) データ処理システム
DE10349620A1 (de) Dynamisches Befehlsfilter
He et al. Architecture and Performance Potential of STICS SCSI-To-IP Cache Storage
KR20050034167A (ko) 스토리지 에어리어 네트워크 시스템 및 이에 따른네트워킹 방법 그리고 네트워킹 프로그램을 기록한 기록매체

Legal Events

Date Code Title Description
8364 No opposition during term of opposition