DE102020112531A1 - Operationelle metrische Berechnung für Arbeitsbelastungstyp - Google Patents

Operationelle metrische Berechnung für Arbeitsbelastungstyp Download PDF

Info

Publication number
DE102020112531A1
DE102020112531A1 DE102020112531.3A DE102020112531A DE102020112531A1 DE 102020112531 A1 DE102020112531 A1 DE 102020112531A1 DE 102020112531 A DE102020112531 A DE 102020112531A DE 102020112531 A1 DE102020112531 A1 DE 102020112531A1
Authority
DE
Germany
Prior art keywords
workload
operational metric
storage
data
aggregated
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.)
Pending
Application number
DE102020112531.3A
Other languages
English (en)
Inventor
Mayukh Dutta
Manoj Srivatsav
Souman Shekhar Das
Gautham Parameshwar Hegde
Sivasakthi Thirugnanapandi
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hewlett Packard Enterprise Development LP
Original Assignee
Hewlett Packard Enterprise Development LP
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hewlett Packard Enterprise Development LP filed Critical Hewlett Packard Enterprise Development LP
Publication of DE102020112531A1 publication Critical patent/DE102020112531A1/de
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • G06F9/505Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering the load
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/214Generating training patterns; Bootstrap methods, e.g. bagging or boosting
    • 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/0608Saving storage space on storage systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/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/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0629Configuration or reconfiguration of storage systems
    • G06F3/0634Configuration or reconfiguration of storage systems by changing the state or mode of one or more devices
    • 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/0653Monitoring storage devices or systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0662Virtualisation aspects
    • G06F3/0665Virtualisation aspects at area level, e.g. provisioning of virtual or logical volumes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • 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]
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5011Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Software Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Artificial Intelligence (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Evolutionary Computation (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Evolutionary Biology (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Medical Informatics (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

In einigen Beispielen aggregiert ein System operationale metrische Daten mehrerer Speichervolumes zu aggregierten operationalen metrischen Datengruppen, die verschiedenen Workload-Typen von Workloads für den Zugriff auf Daten eines Speichersystems entsprechen. Das System berechnet eine Betriebsmetrik für einen ersten Workload-Typ der verschiedenen Workload-Typen, wobei sich die Betriebsmetrik auf eine Ressource des Speichersystems bezieht, wobei die Berechnung der Betriebsmetrik für den ersten Workload-Typ die Eingabe aggregierter Betriebsmetrik-Daten einer ersten aggregierten Betriebsmetrik-Datengruppe der aggregierten Betriebsmetrik-Datengruppen in ein Modell umfasst, das auf einer Systemebene des Speichersystems trainiert wird.

Description

  • Hintergrund
  • Eine Anordnung von Speichergeräten kann zur Speicherung von Daten verwendet werden. In einigen Beispielen kann die Datenspeicherung durch die Anordnung von Speichergeräten in Speichervolumen partitioniert werden. Ein „Speichervolumen“ kann sich auf eine logische Speichereinheit (z.B. ein virtuelles Volumen mit einem virtuellen Adressbereich) beziehen, der Speicherplätze im physischen Speicher (z.B. Speichergerät(e) in einem Speicherarray oder Teilen davon) zur Speicherung einer Datensammlung zugewiesen werden können und die als Einheit verwaltet werden kann.
  • Figurenliste
  • Einige Implementierungen der vorliegenden Offenlegung werden im Hinblick auf die folgenden Zahlen beschrieben.
    • ist ein Flussdiagramm eines Workload-Management-Prozesses, der die Berechnung einer operativen Metrik für einen Workload-Typ anhand einiger Beispiele umfasst.
    • ist ein Blockdiagramm einer Anordnung, die nach einigen Beispielen Host-Systeme, Speichersysteme und eine Speichersystem-Workload-Management-Engine umfasst.
    • und sind Darstellungen von Werten operativer Metriken über die Zeit für verschiedene Arten der Arbeitsbelastung, entsprechend einigen Beispielen.
    • ist ein Plot, das die Auslastung der Fingerabdrücke für verschiedene Speichervolumen nach weiteren Beispielen zeigt.
    • ist ein Blockdiagramm eines Speichermediums, auf dem maschinenlesbare Anweisungen nach einigen Beispielen gespeichert sind.
    • ist ein Blockdiagramm eines Rechensystems nach einigen Beispielen.
  • Überall in den Zeichnungen bezeichnen identische Referenznummern ähnliche, aber nicht unbedingt identische Elemente. Die Abbildungen sind nicht notwendigerweise maßstabsgetreu, und die Größe einiger Teile kann zur besseren Veranschaulichung des gezeigten Beispiels übertrieben sein. Darüber hinaus enthalten die Zeichnungen Beispiele und/oder Implementierungen, die mit der Beschreibung übereinstimmen; die Beschreibung ist jedoch nicht auf die in den Zeichnungen enthaltenen Beispiele und/oder Implementierungen beschränkt.
  • Detaillierte Beschreibung
  • In der vorliegenden Offenlegung soll die Verwendung des Begriffs „a“, „an“ oder „der“ auch die Pluralformen einschließen, es sei denn, aus dem Kontext geht eindeutig etwas anderes hervor. Auch der Begriff „einschließt“, „einschließt“, „umfasst“, „umfasst“, „enthält“, „enthält“, „hat“ oder „hat“, wenn er in dieser Offenbarung verwendet wird, spezifiziert das Vorhandensein der angegebenen Elemente, schließt aber das Vorhandensein oder die Hinzufügung anderer Elemente nicht aus.
  • Ein „Speichersystem“ kann sich auf eine Plattform mit Hardware und maschinenlesbaren Anweisungen zur Implementierung der Datenspeicherung beziehen. Ein Speichersystem kann durch eine Kombination von Verarbeitungsressourcen, Speicherressourcen und Kommunikationsressourcen implementiert werden. Ein Speichersystem kann ein Speichergerät (oder mehrere Speichergeräte) enthalten oder Zugriff darauf haben. Ein „Speichergerät“ kann eine persistente Speicherung umfassen, die unter Verwendung nichtflüchtiger Speichergeräte implementiert wird, wie z.B. plattenbasierte Speichergeräte (z.B. Festplattenlaufwerk(e) (HDD(s)) o.ä.), Festkörperspeichergeräte (z.B. Festkörperlaufwerk(e) (SSD(s)) o.ä.) und so weiter.
  • Eine Verarbeitungsressource kann einen Prozessor, mehrere Prozessoren oder einen Teil (z.B. einen Kern oder mehrere Kerne) eines Prozessors umfassen. Eine Speicherressource kann ein Speicherbauelement oder mehrere Speicherbauelemente umfassen, z. B. einen dynamischen Speicher mit wahlfreiem Zugriff (DRAM), einen statischen Speicher mit wahlfreiem Zugriff (SRAM) usw. Ein Beispiel für eine Speicherressource ist ein Cache-Speicher zur temporären Speicherung von Daten, die in einem persistenten Speicher gehalten werden. Eine Kommunikationsressource kann einen Netzwerk-Schnittstellen-Controller (oder einen Teil davon) oder einen Port umfassen, der zur Kommunikation über ein Netzwerk verwendet wird. In weiteren Beispielen kann ein Speichersystem andere Ressourcen umfassen, einschließlich physischer Ressourcen und/oder virtueller Ressourcen.
  • Die Leistung und/oder Nutzung von Speichersystemen kann durch eine Reihe von Betriebskennzahlen ausgedrückt werden. Die Betriebsmetriken können Nutzungsmetriken umfassen, die die Nutzung des Speichersystems darstellen, und/oder Leistungsmetriken, die die Leistung des Speichersystems darstellen. Beispiele für Betriebskennzahlen sind eine oder mehrere Kombinationen der folgenden Kennzahlen: eine Eingabe/Ausgabe (E/A)-Zählung (die eine Anzahl von E/A-Anforderungen wie Lese- und Schreibanforderungen zählt), ein Verhältnis zwischen Lese- und Schreibanforderungen, ein Cache-Trefferprozentsatz (ein Prozentsatz der Anforderungen, die von einem Cache-Speicher erfüllt werden können), Prozessornutzung, Prozessorsättigung (die eine Menge eines Prozessors angibt, die aufgrund der Nutzung des Prozessors durch Arbeitslasten verbraucht wird), Cachesättigung (die eine Menge eines Cache angibt, die aufgrund der Nutzung des Cache durch Arbeitslasten verbraucht wird), persistente Speichersättigung (die eine Menge an persistentem Speicher angibt, die aufgrund der Nutzung des persistenten Speichers durch Workloads verbraucht wird), Portsättigung (die eine Bandbreite eines Ports angibt, die aufgrund der Nutzung des Ports durch Workloads verbraucht wird), Warteschlangentiefe (eine Menge einer Warteschlange, die Daten speichert), eine Größe einer E/A-Operation, ein Maß für die Auslastung eines Prozessors und so weiter.
  • Operationelle Metriken basieren auf Auslastungsmustern, die in einem Speichersystem (oder mehreren Speichersystemen) ausgeführt werden. Ein Workload-Muster bezieht sich auf eine Sammlung von Aktivitäten im Zusammenhang mit dem Zugriff (Lese- und/oder Schreibzugriff) auf das/die Speichersystem(e).
  • In einigen Beispielen können Auslastungsmuster für die jeweiligen Speichervolumen beobachtet werden, die von dem/den Speichersystem(en) bereitgestellt werden. Wie oben beschrieben, ist ein Speicher-Volume eine logische Speichereinheit (z.B. ein virtuelles Volume mit einem virtuellen Adressbereich), der Speicherplätze im physischen Speicher (z.B. Speichergerät(e) in Speicherarrays oder Teilen davon) zur Speicherung von Daten zugewiesen werden können. Speicher-Volumes können Host-System(en) präsentiert werden, die Daten der Speicher-Volumes lesen und schreiben können. Beispielsweise kann ein Speichervolumen von einem Speichersystem auf ein Host-System zur Verwendung durch das Host-System exportiert werden. Ganz allgemein kann ein Speichervolumen dem Hostsystem zur Verfügung gestellt werden, damit das Hostsystem auf die Daten im Speichervolumen zugreifen kann.
  • Ein „Host-System“ kann sich auf eine Plattform beziehen, die Hardware und maschinenlesbare Anweisungen enthält und die in der Lage ist, Anfragen für den Zugriff (Lesezugriff und/oder Schreibzugriff) auf Daten von Speichervolumen zu stellen. Beispielsweise kann ein Anwendungsprogramm (das ein Beispiel für maschinenlesbare Anweisungen ist) in einem Host-System laufen und Lese- und Schreibanforderungen für Daten von Speicher-Volumes ausgeben.
  • Ein Speichersystem speichert Daten, auf die eine Reihe von Anforderern (z. B. Programme oder andere Entitäten) zugreifen können, die Teil eines Host-Systems oder mehrerer Host-Systeme sein können. Die Anforderer, die auf Daten des Speichersystems zugreifen können, können dynamisch sein, und zwar in Bezug auf die Datenzugriffsmuster (z.B. Muster in Bezug auf die Art der angeforderten Daten, wie häufig Daten angefordert werden usw.) der Anforderer oder in Bezug darauf, welche Anforderer zu einem bestimmten Zeitpunkt auf das Speichersystem zugreifen. Infolgedessen können die Arbeitslasten, die das Speichersystem erfährt, ein heterogenes Arbeitslastmuster aufweisen, einschließlich sich ändernder Datenzugriffsmuster von verschiedenen Kombinationen von Anforderern zu verschiedenen Zeiten.
  • Zusätzlich werden Arbeitslasten von verschiedenen Anforderern, wie sie am Speichersystem beobachtet werden, miteinander verschachtelt. Mit anderen Worten, die Ein-/Ausgabe- (E/A-) Operationen (Lese- und/oder Schreiboperationen) von Workloads von mehreren Anforderern können im Speichersystem in einer verschachtelten Weise verarbeitet werden, wobei einige E/A-Operationen für einen ersten Anforderer vom Speichersystem zwischen E/A-Operationen für einen zweiten Anforderer verarbeitet werden können. Infolgedessen kann es schwierig sein, die Auswirkungen einzelner Arbeitslasten auf die Ressourcen des Speichersystems zu bestimmen. Eine „individuelle Arbeitslast“ (oder einfacher gesagt, eine „Arbeitslast“) kann sich auf eine Sammlung von Aktivitäten für einen entsprechenden Anforderer beziehen (z.B. ein Programm, ein Host-System, eine Anforderung von einem Programm oder Host-System usw.). So können unterschiedliche individuelle Arbeitsbelastungen auf Aktivitäten verschiedener Antragsteller oder sogar auf unterschiedliche Anfragen eines Antragstellers zurückzuführen sein.
  • Wenn eine Ressource (z. B. eine Verarbeitungsressource, eine Speicherressource und/oder eine Kommunikationsressource) eines Speichersystems so stark beansprucht wird, dass die Gesamtleistung der Ressource oder des Speichersystems darunter leidet, kann es für einen menschlichen Analysten oder einen Rechner oder ein Programm schwierig sein, festzustellen, welche Arbeitslasten (z. B. welche Arten von Arbeitslasten) die starke Beanspruchung der Ressource verursachen.
  • In Übereinstimmung mit einigen Implementierungen der vorliegenden Offenlegung werden operationale metrische Daten mehrerer Speichervolumina zu aggregierten operationalen metrischen Datengruppen zusammengefasst, die verschiedenen Arbeitslasttypen von Arbeitslasten für den Zugriff auf Daten eines Speichersystems entsprechen. „Betriebliche Metrik-Daten“ können sich auf gemessene oder abgeleitete Werte einer betrieblichen Metrik oder mehrerer betrieblicher Metriken beziehen. Eine „aggregierte operationale metrische Datengruppe“ bezieht sich auf aggregierte metrische Werte, die auf der Grundlage der aggregierten operationalen metrischen Daten einer entsprechenden Sammlung von Speichervolumen berechnet wurden. Eine erste aggregierte Betriebsmetrik-Datengruppe für eine erste Sammlung von Speichervolumina entspricht einem ersten Arbeitslasttyp der verschiedenen Arbeitslasttypen von Arbeitslasten, eine zweite aggregierte Betriebsmetrik-Datengruppe für eine zweite Sammlung von Speichervolumina entspricht einem zweiten Arbeitslasttyp der verschiedenen Arbeitslasttypen von Arbeitslasten, und so weiter. Beispielsweise kann jede aggregierte metrische Betriebsdatengruppe aggregierte metrische Werte in unterschiedlichen Intervallen enthalten, wie z. B. Zeitintervalle, räumliche Intervalle usw.
  • Nach der Berechnung der operationalen Metrik-Datengruppen wird eine operationale Metrik für jeden jeweiligen Workload-Typ der verschiedenen Workload-Typen berechnet, wobei sich die operationale Metrik auf eine Ressource des Speichersystems bezieht. Die Berechnung der Betriebskennzahl für den jeweiligen Workload-Typ umfasst die Eingabe aggregierter Betriebskennzahl-Daten der entsprechenden aggregierten Betriebskennzahl-Datengruppe der aggregierten Betriebskennzahl-Datengruppen in ein Modell, das auf der Systemebene des Speichersystems trainiert wurde. Ein Modell, das auf Systemebene trainiert wird, bezieht sich auf ein Modell, das unter Verwendung von für das Speichersystem gesammelten Trainingsdaten trainiert wird, ohne die Trainingsdaten nach verschiedenen Arbeitsbelastungstypen zu unterscheiden. Beispielsweise können Werte einer oder mehrerer Betriebskennzahlen für die Ressource(n) des Speichersystems über alle auf dem Speichersystem ausgeführten Arbeitsbelastungen hinweg gemessen oder abgeleitet werden, und diese über alle Arbeitsbelastungen hinweg gesammelten Werte der Betriebskennzahlen können als Teil der Schulungsdaten für das Training des Modells auf Systemebene verwendet werden.
  • Durch die Möglichkeit, ein auf der Systemebene des Speichersystems geschultes Modell zu verwenden, kann eine effizientere Methode zur Bestimmung von Betriebskennzahlen für verschiedene Workload-Typen erreicht werden. Durch die Möglichkeit, ein auf der Systemebene des Speichersystems trainiertes Modell zu verwenden, muss kein spezielles Modell erstellt werden, das auf Trainingsdaten basiert und zwischen verschiedenen Workload-Typen unterscheidet. Die Erstellung eines Modells, das speziell für die Unterscheidung verschiedener Workload-Typen geschult wurde, kann die Komplexität der Modellerstellung erhöhen. Beispielsweise kann die Entwicklung von Schulungsdaten für verschiedene Workload-Typen eine Herausforderung und zeitaufwändig sein. Durch die Eingabe aggregierter Betriebskennzahldaten einer bestimmten aggregierten Betriebskennzahldatengruppe in das auf Systemebene geschulte Modell ist das Modell in der Lage, Betriebskennzahldaten für einen Arbeitslasttyp zu erzeugen, der der bestimmten aggregierten Betriebskennzahldatengruppe entspricht.
  • Die aggregierten operationellen metrischen Daten für die jeweiligen Auslastungstypen haben einen ähnlichen „Maßstab“ wie die gesamte Systemauslastung (da sie auf einem Aggregat aus einer großen Anzahl operationeller metrischer Daten für Speichervolumen basieren). Infolgedessen ist die Leistung des Modells auf Systemebene wahrscheinlich besser, da das Modell auf Systemebene auf operationelle Metrikdaten (die aggregierten operationellen Metrikdaten) angewendet wird, die im Maßstab näher an den operationellen Metrikdaten auf Systemebene liegen, auf denen das Modell trainiert wurde.
  • Ein Administrator oder eine andere Entität (z. B. ein Rechner oder ein Programm) kann unter Umständen auf die für die verschiedenen Workload-Typen berechneten Betriebskennzahlen zugreifen, um schnell festzustellen, ob ein Problem (z. B. eine überlastete Ressource, eine leistungsschwache Ressource usw.) im Speichersystem vorhanden ist, das behoben werden soll. In weiteren Beispielen können die mit Hilfe des Modells berechneten Betriebskennzahlen für die verschiedenen Workload-Typen einem automatisierten System vorgelegt werden, um automatisch Maßnahmen als Reaktion auf ein Problem zu ergreifen, das auf der Grundlage der Betriebskennzahlen identifiziert wird.
  • ist ein Flussdiagramm eines Prozesses 100 nach einigen Implementierungen der vorliegenden Offenlegung. Der Prozess 100 kann von einem Computersystem durchgeführt werden, das einen Computer oder mehrere Computer umfassen kann.
  • Der Prozess 100 umfasst das Training (bei 102) eines Modells (eines maschinellen Lernmodells wie z.B. eines Regressionsmodells oder eines anderen Modelltyps) unter Verwendung von Trainingsdaten einschließlich betrieblicher Metrikdaten von Arbeitsbelastungen, die von mehreren Antragstellern initiiert wurden. Die Arbeitslasten umfassen Datenzugriffe (Lesezugriffe und/oder Schreibzugriffe) in einem Speichersystem. In einigen Beispielen enthalten die zum Training des Modells verwendeten Schulungsdaten betriebliche Metrikdaten auf Systemebene des Speichersystems. Bei den operationellen Metrikdaten auf Systemebene in den Schulungsdaten wird nicht zwischen verschiedenen Workload-Typen unterschieden.
  • Ein „maschinelles Lernmodell“ kann sich auf ein Modell beziehen, das angepasst werden kann, wenn weitere Trainingsdaten zur Verfügung gestellt werden, um das Modell zu trainieren. Die Anpassung des Modells auf der Grundlage von Trainingsdaten wird auch als „Lernen des Modells“ bezeichnet. Ein Regressionsmodell ist ein Modell, das mehrere interessierende Variablen in Beziehung setzt, wobei die Variablen eine Ausgangsvariable(n), wie z.B. eine betriebliche Metrik, die sich auf eine Leistung oder Nutzung einer Ressource des Speichersystems bezieht, und eine Eingangsvariable(n), wie z.B. betriebliche Metrikdaten, die in einem Host-System oder mehreren Host-Systemen gesammelt wurden, umfassen können. Beim Training eines Modells unter Verwendung von Trainingsdaten können verschiedene Techniken des maschinellen Lernens eingesetzt werden.
  • Obwohl im Prozess 100 auf „Speichersystem“ im Singularsinne Bezug genommen wird, wird darauf hingewiesen, dass der Prozess 100 auf einen Kontext anwendbar ist, der mehrere Speichersysteme umfasst.
  • Der Prozess 100 umfasst darüber hinaus die Aggregation (bei 104) operationeller metrischer Daten der mit dem Speichersystem verbundenen Speichervolumina. Bei der Aggregation werden die Betriebsmetrikdaten in aggregierte Betriebsmetrik-Datengruppen aggregiert, die verschiedenen Workload-Typen entsprechen. Das „Aggregieren“ einer Betriebskennzahl kann sich auf die Berechnung eines Wertes beziehen, der auf der Kombination von Werten der Betriebskennzahl basiert. Beispielsweise kann sich das Aggregieren der Betriebskennzahl auf eine oder mehrere der folgenden Kombinationen beziehen: Summieren der Werte der Betriebskennzahl, Mitteln der Werte der Betriebskennzahl, Berechnen eines Medians der Werte der Betriebskennzahl, Berechnen eines Maximums oder Minimums der Werte der Betriebskennzahl oder Anwenden eines anderen mathematischen Berechnungstyps auf die Werte der Betriebskennzahl.
  • Das Aggregieren einer Betriebskennzahl zu einer Datengruppe mit aggregierter Betriebskennzahl bezieht sich auf das Aggregieren von Werten der Betriebskennzahl, die mit einer entsprechenden Sammlung von Speichervolumen verbunden sind. Eine „Sammlung von Speichervolumen“ kann sich auf eine Sammlung beziehen, die ein einzelnes Speichervolumen oder mehrere Speichervolumen umfasst. Unterschiedliche aggregierte operationale metrische Datengruppen sind mit verschiedenen Sammlungen von Speichervolumen verbunden.
  • In einigen Beispielen können die aggregierten operationellen metrischen Datengruppen eine erste Gruppe von aggregierten operationellen metrischen Daten für eine erste Sammlung von Speichervolumina, auf die ein erster Anforderer zugreift, eine zweite Gruppe von aggregierten operationellen metrischen Daten für eine zweite Sammlung von Speichervolumina, auf die ein zweiter Anforderer zugreift, usw. enthalten.
  • In weiteren Beispielen umfassen die aggregierten operationellen metrischen Datengruppen eine erste Gruppe von aggregierten operationellen metrischen Daten für eine erste Sammlung von Speichervolumina, die komprimierte Daten speichern, und eine zweite Gruppe von aggregierten operationellen metrischen Daten für eine zweite Sammlung von Speichervolumina, die unkomprimierte Daten speichern.
  • In noch weiteren Beispielen umfassen die aggregierten operationellen metrischen Datengruppen eine erste Gruppe aggregierter operationeller metrischer Daten für eine erste Sammlung von Speichervolumina, die auf der Grundlage der den Speichervolumina über eine Vielzahl von Punkten (z.B. Zeitpunkte und/oder räumliche Punkte) zugewiesenen Workload-Fingerabdrücke gruppiert sind, eine zweite Gruppe aggregierter operationeller metrischer Daten für eine zweite Sammlung von Speichervolumina, die auf der Grundlage der den Speichervolumina über die Vielzahl von Punkten zugewiesenen Workload-Fingerabdrücke gruppiert sind, und so weiter. Workload-Fingerprints werden weiter unten diskutiert.
  • Im Allgemeinen können die verschiedenen Sammlungen von Speichervolumen unterschiedliche Arbeitslasttypen darstellen. Jede Sammlung von Speicherdatenträgern „repräsentiert“ einen Arbeitslasttyp in dem Sinne, dass die Arbeitslast(en), die in Bezug auf die Sammlung von Speicherdatenträgern durchgeführt wird (werden), ein gemeinsames Merkmal aufweist (aufweisen). Nach den vorstehenden Beispielen kann ein gemeinsames Merkmal ein Antragsteller sein, der Anfragen zur Erzeugung der Arbeitslast gestellt hat, oder ob die von der Sammlung von Speicherdatenträgern gespeicherten Daten komprimiert sind oder nicht, oder ein gemeinsamer Arbeitslast-Fingerabdruck.
  • Beispielsweise kann die erste Sammlung von Speicherdatenträgern, auf die der erste Antragsteller zugreift, einen ersten Workload-Typ darstellen, und die zweite Sammlung von Speicherdatenträgern, auf die der zweite Antragsteller zugreift, einen zweiten Workload-Typ darstellen. Als weiteres Beispiel kann die erste Sammlung von Speicher-Volumes, die komprimierte Daten speichert, einen ersten Workload-Typ darstellen, und die zweite Sammlung von Speicher-Volumes, die unkomprimierte Daten speichert, einen zweiten Workload-Typ darstellen. Als weiteres Beispiel kann die erste Sammlung von Speicher-Volumes, die auf der Grundlage der Workload-Fingerabdrücke gruppiert sind, einen ersten Workload-Typ repräsentieren, und die zweite Sammlung von Speicher-Volumes, die auf der Grundlage der Workload-Fingerabdrücke gruppiert sind, einen zweiten Workload-Typ repräsentieren.
  • Der Prozess 100 umfasst ferner die Eingabe (bei 106) der aggregierten operationellen metrischen Datengruppen in das Modell.
  • Als Reaktion auf die eingegebenen aggregierten operationalen Metrik-Datengruppen erzeugt das Modell (bei 108) eine operationale Metrik für jeden Workload-Typ der verschiedenen Workload-Typen, wobei sich die operationale Metrik auf eine oder mehrere Ressourcen des Speichersystems bezieht. Als Reaktion auf aggregierte Betriebsmetrikwerte einer ersten aggregierten Betriebsmetrik-Datengruppe, die in das Modell eingegeben wurde, erzeugt das Modell beispielsweise eine Betriebsmetrik für einen ersten Arbeitslasttyp. Die Betriebsmetrik kann eine beliebige oder eine Kombination der weiter oben aufgeführten Betriebsmetriken als Beispiele enthalten.
  • Der Prozess 100 umfasst ferner die Verwaltung (bei 110) der Ressourcennutzung der Ressource(n) des Speichersystems für einen Arbeitslasttyp auf der Grundlage der berechneten betrieblichen Metrik für die verschiedenen Arbeitslasttypen .
  • Die Verwaltung der Ressourcennutzung einer bestimmten Ressource für einen bestimmten Workload-Typ kann eine beliebige oder eine Kombination der folgenden Punkte umfassen: Drosselung der Nutzung der gegebenen Ressource durch die Arbeitslasten des gegebenen Arbeitslasttyps (z. B. durch Reduzierung einer Rate, mit der Datenanforderungen an ein Speichersystem für Daten einer Sammlung von Speichervolumes, die dem gegebenen Arbeitslasttyp entsprechen, übermittelt werden); Konfiguration einer Dienstgüte-Einstellung (QoS) für die Arbeitslasten des gegebenen Arbeitslasttyps, wobei die QoS-Einstellung eine Priorität der Arbeitslasten des gegebenen Arbeitslasttyps bei der Nutzung der gegebenen Ressource beeinflussen kann; Ändern einer Zuweisung der gegebenen Ressource zu den Arbeitslasten des gegebenen Arbeitslasttyps (z. B. durch Ändern einer Menge der Ressource, die zur Handhabung von Datenzugriffen auf die Daten durch Arbeitslasten des gegebenen Arbeitslasttyps zugewiesen ist); Migrieren von Daten der Arbeitslasten des gegebenen Arbeitslasttyps von einem ersten Satz von Speichergeräten zu einem anderen zweiten Satz von Speichergeräten; und so weiter.
  • ist ein Blockdiagramm einer Beispielanordnung, die eine Reihe von Host-Systemen 202-1 bis 202-N umfasst, wobei N ≥ 1. Obwohl in mehrere Host-Systeme dargestellt sind, wird darauf hingewiesen, dass in anderen Beispielen möglicherweise nur ein Host-System vorhanden ist.
  • Das Host-System 202-1 umfasst die Anwendungsprogramme 204-1 und die Speichervolumes 206-1, die dem Host-System 202-1 präsentiert werden. Das Hostsystem 202-N enthält ein Anwendungsprogramm 204-N und Speichervolumes 206-N, die dem Hostsystem 202-N präsentiert werden. Obwohl die Beispiele gemäß Anwendungsprogramme als Beispiele für Anforderer zeigen, die auf Speicherdatenträger zugreifen können, wird darauf hingewiesen, dass in anderen Beispielen verschiedene Arten von Anforderern auf Speicherdatenträger zugreifen können.
  • Wie oben diskutiert, sind die Speichervolumes 206-1 und 206-N logische Einheiten, die von den Anforderern in den Host-Systemen 202-1 bis 202-N genutzt werden können. Die zugrundeliegenden Daten, auf die über die Speichervolumes zugegriffen werden kann, werden von den Speichergeräten 208 eines Speichersystems 210 (oder mehrerer Speichersysteme 210) gespeichert. Die Speichergeräte 208 können mit plattenbasierten Speichergeräten, Festkörperspeichergeräten und/oder anderen Arten von persistenten Speichergeräten implementiert werden. Die Speichergeräte 208 können als ein Array (oder mehrere Arrays) von Speichergeräten angeordnet werden.
  • Obwohl die Speichergeräte 208 als Teil des Speichersystems 210 zeigt, können die Speichergeräte 208 in anderen Beispielen außerhalb des Speichersystems 210 liegen, aber von diesem aus zugänglich sein.
  • Das Speichersystem 210 umfasst Prozessoren 212 und Cache-Speicher 214. Die Prozessoren 212 können ein Datenzugriffsprogramm (in Form von maschinenlesbaren Befehlen) ausführen, das den Zugriff auf die in den Speichergeräten 208 gespeicherten Daten als Antwort auf die von einem Anforderer erhaltenen Anfragen verwaltet, die auf dem Zugriff auf ein Speichervolumen (oder mehrere Speichervolumen) durch den Anforderer basieren. Ein Cache-Speicher 214 kann zur Zwischenspeicherung von Daten verwendet werden, z.B. zum Schreiben von Daten, die auf die Speichergeräte 208 geschrieben werden sollen.
  • Das Speichersystem 210 umfasst außerdem verschiedene Ports 216. Ein „Port“ kann sich auf eine Kommunikationsschnittstelle beziehen, über die ein Hostsystem 202-i (i = 1 bis N) über ein Netzwerk 218 auf das Speichersystem 210 zugreifen kann. Beispiele für das Netzwerk 218 können eine beliebige oder eine Kombination der folgenden Elemente sein: ein Speicherbereichsnetzwerk (SAN), ein lokales Netzwerk (LAN), ein öffentliches Netzwerk wie das Internet und so weiter.
  • Jeder Port 216 verfügt über eine entsprechende Bandbreite, die für die Kommunikation von Daten als Antwort auf Zugriffsanfragen von Anfragern verwendet werden kann. Ein Port kann sich auf einen physischen Port oder einen logischen Port beziehen.
  • Obwohl nicht dargestellt, können die Host-Systeme 202-1 und 202-N jeweils auch Ports für die Kommunikation über das Netzwerk 218 enthalten.
  • Die Ports 216, die Prozessoren 210 und die Cache-Speicher 212 sind Beispiele für Ressourcen des Speichersystems 210, die zur Ausführung von Aufgaben im Zusammenhang mit dem Zugriff auf Speichervolumen (in Workloads) durch die jeweiligen Anforderer verwendet werden können.
  • Die Ports 216 sind Beispiele für Kommunikationsressourcen. Die Prozessoren 210 sind Beispiele für Verarbeitungsressourcen. Die Cache-Speicher 212 sind Beispiele für Speicherressourcen.
  • zeigt auch eine Speichersystem-Workload-Management-Engine 220, die einen Speichersystem-Workload-Management-Prozess wie den in gezeigten Prozess 100 ausführen kann.
  • Wie hier verwendet, kann sich eine „Maschine“ oder eine Hardware-Verarbeitungsschaltung auf eine Hardware-Verarbeitungsschaltung beziehen, die einen Mikroprozessor, einen Kern eines Mehrkern-Mikroprozessors, einen Mikrocontroller, eine programmierbare integrierte Schaltung, ein programmierbares Gate-Array, einen digitalen Signalprozessor oder eine andere Hardware-Verarbeitungsschaltung in beliebiger oder bestimmter Kombination enthalten kann. Alternativ kann sich ein „Motor“ auf eine Kombination aus einer Hardware-Verarbeitungsschaltung und maschinenlesbaren Anweisungen (Software und/oder Firmware) beziehen, die auf der Hardware-Verarbeitungsschaltung ausführbar sind.
  • Die Speichersystem-Workload-Management-Engine 220 kann Teil des Speichersystems 210 sein oder alternativ vom Speichersystem 210 getrennt und an das Netzwerk 218 gekoppelt werden. Ein Monitoring-Agent 222 (implementiert mit Hardware oder einer Kombination aus Hardware und maschinenlesbaren Befehlen) kann im Speichersystem 210 ausgeführt werden, um verschiedene Betriebskennzahlen des Speichersystems 210 zu erfassen.
  • Speicher-Volumes können durch entsprechende eindeutige Identifikatoren identifiziert werden, und E/A-Anforderungen, die auf ein Speicher-Volume gerichtet sind, werden durch Tracking-Einheiten verfolgt, die in den Host-Systemen 202-1 bis 202-N ausgeführt werden können. Die verfolgten E/A-Anforderungen und die damit verbundenen Merkmale der E/A-Anforderungen (z. B. eine E/A-Zahl einer Anzahl von E/A-Anforderungen, ein Verhältnis von Lese- zu Schreibanforderungen, eine E/A-Größe, eine Rate von E/A-Anforderungen usw.) können mit den jeweiligen eindeutigen Kennungen der Speicher-Volumes, auf die die E/A-Anforderungen abzielen, verknüpft werden. Infolgedessen kann der Monitoring-Agent 222 operative Metriken für jedes einzelne Speicher-Volume bestimmen, die anhand der eindeutigen Kennungen der Speicher-Volumes verfolgt werden.
  • Der Monitoring-Agent 222 kann die gesammelten Werte der Betriebskennzahlen 224 an die Workload Management Engine 220 des Speichersystems übertragen.
  • Die Speichersystem-Workload-Management-Engine 220 enthält eine Aggregationslogik für Betriebskennzahlen 230, die Werte einer Betriebskennzahl (die sich auf eine einzelne Betriebskennzahl oder mehrere Betriebskennzahlen beziehen kann) mehrerer Speichervolumes zu aggregierten Betriebskennzahl-Datengruppen aggregiert, die verschiedenen Workload-Typen von Workloads für den Zugriff auf Daten des Speichersystems 210 entsprechen. Die aggregierten Betriebsmetrik-Daten, die Teil der aggregierten Betriebsmetrik-Datengruppen sind, werden als Input für ein Modell 232 bereitgestellt, das auf einer ersten Skala (z. B. einer Systemebene des Speichersystems 210) trainiert wird, die sich von einer Skala für einen Workload-Typ unterscheidet. Ein Modell, das auf der Arbeitsbelastungstyp-Skala geschult wird, basiert auf Schulungsdaten, die zwischen Arbeitsbelastungstypen unterscheiden. Ein Modell, das auf der ersten Skala trainiert wird, berücksichtigt keine Trainingsdaten, die auf unterschiedlichen Arbeitsbelastungstypen basieren.
  • Auf der Grundlage der eingegebenen aggregierten operationellen Metrik-Datengruppen berechnet das Modell 232 eine operationelle Metrik für jeden Arbeitsbelastungstyp der verschiedenen Arbeitsbelastungstypen. Die berechnete betriebliche Metrik bezieht sich auf eine Ressource (die sich auf eine einzelne Ressource oder mehrere Ressourcen beziehen kann) des Speichersystems 210. Die Ressource kann beispielsweise eine Verarbeitungsressource, eine Speicherressource und/oder eine Kommunikationsressource als Beispiele enthalten. Die berechnete operationelle Metrik für jeden Arbeitslasttyp der verschiedenen Arbeitslasttypen wird einer Ressourcenverwaltungslogik 234 zur Verfügung gestellt, die die Ressourcenverwaltung einer Ressource des Speichersystems 210 durchführen kann. Die verwaltete Ressource kann eine Verarbeitungsressource, eine Speicherressource und/oder eine Kommunikationsressource als Beispiele enthalten.
  • Jede der betrieblichen metrischen Aggregationslogik 230 oder der Ressourcenverwaltungslogik 234 kann unter Verwendung eines Teils des Hardware-Verarbeitungsschaltkreises der Speichersystem-Workload-Management-Engine 220 implementiert werden oder alternativ dazu maschinenlesbare Anweisungen enthalten, die vom Hardware-Verarbeitungsschaltkreis der Speichersystem-Workload-Management-Engine 220 ausgeführt werden können.
  • In anderen Beispielen können die operative metrische Aggregationslogik 230 und/oder die Ressourcenverwaltungslogik 234 von der Speichersystem-Workload-Management-Engine 220 getrennt werden.
  • Das Modell 232 kann in einem persistenten Speicher (nicht abgebildet) gespeichert werden, der Teil der Workload-Management-Engine 220 des Speichersystems oder Teil des Speichersystems 210 sein kann. Das Modell 232 kann von der Speichersystem-Workload-Management-Engine 220 anhand von Trainingsdaten trainiert werden, oder alternativ kann ein Modell 232 von einem separaten System trainiert werden und nach dem Training wird das Modell 232 der Speichersystem-Workload-Management-Engine 220 zur Verfügung gestellt.
  • Die vom Modell 232 erzeugten berechneten Betriebskennzahlen können zusätzlich oder alternativ in Berichten 236 (oder anderen Informationen) bereitgestellt werden, die über das Netzwerk 218 an eine Benutzerkonsole 238 übertragen werden. Eine Benutzerkonsole kann sich auf ein elektronisches Gerät beziehen, z.B. einen Desktop-Computer, ein Notebook, einen Tablet-Computer, ein Smartphone usw. Die Benutzerkonsole 238 kann eine Benutzerschnittstelle (UI) 240 anzeigen, die einem Benutzer der Benutzerkonsole 238 Informationen eines Berichts von der Workload-Management-Engine 220 des Speichersystems präsentieren kann. Obwohl ein Beispiel zeigt, in dem die Speichersystem-Workload-Management-Engine 220 Berichte 236 an eine Benutzerkonsole 238 sendet, kann die Speichersystem-Workload-Management-Engine 220 in anderen Beispielen Berichte 236 an mehrere Benutzerkonsolen senden.
  • ist ein Plot 300, der die Prozessorauslastung (vertikale Achse des Plots) mit der Zeit (horizontale Achse des Plots 300) korreliert. Die in gezeigte Prozessorauslastung ist ein Beispiel für eine Betriebsmetrik, die anhand des Modells 232 von berechnet wird. Das Diagramm 300 kann in der Ul 240 der Benutzerkonsole 238 in angezeigt oder der Ressourcenverwaltungslogik 234 in zur Verfügung gestellt werden.
  • Im Beispiel von wird angenommen, dass eine erste Gruppe von aggregierten Betriebskennzahldaten durch die Aggregation von Betriebskennzahldaten für eine erste Sammlung von Speichervolumina erstellt wird, die komprimierte Daten speichert, und eine zweite Gruppe von aggregierten Betriebskennzahldaten durch die Aggregation von Betriebskennzahldaten für eine zweite Sammlung von Speichervolumina erstellt wird, die unkomprimierte Daten speichert. In der stellt ein erster Diagrammteil 302 die Prozessorauslastung für die erste Sammlung von Speichervolumes dar, die komprimierte Daten speichert, und ein zweiter Diagrammteil 304 die Prozessorauslastung für die zweite Sammlung von Speichervolumes, die unkomprimierte Daten speichert.
  • Wie in der Beispielgrafik 300 zu beobachten ist, sind die Spitzen 306 (des ersten Diagrammteils 302) in der Prozessorauslastung auf den Datenzugriff der ersten Sammlung von Speichervolumen zurückzuführen, die komprimierte Daten speichern. Beachten Sie, dass die Spitzen 308 (des zweiten Diagrammteils 304) bei der Prozessorauslastung für die zweite Sammlung von Speichervolumen, die unkomprimierte Daten speichern, im Allgemeinen der Form der Spitzen 306 des ersten Diagrammteils 302 folgen, so dass leicht festgestellt werden kann, dass die Spitzen 308 des zweiten Diagrammteils 304 auf die Spitzen 306 des ersten Diagrammteils 302 zurückzuführen sind.
  • So können Maßnahmen ergriffen werden, um ein Problem im Zusammenhang mit Speicher-Volumes, die komprimierte Daten speichern, zu lösen, z. B. durch Drosselung der Nutzung von Prozessoren 210 auf Speicher-Volumes, die komprimierte Daten speichern, oder durch Erhöhung der QoS-Einstellung für Speicher-Volumes, die komprimierte Daten speichern.
  • ist ein Diagramm 400, das ein anderes Beispiel zeigt, das die Prozessorauslastung mit der Zeit in Beziehung setzt. Das Diagramm 400 kann von der Speichersystem-Workload-Management-Engine 220 aus erzeugt und in der Ul 240 der Benutzerkonsole 238 aus angezeigt oder der Ressourcen-Management-Logik 234 aus zur Verfügung gestellt werden.
  • Die verschiedenen Diagrammteile 402, 404 und 406 des Diagramms 400 stellen Prozessorauslastungen von jeweils unterschiedlichen Sammlungen von Speichervolumen dar, auf die von verschiedenen Anforderern zugegriffen wird. Zum Beispiel stellt ein erster Diagrammteil 402 die Prozessorauslastung durch einen ersten Anforderer einer ersten Sammlung von Speichervolumen dar, ein zweiter Diagrammteil 404 die Prozessorauslastung durch einen zweiten Anforderer einer zweiten Sammlung von Speichervolumen und ein dritter Diagrammteil 406 die Prozessorauslastung durch einen dritten Anforderer einer dritten Sammlung von Speichervolumen.
  • Wie man anhand eines Vergleichs des ersten Diagrammteils 402 und des zweiten Diagrammteils 404 erkennen kann, ist die Prozessorauslastung aufgrund der Arbeitsbelastung durch den ersten Antragsteller relativ stabil, wobei kleine Abweichungen durch die Kurve 407 dargestellt werden. Der zweite Diagrammteil 402 enthält jedoch die Teile 408 und 410, die auf einen großen Anstieg der Prozessorauslastung aufgrund der Arbeitsbelastungen durch den zweiten Antragsteller hinweisen. So kann leicht festgestellt werden, dass die Arbeitslasten des zweiten Anforderers einen relativ starken Anstieg der Prozessorauslastung im Speichersystem bewirken.
  • Beispiele für Maßnahmen, die ergriffen werden können, sind die Drosselung der Nutzung von Prozessor 210 für Speichervolumen, auf die der zweite Anforderer zugreift, oder die Erhöhung einer QoS-Einstellung für Speichervolumen, auf die der zweite Anforderer zugreift.
  • Ein Plot ähnlich dem Plot 300 oder dem Plot 400 kann bereitgestellt werden, um die Prozessorauslastung mit der Zeit für mehrere Sammlungen von Speichervolumina zu korrelieren, die unter Verwendung von Workload-Fingerabdrücken geclustert wurden.
  • Ein „Workload-Fingerprint“ kann sich auf eine beliebige Darstellung eines Workload-Typs beziehen und wird auf der Grundlage einer Stichprobe operativer Metriken, die an einem bestimmten Punkt (z. B. Zeitpunkt, räumlicher Punkt usw.) in Verbindung mit dem Zugriff auf Daten eines Speichervolumens gesammelt wurden, zugewiesen. Basierend auf den Sammlungen von Workload-Fingerabdrücken, die den jeweiligen Speicherdatenträgern zugeordnet sind, gruppiert die Workload Management Engine 220 des Speichersystems die Speicherdatenträger in Cluster von Speicherdatenträgern. Beispielsweise werden ein erstes und ein zweites Speichervolumen auf der Grundlage einer ersten Sammlung von Workload-Fingerabdrücken, die dem ersten Speichervolumen zugeordnet sind, und einer zweiten Sammlung von Workload-Fingerabdrücken, die dem zweiten Speichervolumen zugeordnet sind, in einem bestimmten Cluster gruppiert. Bei der Gruppierung von Speichervolumes in Cluster können verschiedene Clustering-Techniken verwendet werden.
  • zeigt ein Diagramm 500, das von der Workload-Management-Engine 220 des Speichersystems erzeugt werden kann. In der Beispielgrafik 500 repräsentiert die horizontale Achse die Zeit und die vertikale Achse verschiedene Speichervolumina (Speichervolumina A, B, C und D in ). Jedem Speichervolumen werden entsprechende Workload-Fingerprints auf der Grundlage einer Sammlung von Betriebskennzahlen zugewiesen, die zu entsprechenden Zeitpunkten entlang der Zeitachse gesammelt wurden.
  • Gemäss bildet jede Zeile von Workload-Fingerprints einen Vektor von Workload-Fingerprints zu mehreren Zeitpunkten t1 bis t20. Jeder Workload-Fingerprint hat die Form eines numerischen Wertes, der in einer Zelle (einem rechteckigen Block) des Plots 500 enthalten ist. Zum Beispiel kann es eine bestimmte Anzahl (z.B. 8 oder eine andere Anzahl) von Workload-Fingerabdrücken geben, und ein Workload-Fingerabdruck kann aus der Anzahl der Workload-Fingerabdrücke ausgewählt werden, um sie zu einem bestimmten Zeitpunkt einem Speichervolumen zuzuordnen. Der ausgewählte Workload-Fingerprint basiert auf den Werten einer Sammlung von Betriebskennzahlen zum gegebenen Zeitpunkt.
  • Da sich die operativen Metriken im Laufe der Zeit in ihren Werten ändern, kann sich die einem Speichervolumen zugewiesene Arbeitslast Fingerabdrücke entsprechend ändern. Beispielsweise enthält der Vektor der Workload-Fingerabdrücke für Speichervolumen A eine Folge von „1“- und „0“-Werten. In ähnlicher Weise enthält der Vektor der Workload-Fingerabdrücke für Speichervolumen B eine Folge von „1“- und „0“-Werten. Für jedes der Speichervolumen C und D enthält der jeweilige Vektor der Fingerabdrücke der Arbeitsbelastung eine Sequenz von „7“-, „6“- und „5“-Werten.
  • In einigen Beispielen können die Fingerabdrücke des Arbeitsaufkommens mit Hilfe eines unbeaufsichtigten maschinellen Lernverfahrens erstellt werden, das über betriebliche Metriken durchgeführt wird, die aus Speichersystemen gesammelt werden, die an verschiedenen Standorten eingesetzt werden. Alternativ können die Workload-Fingerprints vorab zugewiesen werden, z. B. von einem Benutzer oder einer anderen Einheit.
  • Das Gesamtzeitintervall, über das der Vektor der Arbeitslast-Fingerabdrücke für jedes Speichervolumen gesammelt wird, kann von einer Entität, wie z. B. einem Benutzer, einem Rechner oder einem Programm, festgelegt werden. Das Gesamtzeitintervall kann z. B. 24 Stunden oder ein anderes Gesamtzeitintervall betragen.
  • Speichervolumina können als einander ähnlich betrachtet werden, wenn die ihnen zugewiesenen Vektoren der Arbeitsbelastung Fingerabdrücke eine gewisse spezifizierte Ähnlichkeit zueinander aufweisen. In einigen Beispielen kann die Workload-Management-Engine 220 des Speichersystems ein unbeaufsichtigtes maschinelles Lernverfahren verwenden, um die Speicher-Volumes auf der Grundlage ihrer jeweiligen Vektoren von Workload-Fingerabdrücken zu clustern. Beispielsweise kann eine auf Dichte basierende räumliche Clustering-Technik von Anwendungen mit Rauschen (DBSCAN) für das Clustering der Speicher-Volumes auf der Grundlage der jeweiligen Vektoren von Workload-Fingerabdrücken verwendet werden. Ausgehend von einer Menge von Punkten in einem Raum (der in diesem Fall Vektoren von Workload-Fingerabdrücken umfasst), gruppiert die DBSCAN-Technik die Workload-Fingerabdruck-Vektoren, die eng aneinander gepackt sind.
  • In anderen Beispielen können andere Clustering-Techniken eingesetzt werden, wie z.B. eine Affinitätsausbreitungs-Clustering-Technik oder eine andere Clustering-Technik.
  • Im Beispiel von würde die Ähnlichkeit der Workload-Fingerabdruck-Vektoren für die Speichervolumes A und B dazu führen, dass die Clustering-Technik die Speichervolumes A und B in einem ersten Cluster gruppiert, und die Ähnlichkeit der Workload-Fingerabdruck-Vektoren für die Speichervolumes C und D würde dazu führen, dass die Clustering-Technik die Speichervolumes C und D in einem zweiten Cluster gruppiert.
  • Jede Gruppe von Speicherdatenträgern, die mit der Workload-Fingerprint-Technik identifiziert wurde, kann als eine Sammlung von Speicherdatenträgern betrachtet werden, die dem jeweiligen Workload-Typ entspricht.
  • ist ein Blockdiagramm eines nicht-transitorischen maschinenlesbaren oder computerlesbaren Speichermediums 600, das maschinenlesbare Befehle speichert, die bei ihrer Ausführung ein Computersystem veranlassen, verschiedene Aufgaben auszuführen.
  • Die maschinenlesbaren Anweisungen umfassen die Aggregationsanweisungen 602 für metrische Betriebsdaten, um metrische Betriebsdaten mehrerer Speichervolumes zu aggregierten metrischen Betriebsdatengruppen zusammenzufassen, die verschiedenen Workload-Typen von Workloads für den Zugriff auf Daten eines Speichersystems entsprechen.
  • Die maschinenlesbaren Anweisungen enthalten ferner die Anweisung 604 zur Berechnung der Betriebsmetrik, um eine Betriebsmetrik für einen jeweiligen Auslastungstyp der verschiedenen Auslastungstypen zu berechnen, wobei sich die Betriebsmetrik auf eine Ressource des Speichersystems bezieht. Die Berechnung der Betriebsmetrik für den jeweiligen Workload-Typ umfasst die Eingabe aggregierter Betriebsmetrik-Daten einer jeweiligen aggregierten Betriebsmetrik-Datengruppe in ein Modell 606, das auf der Systemebene des Speichersystems trainiert wurde. Das Modell wird auf einer Speichersystem-Skala trainiert, die sich von einer Workload-Typ-Skala unterscheidet, wobei das auf der Speichersystem-Skala trainierte Modell Trainingsdaten verwendet, die nicht zwischen verschiedenen Workload-Typen unterscheiden.
  • In einigen Beispielen kann das Modell 606 ein Regressionsmodell oder eine andere Art von Modell enthalten.
  • Die berechnete operative Metrik bezieht sich auf eine beliebige oder eine Kombination aus einer Verarbeitungsressource des Speichersystems, einer Speicherressource des Speichersystems oder einer Kommunikationsressource des Speichersystems.
  • In einigen Beispielen können die maschinenlesbaren Anweisungen in einer Benutzeroberfläche (wie z. B. die Ul 240 in ) eine Darstellung der berechneten Betriebskennzahlen (z. B. in Form der Darstellung 300 oder 400 in oder ) einschließlich der berechneten Betriebskennzahl für den ersten Arbeitsbelastungstyp darstellen.
  • ist ein Blockdiagramm eines Computersystems 700, das als Computer oder als eine Sammlung von Computern implementiert werden kann. Das Computersystem 700 umfasst einen Hardware-Prozessor 702 (oder mehrere Hardware-Prozessoren). Ein Hardware-Prozessor kann einen Mikroprozessor, einen Kern eines Mehrkernmikroprozessors, einen Mikrocontroller, eine programmierbare integrierte Schaltung, ein programmierbares Gate-Array, einen digitalen Signalprozessor oder eine andere Hardware-Verarbeitungsschaltung enthalten.
  • Das Computersystem 700 enthält außerdem ein Speichermedium 704, das maschinenlesbare Anweisungen speichert, die auf dem Hardware-Prozessor 702 ausgeführt werden können, um verschiedene Aufgaben auszuführen. Maschinenlesbare Anweisungen, die auf einem Hardware-Prozessor ausführbar sind, können sich auf die Anweisungen beziehen, die auf einem einzelnen Hardware-Prozessor ausführbar sind, oder auf die Anweisungen, die auf mehreren Hardware-Prozessoren ausführbar sind.
  • Zu den maschinenlesbaren Anweisungen gehören die Aggregationsanweisungen 706 zur Aggregation operationeller metrischer Daten mehrerer Speichervolumes zu aggregierten operationellen metrischen Datengruppen, die verschiedenen Workload-Typen von Workloads für den Zugriff auf Daten eines Speichersystems entsprechen.
  • Die maschinenlesbaren Anweisungen enthalten ferner die aggregierte Eingabeinstruktion 708 für das operationelle metrische Modell, um die aggregierten operationellen metrischen Datengruppen in ein Modell einzugeben, das auf einer ersten Skala trainiert wurde, die sich von einer Skala vom Typ Arbeitsbelastungstyp unterscheidet.
  • Die maschinenlesbaren Anweisungen enthalten ferner Anweisungen zur Berechnung der Betriebsmetrik 710, um auf der Grundlage der Eingabe der aggregierten Gruppen von Betriebsmetriedaten in das Modell eine Betriebsmetrik für jeden Workload-Typ der verschiedenen Workload-Typen zu berechnen, wobei sich die Betriebsmetrik auf eine Ressource des Speichersystems bezieht.
  • Ein Speichermedium (z.B, 600 in 6 oder 704 in 7) kann eine beliebige oder eine Kombination der folgenden Elemente enthalten: eine Halbleiterspeichervorrichtung, wie z.B. einen dynamischen oder statischen Speicher mit wahlfreiem Zugriff (DRAM oder SRAM), einen löschbaren und programmierbaren Festwertspeicher (EPROM), einen elektrisch löschbaren und programmierbaren Festwertspeicher (EEPROM) und einen Flash-Speicher; eine Magnetplatte, wie z.B. eine Fest-, Floppy- und Wechselplatte; ein anderes Magnetmedium einschließlich Band; ein optisches Medium, wie z.B. eine Compact Disc (CD) oder eine digitale Videoplatte (DVD); oder eine andere Art von Speichervorrichtung. Beachten Sie, dass die oben erörterten Anweisungen auf einem computerlesbaren oder maschinenlesbaren Speichermedium oder alternativ auf mehreren computerlesbaren oder maschinenlesbaren Speichermedien bereitgestellt werden können, die in einem großen System mit möglicherweise mehreren Knoten verteilt sind. Ein solches computerlesbares oder maschinenlesbares Speichermedium bzw. solche Speichermedien wird (werden) als Teil eines Artikels (oder Herstellungsartikels) betrachtet. Ein Artikel oder Fertigungsgegenstand kann sich auf jede hergestellte Einzelkomponente oder mehrere Komponenten beziehen. Das Speichermedium bzw. die Speichermedien können sich entweder in der Maschine befinden, auf der die maschinenlesbaren Anweisungen ausgeführt werden, oder an einem entfernten Standort, von dem maschinenlesbare Anweisungen zur Ausführung über ein Netzwerk heruntergeladen werden können.
  • In der vorstehenden Beschreibung werden zahlreiche Einzelheiten dargelegt, um ein Verständnis des hier offengelegten Themas zu ermöglichen. Implementierungen können jedoch auch ohne einige dieser Details praktiziert werden. Andere Implementierungen können Modifikationen und Abweichungen von den oben besprochenen Details enthalten. Es ist beabsichtigt, dass die beigefügten Ansprüche solche Modifikationen und Abweichungen abdecken.

Claims (20)

  1. Ein nicht vorübergehendes maschinenlesbares Speichermedium mit Befehlen, die bei der Ausführung mindestens einen Prozessor dazu veranlassen: Aggregieren von metrischen Betriebsdaten mehrerer Speichervolumina zu aggregierten metrischen Betriebsdatengruppen, die verschiedenen Workload-Typen von Workloads für den Zugriff auf Daten eines Speichersystems entsprechen; und eine Betriebsmetrik für einen ersten Arbeitslasttyp der verschiedenen Arbeitslasttypen zu berechnen, wobei sich die Betriebsmetrik auf eine Ressource des Speichersystems bezieht, wobei die Berechnung der Betriebsmetrik für den ersten Arbeitslasttyp die Eingabe aggregierter Betriebsmetrikdaten einer ersten aggregierten Betriebsmetrikdatengruppe der aggregierten Betriebsmetrikdatengruppen in ein Modell umfasst, das auf einer Systemebene des Speichersystems trainiert wird.
  2. Das nicht vorübergehende maschinenlesbare Speichermedium von Anspruch 1, wobei das Modell auf einer Speichersystem-Skala trainiert wird, die sich von einer Skala für die Arbeitsbelastungstypen unterscheidet.
  3. Das nicht vorübergehende maschinenlesbare Speichermedium von Anspruch 2, wobei das im Maßstab des Speichersystems trainierte Modell Trainingsdaten verwendet, die nicht zwischen verschiedenen Arbeitsbelastungsarten unterscheiden.
  4. Das nicht-übergangsweise maschinenlesbare Speichermedium von Anspruch 1, wobei die Instruktionen bei der Ausführung mindestens einen Prozessor dazu veranlassen: die operationelle Metrik für einen zweiten Auslastungstyp der verschiedenen Auslastungstypen berechnen, indem aggregierte operationelle Metrikdaten einer zweiten aggregierten operationellen Metrikdatengruppe der aggregierten operationellen Metrikdatengruppen in das Modell eingegeben werden.
  5. Das nicht-übergangsweise maschinenlesbare Speichermedium von Anspruch 1, wobei sich die berechnete Betriebsmetrik auf mindestens eine der folgenden Ressourcen bezieht: eine Verarbeitungsressource des Speichersystems, eine Speicherressource des Speichersystems oder eine Kommunikationsressource des Speichersystems.
  6. Nicht vorübergehendes maschinenlesbares Speichermedium nach Anspruch 1, wobei die aggregierten operationellen metrischen Datengruppen eine erste Gruppe von aggregierten operationellen metrischen Daten für eine erste Sammlung von Speichervolumen, auf die ein erster Anforderer zugreift, und eine zweite Gruppe von aggregierten operationellen metrischen Daten für eine zweite Sammlung von Speichervolumen, auf die ein zweiter Anforderer zugreift, umfassen.
  7. Nicht vorübergehendes maschinenlesbares Speichermedium nach Anspruch 1, wobei die aggregierten operationellen metrischen Datengruppen eine erste Gruppe von aggregierten operationellen metrischen Daten für eine erste Sammlung von Speichervolumen, die komprimierte Daten speichern, und eine zweite Gruppe von aggregierten operationellen metrischen Daten für eine zweite Sammlung von Speichervolumen, die unkomprimierte Daten speichern, umfassen.
  8. Nicht vorübergehendes maschinenlesbares Speichermedium nach Anspruch 1, wobei die aggregierten operationellen metrischen Datengruppen eine erste Gruppe von aggregierten operationellen metrischen Daten für eine erste Sammlung von Speichervolumina, die auf der Grundlage von Arbeitsbelastungs-Fingerabdrücken gruppiert sind, die Speichervolumina über eine Vielzahl von Punkten zugeordnet sind, und eine zweite Gruppe von aggregierten operationellen metrischen Daten für eine zweite Sammlung von Speichervolumina umfassen, die auf der Grundlage der Arbeitsbelastungs-Fingerabdrücke gruppiert sind, die Speichervolumina über eine Vielzahl von Punkten zugeordnet sind.
  9. Das nicht vorübergehende maschinenlesbare Speichermedium nach Anspruch 8, bei dem ein Arbeitsbelastungs-Fingerabdruck einem Speichervolumen zugewiesen wird, basierend auf operativen Metriken, die mit dem Zugriff auf die Daten im Speichervolumen verbunden sind.
  10. Das nicht-übergangsweise maschinenlesbare Speichermedium von Anspruch 1, wobei die Instruktionen bei der Ausführung mindestens einen Prozessor dazu veranlassen: die Ressourcennutzung der Ressource des Speichersystems für den ersten Arbeitslasttyp auf der Grundlage der berechneten Betriebsmetrik zu verwalten.
  11. Das nicht vorübergehende maschinenlesbare Speichermedium von Anspruch 10, wobei die Verwaltung der Ressourcennutzung für eine erste Sammlung von Speichervolumina entsprechend dem ersten Arbeitsbelastungstyp durchgeführt wird.
  12. Das nicht-übergangsweise maschinenlesbare Speichermedium von Anspruch 1, wobei die Instruktionen bei der Ausführung mindestens einen Prozessor dazu veranlassen: in einer Benutzerschnittstelle eine Darstellung der berechneten Betriebskennzahlen einschließlich der berechneten Betriebskennzahl für den ersten Arbeitsbelastungstyp präsentieren.
  13. Ein Computersystem, bestehend aus: einen Prozessor; und ein nicht vorübergehendes Speichermedium, auf dem Anweisungen gespeichert werden, die auf dem Prozessor ausführbar sind: Aggregieren von Betriebsmetrikdaten mehrerer Speichervolumes zu aggregierten Betriebsmetrikdatengruppen, die verschiedenen Workload-Typen von Workloads für den Zugriff auf Daten eines Speichersystems entsprechen; Eingabe der aggregierten operationellen metrischen Datengruppen in ein Modell, das auf einer ersten Skala trainiert wurde, die sich von einer Skala vom Typ Arbeitsbelastungstyp unterscheidet; und auf der Grundlage der Eingabe der aggregierten operationalen Metrik-Datengruppen in das Modell eine operationale Metrik für jeden Workload-Typ der verschiedenen Workload-Typen berechnen, wobei sich die operationale Metrik auf eine Ressource des Speichersystems bezieht.
  14. Das Rechensystem nach Anspruch 13, wobei das Modell ein Regressionsmodell umfasst.
  15. Das Computersystem nach Anspruch 13, wobei die Anweisungen auf dem Prozessor ausführbar sind, um: die Ressourcennutzung der Ressource des Speichersystems für einen ersten Workload-Typ der verschiedenen Workload-Typen auf der Grundlage der berechneten Betriebsmetrik für den ersten Workload-Typ zu verwalten.
  16. Das Datenverarbeitungssystem nach Anspruch 13, wobei die aggregierten operationellen metrischen Datengruppen eine erste Gruppe von aggregierten operationellen metrischen Daten für eine erste Sammlung von Speichervolumen, auf die ein erster Anforderer zugreift, und eine zweite Gruppe von aggregierten operationellen metrischen Daten für eine zweite Sammlung von Speichervolumen, auf die ein zweiter Anforderer zugreift, umfassen.
  17. Das Computersystem nach Anspruch 13, wobei die aggregierten operationellen metrischen Datengruppen eine erste Gruppe aggregierter operationeller metrischer Daten für eine erste Sammlung von Speichervolumina, die komprimierte Daten speichern, und eine zweite Gruppe aggregierter operationeller metrischer Daten für eine zweite Sammlung von Speichervolumina, die unkomprimierte Daten speichern, umfassen.
  18. Das Datenverarbeitungssystem nach Anspruch 13, wobei die aggregierten metrischen Betriebsdatengruppen eine erste Gruppe aggregierter metrischer Betriebsdaten für eine erste Sammlung von Speichervolumina umfassen, die auf der Grundlage von Arbeitsbelastungs-Fingerabdrücken gruppiert sind, die den Speichervolumina über eine Vielzahl von Punkten zugeordnet sind, und eine zweite Gruppe aggregierter metrischer Betriebsdaten für eine zweite Sammlung von Speichervolumina, die auf der Grundlage der Arbeitsbelastungs-Fingerabdrücke gruppiert sind, die den Speichervolumina über die Vielzahl von Punkten zugeordnet sind.
  19. Verfahren, das von einem System ausgeführt wird, das einen Hardware-Prozessor umfasst, umfassend: Training eines Modells unter Verwendung von Trainingsdaten, die operative metrische Daten von Arbeitsbelastungen umfassen, die von einer Vielzahl von Anforderern initiiert wurden, wobei die Arbeitsbelastungen den Datenzugriff eines Speichersystems umfassen und die Trainingsdaten nicht zwischen verschiedenen Arbeitsbelastungsarten unterscheiden; operationale metrische Daten mehrerer Speichervolumina zu aggregierten operationalen metrischen Datengruppen aggregieren, die verschiedenen Workload-Typen von Workloads entsprechen; Eingabe der aggregierten operationellen metrischen Datengruppen in das Modell; durch das Modell eine betriebliche Metrik für jeden Auslastungstyp der verschiedenen Auslastungstypen zu erzeugen, wobei sich die betriebliche Metrik auf eine Ressource des Speichersystems bezieht; und Verwaltung der Ressourcennutzung der Ressource des Speichersystems für einen Arbeitslasttyp auf der Grundlage der berechneten Betriebsmetrik für die verschiedenen Arbeitslasttypen.
  20. Die Methode von Anspruch 19, wobei eine erste aggregierte operationelle metrische Datengruppe für eine erste Sammlung von Bänden einem ersten Arbeitsbelastungstyp der verschiedenen Arbeitsbelastungsarten von Arbeitsbelastungen entspricht, und eine zweite aggregierte operationelle metrische Datengruppe für eine zweite Sammlung von Bänden einem zweiten Arbeitsbelastungstyp der verschiedenen Arbeitsbelastungsarten von Arbeitsbelastungen entspricht.
DE102020112531.3A 2019-06-17 2020-05-08 Operationelle metrische Berechnung für Arbeitsbelastungstyp Pending DE102020112531A1 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
IN201941024014 2019-06-17
IN201941024014 2019-06-17

Publications (1)

Publication Number Publication Date
DE102020112531A1 true DE102020112531A1 (de) 2020-12-17

Family

ID=73546942

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102020112531.3A Pending DE102020112531A1 (de) 2019-06-17 2020-05-08 Operationelle metrische Berechnung für Arbeitsbelastungstyp

Country Status (3)

Country Link
US (2) US11249659B2 (de)
CN (1) CN112099939B (de)
DE (1) DE102020112531A1 (de)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11126360B2 (en) * 2019-10-22 2021-09-21 International Business Machines Corporation Dynamically adjusting block mode pool sizes
US11915153B2 (en) * 2020-05-04 2024-02-27 Dell Products, L.P. Workload-oriented prediction of response times of storage systems
CN114064262A (zh) * 2020-08-07 2022-02-18 伊姆西Ip控股有限责任公司 管理存储系统中的计算资源的方法、设备和程序产品
US20240028225A1 (en) * 2022-07-20 2024-01-25 Dell Products L.P. Data storage system with self tuning based on cluster analysis of workload features
US11934678B2 (en) * 2022-07-22 2024-03-19 Hewlett Packard Enterprise Development Lp Data reduction for storage volumes
CN117909199B (zh) * 2024-03-19 2024-06-11 山东云海国创云计算装备产业创新中心有限公司 性能测定方法、装置、设备,负载均衡方法,系统及介质

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8856335B1 (en) * 2011-01-28 2014-10-07 Netapp, Inc. Managing service level objectives for storage workloads
US8578023B2 (en) * 2011-07-29 2013-11-05 Hewlett-Packard Development Company, L.P. Computer resource utilization modeling for multiple workloads
US9703664B1 (en) * 2015-06-24 2017-07-11 EMC IP Holding Company LLC Self adaptive workload classification and forecasting in multi-tiered storage system using ARIMA time series modeling
US9823875B2 (en) 2015-08-31 2017-11-21 LinkedIn Coporation Transparent hybrid data storage
US10509685B2 (en) 2015-12-14 2019-12-17 VCE IP Holding Company, LLC Methods, systems, and computer readable mediums for workload clustering
US10048896B2 (en) * 2016-03-16 2018-08-14 Netapp, Inc. Methods and systems for determining performance capacity of a resource of a networked storage environment
US10200461B2 (en) * 2016-04-07 2019-02-05 Virtustream Ip Holding Company Llc Virtualized capacity management
US10827025B2 (en) 2017-10-18 2020-11-03 Hewlett Packard Enterprise Development Lp Allocations of arbitrary workloads among hyperconverged nodes

Also Published As

Publication number Publication date
CN112099939B (zh) 2022-09-27
CN112099939A (zh) 2020-12-18
US11249659B2 (en) 2022-02-15
US11704022B2 (en) 2023-07-18
US20200393981A1 (en) 2020-12-17
US20220155979A1 (en) 2022-05-19

Similar Documents

Publication Publication Date Title
DE102020112531A1 (de) Operationelle metrische Berechnung für Arbeitsbelastungstyp
DE112012004336B4 (de) System, Verfahren und Programmprodukt für kostenbewusste Auswahl von Vorlagen zum Bereitstellen von gemeinsam genutzten Ressourcen
DE102016221811A1 (de) Zuordnung von Ressourcen mit mehrschichtigem Speicher
DE112019002948T5 (de) Feststellen einer optimalen speicherumgebung für datensätze und für das migrieren von datensätzen
DE102010001339A1 (de) Verwalten von Anforderungen von Betriebssystemen, die in virtuellen Maschinen ablaufen
DE112013006646B4 (de) Computer, System und computerlesbares Ablagemedium zum Identifizieren von Arbeitslast und Dimensionierung von Puffern zum Zweck der Volumenreplikation
DE112020004661T5 (de) Ermitteln einer optimalen Anzahl von Threads pro Kern in einem Mehrkern-Prozessorkomplex
DE112018002500T5 (de) Speicherarray für Hybriddaten
DE112020005323T5 (de) Elastische ausführung von machine-learning-arbeitslasten unter verwendung einer anwendungsbasierten profilierung
DE112021003262T5 (de) Erkennen von quelldatensätzen, die zu einem transferlernverfahren für eine zieldomäne passen
DE112018001290T5 (de) Verfahren zum Schätzen der Löschbarkeit von Datenobjekten
DE112021003294T5 (de) Systemverwaltung auf grundlage von leistung und leistungsfähigkeit
DE112019000421T5 (de) Arbeitslastverwaltung mit datenzugriffserkennung in einem datenverarbeitungscluster
DE112021005586T5 (de) Automatisches skalieren einer abfrage-steuerungsroutine für arbeitslasten im bereich big data auf unternehmensebene
DE112020005306T5 (de) Implementierung von arbeitslasten in einer multi-cloud-umgebung
DE112021000627T5 (de) Dynamische erkennung und korrektur von datenqualitätsproblemen
DE112021004473T5 (de) Lastausgleich auf speicherebene
DE102020112066B4 (de) Betriebsmetrik für gemeinsam genutzte ressourcen
DE112018004415B4 (de) Optimierung von cloud-ressourcen bei operationen in mehrstufigem speicher auf richtliniengrundlage
DE102021127522A1 (de) Verwaltung der arbeitsbelastung anhand eines trainierten modells
DE102013100054A1 (de) Verlagern von zusammengehörigen Ressourcenpartitionen
DE102021122508A1 (de) Ausgleichen von grossrechner- und verteilten arbeitslasten auf der grundlage von leistung und kosten
DE102020112341B4 (de) Verteilung von mengen eines erhöhten arbeitsanteils in buckets, die vorgänge darstellen
DE112020004487T5 (de) Erkennen von mutationsereignissen zum überwachen der integrität
DE112014002303T5 (de) Computersystem und Verfahren zum Steuern eines hierarchischen Speichers dafür

Legal Events

Date Code Title Description
R082 Change of representative

Representative=s name: PROCK, THOMAS, DR., GB

R081 Change of applicant/patentee

Owner name: HEWLETT PACKARD ENTERPRISE DEVELOPMENT LP, SPR, US

Free format text: FORMER OWNER: HEWLETT PACKARD ENTERPRISE DEVELOPMENT LP, HOUSTON, TEX., US

R012 Request for examination validly filed