DE112010003133T5 - Datenmigration zwischen datenspeichereinheiten - Google Patents

Datenmigration zwischen datenspeichereinheiten Download PDF

Info

Publication number
DE112010003133T5
DE112010003133T5 DE112010003133T DE112010003133T DE112010003133T5 DE 112010003133 T5 DE112010003133 T5 DE 112010003133T5 DE 112010003133 T DE112010003133 T DE 112010003133T DE 112010003133 T DE112010003133 T DE 112010003133T DE 112010003133 T5 DE112010003133 T5 DE 112010003133T5
Authority
DE
Germany
Prior art keywords
data
activity
data storage
interval
group
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.)
Granted
Application number
DE112010003133T
Other languages
English (en)
Other versions
DE112010003133B4 (de
Inventor
Bruce McNutt
Joseph Smith Hyde II
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.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
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 International Business Machines Corp filed Critical International Business Machines Corp
Publication of DE112010003133T5 publication Critical patent/DE112010003133T5/de
Application granted granted Critical
Publication of DE112010003133B4 publication Critical patent/DE112010003133B4/de
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0646Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
    • G06F3/0647Migration mechanisms
    • G06F3/0649Lifecycle 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/061Improving I/O performance
    • G06F3/0613Improving I/O performance in relation to throughput
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0683Plurality of storage devices
    • G06F3/0685Hybrid storage combining heterogeneous device types, e.g. hierarchical storage, hybrid arrays

Abstract

Verfahren, Steuereinheiten für Datenspeicher, Datenspeichersysteme und Rechnerprogrammprodukte werden nach dem erstmaligen Anordnen von Daten in Datenspeichereinheiten mit höherer Geschwindigkeit und in anderen Speichern zur Migration von Daten angewiesen. Die Schritte eines Verfahrens zum Migrieren von Daten zu dem schnelleren Datenspeicher sind (1) das Identifizieren mindestens einer Gruppe von Daten, die in jedem einer Vielzahl von Zeitintervallen mindestens eine angezeigte E/A-Aktivität hatten, welche während einer Folge mehrerer Zeitintervalle auftraten, wobei die E/A-Aktivität einen Bezug zu dem anderen Datenspeicher aufweist, von dem Daten zu migrieren sind. Die Zeit für jedes der mehreren Intervalle wird so gewählt, dass hohe E/A-Aktivität voraussichtlich in einem Intervall enthalten ist. (2) Die identifizierten Datengruppen werden für den schnelleren Datenspeicher klassifiziert und migriert.

Description

  • TECHNISCHES ANWENDUNGSGEBIET
  • Diese Erfindung betrifft die Datenspeicherung und insbesondere die Migration von Daten zwischen Datenspeichereinheiten.
  • HINTERGRUND
  • Datenspeichereinheiten können unterschiedliche Leistungsvermögen und Kostenpunkte aufweisen. Ein Cache-Speicher kann zum Beispiel schnell auf Daten zugreifen und diese speichern, ist jedoch relativ teuer. Festplattenlaufwerke können (auf Grund der Suchzeiten) längere Zugriffszeiten aufweisen und relativ preiswert sein. Bei Flash-Speichern handelt es sich um nichtflüchtige sequenzielle Halbleiterspeicher, die somit keine Datenübertragung mit DMA (direct memory access, Direktspeicherzugriff) unterstützen. Folglich können Flash-Speicher, wie den Fachleuten bekannt ist, als SSD (Solid State Drive, Halbleiterdatenträger) angeordnet werden. SSD-Flash-Speicher weisen eine niedrige Latenzzeit, jedoch keine hohe Bandbreite auf und liegen somit, wie die Fachleute wissen, leistungstechnisch und kostentechnisch zwischen Festplattenlaufwerken und Cache-Speicher.
  • Steuereinheiten für Datenspeichersysteme (auch Speichersteuereinheiten und Speicher-Server genannt) steuern üblicherweise den Zugriff auf Datenspeichermedien und Speicher als Reaktion auf Lese- und Schreibanforderungen. Die Speichersteuereinheiten können die Daten an Cache-Speicher, nichtflüchtige Speicher, SSD-Flash-Speicher sowie Datenspeichereinheiten wie RAID (redundant array of independent disks, redundante Anordnung unabhängiger Festplatten), JBOD (just a bunch of disks, nur ein Haufen Festplatten) und andere Festplattenlaufwerks-Redundanzstufen leiten.
  • Ein IBM® ESS (Enterprise Storage Server) wie der DS8000 weist zum Beispiel redundante Gruppen von Recheneinheiten, Cache-Speichern, nichtflüchtige Speicher usw. auf, die auf Host-Rechner reagieren und Daten virtuell speichern, wobei sie die tatsächlichen Daten zum anschließenden Abrufen verfolgen. Die Daten werden üblicherweise so gespeichert, wie durch die Steuereinheit angewiesen, damit sie für die anfordernde Einheit verfügbar sind oder verfügbar gemacht werden, wobei Datenarten, die voraussichtlich sofort wieder benötigt werden, zum Beispiel bei hoher Aktivität, in dem schnelleren Datenspeicher gespeichert und der Großteil der Daten in dem langsameren Datenspeicher gespeichert werden. In einem Beispiel handelt es sich bei den langsameren Datenspeichern um Festplattenlaufwerke und bei den schnelleren Datenspeichern um SSD-Flash-Speicher.
  • Daten können in unterschiedlichen Dateneinheiten mit konstanten oder variablen Größen angeordnet werden. In einem Beispiel werden Daten in „reservierte Speicherbereiche” (extents) genannten Dateneinheiten angeordnet. In einem anderen Beispiel werden Daten in „Datenreihen” (data sets) genannten Dateneinheiten angeordnet. In einem weiteren Beispiel werden Daten in „Sektoren” (sectors) genannten Speichereinheiten angeordnet. Ein weiteres Beispiel betrifft die Adressierung und wird „LUN”s für logische Einheiten (logical units) genannt. Fachleute kennen noch weitere Beispiele. Folglich wird hierin der allgemeine Begriff „Gruppe” bzw. „Gruppen” verwendet.
  • ZUSAMMENFASSUNG
  • Verfahren, Steuereinheiten für Datenspeicher, Datenspeichersysteme und Rechnerprogrammprodukte werden nach dem erstmaligen Anordnen von Daten in den verschiedenen Datenspeichereinheiten zur Migration der Daten angewiesen.
  • In einer Ausführungsform wird ein Verfahren zur Migration von Daten eines Datenspeichersystems dargestellt, das Datenspeicher mit höherer Geschwindigkeit und andere Datenspeicher umfasst, wobei das Verfahren die folgenden Schritte umfasst: Identifizieren mindestens einer Gruppe von Daten, die in jedem einer Vielzahl von Zeitintervallen mindestens eine angezeigte E/A-Aktivität hatten, welche während einer Folge mehrerer Zeitintervalle auftraten, wobei die E/A-Aktivität einen Bezug zu dem Datenspeicher aufweist, von dem Daten zu migrieren sind, wobei die Zeit für jedes der mehreren Intervalle so gewählt wird, dass hohe E/A-Aktivität voraussichtlich in einem Intervall enthalten ist; und Klassifizieren der identifizierten Datengruppe(n) für den schnelleren Datenspeicher.
  • Eine andere Ausführungsform umfasst zusätzlich den Schritt des Überwachens der E/A-Aktivität für jede einzelne Datengruppe und des Überwachens des Auftretens von angezeigter E/A-Aktivität in einem Intervall; und der Schritt des Identifizierens umfasst das Identifizieren von Datengruppen, welche die E/A-Aktivität in einer Folge einer begrenzten Gruppe der Intervalle hatten.
  • In einer weiteren Ausführungsform umfasst der Schritt des Identifizierens das Identifizieren der E/A-Aktivität unter Anwendung eines gleitenden Durchschnitts der Intervalle.
  • In noch einer weiteren Ausführungsform wird der gleitende Durchschnitt so gewichtet, dass neuere E/A-Aktivitäten stärker gewichtet werden.
  • In noch einer weiteren Ausführungsform umfasst der gleitende Durchschnitt eine exponentielle Gewichtung.
  • In einer weiteren Ausführungsform umfasst der gleitende Durchschnitt Folgendes: P = (1 – W)·P_last = W·S, wobei:
    P = aktueller Wert des exponentiell gewichteten gleitenden Durchschnitts;
    P_last = letzter vorheriger Wert von P;
    W = Gewichtung jedes Intervalls; und
    S = 1 wenn innerhalb des Intervalls eine E/A-Aktivität auftrat, 0 wenn es keine E/A-Aktivität gab.
  • In einer anderen Ausführungsform haben die Intervalle im Wesentlichen die gleiche Länge.
  • In einer weiteren Ausführungsform beträgt die Länge der Intervalle im Wesentlichen eine Stunde.
  • In einer anderen Ausführungsform umfassen die überwachten Intervallfolgen mindestens eine Gruppe von aufeinanderfolgenden Intervallen.
  • In einer weiteren Ausführungsform überspringen die überwachten Intervallfolgen mindestens eine Zeitspanne.
  • In einer anderen Ausführungsform aktualisiert der Schritt des Identifizierens eine überwachte Intervallfolge einer Datengruppe als Reaktion auf einen E/A-Zugriff auf die Datengruppe.
  • In einer anderen Ausführungsform wird eine Steuereinheit für ein Datenspeichersystem bereitgestellt, das einen Datenspeicher mit höherer Geschwindigkeit und einen anderen Datenspeicher umfasst. Die Steuereinheit umfasst einen oder mehrere Rechnerprozessoren, die so konfiguriert sind, dass sie das Datenspeichersystem steuern können, sowie einen oder mehrere Speicher, die so konfiguriert sind, dass sie ein durch einen Rechner lesbares Programm speichern können. Bei Ausführung auf dem/den Rechnerprozessor(en) wird das Datenspeichersystem so gesteuert, dass es eine E/A-Aktivität in Bezug auf Datengruppen anzeigt; mindestens eine Datengruppe identifiziert, die in jedem einer Vielzahl von Zeitintervallen mindestens eine angezeigte E/A-Aktivität hatte, welche während einer Folge mehrerer Zeitintervalle auftraten, wobei die E/A-Aktivität einen Bezug zu dem Datenspeicher aufweist, von dem Daten zu migrieren sind, wobei die Zeit für jedes der mehreren Intervalle so gewählt wird, dass hohe E/A-Aktivität voraussichtlich in einem Intervall enthalten ist; und die identifizierte(n) Datengruppe(n) für den schnelleren Datenspeicher klassifiziert.
  • In noch einer anderen Ausführungsform umfasst ein Datenspeichersystem eine oder mehrere Datenspeichereinheiten, die so konfiguriert sind, dass sie Daten speichern können und eine höhere Geschwindigkeit haben; eine oder mehrere andere Datenspeichereinheiten, die so konfiguriert sind, dass sie Daten speichern können; und eine Steuereinheit. Die Steuereinheit ist so konfiguriert, dass sie eine E/A-Aktivität in Bezug auf Datengruppen anzeigt; mindestens eine Datengruppe identifiziert, die in jedem einer Vielzahl von Zeitintervallen mindestens eine angezeigte E/A-Aktivität hatte, welche während einer Folge mehrerer Zeitintervalle auftraten, wobei die E/A-Aktivität einen Bezug zu dem Datenspeicher aufweist, von dem Daten zu migrieren sind, wobei die Zeit für jedes der mehreren Intervalle so gewählt wird, dass hohe E/A-Aktivität voraussichtlich in einem Intervall enthalten ist; die identifizierte(n) Datengruppe(n) für den schnelleren Datenspeicher klassifiziert; und die klassifizierte(n) Datengruppe(n) in den schnelleren Datenspeicher migriert.
  • KURZE BESCHREIBUNG DER ZEICHNUNGEN
  • Ausführungsformen der Erfindung werden nun lediglich beispielhaft, unter Bezugnahme auf die beigefügten Zeichnungen beschrieben. Es zeigen:
  • 1 ein Blockschaltbild eines beispielhaften Datenspeichersystems, das die vorliegende Erfindung umsetzen kann;
  • 2 eine grafische Darstellung der E/A des Datenspeichersystems aus 1;
  • 3 ein Funktionsschaubild von funktionalen Operationen des Datenspeichersystems aus 1;
  • 4 eine Tabelle, die E/A-Aktivitäten von Datengruppen in Bezug auf das Speichersystem aus 1 darstellt; und
  • 5 einen Ablaufplan, der ein beispielhaftes Verfahren zum Betreiben des Datenspeichersystems aus den 1 und 2 darstellt.
  • AUSFÜHRLICHE BESCHREIBUNG
  • Diese Erfindung wird in der folgenden Beschreibung in bevorzugten Ausführungsformen unter Bezugnahme auf die Figuren beschrieben, in denen gleiche Zahlen dieselben oder ähnliche Elemente darstellen. Obwohl diese Erfindung im Sinne der besten Funktionsweise zur Erreichung der Ziele dieser Erfindung beschrieben wird, werden Fachleute verstehen, dass Abwandlungen hinsichtlich dieser Lehren vorgenommen werden können, ohne von dem Gedanken bzw. dem Umfang der Erfindung abzuweichen.
  • Unter Bezugnahme auf 1 umfasst ein Datenspeichersystem 100 eine Steuereinheit 105, die eine Gruppe 110 und eine andere Gruppe 120 aufweist. Die Gruppe 110 umfasst eine Funktionseinheit (complex) 130, die mindestens die Teilsystemsteuerung 132, einen lokalen nichtflüchtigen Datenspeicher 134, und einen lokalen Cache-Datenspeicher 136 umfasst. Gleichermaßen umfasst die Gruppe 120 eine Funktionseinheit (complex) 140, die mindestens die Teilsystemsteuerung 142, einen lokalen nichtflüchtigen Datenspeicher 144 und einen lokalen Cache-Datenspeicher 146 umfasst. In jeder Gruppe der Steuereinheit 105 kann die Teilsystemsteuerung vollständig von der restlichen Funktionseinheit (complex) getrennt oder teilweise durch den lokalen nichtflüchtigen Speicher und/oder den lokalen Cache-Datenspeicher verkörpert sein. Des Weiteren können der Cache-Datenspeicher und der nichtflüchtige Speicher verschiedene Bereiche eines Speichersystems umfassen. Die Teilsystemsteuerung 132, 142 umfasst einen oder mehrere Rechnerprozessoren, die zum Steuern des Datenspeichersystems konfiguriert sind, und den/die Speicher 133, 143, der/die so konfiguriert ist/sind, dass sie Informationen und durch einen Rechner lesbare Programmdaten zum Steuern des Rechnerprozessors/der Rechnerprozessoren speichern können. Hierin kann „Rechnerprozessor” bzw. „Steuerung” jede(n) beliebige(n) geeignete(n) Logik, programmierbare Logik, Mikroprozessor sowie zugehörige oder interne Speicher zur Reaktion auf Programmanweisungen umfassen, und der zugehörige oder interne Speicher kann feste oder wiederbeschreibbare Speicher oder Datenspeichereinheiten umfassen. Die Programmdaten können der Teilsystemsteuerung bzw. dem Speicher von einem Host-Rechner oder über ein Datenspeicherlaufwerk bzw. eine Anordnung von Festplatten, durch Eingabe von einer Diskette oder optischen Platte, durch Einlesen von einer Kassette, durch eine Web-Benutzeroberfläche bzw. andere Netzwerkverbindung oder durch jedes andere geeignete Mittel zugeführt werden. Die Programmdaten können somit ein oder mehrere Programmprodukte umfassen, die ein durch einen Rechner verwendbares Medium umfassen, das von einem Rechner verwendbaren, physisch darauf enthaltenen Programmcode zum Steuern der Gruppe 110 und/oder zum Steuern der Gruppe 120 oder ähnlicher Arten von Systemen oder Einheiten enthält.
  • Der nichtflüchtige Datenspeicher 134, 144 kann ein batteriegepuffertes Speichersystem, das Daten selbst im Falle eines Stromausfalls schützt, oder einen anderen geeigneten nichtflüchtigen Speicher umfassen. Der Cache-Datenspeicher 136, 146 kann jedes beliebige geeignete Speichersystem umfassen und flüchtig sein und somit potenziell Daten verlieren, wenn der Strom abgeschaltet wird.
  • Die Host-Adapter 150, 154 können einen oder mehrere Fibre-Channel-Anschlüsse, einen oder mehrere FICON-Anschlüsse, einen oder mehrere ESCON-Anschlüsse, einen oder mehrere SCSI-Anschlüsse oder andere geeignete Anschlüsse umfassen. Jeder Host-Adapter ist so konfiguriert, dass er mit einem Host-System und sowohl mit der Gruppe 110 als auch mit der Gruppe 120 Daten austauschen kann, so dass jede Gruppe E/A von jedem beliebigen Host-Adapter verarbeiten kann.
  • Die Einheiten-Adapter 160, 164 können Datenübertragungsverbindungen für den Datenaustausch mit dem Datenspeicher 170 umfassen. Die Datenübertragungsverbindungen können serielle Anschlüsse wie RS-232 oder RS-422, Ethernet-Anschlüsse, SCSI-Anschlüsse, ESCON-Anschlüsse, FICON-Anschlüsse, ein lokales Netzwerk (LAN), ein privates Weitverkehrsnetz (WAN), ein öffentliches Weitverkehrsnetz, ein Speichernetzwerk (Storage Area Network, (SAN)), das Übertragungssteuerungsprotokoll/Internetprotokoll (Transmission Control Protocol/Internet Protocol (TCP/IP)), das Internet sowie Kombinationen aus diesen umfassen.
  • Ein Beispiel eines Datenspeicher-Subsystems 100 umfasst einen IBM® Enterprise Storage Server, IBM® Modell DS 8000 oder ein anderes vergleichbares System.
  • Wie oben erläutert, umfasst der Datenspeicher 170 den Datenspeicher 180, der eine höhere Geschwindigkeit aufweist, und andere Datenspeicher 182. Ein Beispiel für andere Datenspeicher 182 umfasst Festplattenlaufwerke, die RAID-Protokolle (Redundant Array of Independent Disks, redundante Anordnung unabhängiger Festplatten) einsetzen oder JBOD (Just a Bunch of Disks, nur ein Haufen Festplatten) umfassen können. Ein Beispiel des schnelleren Datenspeichers 180 umfasst einen als SSD (Solid State Drive, Halbleiterdatenträger) angeordneten Flash-Speicher. Der Flash-Speicher kann auch so angeordnet sein, dass er Redundanz bietet, also beispielsweise als RAID-Anordnung. Der Geschwindigkeitsunterschied zwischen dem Hochgeschwindigkeits-Datenspeicher und dem anderen Datenspeicher ist relativ.
  • In einer Alternative kann der schnellere Datenspeicher Hochgeschwindigkeits-Speichereinheiten wie RAMs (Random Access Memory, Direktzugriffsspeicher) umfassen, und bei den anderen Datenspeichern kann es sich um Flash-Speicher handeln.
  • In einer anderen Alternative kann die Steuereinheit ein Verarbeitungssystem mit einer Gruppe umfassen, die geeignete Redundanzen aufweist.
  • Unter Bezugnahme auf 2, reagiert das Speichersystem 100 auf einen oder mehrere Host-Rechner 200 und führt E/A-Zugriffe 203 aus, um Daten virtuell zu speichern, wobei die eigentlichen Daten verfolgt werden, um sie anschließend abrufen zu können. Die Daten werden üblicherweise wie durch die Steuereinheit 105 angewiesen gespeichert, damit sie für den anfordernden Host-Rechner verfügbar sind oder verfügbar gemacht werden. Die Daten können über die Übertragungsleitungen 204 in dem Hochgeschwindigkeits-Datenspeicher 180 gespeichert und daraus abgerufen und über die Übertragungsleitungen 205 in dem anderen Datenspeicher 182 gespeichert und daraus abgerufen werden. Daten können anfangs auf der Grundlage einer Schätzung des zukünftigen Zugriffs gespeichert werden, wobei Datenarten, die voraussichtlich sofort wieder benötigt werden, wie im Falle von hoher Aktivität, in dem schnelleren Datenspeicher 180 gespeichert werden und der Großteil der Daten in dem langsameren Datenspeicher 182 gespeichert werden. In dem schnelleren Datenspeicher 180 gespeicherte Daten, auf die nicht wie geschätzt zugegriffen wird oder auf die nicht mehr zugegriffen wird, können beispielsweise unter Verwendung eines LRU-Algorithmus (least recently used, am längsten ungenutzt) in den langsameren Datenspeicher 182 migriert werden. Die Daten können entweder durch die Steuereinheit 105 über die Übertragungsleitungen 204 und 205 oder alternativ direkt zwischen dem schnelleren Speicher 180 und dem anderen Speicher 182 durch die Steuereinheit 105 gesteuert migriert werden.
  • Wie oben erläutert, können Daten in unterschiedlichen Dateneinheiten mit konstanten oder variablen Größen angeordnet werden. In einem Beispiel werden Daten in „reservierte Speicherbereiche” (extents) genannten Dateneinheiten angeordnet. In einem anderen Beispiel werden Daten in „Datenreihen” (data sets) genannten Dateneinheiten angeordnet. In einem weiteren Beispiel werden Daten in „Sektoren” (sectors) genannten Speichereinheiten angeordnet. Ein weiteres Beispiel betrifft die Adressierung und wird „LUN”s für logische Einheiten (logical units) genannt. Fachleute kennen noch weitere Beispiele. Folglich wird hierin der allgemeine Begriff „Gruppe” bzw. „Gruppen” verwendet.
  • Unter Bezugnahme auf die 1, 2, 3, 4 und 5 ist die Steuereinheit 105 so konfiguriert, dass sie das Migrieren von Daten in dem Datenspeichersystem 100 von dem anderen Datenspeicher 182 zu dem schnelleren Datenspeicher 180 steuert. Üblicherweise werden Daten in umgekehrter Richtung von dem schnelleren Datenspeicher 180 zu dem anderen Datenspeicher 182 migriert, um zum Beispiel neue Daten in dem schnelleren Datenspeicher aufzunehmen. In der vorliegenden Erfindung stellt die Steuereinheit 105 eine Identifizierung von Daten bereit, die voraussichtlich am ehesten aus dem schnelleren Datenspeicher 180 Nutzen ziehen können. Die Größe des Datenelements kann, wie bereits erläutert, flexibel oder fest sein, und jedes Datenelement wird hierin Datengruppe genannt. In den meisten Fällen ist die Aktivität von kleineren Dateneinheiten wie reservierten Speicherbereichen (extents) (mit zum Beispiel 1 GB) tendenziell kurzlebig; folglich können selbst auf eine hohe Aktivität lange Ruhezeiten folgen. Andererseits stellen Daten, die eine Ausnahme dieser Regel sind, üblicherweise einen großen Teil der Gesamt-E/A dar.
  • Die Steuereinheit 105 ist so konfiguriert, dass sie die E/A-Aktivität 203, 205 in Bezug auf Datengruppen anzeigt, wobei die E/A mit Bezug zu in dem langsameren Datenspeicher 182 gespeicherten Datengruppen von besonderem Interesse ist. Das heißt, dass die E/A-Aktivität Bezug zu dem Datenspeicher hat, von dem Daten zu migrieren bzw. zu befördern sind. Die Steuereinheit 105 betrachtet Zeitintervalle und zeigt mindestens eine in einem Zeitintervall angezeigte E/A-Aktivität an. Die Länge jedes der mehreren Intervalle wird so gewählt, dass hohe E/A-Aktivität voraussichtlich in einem Intervall enthalten ist. Hohe Aktivität außer der einen E/A-Aktivität innerhalb desselben Intervalls wird ignoriert. Die Intervalle können durch einen Intervallzeitgeber 225 gemessen werden und zum Beispiel eine Stunde umfassen. Eine Möglichkeit der Funktionsweise des Intervallzeitgebers 225 besteht darin, die Stunden seit dem ersten IML des Systems zu zählen. Man kann zum Beispiel einen Zeitversatz für die Dauer des ersten IML von der Systemuhr abziehen und dann den Stundenwert des Ergebnisses entnehmen.
  • Die angezeigte E/A-Aktivität kann man durch Überwachung eines E/A-Aktivitäts-Protokolls 220 ermitteln, und sie ist im Besonderen die in Schritt 300 erkannte E/A-Aktivität des anderen Datenspeichers 182. Wenn das E/A-Aktivitäts-Protokoll 220 sowohl die E/A des schnelleren Datenspeichers 180 als auch des anderen Datenspeichers 182 berücksichtigt, wird die E/A-Aktivität des anderen Datenspeichers 182 entnommen und in Schritt 303 überwacht. Die angezeigte E/A-Aktivität kann eine E/A-Aktivität umfassen, die ein bestimmtes Ergebnis wie zum Beispiel das Lesen oder Aktualisieren von Daten hat. Ferner kann die angezeigte E/A-Aktivität für jede Datengruppe, die von Interesse ist, überwacht werden. Das heißt, ein Nutzer kann es wünschen, dass eine bestimmte Datengruppe nicht in den schnelleren Speicher migriert wird, sobald sie sich in dem anderen Datenspeicher befindet, und die Datengruppe muss nicht überwacht werden. Wie oben erläutert, kann es sich bei der Datengruppe um jede beliebige Dateneinheit handeln. Es ist möglich, dass verschiedene Arten von Dateneinheiten als einzelne Gruppen angesehen werden, wobei reservierte Speicherbereiche (extents) für eine Datenart die überwachte Gruppe darstellen, während für eine andere Datenart Datensätze überwacht werden.
  • Wie oben erläutert, ist nur die erste E/A-Aktivität in einem Intervall in Bezug auf eine Datengruppe von Interesse, und der Schritt 310 stellt diese Informationen bereit. Wenn die E/A-Aktivität für die überwachte Gruppe nicht die erste E/A-Aktivität in dem aktuellen Intervall ist, kehrt der Prozess zu den Schritten 300 und 303 zurück.
  • Wenn die E/A-Aktivität für die überwachte Gruppe die erste E/A-Aktivität in dem aktuellen Intervall ist, wird dies in Schritt 313 zum Beispiel in einem E/A-Aktivitäts-Journal 221 angegeben. Jede der Datengruppen des anderen Datenspeichers 182 mit E/A-Aktivität kann in dem E/A-Aktivitäts-Journal 221 aufgeführt werden 240, und wenn eine Datengruppe des anderen Datenspeichers 182 ohne E/A-Aktivität geruht hat und dann darauf zugegriffen wird, wird dies zu dem E/A-Aktivitäts-Journal hinzugefügt. Alternativ können alle sich momentan in dem anderen Datenspeicher 182 befindlichen Datengruppen in dem E/A-Aktivitäts-Journal 221 als Datengruppen aufgeführt werden 240. Als weitere Alternative kann eine Aktivität, darunter E/A-Aktivitäten und andere Nicht-E/A-Aktivitäten, in dem Aktivitäts-Journal aufgeführt und die E/A-Aktivität daraus entnommen werden.
  • Eine Art und Weise des Anzeigens, dass in dem letzten Intervall eine E/A-Aktivität stattfand und diese die einzige oder erste E/A-Aktivität in dem Intervall ist, besteht darin, die Intervalle zum Beispiel anhand von Nummern zu verfolgen und die Intervallnummer der aktuellen E/A-Aktivität, „C” genannt, mit der Intervallnummer der letzten E/A 242 „L” zu vergleichen. Wenn das aktuelle Intervall „C” größer als „L” ist, ist die E/A-Aktivität die einzige oder erste E/A-Aktivität für die Datengruppe. In Spalte 243 wird die E/A-Aktivität für das aktuelle Intervall verfolgt, und alle Datengruppen werden in dieser Spalte zu Beginn eines Intervalls auf ”0” zurückgesetzt, welches dann das aktuelle Intervall wird. Die erste E/A-Aktivität für eine Datengruppe in dem Intervall wird angezeigt, indem für diese Datengruppe in Spalte 243 eine „1” eingetragen und die Spalte 242 auf das aktuelle Intervall festgelegt wird.
  • Alternativ muss eine E/A-Aktivität in mehr als einem Intervall in einer kurzen Zeitdauer, die mehr als ein Intervall überspannt, auftreten, bevor die Informationen in das E/A-Aktivitäts-Journal 221 eingetragen werden. In einem Beispiel wird die E/A-Aktivität eingetragen, wenn das aktuelle Intervall die Bedingung C > L, wie oben erläutert, erfüllt und wenn C ≤ L + 3 ist, was bedeutet, dass die E/A-Aktivität auch in mindestens einem der 3 Intervalle vor dem aktuellen Intervall aufgetreten sein muss. Dies zeigt an, dass die E/A-Aktivität nicht nur ein einzelner Aufruf oder eine einzelne hohe E/A-Aktivität, sondern dauerhaft ist, so dass voraussichtlich mehr E/A-Aktivität auftreten wird.
  • Das Anzeigen von E/A-Aktivität in Schritt 313 aktualisiert das E/A-Aktivitäts-Journal 221 in dem Aktualisierungsprozess 227.
  • Wenn der Intervallzeitgeber 225 das Ende des aktuellen Intervalls anzeigt, setzt der Schritt 305 alle Einträge in Spalte 243 des E/A-Aktivitäts-Journals 221 auf „0” zurück, und das nächste Intervall wird das aktuelle Intervall.
  • Die neueste E/A-Aktivität alleine reicht nicht aus, um eine Datengruppe von dem anderen Datenspeicher 182 in den schnelleren Datenspeicher 180 zu befördern. Das Identifizieren einer Datengruppe geht zum Beispiel zusätzlich mit dem Aktualisieren einer überwachten Folge von Intervallen einer Datengruppe in dem Prozess 227 in Schritt 315 einher.
  • Die identifizierte E/A-Aktivität muss zum Beispiel in jeder der Vielzahl von Zeitintervallen auftreten, welche während einer Folge mehrerer Zeitintervalle auftraten. Die Gesamtzahl der überwachten Folgen von Intervallen wäre zum Beispiel eine Binärzahl an Intervallen wie zum Beispiel 256 Intervalle. Wenn ein Intervall eine einstündige Zeitspanne umfasst, wären 256 Stunden ungefähr eineinhalb Wochen.
  • In einer Ausführungsform umfassen die überwachten Intervallfolgen mindestens eine Gruppe von aufeinanderfolgenden Intervallen.
  • In einer weiteren Ausführungsform überspringen die überwachten Intervallfolgen mindestens eine Zeitspanne. Als ein Beispiel werden Wochenenden übersprungen. Als weiteres Beispiel werden Nächte übersprungen. Fachleute können sich für andere Möglichkeiten entscheiden, die für eine bestimmte Situation geeignet sind.
  • In einer anderen Ausführungsform umfasst das Identifizieren einer zu migrierenden Datengruppe das Identifizieren der E/A-Aktivität unter Zuhilfenahme eines gleitenden Durchschnitts der Intervalle in Schritt 315, der in dem Aktualisierungsprozess 227 ebenfalls in dem E/A-Aktivitäts-Journal aktualisiert wird. Somit wird die E/A-Aktivität für jedes der Intervalle in chronologischer Reihenfolge mit in den Durchschnitt aufgenommen. In einem Beispiel gewichtet der gleitende Durchschnitt jedes Intervall gleich, wobei das älteste Intervall von dem gleitenden Durchschnitt ausgeschlossen und durch die E/A-Aktivität des neuesten Intervalls ersetzt wird. Das macht die Verfolgung von „0” bzw. „1” für jedes Intervall und für jede Datengruppe in dem E/A-Aktivitäts-Journal 221 erforderlich.
  • In noch einer weiteren Ausführungsform wird der gleitende Durchschnitt so gewichtet, dass neuere E/A-Aktivität stärker gewichtet wird.
  • Eine Art, die neuere E/A-Aktivität stärker zu gewichten, ist die exponentielle Gewichtung. Bei einem exponentiellen gleitenden Durchschnitt besteht die Wirkung darin, die ältesten Einträge auf nahezu Null herabzusetzen und sie dadurch in ihrer Wirkung aus dem Durchschnitt auszuschließen. In einem Beispiel wird das letzte Intervall zum Beispiel mit 1/256 gewichtet und zu einem exponentiell verringerten Wert des unmittelbar vorhergehenden Wertes des gleitenden Durchschnitts addiert, wobei der gleitende Durchschnitt durch Multiplikation mit 255/256 verringert wird. Der 256ste älteste Eintrag wurde somit durch die Multiplikation um das 255-Fache verringert.
  • In einer weiteren Ausführungsform umfasst der gleitende Durchschnitt Folgendes: P = (1 – W)·P_last = W·S, wobei:
    P = gegenwärtiger Wert des exponentiell gewichteten gleitenden Durchschnitts;
    P_last = letzter vorheriger Wert von P;
    W = Gewichtung jedes Intervalls; und
    S = „1” wenn innerhalb des Intervalls eine E/A-Aktivität auftrat, „0” wenn es keine E/A-Aktivität gab.
  • Somit wird in Spalte 244 des E/A-Aktivitäts-Journals 221 für jede der Datengruppen lediglich der aktuelle Wert „P” des gleitenden Durchschnitts beibehalten, und „P” wird in der nächsten Berechnung des gleitenden Durchschnitts zu „P_last”.
  • In einer Alternative kann der aktuelle Wert „P” des gleitenden Durchschnitts, wenn, wie oben erläutert, C ≤ L + 3 ist, was bedeutet, dass die E/A-Aktivität auch in mindestens einem der 3 vorhergehenden Intervalle und in dem letzten Intervall aufgetreten sein muss, dadurch ermittelt werden, dass der gleitende Durchschnitt für jedes der 4 Intervalle einzeln neu berechnet wird. In einer anderen Alternative wird die E/A-Aktivität „0” bzw. „1” der neuesten Intervalle gemittelt und mit der Gewichtung der letzten Intervalle multipliziert, wie zum Beispiel n/256, und die dem vorhergehenden gleitenden Durchschnitt zugeordnete Gewichtung lautet (1 – n)/256.
  • Wenn vor der letzten Aktualisierung des E/A-Aktivitäts-Journals 221, das mehrere „0”-Einträge umfasst, mehrere inaktive Intervalle auftraten, kann der Aktualisierungsvorgang vereinfacht werden; anstatt eine vollständige Berechnung der Formel für jedes Intervall zu verwenden, ist die Berechnung W·S gleich „0”, wodurch die Formel für die „0”-Intervalle auf P = (1 – W)·P_last vereinfacht wird, und die Gesamtintervalle werden geschätzt, indem man P = P·(1 – W) verwendet, und die Wiederholungen des Vorgangs können durch Faktorenzerlegung vereinfacht bzw. für Binärzahlen Näherungen durchgeführt werden. Zum Beispiel könnten 128 Wiederholungen von „0” auf 4 Wiederholungen von P = P·X, vereinfacht werden, wobei X = (1 – W)··32 ist.
  • Die Klassifizierung einer Datengruppe für den schnelleren Datenspeicher beruht auf Migrationskriterien 228 bzw. der Stufe von „dauerhafter” E/A-Aktivität in Schritt 317, die E/A-Aktivität über eine Folge von mehreren Zeitintervallen umfassen, und setzt den gleitenden Durchschnitt als Gütefaktor für die Bewertung dahingehend ein, welche Datengruppe bzw. Datengruppen am meisten aus dem schnelleren Datenspeicher 180 Nutzen ziehen würden. In einem Beispiel kann die Klassifizierung für den schnelleren Datenspeicher einen Schwellwert des gleitenden Durchschnitts umfassen. Der Schwellwert kann zum Beispiel auf einen Wert von festgelegt werden, wodurch angezeigt wird, dass es über die Gesamtzahl von Intervallen gesehen im Wesentlichen E/A-Aktivität gab, welche die festgelegten Kriterien in Bezug auf Dauerhaftigkeit in mindestens 20% der Intervalle erfüllt. Alternativ würde eine vorbestimmte Anzahl von Datengruppen, die dann den höchsten gleitenden Durchschnitt haben, periodisch für den schnelleren Datenspeicher klassifiziert.
  • Die Steuereinheit 105 identifiziert die Datengruppe bzw. Datengruppen, welche die Migrationskriterien 228 in Schritt 317 erfüllen und klassifiziert die Datengruppe bzw. Datengruppen für die Migration in Schritt 319 ein. Für die Datengruppe bzw. Datengruppen, welche die Kriterien 228 nicht erfüllen, bleibt der gleitende Durchschnitt in Spalte 244 eingetragen, und der Prozess kehrt zu den Schritten 300 und 303 zurück.
  • Für die Datengruppe bzw. Datengruppen, die in Schritt 319 für die Migration klassifiziert werden, migriert 229 die Steuereinheit 105 in Schritt 321 die Datengruppe bzw. Datengruppen von dem anderen Datenspeicher 182 in den schnelleren Datenspeicher 180. Um Platz für die migrierten Daten zu schaffen, ist es wahrscheinlich, dass andere Datengruppen von dem schnelleren Datenspeicher 180 in den anderen Datenspeicher 182 migriert werden, was durch jeden beliebigen geeigneten Algorithmus wie einem LRU-Algorithmus ermittelt werden kann. Die Daten können entweder durch die Steuereinheit 105 über die Übertragungsleitungen 204 und 205 oder alternativ direkt zwischen dem schnelleren Speicher 180 und dem anderen Speicher 182 unter Steuerung durch die Steuereinheit 105 migriert werden.
  • Somit werden Datengruppen, die über eine Folge von mehreren Zeitintervallen eine dauerhafte E/A-Aktivität aufweisen, von dem anderen Datenspeicher 182 in den schnelleren Datenspeicher 180 migriert. Nach dem Migrieren verweilen die Datengruppe bzw. Datengruppen, die migriert wurden, nicht länger in dem anderen Datenspeicher 182 und werden in Schritt 325 aus dem E/A-Aktivitäts-Journal 221 gelöscht, und der Prozess kehrt zu den Schritten 300 und 303 zurück.
  • Die Ausführungen können mit Software, Firmware, Mikrocode, Hardware bzw. jeder beliebigen Kombination daraus erfolgen. Die Ausführung kann die Form von Code bzw. Logik, die in einem Medium wie dem Speicher 133, 143, dem Speicher 134, 144, 180, 182 und/oder den Schaltungen 132, 142 realisiert sind, annehmen, wobei das Medium Hardware-Logik (z. B. einen Chip mit integriertem Schaltkreis, eine programmierbare Gatter-Anordnung [PGA], eine anwendungsspezifische integrierte Schaltung [ASIC] oder eine andere Schaltung, Logik oder Einheit), oder ein durch einen Rechner lesbares Speichermedium wie ein magnetisches Speichermedium (z. B. ein elektronisches, magnetisches, optisches, elektromagnetisches, Infrarot- oder Halbleitersystem, Halbleiter- oder Festkörperspeicher, Magnetband, eine auswechselbare Rechnerdiskette, Direktzugriffsspeicher [RAM], Nur-Lese-Speicher [ROM], eine starre Magnetplatte und eine optische Platte, eine Kompaktspeicherplatte – Nur-Lese-Speicher [CD-ROM], eine Kompaktspeicherplatte – Lesen/Schreiben [CD-R/W] und DVD) umfassen kann.
  • Fachleute werden verstehen, dass man in Bezug auf die oben erläuterten Verfahren Änderungen vornehmen kann, darunter Änderungen der Reihenfolge der Schritte. Ferner werden Fachleute verstehen, dass andere spezifische Komponentenanordnungen als die hierin dargestellten verwendet werden können.
  • Obgleich die bevorzugten Ausführungsformen der vorliegenden Erfindung ausführlich beschrieben wurden, sollte klar sein, dass ein Fachmann Abänderungen und Anpassungen dieser Ausführungsformen in Betracht ziehen kann, ohne von dem in den folgenden Ansprüchen festgelegten Umfang der vorliegenden Erfindung abzuweichen.

Claims (14)

  1. Verfahren zur Migration von Daten eines Datenspeichersystems, das Datenspeicher mit höherer Geschwindigkeit und andere Datenspeicher umfasst, wobei das Verfahren die folgenden Schritte umfasst: Identifizieren mindestens einer Gruppe der Daten, die in jedem einer Vielzahl von Zeitintervallen mindestens eine angezeigte E/A-Aktivität hatten, welche während einer Folge mehrerer Zeitintervalle auftraten, wobei die E/A-Aktivität einen Bezug zu dem Datenspeicher aufweist, von dem Daten zu migrieren sind, wobei die Zeit für jedes der mehreren Intervalle so gewählt wird, dass hohe E/A-Aktivität voraussichtlich in einem Intervall enthalten ist; und Klassifizieren der mindestens einen identifizierten Datengruppe für den schnelleren Datenspeicher.
  2. Verfahren nach Anspruch 1, das zusätzlich den Schritt des Überwachens der angezeigten E/A-Aktivität für jede einzelne Datengruppe und des Überwachens des Auftretens von E/A-Aktivität in einem Intervall umfasst; und bei dem der Schritt des Identifizierens das Identifizieren von Datengruppen, welche die E/A-Aktivität in einer Folge einer begrenzten Gruppe der Intervalle hatten, umfasst.
  3. Verfahren nach Anspruch 2, bei dem der Schritt des Identifizierens ferner das Identifizieren der E/A-Aktivität unter Anwendung eines gleitenden Durchschnitts des Intervalls umfasst.
  4. Verfahren nach Anspruch 3, bei dem der gleitende Durchschnitt so gewichtet wird, dass neuere E/A-Aktivität stärker gewichtet wird.
  5. Verfahren nach Anspruch 4, bei dem der gleitende Durchschnitt eine exponentielle Gewichtung umfasst.
  6. Verfahren nach Anspruch 5, bei dem der gleitende Durchschnitt Folgendes umfasst: P = (1 – W)·P_last = W·S, wobei: P = aktueller Wert des exponentiell gewichteten gleitenden Durchschnitts; P_last = letzter vorheriger Wert von P; W = Gewichtung jedes Intervalls; und S = 1 wenn innerhalb des Intervalls eine E/A-Aktivität auftrat, 0 wenn es keine E/A-Aktivität gab.
  7. Verfahren nach Anspruch 2, bei dem die Länge der Intervalle im Wesentlichen gleich ist.
  8. Verfahren nach Anspruch 7, bei dem die Länge der Intervalle im Wesentlichen eine Stunde beträgt.
  9. Verfahren nach Anspruch 2, bei dem die überwachten Intervallfolgen mindestens eine Gruppe von aufeinanderfolgenden Intervallen umfassen.
  10. Verfahren nach Anspruch 9, bei dem die überwachten Intervallfolgen mindestens eine Zeitspanne überspringen.
  11. Verfahren nach Anspruch 2, bei dem der Schritt des Identifizierens eine überwachte Intervallfolge einer Datengruppe als Reaktion auf einen E/A-Zugriff auf die Datengruppe aktualisiert.
  12. Steuereinheit für ein Datenspeichersystem, wobei das Datenspeichersystem Datenspeicher mit höherer Geschwindigkeit und andere Datenspeicher umfasst, wobei die Steuereinheit Folgendes umfasst: mindestens einen Rechnerprozessor, der so konfiguriert ist, dass er das Datenspeichersystem steuern kann; und mindestens einen Speicher, der so konfiguriert ist, dass er ein durch einen Rechner lesbares Programm speichern kann, das, wenn es auf dem zumindest einen Rechnerprozessor ausgeführt wird, bewirkt, dass das Datenspeichersystem die Schritte nach einem der vorhergehenden Ansprüche durchführt.
  13. Datenspeichersystem, das Folgendes umfasst: mindestens eine Datenspeichereinheit, die so konfiguriert ist, dass sie Daten speichern kann und eine höhere Geschwindigkeit hat; mindestens eine andere Datenspeichereinheit, die so konfiguriert ist, dass sie Daten speichern kann; und eine Steuereinheit, die so konfiguriert ist, dass sie die Schritte nach einem der Ansprüche 1 bis 11 durchführen kann.
  14. Rechnerprogrammprodukt, das ein auf einem Rechner verwendbares Medium umfasst, auf dem ein durch einen Rechner lesbares Programm gespeichert ist, das bei Ausführung auf dem zumindest einen Rechnerprozessor eines Datenspeichersystems bewirkt, dass das Datenspeichersystem die Schritte nach einem der Ansprüche 1 bis 11 durchführt, wobei das Datenspeichersystem Datenspeicher mit höherer Geschwindigkeit, andere Datenspeicher sowie den zumindest einen Rechnerprozessor umfasst.
DE112010003133.9T 2009-09-14 2010-08-23 Datenmigration zwischen datenspeichereinheiten Active DE112010003133B4 (de)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US12/559,362 US8230131B2 (en) 2009-09-14 2009-09-14 Data migration to high speed storage in accordance with I/O activity over time
US12/559,362 2009-09-14
PCT/EP2010/062254 WO2011029713A1 (en) 2009-09-14 2010-08-23 Data migration between data storage entities

Publications (2)

Publication Number Publication Date
DE112010003133T5 true DE112010003133T5 (de) 2012-06-21
DE112010003133B4 DE112010003133B4 (de) 2015-07-30

Family

ID=42732858

Family Applications (1)

Application Number Title Priority Date Filing Date
DE112010003133.9T Active DE112010003133B4 (de) 2009-09-14 2010-08-23 Datenmigration zwischen datenspeichereinheiten

Country Status (5)

Country Link
US (2) US8230131B2 (de)
CN (1) CN102498466B (de)
DE (1) DE112010003133B4 (de)
GB (1) GB2485699A (de)
WO (1) WO2011029713A1 (de)

Families Citing this family (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8566483B1 (en) * 2009-12-17 2013-10-22 Emc Corporation Measuring data access activity
US8380928B1 (en) * 2009-12-17 2013-02-19 Emc Corporation Applying data access activity measurements
EP2633386A1 (de) * 2011-03-25 2013-09-04 Hitachi, Ltd. Speichersystem und speicherbereichszuweisungsverfahren
US20120260037A1 (en) * 2011-04-11 2012-10-11 Jibbe Mahmoud K Smart hybrid storage based on intelligent data access classification
US9026759B2 (en) 2011-11-21 2015-05-05 Hitachi, Ltd. Storage system management apparatus and management method
US8738877B2 (en) * 2011-12-14 2014-05-27 Advance Micro Devices, Inc. Processor with garbage-collection based classification of memory
CN110333825A (zh) * 2013-04-26 2019-10-15 株式会社日立制作所 存储系统
US10353616B1 (en) * 2013-06-27 2019-07-16 EMC IP Holding Company LLC Managing data relocation in storage systems
US9207873B2 (en) * 2013-12-19 2015-12-08 Netapp, Inc. Parallel migration of data objects to clustered storage
WO2015116080A1 (en) 2014-01-30 2015-08-06 Hewlett-Packard Development Company, L.P. Migrating data between memories
US10659532B2 (en) * 2015-09-26 2020-05-19 Intel Corporation Technologies for reducing latency variation of stored data object requests
US9940057B2 (en) 2015-10-20 2018-04-10 International Business Machines Corporation I/O statistic based depopulation of storage ranks
WO2018022136A1 (en) * 2016-07-26 2018-02-01 Pure Storage, Inc. Geometry based, space aware shelf/writegroup evacuation
CN106774018B (zh) * 2017-02-15 2018-03-27 山东省环境保护信息中心 一种污染源自动监测设备动态管控系统
WO2018199794A1 (en) * 2017-04-27 2018-11-01 EMC IP Holding Company LLC Re-placing data within a mapped-raid environment
KR102543749B1 (ko) * 2023-02-17 2023-06-14 주식회사 헤카톤에이아이 데이터 레이크 이관을 위한 인공지능 기반 자동화 시스템

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003216460A (ja) * 2002-01-21 2003-07-31 Hitachi Ltd 階層ストレージ装置及びその制御装置
US7076397B2 (en) * 2002-10-17 2006-07-11 Bmc Software, Inc. System and method for statistical performance monitoring
US20050138198A1 (en) * 2003-12-18 2005-06-23 It Works Methods, apparatuses, systems, and articles for determining and implementing an efficient computer network architecture
US7225211B1 (en) * 2003-12-31 2007-05-29 Veritas Operating Corporation Multi-class storage mechanism
US7711916B2 (en) * 2005-05-11 2010-05-04 Oracle International Corporation Storing information on storage devices having different performance capabilities with a storage system
JP4859595B2 (ja) * 2006-09-01 2012-01-25 株式会社日立製作所 記憶システム、そのデータ再配置方法、データ再配置プログラム
US7971025B2 (en) * 2007-03-14 2011-06-28 Hitachi, Ltd. Method and apparatus for chunk allocation in a thin provisioning storage system
US7460149B1 (en) * 2007-05-28 2008-12-02 Kd Secure, Llc Video data storage, search, and retrieval using meta-data and attribute data in a video surveillance system
US8386744B2 (en) * 2007-10-01 2013-02-26 International Business Machines Corporation Thin provisioning migration and scrubbing

Also Published As

Publication number Publication date
GB201202064D0 (en) 2012-03-21
GB2485699A (en) 2012-05-23
CN102498466A (zh) 2012-06-13
US8380891B2 (en) 2013-02-19
CN102498466B (zh) 2015-01-28
US8230131B2 (en) 2012-07-24
WO2011029713A1 (en) 2011-03-17
US20120173771A1 (en) 2012-07-05
US20110066767A1 (en) 2011-03-17
DE112010003133B4 (de) 2015-07-30

Similar Documents

Publication Publication Date Title
DE112010003133B4 (de) Datenmigration zwischen datenspeichereinheiten
DE112012002615B4 (de) Vorabladen von Datenspuren und Paritätsdaten zur Verwendung zum Auslagern aktualisierter Spuren
DE112012001302B4 (de) Cachen von Daten in einem Speichersystem mit mehreren Cache-Speichern
DE112010004947B4 (de) Wiederherstellung einer vollständigen Systemsicherung und inkrementeller Sicherungen unter Verwendung von mehreren gleichzeitigen Datenströmen von Einheiten
DE112019006907B3 (de) Auswählen von einem von mehreren cache-bereinigungsalgorithmen, der zum entfernen einer spur aus dem cache verwendet werden soll
DE602004002216T2 (de) Verfahren, system und programm für eine inkrementelle virtuelle kopie
DE60031064T2 (de) Kopierverfahren zwischen logischen Speicherplatten, Speicherplattensystem und Programm dafür
DE112012000953B4 (de) Dynamisches Beseitigen von Leistungsungleichgewicht zur Laufzeit
DE602004011181T2 (de) Speicherplattenanordnungsgerät
DE112011103378B4 (de) Automatische und sich selbsttätig anpassende Datensicherungsoperationen
DE60030680T2 (de) Zuverlässiges Speicherlaufwerk und Datenschreibverfahren
DE102013200032B4 (de) Herabstufen von partiellen Speicherspuren aus einem ersten Cachespeicher in einen zweiten Cachespeicher
DE112011103290B4 (de) Intelligente Schreibcacheoperationen für sequenzielle Datenspuren
DE112010003794B4 (de) Datenspeicherung unter Verwendung von Bitmaps
DE102012212183B4 (de) Verfahren und Speichercontroller zur Bestimmung einer Zugriffscharakteristik einer Datenentität
DE112012004209T5 (de) Dynamisch eingestellter Schwellenwert zum Belegen eines sekundären Cache-Speichers
DE112013000650B4 (de) Datenzwischenspeicherungsbereich
DE112012004798T5 (de) Anpassung der Auslagerungsgeschwindigkeit auf Grundlage von Anforderungen an Lese- und Schreib-Antwortzeiten
DE112013001284T5 (de) Adaptive Cachespeicher-Umstufungen in einem Caching-System mit zwei Stufen
DE102013210719B4 (de) Verfahren und Systeme zum Verwalten von Cache-Speichern
DE112010003577T5 (de) Datenverwaltung in Halbleiterspeicher-Einheiten und mehrstufigen Speichersystemen
DE112005001050T5 (de) Liefern eines alternativen Cachespeicherungsschemas auf der Speicherbereichnetzwerkebene
DE102012208141A1 (de) Ausgleich nachlassender Funktionsfähigkeit
DE102016001682A1 (de) Leistungsausgeglichene Datenspeichervorrichtung
DE102009031125A1 (de) Nand-Fehlerbehandlung

Legal Events

Date Code Title Description
R163 Identified publications notified
R012 Request for examination validly filed
R079 Amendment of ipc main class

Free format text: PREVIOUS MAIN CLASS: G06F0003060000

Ipc: G06F0011340000

R083 Amendment of/additions to inventor(s)
R016 Response to examination communication
R016 Response to examination communication
R018 Grant decision by examination section/examining division
R084 Declaration of willingness to licence
R020 Patent grant now final