DE102022126866A1 - Bereitstellung von dateisystemen für die arbeitsbelastung - Google Patents

Bereitstellung von dateisystemen für die arbeitsbelastung Download PDF

Info

Publication number
DE102022126866A1
DE102022126866A1 DE102022126866.7A DE102022126866A DE102022126866A1 DE 102022126866 A1 DE102022126866 A1 DE 102022126866A1 DE 102022126866 A DE102022126866 A DE 102022126866A DE 102022126866 A1 DE102022126866 A1 DE 102022126866A1
Authority
DE
Germany
Prior art keywords
workload
file system
learning model
machine learning
collection
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
DE102022126866.7A
Other languages
English (en)
Inventor
Sagar Venkappa Nyamagouda
Smitha Jayaram
Hiro Rameshlal Lalwani
Rachit Gupta
Sherine Jacob
Anand Andaneppa Ganjihal
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 DE102022126866A1 publication Critical patent/DE102022126866A1/de
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/17Details of further file system functions
    • G06F16/172Caching, prefetching or hoarding of files
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/13File access structures, e.g. distributed indices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3409Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment
    • G06F11/3414Workload generation, e.g. scripts, playback
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/18File system types
    • G06F16/188Virtual file systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/044Recurrent networks, e.g. Hopfield networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Software Systems (AREA)
  • Computing Systems (AREA)
  • Evolutionary Computation (AREA)
  • Mathematical Physics (AREA)
  • Artificial Intelligence (AREA)
  • Databases & Information Systems (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Quality & Reliability (AREA)
  • Computer Hardware Design (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Medical Informatics (AREA)
  • Debugging And Monitoring (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

In einigen Beispielen empfängt ein System Workload-Informationen einer Workload-Sammlung und wendet ein maschinelles Lernmodell auf die Workload-Informationen an, wobei das maschinelle Lernmodell unter Verwendung von Trainingsinformationen trainiert wird, die Merkmale verschiedener Arten von Workloads enthalten. Das System erzeugt durch das maschinelle Lernmodell eine Identifikation eines ersten Dateisystems aus verschiedenen Typen von Dateisystemen, wobei das maschinelle Lernmodell einen Ausgabewert erzeugt, der dem ersten Dateisystem entspricht, das ein Kandidat für die Verwendung beim Speichern von Dateien der Arbeitslastsammlung ist.

Description

  • Hintergrund
  • Ein Dateisystem umfasst Datenstrukturen, die Daten in Form von Dateien und Verzeichnissen organisieren und speichern. Darüber hinaus enthält ein Dateisystem Schnittstellen- und Steuerungskomponenten, die das Speichern, Abrufen und andere Vorgänge mit den im Dateisystem gespeicherten Daten verwalten. Ein Anforderer (z. B. ein Benutzer, ein Programm oder eine Maschine) kann Anfragen stellen, um auf Dateien eines Dateisystems zuzugreifen, das auf einem Computer installiert ist.
  • Kurzbeschreibung der Zeichnungen
  • Einige Ausführungsformen der vorliegenden Offenbarung werden anhand der folgenden Abbildungen beschrieben.
    • ist ein Blockdiagramm einer Anordnung, die eine Dateisystemauswahl- und -bereitstellungsmaschine enthält, die gemäß einigen Beispielen selektiv mehrere verschiedene Arten von Dateisystemen für eine Arbeitslast bereitstellt.
    • ist ein Blockdiagramm eines Trainingssystems zum Trainieren eines maschinellen Lernmodells gemäß einiger Beispiele.
    • ist ein Blockdiagramm eines neuronalen Netzes gemäß einigen Beispielen.
    • ist ein Blockdiagramm eines Speichermediums, das maschinenlesbare Anweisungen gemäß einigen Beispielen speichert.
    • ist ein Blockdiagramm eines Systems gemäß einigen Beispielen.
    • ist ein Flussdiagramm eines Verfahrens gemäß einigen Beispielen.
  • In den Zeichnungen bezeichnen identische Referenznummern ähnliche, aber nicht unbedingt identische Elemente. Die Abbildungen sind nicht unbedingt maßstabsgetreu, und die Größe einiger Teile kann übertrieben sein, um das gezeigte Beispiel deutlicher zu machen. Darüber hinaus enthalten die Zeichnungen Beispiele und/oder Ausführungsformen, die mit der Beschreibung übereinstimmen; die Beschreibung ist jedoch nicht auf die in den Zeichnungen dargestellten Beispiele und/oder Ausführungsformen beschränkt.
  • Detaillierte Beschreibung
  • In der vorliegenden Offenlegung schließt die Verwendung des Begriffs „ein“, „ein“ oder „die“ auch die Pluralformen ein, sofern aus dem Kontext nicht eindeutig etwas anderes hervorgeht. Auch der Begriff „umfasst“, „einschließlich“, „umfasst“, „umfasst“, „haben“ oder „haben“, wenn er in dieser Offenlegung verwendet wird, spezifiziert das Vorhandensein der angegebenen Elemente, schließt aber das Vorhandensein oder die Zugabe anderer Elemente nicht aus.
  • Workloads, die auf Dateien zugreifen, können in verschiedenen Computerumgebungen ausgeführt werden. Beispielsweise können Arbeitslasten in einer Cloud-Umgebung, einer Web-Umgebung, einem Rechenzentrum in den Räumlichkeiten eines Unternehmens (z. B. eines Unternehmens, einer Regierungsbehörde, einer Bildungseinrichtung, einer Einzelperson usw.), einer Heimumgebung usw. ausgeführt werden. In weiteren Beispielen können Workloads auf einem einzelnen Computer, z. B. einem Benutzer-Computer, ausgeführt werden.
  • Eine „Datei“ kann sich auf eine Sammlung von Daten beziehen, die individuell identifizierbar ist, z. B. durch einen Dateinamen oder eine andere Kennung.
  • Arbeitslasten können mit verschiedenen Eingabe/Ausgabe-Merkmalen (E/A) verbunden sein. Beispiele für E/A-Merkmale sind eine beliebige oder eine Kombination der folgenden Merkmale: eine Lese-E/A-Größe (die sich auf die Größe der Daten, einschließlich Dateien, bezieht, auf die bei einem Lesevorgang zugegriffen wird), eine Schreib-E/A-Größe (die sich auf die Größe der Daten bezieht, auf die bei einem Schreibvorgang zugegriffen wird), ob eine Arbeitslast leseintensiv oder schreibintensiv ist (eine Arbeitslast ist leseintensiv, wenn es mehr Lesevorgänge als Schreibvorgänge in der Arbeitslast gibt, und eine Arbeitslast ist schreibintensiv, wenn es mehr Schreibvorgänge als Lesevorgänge in der Arbeitslast gibt), ein E/A-Muster und so weiter.
  • In einigen Beispielen kann ein Lese-/Schreibverhältnis verwendet werden, um anzuzeigen, ob eine Arbeitslast leseintensiv oder schreibintensiv ist. Das Lese-/Schreibverhältnis kann sich auf das Verhältnis zwischen der Menge der Lese-E/A-Zugriffe und der Menge der Schreib-E/A-Zugriffe beziehen. Wenn in einem solchen Beispiel das Lese-/Schreibverhältnis einer gegebenen Arbeitslast größer als 1 ist (oder allgemeiner, größer als ein Schwellenwert 1.x, wobei x > 0 ist), dann wird die gegebene Arbeitslast als leseintensiv betrachtet. Ist das Lese-/Schreibverhältnis eines bestimmten Workloads dagegen kleiner als 1 (oder allgemeiner gesagt, kleiner als ein Schwellenwert von 1,x, wobei x > 0 ist), so gilt der betreffende Workload als schreibintensiv. In anderen Beispielen kann sich das Lese-/Schreibverhältnis auf das Verhältnis zwischen der Menge der Schreib-E/A-Zugriffe und der Menge der Lese-E/A-Zugriffe beziehen.
  • Beispiele für verschiedene E/A-Muster können sein: ein sequentielles E/A-Muster (bei dem der Zugriff auf die Daten in einer Folge von aufeinanderfolgenden Adressen erfolgt), ein zufälliges E/A-Muster (bei dem der Zugriff auf die Daten an verschiedenen, nicht aufeinanderfolgenden Adressen erfolgt), ein paralleles E/A-Muster (bei dem der Datenzugriff parallel an mehreren verschiedenen Adressen erfolgt), ein Truncate-I/O-Muster (bei dem Daten, die auf ein Speichermedium geschrieben werden, von einer ursprünglichen Größe der Schreibdaten abgeschnitten werden (Daten werden abgeschnitten, wenn die Datenmenge reduziert wird), ein Write-Only-Muster (bei dem ein beliebiger Datenabschnitt einmal in ein Speichersystem geschrieben und später nicht überschrieben wird) und/oder andere I/O-Muster.
  • Ein Daten-„Zugriff“ kann sich entweder auf das Lesen von Daten oder auf das Schreiben von Daten beziehen.
  • Unterschiedliche E/A-Eigenschaften von Arbeitslasten können auch auf unterschiedliche Verhaltensweisen der Arbeitslasten zurückzuführen sein. Einige Arbeitslasten können datenintensiv sein, z. B. führen die Arbeitslasten eine relativ größere Menge an E/A-Zugriffen auf in einem Speichersystem gespeicherte Daten und eine relativ kleinere Menge an Datenkommunikation über ein Netzwerk durch. Andere Workloads können kommunikationsintensiv sein, z. B. führen die Workloads eine relativ größere Menge an Datenkommunikation über Netzwerke und eine relativ kleinere Menge an E/A-Zugriffen auf in einem Speichersystem gespeicherte Daten durch. Weitere Arbeitslasten können rechenintensiv sein, z. B. führen die Arbeitslasten eine relativ größere Menge von Berechnungen (z. B. Datensortierung, mathematische Berechnungen auf der Grundlage von Daten usw.) mit Daten durch, die aus einem Speichersystem gelesen oder in dieses geschrieben werden sollen.
  • Ein „Speichersystem“ kann sich auf eine Anordnung von einem oder mehreren Speichergeräten beziehen, wie z. B. plattenbasierte Speichergeräte, Solid-State-Laufwerke und so weiter.
  • Es gibt verschiedene Arten von Dateisystemen, um den Zugriff auf und die Speicherung von Daten in einem Speichersystem zu verwalten. Beispiele für verschiedene Arten von Dateisystemen sind Dateisysteme, die von verschiedenen Betriebssystemen (OS) bereitgestellt werden, wie das WINDOWS OS, das LINUX OS und so weiter. Weitere Beispiele für Dateisysteme sind das Tru64 UNIX Advanced File System (AdvFS), das SimpliVity-Dateisystem (SvtFS), das MapR-Dateisystem (MapR FS), ein logstrukturiertes Dateisystem (LFS), ein HPC-Dateisystem (High-Performance Computing) und so weiter.
  • Obwohl oben verschiedene Beispieldateisysteme aufgelistet sind, wird darauf hingewiesen, dass es in weiteren Beispielen zusätzliche oder alternative Dateisysteme geben kann.
  • Ein Dateisystem kann Dateien in einer hierarchischen Anordnung speichern, in der Dateien in Verzeichnissen gespeichert werden. Einige Verzeichnisse können Unterverzeichnisse von anderen Verzeichnissen sein. Der Speicherort einer Datei im Dateisystem kann durch einen Dateipfad angegeben werden, der den Dateinamen der Datei und eine Zeichenfolge aus einem oder mehreren Verzeichnisnamen enthält, die ein oder mehrere Verzeichnisse bezeichnen, die die Datei enthalten.
  • Je nach den E/A-Eigenschaften der Arbeitslasten können einige Arbeitslasten mit einem ersten Typ von Dateisystem besser abschneiden als mit einem anderen zweiten Typ von Dateisystem. Die Leistung einer Arbeitslast kann durch ein Leistungsmaß wie die Latenz dargestellt werden, wobei sich die Latenz auf eine Verzögerung zwischen dem Start oder der Anforderung einer Arbeitslast und dem Abschluss der Arbeitslast beziehen kann. Andere Leistungsmaße können eine beliebige oder eine Kombination der folgenden Größen sein: E/A-Rate (Rate des Datenzugriffs in einem Speichersystem), Ressourcennutzung durch eine Arbeitslast (z. B. Nutzung von Verarbeitungsressourcen, Nutzung von Kommunikationsressourcen, Nutzung von Speicherressourcen usw.) oder andere Leistungsmaße von Arbeitslasten, die auf Daten von Dateisystemen zugreifen.
  • In einigen Beispielen kann ein menschlicher Administrator manuell einen Typ von Dateisystem (aus mehreren verschiedenen Typen von Dateisystemen) auswählen, der für einen Ziel-Workload verwendet werden soll. Ein „Ziel-Workload“ kann sich auf einen Workload beziehen, der angefordert wurde oder der voraussichtlich gestartet wird. Wenn ein nicht optimales Dateisystem für den Ziel-Workload ausgewählt wird, kann der Ziel-Workload bei der Ausführung mit dem ausgewählten Dateisystem eine geringe Leistung aufweisen (z. B. hohe Latenz).
  • Gemäß einigen Implementierungen der vorliegenden Offenlegung wendet ein System Workload-Informationen eines Ziel-Workloads (z. B. eines Workloads, der voraussichtlich eingesetzt wird) auf ein maschinelles Lernmodell an, das unter Verwendung von Trainingsinformationen trainiert wurde, die Merkmale verschiedener Arten von Workloads enthalten. Das maschinelle Lernmodell erzeugt eine Identifikation eines Dateisystems zum Speichern von Dateien der Arbeitslast, basierend auf einer Auswahl des Modells aus verschiedenen Arten von Dateisystemen.
  • Die Identifizierung des Dateisystems wird bei der bedarfsgesteuerten Bereitstellung des Dateisystems für die Verwendung mit der Zielarbeitslast verwendet. Die bedarfsgesteuerte Bereitstellung eines Dateisystems kann sich auf die Bereitstellung des Dateisystems bei Eingang von Arbeitslasten beziehen, im Gegensatz zu Beispielen, bei denen ein Dateisystem im Voraus bereitgestellt und für die Verwendung mit einer Arbeitslast bestimmt wird, unabhängig davon, ob die Leistung der Arbeitslast durch die Verwendung des Dateisystems beeinträchtigt werden kann oder nicht.
  • ist ein Blockdiagramm einer Beispielanordnung, die eine Dateisystemauswahl- und -bereitstellungs-Engine 102 umfasst, die ein maschinelles Lernmodell 104 enthält, das Dateisysteminformationen 120 bereitstellt, um eine Identifizierung zu ermöglichen, welches Dateisystem von mehreren verschiedenen Arten von Dateisystemen für eine Zielarbeitslast zu verwenden ist. Das Dateisystemauswahl- und -bereitstellungssystem 102 kann eine bedarfsgerechte Bereitstellung von Dateisystemen für Arbeitslasten durchführen.
  • Wie hier verwendet, kann sich ein „Motor“ auf eine oder mehrere Hardware-Verarbeitungsschaltungen beziehen, die eine beliebige oder eine Kombination aus einem Mikroprozessor, einem Kern eines Multi-Core-Mikroprozessors, einem Mikrocontroller, einer programmierbaren integrierten Schaltung, einem programmierbaren Gate-Array oder einer anderen Hardware-Verarbeitungsschaltung umfassen können. Alternativ kann sich eine „Engine“ auf eine Kombination aus einer oder mehreren Hardware-Verarbeitungsschaltungen und maschinenlesbaren Anweisungen (Software und/oder Firmware) beziehen, die auf der einen oder den mehreren Hardware-Verarbeitungsschaltungen ausführbar sind.
  • Das Dateisystemauswahl- und -bereitstellungssystem 102 kann mit einem Computer oder mehreren Computern implementiert werden. Die Komponenten der Dateisystemauswahl- und -bereitstellungs-Engine 102 (z. B. 130, 108, 104, 112 und 110) können mit maschinenlesbaren Anweisungen implementiert werden, die von einem oder mehreren Hardware-Verarbeitungsschaltungen der Dateisystemauswahl- und -bereitstellungs-Engine 102 ausgeführt werden.
  • In einigen Beispielen kann die Dateisystemauswahl- und -bereitstellungs-Engine 102 in einer Unternehmens-Computerumgebung (einer Computerumgebung eines Unternehmens, z. B. eines Unternehmens, einer Regierungsbehörde, einer Bildungseinrichtung, einer Einzelperson usw.) eingesetzt werden.) eingesetzt werden, um auf intelligente Weise Dateisysteme auszuwählen, die für die jeweiligen Arbeitslasten zu verwenden sind.
  • In anderen Beispielen kann die Dateisystemauswahl- und -bereitstellungs-Engine 102 von einem Dienstanbieter „als Dienst (aaS)“ bereitgestellt werden, wobei die Dienste der Dateisystemauswahl- und -bereitstellungs-Engine 102 für den Zugriff von Benutzern (auch als „Kunden“ oder „Mieter“ bezeichnet) des aaS verfügbar sind, z. B. in der Cloud, im Internet usw.
  • Wenn ein Benutzer (der sich auf einen Menschen, ein Programm oder eine Maschine beziehen kann) ein Dateisystem für eine Ziel-Workload-Sammlung (die eine Ziel-Workload oder mehrere Ziel-Workloads enthalten kann) bereitstellen möchte, kann der Benutzer eine Anforderung (mit Informationen über die Ziel-Workload-Sammlung) an das Dateisystemauswahl- und -bereitstellungsmodul 102 senden, das ein Dateisystem für die Ziel-Workload-Sammlung auswählt und ein Dateisystem für die Ziel-Workload-Sammlung bereitstellt.
  • zeigt mehrere verschiedene Beispielsammlungen von Zielarbeitslasten 106-1 bis 106-N (N > 1). Beispiele für Ziel-Workloads in den Ziel-Workload-Sammlungen können eines der folgenden umfassen eine Videoaufzeichnungs- und Streaming-Workload, die Videobilder aufzeichnen und an Ausgabegeräte streamen kann; eine Workload für das Gesundheitswesen, die Datensätze für das Gesundheitswesen verwaltet; eine Workload für eine virtuelle Desktop-Infrastruktur (VDI), die virtuelle Desktops auf entfernten Geräten, wie beispielsweise Benutzergeräten, bereitstellt und verwaltet; eine Workload für das Bankwesen, die Datensätze für das Bankwesen verwaltet; einen Versicherungs-Workload, der Versicherungsdatensätze verwaltet; einen Workload für maschinelles Lernen oder künstliche Intelligenz (für Datenanalysen), der den Zugriff auf Daten im Zusammenhang mit maschinellem Lernen oder künstlicher Intelligenz verwaltet; einen Datenbank-Workload, der relationale Datenbankdatensätze verwaltet; einen E-Mail-Server-Workload, der E-Mails verwaltet; und/oder alle anderen Arten von Workloads.
  • Jeder unterschiedliche Typ von Arbeitslast kann auch als „Arbeitslastbereich“ bezeichnet werden. Beispielsweise kann eine erste Art von Arbeitslast eine Arbeitslast einer ersten Arbeitslast-Domäne sein, eine zweite Art von Arbeitslast kann eine Arbeitslast einer zweiten Arbeitslast-Domäne sein und so weiter.
  • Zunächst sind keine Informationen verfügbar, um die Art der in jeder Ziel-Workload-Sammlung vorhandenen Workload(s) zu identifizieren. Daher stehen zunächst keine Informationen zur Verfügung, um eine intelligente Auswahl zu treffen, welche von mehreren verschiedenen Arten von Dateisystemen für eine bestimmte Ziel-Workload-Sammlung verwendet werden sollte.
  • Im Beispiel von wird die Ziel-Workload-Sammlung 106-1 (z. B. von einem Benutzer-Computer) in die Dateisystemauswahl- und -bereitstellungs-Engine 102 eingegeben, um ein Dateisystem für die Ziel-Workload-Sammlung 106-1 auszuwählen und bereitzustellen. Andere Ziel-Workload-Sammlung(en) (einschließlich 106-N) können in ähnlicher Weise in die Dateisystemauswahl- und - bereitstellungsmaschine 102 eingegeben werden, um ein Dateisystem für die andere(n) Ziel-Workload-Sammlung(en) auszuwählen und bereitzustellen.
  • Die „Auswahl“ eines Dateisystems bezieht sich auf die Auswahl eines Dateisystems aus mehreren verschiedenen Arten von Dateisystemen, das für die Speicherung und Verwaltung von Daten (Dateien) einer Ziel-Workload-Sammlung verwendet werden soll. Die „Bereitstellung“ eines Dateisystems kann sich entweder auf (1) die Erstellung des Dateisystems in einem Computersystem (z. B. einem der Computersysteme 122-1 bis 122-N) beziehen, das für die Speicherung und Verwaltung von Daten des Arbeitsaufkommens verwendet werden soll, oder auf (2) die Identifizierung des zuvor erstellten Dateisystems, das für die Speicherung und Verwaltung von Daten des Arbeitsaufkommens verwendet werden soll. Ein Dateisystem kann mit verschiedenen Tools (z. B. Open-Source-Tools oder Tools, die von Anbietern von Dateisystemen, Betriebssystemen oder Computersystemen bereitgestellt werden) zum Erstellen von Dateisystemen erstellt werden. Ein solches Dateisystem-Erstellungstool kann Teil eines Dateisystem-Bereitstellungsprogramms 112 sein, das in die Dateisystem-Auswahl- und -Bereitstellungs-Engine 102 integriert sein kann oder von der Dateisystem-Auswahl- und -Bereitstellungs-Engine 102 getrennt sein kann.
  • Ein „Computersystem“ kann sich auf einen einzelnen physischen Computer, eine Sammlung von physischen Computern, eine virtuelle Recheneinheit (z. B. eine virtuelle Maschine (VM), ein Container usw.) oder eine Sammlung von virtuellen Recheneinheiten beziehen.
  • In einigen Beispielen kann die Ziel-Workload-Sammlung 106-1 eine neue Ziel-Workload-Sammlung sein, die ein Benutzer auszuführen wünscht. In einigen Beispielen enthält die Ziel-Workload-Sammlung 106-1 E/A-Anforderungen, wobei jede E/A-Anforderung die Art des Vorgangs (Lesen oder Schreiben), eine Größe der Daten, die Gegenstand des Zugriffs sind (z. B. kann die E/A-Anforderung ein Größenfeld enthalten, das die Datengröße angibt, oder die E/A-Anforderung kann Adressinformationen enthalten, die die Adresse(n) identifizieren, an denen der Datenzugriff erfolgen soll, so dass die Datengröße der E/A-Anforderung abgeleitet werden kann), und möglicherweise andere Informationen.
  • Zusätzlich zu den E/A-Anforderungen enthält eine Ziel-Workload-Sammlung auch Metadaten, die mit den E/A-Anforderungen verknüpft sind, einschließlich Zählungen, die eine Anzahl von Lese- und/oder Schreibvorgängen darstellen, Informationen zu einem E/A-Muster (z. B. sequentiell, parallel, zufällig, abschneiden, einmalig schreiben usw.) und so weiter. Solche Metadaten können von einem (von der Dateisystemauswahl- und -bereitstellungs-Engine 102 getrennten) Analysator abgeleitet werden, der in der Lage ist, die E/A-Anforderungen zu analysieren. Alternativ können die Metadaten von der Dateisystemauswahl- und Bereitstellungs-Engine 102 auf der Grundlage einer Analyse der E/A-Anforderungen in der Ziel-Workload-Sammlung abgeleitet werden. Die vom Analysator oder der Dateisystemauswahl- und Bereitstellungsmaschine 102 durchgeführte Analyse kann auf dem Zählen der Menge der Leseanforderungen, dem Zählen der Menge der Schreibanforderungen, dem Berechnen eines Lese-/Schreibverhältnisses auf der Grundlage der Zählungen, dem Analysieren von Adressen in den E/A-Anforderungen, um zu bestimmen, ob die Lese- oder Schreibvorgänge sequentiell, parallel oder zufällig sind, dem Analysieren der E/A-Anforderungen, um zu bestimmen, ob eine Trunkierung durchgeführt wird, dem Analysieren der E/A-Anforderungen, um Indikatoren (z. B. Flags) zu identifizieren, die auf einmal zu schreibende Datenabschnitte hinweisen, und so weiter basieren.
  • Das Dateisystemauswahl- und -bereitstellungssystem 102 umfasst einen Merkmalsextraktor 108, der die Zielarbeitslastsammlung 106-1 empfängt. Der Merkmalsextraktor 108 extrahiert Merkmale 124, die vom maschinellen Lernmodell 104 der Dateisystemauswahl- und -bereitstellungsmaschine 102 zur Identifizierung eines Dateisystems (aus mehreren verschiedenen Arten von Dateisystemen) verwendet werden sollen, von dem vorhergesagt wird, dass es die Leistung der Ziel-Workload-Sammlung 106-1 am ehesten optimiert. Die extrahierten Merkmale können eine Teilmenge aller möglichen Merkmale enthalten, die verwendet werden können. Durch die Auswahl einer Teilmenge (weniger als alle) aller möglichen Merkmale kann die Anzahl der vom maschinellen Lernmodell 104 zu berücksichtigenden Dimensionen reduziert werden, was eine effizientere Ausführung des maschinellen Lernmodells 104 ermöglicht. Die Merkmale, die zur Verwendung ausgewählt werden, werden vorselektiert, z. B. von einem Menschen oder einer anderen Einheit. Das maschinelle Lernmodell 104 wird anhand eines Trainingsdatensatzes trainiert, der die Merkmale enthält (weiter unten im Zusammenhang mit erläutert).
  • Die extrahierten Merkmale 124 können eine beliebige oder eine Kombination der folgenden Merkmale umfassen: eine Lese-E/A-Größe, eine Schreib-E/A-Größe, ein Lese-/Schreibverhältnis, das angibt, ob eine Arbeitslast leseintensiv oder schreibintensiv ist, ein E/A-Muster (z. B. sequentiell, zufällig, parallel, abschneiden, einmalig schreiben usw.) und/oder andere Merkmale (z. B. datenintensiv, kommunikationsintensiv oder rechenintensiv).
  • Die extrahierten Merkmale 124 können in Merkmalsvektoren aufgenommen werden. Beispielsweise können Merkmale, die aus einer ersten E/A-Anforderung (oder einer ersten Gruppe von E/A-Anforderungen) extrahiert wurden, in einen ersten Merkmalsvektor aufgenommen werden, Merkmale, die aus einer zweiten E/A-Anforderung (oder einer zweiten Gruppe von E/A-Anforderungen) extrahiert wurden, können in einen zweiten Merkmalsvektor aufgenommen werden und so weiter. Jeder Merkmalsvektor enthält eine Sammlung von Merkmalen.
  • Der Merkmalsextraktor 108 liefert die extrahierten Merkmale 124 (die aus der Ziel-Workload-Sammlung 106-1 extrahiert und in Merkmalsvektoren enthalten sind) an das maschinelle Lernmodell 104. In einigen Beispielen ist das maschinelle Lernmodell 104 ein neuronales Netzwerk, wie z. B. ein neuronales Netzwerk, das mit TensorFlow erstellt wurde. TensorFlow umfasst eine Reihe von Open-Source-Bibliotheken, die zum Erstellen und Arbeiten mit neuronalen Netzen verwendet werden können. In einigen Beispielen kann eine Keras-Anwendungsprogrammierschnittstelle (API), die mit TensorFlow interagiert, zur Implementierung neuronaler Netze verwendet werden.
  • In anderen Beispielen können andere Arten von maschinellen Lernmodellen in der Dateisystemauswahl- und -bereitstellungs-Engine 102 verwendet werden, wie z. B. ein Boosted-Trees-Regressionsmodell, ein abstandsbasiertes Clustermodell, ein lokal gewichtetes Glass-Box-Regressionsmodell usw.
  • Allgemeiner ausgedrückt, bezieht sich ein „maschinelles Lernmodell“ auf ein Modell (das mit maschinenlesbaren Anweisungen und Parametern implementiert ist), das durch Lernen (Training) des Modells aktualisiert werden kann. Ein neuronales Netz hat beispielsweise Gewichte und Verzerrungen (Beispiele für Parameter), die durch Training des neuronalen Netzes aktualisiert werden können. Ein Modell für maschinelles Lernen kann zunächst mit einem ersten Trainingsdatensatz trainiert werden. Nachdem das maschinelle Lernmodell eingesetzt und verwendet wurde, kann das maschinelle Lernmodell weiter trainiert werden, z. B. durch die Bereitstellung weiterer Trainingsdaten auf der Grundlage der vom maschinellen Lernmodell erzeugten Ausgaben.
  • Basierend auf den extrahierten Merkmalen 124 (oder genauer gesagt, basierend auf den Merkmalsvektoren, die die extrahierten Merkmale 124 enthalten) kann das maschinelle Lernmodell 104 die Workload-Domäne der Workload(s) der Ziel-Workload-Sammlung 106-1 identifizieren. Beispielsweise kann das maschinelle Lernmodell 104 erkennen, dass die Ziel-Workload-Sammlung 106-1 zu einer der folgenden Workload-Domänen gehört: Videoaufzeichnungs- und Streaming-Workload-Domäne, Workload-Domäne des Gesundheitswesens, VDI-Workload-Domäne, Bank-Workload-Domäne, Versicherungs-Workload-Domäne, Workload-Domäne des maschinellen Lernens oder der künstlichen Intelligenz, Datenbank-Workload-Domäne, E-Mail-Server-Workload-Domäne usw.
  • Allgemeiner ausgedrückt, kann das maschinelle Lernmodell 104 eine Sammlung von Workload-Domänen (eine einzelne Workload-Domäne oder mehrere Workload-Domänen) identifizieren, zu der die Ziel-Workload-Sammlung 106-1 gehört. In einigen Beispielen kann das maschinelle Lernmodell 104 jeder Workload-Domäne der Sammlung von Workload-Domänen einen Wahrscheinlichkeitswert zuweisen. Der einer gegebenen Workload-Domäne zugewiesene Wahrscheinlichkeitswert zeigt die Wahrscheinlichkeit an, dass die Ziel-Workload-Sammlung 106-1 Teil der gegebenen Workload-Domäne ist.
  • Basierend auf der identifizierten Sammlung von Workload-Domänen (und einem oder mehreren Wahrscheinlichkeitswerten, die jeder Workload-Domäne der identifizierten Sammlung von Workload-Domänen zugewiesen wurden), erzeugt das maschinelle Lernmodell 104 vorhergesagte Dateisysteminformationen 120, die eine Sammlung von Dateisystemen (ein einzelnes Dateisystem oder mehrere Dateisysteme) identifizieren, die möglicherweise für die Ziel-Workload-Sammlung 106-1 verwendet werden können. Mapping-Informationen können dem maschinellen Lernmodell 104 zur Verfügung stehen, um Workload-Domänen den jeweiligen Dateisystemen zuzuordnen. Die Zuordnungsinformationen können z. B. in Form einer Zuordnungstabelle vorliegen. Jeder Eintrag der Zuordnungstabelle kann eine Workload-Domäne mit einem entsprechenden Typ von Dateisystem korrelieren. So kann das maschinelle Lernmodell 104 angesichts der für die Ziel-Workload-Sammlung 106-1 identifizierten Sammlung von Workload-Domänen auf die Zuordnungsinformationen zugreifen, um die Sammlung von Workload-Domänen dem/den jeweiligen Typ(en) von Dateisystem(en) zuzuordnen.
  • Beachten Sie, dass die Zuordnungsinformationen mehrere verschiedene Workload-Domänen auf einen bestimmten Typ von Dateisystem abbilden können und/oder eine Workload-Domäne auf mehrere verschiedene Typen von Dateisystemen abbilden können.
  • Beispielsweise können die vorhergesagten Dateisysteminformationen 120, die von dem maschinellen Lernmodell 104 ausgegeben werden, eine Sammlung von Dateisystemkennungen (eine Dateisystemkennung oder mehrere Dateisystemkennungen) enthalten, wobei jede Dateisystemkennung ein Dateisystem darstellt, das ein Kandidat für die Verwendung mit der Ziel-Workload-Sammlung 106-1 ist. In Beispielen, in denen die Sammlung von Dateisystemkennungen mehrere Dateisystemkennungen enthält, die jeweils unterschiedliche Typen von Dateisystemen repräsentieren, können die vorhergesagten Dateisysteminformationen 120 auch Werte (z. B. Wahrscheinlichkeitswerte) enthalten, die von dem maschinellen Lernmodell 104 den jeweiligen Dateisystemkennungen zugewiesen werden, um anzuzeigen, welches Dateisystem der unterschiedlichen Typen von Dateisystemen bevorzugt mit der Ziel-Workload-Sammlung 106-1 verwendet werden sollte. Beispielsweise kann einem ersten Dateisystem-Label, das eine erste Art von Dateisystem repräsentiert, ein erster Wahrscheinlichkeitswert zugewiesen werden, und einem zweiten Dateisystem-Label, das eine zweite Art von Dateisystem repräsentiert, kann ein zweiter Wahrscheinlichkeitswert zugewiesen werden. Wenn der erste Wahrscheinlichkeitswert kleiner als der zweite Wahrscheinlichkeitswert ist, würde dies darauf hinweisen, dass die Verwendung des zweiten Dateisystemtyps für die Ziel-Workload-Sammlung 106-1 im Vergleich zum ersten Dateisystemtyp vorzuziehen ist.
  • Das maschinelle Lernmodell 104 gibt die vorhergesagten Dateisysteminformationen 120 an den Dateisystem-Bereitsteller 112 aus. In Beispielen, in denen die vorhergesagten Dateisysteminformationen 120 ein einzelnes Dateisystem identifizieren, stellt der Dateisystem-Bereitsteller 112 das identifizierte Dateisystem in einem Computersystem bereit. Zum Beispiel stellt der Dateisystem-Bereitsteller 112 ein Dateisystem 126-1 in dem Computersystem 122-1 bereit. Das Dateisystem 126-1 (das bei Bedarf bereitgestellt wurde) dient der Speicherung und Verwaltung von Dateien für die Ziel-Workload-Sammlung 106-1.
  • Der Dateisystem-Bereitsteller 112 kann das Dateisystem 126-1 im Computersystem 122-1 bereitstellen, indem er entweder (1) das Dateisystem 126-1 im Computersystem 122-1 erstellt oder (2) das Dateisystem 126-1 identifiziert, das zuvor erstellt wurde, um es für die Speicherung und Verwaltung der Daten der Ziel-Workload-Sammlung 106-1 zu verwenden.
  • In weiteren Beispielen, in denen die vorhergesagten Dateisysteminformationen 120 mehrere Dateisysteme identifizieren (zusammen mit Werten wie Wahrscheinlichkeiten, die die vorhergesagten Leistungsniveaus der mehreren Dateisysteme angeben), kann der Dateisystem-Bereitsteller 112 die Werte vergleichen, die die vorhergesagten Leistungsniveaus der mehreren Dateisysteme angeben, und das Dateisystem mit einem Wert auswählen, der die optimale Leistung (aus den mehreren Dateisystemen) angibt. Der Dateisystem-Bereitsteller 112 kann das ausgewählte Dateisystem bereitstellen, z. B. im Computersystem 122-1.
  • zeigt weiter, dass der Dateisystem-Bereitsteller 112 ein Dateisystem 126-N im Computersystem 122-N bereitgestellt hat, z. B. für die Ziel-Workload-Sammlung 106-N.
  • Für die Ziel-Workload-Sammlung 106-1 kann der Dateisystem-Bereitsteller 112 einen Einhängepunkt erstellen, über den das bereitgestellte Dateisystem 126-1 zugänglich ist. In einigen Beispielen kann sich ein „Einhängepunkt“ auf einen Ort (z. B. ein Verzeichnis oder eine Datei) in einem Stammverzeichnis eines Dateisystems beziehen. Der Einhängepunkt ermöglicht es einer anderen Einheit, z. B. einem System, das die Ziel-Workload-Sammlung 106-1 gestartet hat, auf das bereitgestellte Dateisystem 126-1 zuzugreifen. Allgemeiner ausgedrückt, kann der Dateisystem-Bereitsteller 112 eine Verbindung zwischen einer Entität, z. B. dem System, das die Ziel-Workload-Sammlung 106-1 gestartet hat, und dem bereitgestellten Dateisystem 126-1 herstellen, so dass die Entität Dateien im bereitgestellten Dateisystem 126-1 lesen und schreiben kann.
  • Eine VDI-Arbeitslast kann beispielsweise Datendeduplizierung verwenden (bei der doppelte Datenabschnitte wie Chunks nicht mehrfach in einem Speichersystem gespeichert werden) und kann leseintensiv sein (d. h. es gibt mehr Lese- als Schreibzugriffe in der VDI-Arbeitslast). In einigen Beispielen kann eine Arbeitslast, die Datendeduplizierung verwendet und leseintensiv ist, im SimpliVity-Dateisystem (SvtFS) besser und im AdvFS-Dateisystem oder MapR FS schlechter abschneiden. Infolgedessen kann das maschinelle Lernmodell 104 anzeigen, dass ein SvtFS bei Bedarf für die VDI-Arbeitslast bereitgestellt werden soll.
  • Andererseits kann in einem anderen Beispiel eine Datenanalyse-Workload (die künstliche Intelligenz einsetzt) im MapR FS im Vergleich zu anderen Arten von Dateisystemen besser funktionieren. Infolgedessen kann das maschinelle Lernmodell 104 anzeigen, dass ein MapR FS bei Bedarf für die Datenanalyse-Workloads bereitgestellt wird.
  • Das Dateisystem-Bereitstellungsmodul 102 kann auch ein virtuelles Dateisystem 110 (oder ein entsprechendes temporäres Dateisystem) enthalten. Das virtuelle Dateisystem 110 kann beispielsweise ein Ext4 FS-Dateisystem (ein Journaling-Dateisystem, das Dateien in einem Journal protokolliert) oder eine andere Art von Dateisystem (z. B. AdvFS usw.) sein. Das virtuelle Dateisystem 110 führt eine E/A-Pufferung durch, um E/A-Anforderungen (z. B. in Form von Dateien, wobei jede Datei eine E/A-Anforderung eines Ziel-Workloads enthält) einer Ziel-Workload-Sammlung zu puffern, die von der Dateisystem-Bereitstellungsmaschine 102 empfangen wird.
  • Sobald das Dateisystem 126-1 für die Ziel-Workload-Sammlung 106-1 bedarfsgerecht bereitgestellt ist, kann das Dateisystemauswahl- und - bereitstellungssystem 102 die E/A-Anforderungen der Ziel-Workload-Sammlung 106-1, die im virtuellen Dateisystem 110 gepuffert sind, entlang des Pfades 128 an das bereitgestellte Dateisystem 126-1 freigeben, um die Lese- und Schreibzugriffe der E/A-Anforderungen auszuführen. Der Pfad 128 kann ein Netzwerk umfassen, das die Dateisystemauswahl- und -bereitstellungs-Engine 102 mit dem Computersystem 122-1 verbindet. Genauer gesagt kann die Dateisystemauswahl- und Bereitstellungsmaschine 102 jede gepufferte E/A-Anforderung im virtuellen Dateisystem 110 über den Pfad 128 an das bereitgestellte Dateisystem 126-1 im Computersystem 122-1 senden.
  • Allgemeiner ausgedrückt, können statt des virtuellen Dateisystems 110 E/A-Puffer verwendet werden, um die E/A-Anforderungen der Ziel-Workload-Sammlung 106-1 vorübergehend zu puffern. Die E/A-Anforderungen werden zwischengespeichert, während die Dateisystemauswahl- und -bereitstellungs-Engine 102 die Auswahl und bedarfsgerechte Bereitstellung eines Dateisystems für die Ziel-Workload-Sammlung 106-1 durchführt.
  • In einigen Beispielen enthält das Dateisystemauswahl- und - bereitstellungssystem 102 außerdem eine Datenaufbereitungslogik 130. In anderen Beispielen kann die Datenaufbereitungslogik 130 weggelassen werden.
  • Die Datenaufbereitungslogik 130 kann die Datenaufbereitungsverarbeitung auf Informationen der Ziel-Workload-Sammlung 106-1 anwenden, wie z. B. Informationen in den E/A-Anforderungen in der Ziel-Workload-Sammlung 106-1. E/A-Anforderungen verschiedener Ziel-Workload-Sammlungen können unterschiedliche Formate haben, können unterschiedliche Wertebereiche verschiedener Variablen in den E/A-Anforderungen verwenden, können unterschiedliche Variablennamen verwenden und so weiter. Außerdem können E/A-Anforderungen in einer Ziel-Workload-Sammlung Informationen enthalten, die in E/A-Anforderungen einer anderen Ziel-Workload-Sammlung nicht enthalten sind. Die Datenaufbereitungsverarbeitung, die von der Datenaufbereitungslogik 130 auf die Informationen der Ziel-Workload-Sammlung 106-1 angewendet wird, kann das Bereinigen der Informationen (z. B. zum Entfernen von Fremdinformationen, wie z. B. Informationen, die in E/A-Workload-Anforderungen einer Ziel-Workload-Sammlung gefunden werden, die in E/A-Anforderungen einer anderen Ziel-Workload-Sammlung nicht gefunden werden), das Normalisieren der Informationen (z. B. Normalisieren der Werte von Variablen, damit sie in einen gemeinsamen Bereich fallen) und das Umstrukturieren der Informationen (z. B. Ändern des Formats der Informationen in der Ziel-Workload-Sammlung) umfassen.
  • Die Datenaufbereitungslogik 130 liefert nach der Anwendung der Datenaufbereitungsverarbeitung Arbeitslastinformationen an den Merkmalsextraktor 108, der die extrahierten Merkmale 124 auf der Grundlage der verarbeiteten Arbeitslastinformationen erzeugt.
  • ist ein Blockdiagramm eines Trainingssystems 200 zum Trainieren des maschinellen Lernmodells 104 gemäß einigen Beispielen. Das Trainingssystem 200 kann mit einem Computer oder mehreren Computern implementiert werden, der/die sich von dem/den Computer(n) zur Implementierung der Dateisystemauswahl- und -bereitstellungs-Engine 102 von unterscheiden kann/können.
  • Das Trainingssystem 200 kann einen Datensammler 202 enthalten, der Daten aus verschiedenen Quellen sammelt. Beispielsweise kann der Datenkollektor 202 Workload-Informationen von verschiedenen Überwachungsagenten empfangen, die in verschiedenen Systemen (z. B. Computersystemen ähnlich 122-1 bis 122-N in ) eingesetzt werden oder mit diesen verbunden sind, um Workload-Informationen von Workloads zu überwachen, die in den überwachten Systemen ausgeführt werden. Die überwachten Workload-Informationen können zum Beispiel E/A-Anforderungen der Workloads umfassen. Die überwachten Arbeitslastinformationen werden als historische Arbeitslastinformationen betrachtet.
  • Der Datensammler 202 kann auch Workload-Informationen von menschlichen Nutzern erhalten, z. B. von Außendienst- oder Supporttechnikern und/oder Nutzern von Testgruppen, die Dateisysteme testen und Testdaten sammeln. Der Datensammler 202 kann auch Workload-Informationen von anderen Quellen erhalten, z. B. von Open-Source-Repositories mit Workload-Informationen usw. Durch das Sammeln von Workload-Informationen aus verschiedenen Quellen können vielfältigere Workload-Informationen für die Zwecke des Trainings des maschinellen Lernmodells 104 gesammelt werden.
  • Der Datensammler 202 erzeugt gesammelte Daten 204, die Informationen zur Arbeitsbelastung aus den verschiedenen Quellen enthalten.
  • Das Trainingssystem 200 kann eine Datenaufbereitungslogik 206 enthalten, die eine Datenaufbereitungsverarbeitung ähnlich der Verarbeitung der Datenaufbereitungslogik 130 von durchführen kann. In anderen Beispielen kann die Datenaufbereitungslogik 206 weggelassen werden.
  • Das Trainingssystem 200 umfasst ferner einen Merkmalsextraktor 208 zur Extraktion von Merkmalen, ähnlich dem Merkmalsextraktor 108 von . Der Merkmalsextraktor 208 extrahiert Merkmale 210 aus den von den verschiedenen Quellen gesammelten Arbeitslastinformationen. Die extrahierten Merkmale 210 sind in den jeweiligen Merkmalsvektoren enthalten. Beispielsweise können Merkmale, die aus einer ersten E/A-Anforderung (oder einer ersten Gruppe von E/A-Anforderungen) aus einer der verschiedenen Quellen extrahiert wurden, in einen ersten Merkmalsvektor aufgenommen werden, Merkmale, die aus einer zweiten E/A-Anforderung (oder einer zweiten Gruppe von E/A-Anforderungen) aus einer der verschiedenen Quellen extrahiert wurden, können in einen zweiten Merkmalsvektor aufgenommen werden, und so weiter.
  • Das Trainingssystem 200 enthält außerdem einen Labeler 212, um den Merkmalsvektoren Workload-Domain-Labels hinzuzufügen. Die Kennzeichnungen der Arbeitslastbereiche umfassen Kennzeichnungen, die die folgenden Arbeitslastbereiche repräsentieren, z. B.: Arbeitslastbereich für Videoaufzeichnung und Streaming, Arbeitslastbereich für das Gesundheitswesen, VDI-Arbeitslastbereich, Arbeitslastbereich für Banken, Arbeitslastbereich für Versicherungen, Arbeitslastbereich für maschinelles Lernen oder künstliche Intelligenz, Arbeitslastbereich für Datenbanken, Arbeitslastbereich für E-Mail-Server und so weiter.
  • Der Beschrifter 212 kann einem gegebenen Merkmalsvektor ein Workload-Domain-Label hinzufügen. Zum Beispiel kann der Bezeichner 212 einem ersten Merkmalsvektor ein Workload-Domain-Label hinzufügen, das die Videoaufzeichnungs- und Streaming-Workload-Domain repräsentiert, einem zweiten Merkmalsvektor ein Workload-Domain-Label, das die VDI-Workload-Domain repräsentiert, und so weiter. Das Hinzufügen eines Workload-Domain-Labels zu einem gegebenen Merkmalsvektor zeigt an, dass eine E/A-Anforderung mit den Merkmalen des gegebenen Merkmalsvektors Teil einer Workload in der jeweiligen Workload-Domain ist.
  • Die den jeweiligen Merkmalsvektoren hinzugefügten Workload-Domain-Labels können auf menschlichen Eingaben an den Labeler 212 basieren. Zum Beispiel kann ein menschlicher Benutzer die vom Merkmalsextraktor 208 erzeugten Merkmalsvektoren überprüfen und den Beschrifter 212 anweisen, den Merkmalsvektoren entsprechende Arbeitslast-Domänenbeschriftungen hinzuzufügen.
  • Alternativ ist der Labeler 212 ein automatisiertes Programm, das Workload-Domain-Labels generiert und die Workload-Domain-Labels basierend auf der E/A-Charakterisierung in einem Datensatz zuweist. Das Beschriftungsgerät 212 kann entwickelt werden, um den beschrifteten Trainingssatz zu erzeugen, der beschriftete Merkmalsvektoren enthält, die auf dem in das Beschriftungsgerät 212 programmierten Fachwissen basieren, so dass das Beschriftungsgerät 212 E/A-Anforderungen charakterisieren und auf der Grundlage der E/A-Charakterisierung Workload-Domain-Labels zuweisen kann.
  • Die Beschriftungseinrichtung 212 erzeugt beschriftete Merkmalsvektoren 214, die jeweils extrahierte Merkmale und eine entsprechende Arbeitslastdomänenbeschriftung enthalten. Die beschrifteten Merkmalsvektoren 214 werden dem maschinellen Lernmodell 104 zur Verfügung gestellt, das das maschinelle Lernmodell 104 trainiert, um zu lernen, dass die Merkmalsmuster in den beschrifteten Merkmalsvektoren 214 den jeweiligen Workload-Domänen entsprechen. Nach dem Training kann das maschinelle Lernmodell 104 in der Dateisystemauswahl- und -bereitstellungsmaschine 102 von verwendet werden, um Workload-Domänen zu identifizieren, die den vom Merkmalsextraktor 108 aus einer Ziel-Workload-Sammlung erzeugten Merkmalvektoren entsprechen.
  • In einigen Beispielen kann das maschinelle Lernmodell 104 ein neuronales Netz enthalten. zeigt ein Beispiel für ein neuronales Netzwerk 300 zur Implementierung des maschinellen Lernmodells 104 gemäß einigen Beispielen. Ein neuronales Netzwerk umfasst eine Eingabeschicht, eine oder mehrere versteckte Schichten und eine Ausgabeschicht. Jede der Schichten enthält künstliche Neuronen, und die künstlichen Neuronen der Schichten sind miteinander verbunden. Im Beispiel von umfasst das neuronale Netz 300 eine Eingabeschicht 302, zwei versteckte Schichten 304 und 306 und eine Ausgabeschicht 308. In anderen Beispielen kann das neuronale Netz 300 eine andere Anzahl von verborgenen Schichten enthalten.
  • Obwohl in jede Schicht mit einer bestimmten Anzahl von Knoten (künstlichen Neuronen) dargestellt ist, kann in anderen Beispielen auch eine andere Anzahl von Knoten in jeder der Schichten des neuronalen Netzes 300 enthalten sein.
  • Jeder Knoten, d. h. jedes künstliche Neuron, ist mit einem anderen verbunden und hat ein zugehöriges Gewicht und eine Vorspannung (auch als Schwellenwert bezeichnet). Wenn die von einer Aktivierungsfunktion (einer linearen oder nichtlinearen Funktion) eines einzelnen Knotens erzeugte Ausgabe über dem angegebenen Schwellenwert (Bias) liegt, wird dieser Knoten aktiviert und sendet Daten an die nächste Schicht des neuronalen Netzes. Andernfalls werden die Daten nicht an die nächste Schicht des Netzes weitergeleitet.
  • Jeder Knoten einer verborgenen Schicht (304 oder 306) empfängt eine Eingabe von einem Knoten einer vorhergehenden Schicht (entweder der Eingabeschicht 302 oder einer vorhergehenden verborgenen Schicht 304) und erzeugt auf ähnliche Weise eine Ausgabe auf der Grundlage der Anwendung einer Aktivierungsfunktion. Die Ausgabe wird von dem Knoten in der versteckten Schicht (304 oder 306) mit einer entsprechenden Vorspannung verglichen, um zu bestimmen, ob der Knoten in der versteckten Schicht (304 oder 306) aktiviert werden soll, um Daten an die nächste Schicht (entweder eine andere versteckte Schicht 306 oder die Ausgabeschicht 308) weiterzuleiten.
  • Die Ausgangsschicht 308 des neuronalen Netzes 300 kann in einigen Beispielen eine Softmax-Aktivierungsfunktion anwenden. „Softmax“ bezieht sich auf eine Funktion, die einen Vektor von Werten (z. B. aus einer versteckten Schicht) in einen Vektor von Wahrscheinlichkeiten umwandelt. Die Ausgabeschicht 308 des neuronalen Netzes kann M Werte (M ≥ 1) erzeugen, einen für jedes Workload-Domain-Label. Die Softmax-Aktivierungsfunktion normalisiert die Ausgabewerte der vorhergehenden versteckten Schicht und wandelt diese Werte in Wahrscheinlichkeiten um, die sich zu 1 summieren. Jeder Wert in der Ausgabe der Softmax-Aktivierungsfunktion für die Ausgabeschicht 308 wird als Zugehörigkeitswahrscheinlichkeit für jedes Label interpretiert.
  • Die verborgene Schicht 308 des neuronalen Netzes 300 gibt drei Labels (Label1, Label2, Label3) und Wahrscheinlichkeitswerte P1, P2, P3 aus, die mit den drei jeweiligen Labels verbunden sind.
  • In einigen Beispielen enthält das neuronale Netz 300 zum Trainieren des neuronalen Netzes 300 einen Adam-Optimierer 310, der einen Optimierungsalgorithmus zum Aktualisieren von Gewichten und Vorspannungen der Knoten des neuronalen Netzes 300 auf der Grundlage von Trainingsdaten anwendet, wie z. B. die beschrifteten Merkmalsvektoren 214 von . Der Adam-Optimierer 310 wendet eine Art von stochastischer Gradientenabstiegsoptimierung zum Lernen eines neuronalen Netzes an. In anderen Beispielen können andere Techniken zum Trainieren des neuronalen Netzes 300 verwendet werden.
  • In einigen Beispielen verwendet der Adam-Optimierer 310 die kategorische Kreuzentropie-Verlustfunktion 312, die einen Verlust berechnet, der mit einer vom neuronalen Netzwerk 300 durchgeführten Vorhersage verbunden ist. In anderen Beispielen können auch andere Arten von Verlustfunktionen verwendet werden. Der Adam-Optimierer 310 versucht, den von der Verlustfunktion 312 berechneten Verlust während des Trainings des neuronalen Netzes 300 zu minimieren (oder zu reduzieren).
  • In einigen Beispielen kann das neuronale Netz 300 über mehrere Iterationen trainiert werden. Nachdem das neuronale Netz 300 in einer ersten Iteration trainiert wurde, berechnet die Verlustfunktion 312 einen Verlust für eine vom neuronalen Netz 300 erzeugte Vorhersage. Wenn der Verlust eine Verlustschwelle überschreitet, wird eine weitere Trainingsiteration durchgeführt, und nachdem das neuronale Netz 300 in der nächsten Iteration trainiert wurde, berechnet die Verlustfunktion 312 einen Verlust für eine vom neuronalen Netz 300 erzeugte Vorhersage. Dieser Verlust wird wiederum mit dem Verlustschwellenwert verglichen. Das Training wird so lange wiederholt, bis der für die aktuelle Iteration berechnete Verlust kleiner als der Verlustschwellenwert ist. Dann kann das Training beendet und das trainierte neuronale Netz 300 zur Erstellung von Vorhersagen verwendet werden, um Dateisysteme für Arbeitslasten auszuwählen.
  • Allgemeiner ausgedrückt: Um das maschinelle Lernmodell 104 zu trainieren, bestimmt das Trainingssystem 200 ein Maß für die Leistung des maschinellen Lernmodells 104 (ein Beispiel für dieses Maß ist ein Verlust, der durch die Verlustfunktion 312 erzeugt wird). Als Reaktion darauf, dass das Maß ein Kriterium nicht erfüllt (z.B. der Verlust die Verlustschwelle überschreitet), führt das Trainingssystem 200 eine weitere Iteration des Trainings durch. Das Training wird so lange wiederholt, bis ein Maß für die Leistung des maschinellen Lernmodells das Kriterium in einer aktuellen Trainingsiteration erfüllt (z. B. der Verlust kleiner als der Verlustschwellenwert ist).
  • In jeder Trainingsiteration werden die Modellparameter (z. B. die Gewichte und Verzerrungen eines neuronalen Netzes) aktualisiert.
  • ist ein Blockdiagramm eines nicht transitorischen maschinenlesbaren oder computerlesbaren Speichermediums 400, das maschinenlesbare Befehle speichert, die bei Ausführung ein System veranlassen, verschiedene Aufgaben durchzuführen. Das System kann einen Computer oder mehrere Computer umfassen.
  • Die maschinenlesbaren Anweisungen enthalten Anweisungen zum Empfang von Arbeitslastinformationen 402, um Arbeitslastinformationen einer Arbeitslastsammlung zu empfangen, wie z. B. eine der Ziel-Arbeitslastsammlungen 106-1 bis 106-N von . Eine Workload-Sammlung kann eine oder mehrere Workloads enthalten.
  • Die maschinenlesbaren Anweisungen enthalten Anweisungen zur Anwendung des maschinellen Lernmodells 404, um ein maschinelles Lernmodell auf die Arbeitslastinformationen anzuwenden. Das maschinelle Lernmodell wird anhand von Trainingsinformationen trainiert, die Merkmale verschiedener Arten von Arbeitslasten enthalten.
  • Die maschinenlesbaren Anweisungen enthalten Anweisungen zur Dateisystemidentifizierung 406, um durch das maschinelle Lernmodell eine Identifizierung eines ersten Dateisystems aus verschiedenen Arten von Dateisystemen zu erzeugen. Das maschinelle Lernmodell erzeugt einen Ausgabewert, der dem ersten Dateisystem entspricht, das ein Kandidat für die Verwendung zum Speichern von Dateien der Arbeitslastsammlung ist. Beispielsweise kann der Ausgabewert, der dem ersten Dateisystem entspricht, ein Wahrscheinlichkeitswert sein, der einem Workload-Domänen-Label zugeordnet ist, das eine entsprechende Workload-Domäne darstellt.
  • In einigen Beispielen stellen die maschinenlesbaren Anweisungen das Dateisystem auf der Grundlage der Identifizierung für die Arbeitslastsammlung bereit.
  • In einigen Beispielen trainieren die maschinenlesbaren Anweisungen das maschinelle Lernmodell auf der Grundlage des Extrahierens der Merkmale aus Eingabeinformationen, wobei die extrahierten Merkmale Merkmale enthalten, die sich auf E/A-Anforderungen der verschiedenen Arten von Arbeitslasten beziehen, und des Erzeugens von Merkmalsvektoren der extrahierten Merkmale.
  • In einigen Beispielen umfassen die Trainingsinformationen die Merkmalsvektoren, die in Bezug auf die verschiedenen Arbeitslastbereiche beschriftet sind.
  • In einigen Beispielen sagt das maschinelle Lernmodell voraus, dass die Arbeitslastsammlung Teil einer ersten Arbeitslastdomäne der verschiedenen Arbeitslastdomänen ist, und ordnet die erste Arbeitslastdomäne dem ersten Dateisystem zu.
  • In einigen Beispielen umfassen die Merkmale eine beliebige oder eine Kombination aus: einer Größe eines Lesevorgangs, einer Größe eines Schreibvorgangs, einer Angabe, ob eine Arbeitslast leseintensiv oder schreibintensiv ist, und einem E/A-Muster.
  • In einigen Beispielen weist das maschinelle Lernmodell den jeweiligen Kennzeichnungen, die den verschiedenen Arten von Dateisystemen entsprechen, Werte zu, wobei jeder Wert der Werte eine Wahrscheinlichkeit für die Auswahl eines jeweiligen Dateisystems der verschiedenen Arten von Dateisystemen für die Arbeitslastsammlung angibt. Die Werte können Wahrscheinlichkeitswerte enthalten, die Workload-Domain-Labels zugewiesen werden, die Workload-Domains darstellen, die durch Zuordnungsinformationen auf entsprechende Dateisysteme abgebildet werden.
  • In einigen Beispielen stellt jeder Wahrscheinlichkeitswert der Wahrscheinlichkeitswerte eine Wahrscheinlichkeit dar, dass ein entsprechendes Workload-Domänen-Label ein korrektes Workload-Domänen-Label ist.
  • ist ein Blockdiagramm eines Systems 500 mit einem Hardware-Prozessor 502 (oder mehreren Hardware-Prozessoren). Ein Hardware-Prozessor kann einen Mikroprozessor, einen Kern eines Multi-Core-Mikroprozessors, einen Mikrocontroller, eine programmierbare integrierte Schaltung, ein programmierbares Gate-Array oder eine andere Hardware-Verarbeitungsschaltung umfassen.
  • Das System 500 umfasst ein Speichermedium 504, auf dem maschinenlesbare Anweisungen gespeichert sind, die auf dem Hardware-Prozessor 502 ausgeführt werden können, um verschiedene Aufgaben durchzuführen. Maschinenlesbare Anweisungen, die auf einem Hardware-Prozessor ausführbar sind, können sich auf Anweisungen beziehen, die auf einem einzelnen Hardware-Prozessor oder auf Anweisungen, die auf mehreren Hardware-Prozessoren ausführbar sind.
  • Die maschinenlesbaren Anweisungen im Speichermedium 504 enthalten Anweisungen zum Empfang von Arbeitslastinformationen 506, um Arbeitslastinformationen einer Arbeitslastsammlung zu empfangen.
  • Die maschinenlesbaren Anweisungen im Speichermedium 504 enthalten Anweisungen für die Anwendung eines maschinellen Lernmodells 508, um ein maschinelles Lernmodell auf die Arbeitslastinformationen anzuwenden, wobei das maschinelle Lernmodell unter Verwendung von Trainingsinformationen trainiert wird, die Merkmale verschiedener Arten von Arbeitslasten enthalten.
  • Die maschinenlesbaren Anweisungen in dem Speichermedium 504 enthalten Anweisungen zur Berechnung des Wahrscheinlichkeitswerts der Kategorie 510, um durch das maschinelle Lernmodell einen Wahrscheinlichkeitswert für eine Kategorie zu erzeugen, die einem ersten Dateisystem von verschiedenen Arten von Dateisystemen entspricht.
  • In einigen Beispielen stellt die Kategorie eine erste Workload-Domäne aus einer Vielzahl von verschiedenen Workload-Domänen dar, und die maschinenlesbaren Anweisungen korrelieren die erste Workload-Domäne mit dem ersten Dateisystem.
  • Die maschinenlesbaren Anweisungen im Speichermedium 504 enthalten Anweisungen zur Dateisystembereitstellung 512, um den Wahrscheinlichkeitswert für die Kategorie, die dem ersten Dateisystem entspricht, bei der Durchführung der On-Demand-Bereitstellung des ersten Dateisystems für die Arbeitslastsammlung zu verwenden, wobei das erste Dateisystem zum Speichern von Dateien der Arbeitslastsammlung verwendet wird.
  • In einigen Beispielen erzeugt das maschinelle Lernmodell Wahrscheinlichkeitswerte für mehrere Kategorien, die mehreren Dateisystemen der verschiedenen Arten von Dateisystemen entsprechen, wobei die maschinenlesbaren Anweisungen auf der Grundlage der Wahrscheinlichkeitswerte erkennen, dass das erste Dateisystem für die Arbeitslastsammlung optimal ist.
  • ist ein Flussdiagramm eines Prozesses 600 gemäß einiger Beispiele. Der Prozess 600 umfasst das Training (bei 602) eines maschinellen Lernmodells. Das Training umfasst das Extrahieren (bei 604) von Merkmalen aus Workload-Informationen aus einer oder mehreren Quellen, wobei sich die Workload-Informationen auf verschiedene Arten von Workloads beziehen und wobei die extrahierten Merkmale Merkmale enthalten, die sich auf E/A-Anforderungen der verschiedenen Arten von Workloads beziehen.
  • Das Training umfasst die Erstellung (bei 606) von Merkmalsvektoren der extrahierten Merkmale und die Zuweisung (bei 608) von Kennzeichnungen zu den Merkmalsvektoren, um gekennzeichnete Merkmalsvektoren zu erzeugen, die beim Training des maschinellen Lernmodells verwendet werden.
  • Der Prozess 600 umfasst den Empfang (bei 610) von Arbeitslastinformationen einer Arbeitslastsammlung.
  • Der Prozess 600 umfasst die Anwendung (bei 612) des trainierten maschinellen Lernmodells auf die Arbeitslastinformationen.
  • Der Prozess 600 umfasst das Erzeugen (bei 614) eines Wertes für eine Kategorie, die einem ersten Dateisystem von verschiedenen Arten von Dateisystemen entspricht, durch das trainierte maschinelle Lernmodell. Der Wert kann ein Wahrscheinlichkeitswert sein, und die Kategorie kann eine Arbeitslastdomäne darstellen.
  • Der Prozess 600 umfasst die Verwendung (bei 616) des Wertes für die Kategorie, die dem ersten Dateisystem entspricht, bei der Durchführung der On-Demand-Bereitstellung des ersten Dateisystems für die Workload-Sammlung, wobei das erste Dateisystem zur Verwendung beim Speichern von Dateien der Workload-Sammlung dient.
  • Ein Speichermedium (z.B., 400 in oder in ) kann eine beliebige oder eine Kombination der folgenden Elemente umfassen: eine Halbleiterspeichereinrichtung wie ein dynamischer oder statischer Direktzugriffsspeicher (DRAM oder SRAM), ein löschbarer und programmierbarer Festwertspeicher (EPROM), ein elektrisch löschbarer und programmierbarer Festwertspeicher (EEPROM) und ein Flash-Speicher; eine Magnetplatte wie eine Festplatte, eine Diskette und eine Wechselplatte; ein anderes magnetisches Medium einschließlich eines Bandes; ein optisches Medium wie eine Compact Disk (CD) oder eine digitale Videodisk (DVD); oder eine andere Art von Speichereinrichtung. Es ist zu beachten, dass die oben beschriebenen Anweisungen auf einem einzigen computer- oder maschinenlesbaren Speichermedium oder alternativ auf mehreren computer- oder maschinenlesbaren Speichermedien bereitgestellt werden können, die in einem großen System mit möglicherweise mehreren Knotenpunkten verteilt sind. Ein solches computerlesbares oder maschinenlesbares Speichermedium oder solche Speichermedien werden als Teil eines Artikels (oder eines Herstellungsartikels) betrachtet. Ein Artikel oder Herstellungsgegenstand kann sich auf jede hergestellte Einzelkomponente oder auf mehrere Komponenten beziehen. Das Speichermedium oder 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 über ein Netzwerk zur Ausführung heruntergeladen werden können.
  • In der vorstehenden Beschreibung sind zahlreiche Details aufgeführt, um ein Verständnis des hierin offengelegten Themas zu vermitteln. Allerdings können Implementierungen ohne einige dieser Details praktiziert werden. Andere Implementierungen können Modifikationen und Abweichungen von den oben beschriebenen Details enthalten. Es ist beabsichtigt, dass die beigefügten Ansprüche solche Modifikationen und Variationen abdecken.

Claims (20)

  1. Ein nicht-transitorisches, maschinenlesbares Speichermedium, das Anweisungen enthält, die bei der Ausführung ein System dazu veranlassen,: Informationen über die Arbeitslast einer Arbeitslastsammlung erhalten; Anwenden eines maschinellen Lernmodells auf die Arbeitsbelastungsinformationen, wobei das maschinelle Lernmodell unter Verwendung von Trainingsinformationen trainiert wird, die Merkmale verschiedener Arten von Arbeitsbelastungen enthalten; und Erzeugen, durch das maschinelle Lernmodell, einer Identifikation eines ersten Dateisystems aus verschiedenen Typen von Dateisystemen, wobei das maschinelle Lernmodell einen Ausgabewert erzeugt, der dem ersten Dateisystem entspricht, das ein Kandidat ist, der zur Verwendung beim Speichern von Dateien der Arbeitslastsammlung bereitgestellt werden soll.
  2. Nicht-transitorisches maschinenlesbares Speichermedium nach Anspruch 1, wobei die Anweisungen bei der Ausführung das System veranlassen,: das maschinelle Lernmodell zu trainieren, das Folgendes umfasst: Extrahieren der Merkmale aus Eingabeinformationen, wobei die extrahierten Merkmale Merkmale umfassen, die sich auf Eingabe/Ausgabe (I/O)-Anforderungen der verschiedenen Arten von Arbeitslasten beziehen, und Erstellung von Merkmalsvektoren für die extrahierten Merkmale.
  3. Nicht-übertragbares maschinenlesbares Speichermedium nach Anspruch 2, wobei die Trainingsinformationen die Merkmalsvektoren umfassen, die in Bezug auf verschiedene Arbeitslastdomänen gekennzeichnet sind.
  4. Nichttransitorisches maschinenlesbares Speichermedium nach Anspruch 3, wobei das maschinelle Lernmodell vorhersagen soll, dass die Arbeitslastsammlung Teil einer ersten Arbeitslastdomäne der verschiedenen Arbeitslastdomänen ist, und die erste Arbeitslastdomäne dem ersten Dateisystem zuordnen soll.
  5. Nichttransitorisches maschinenlesbares Speichermedium nach Anspruch 2, wobei die Merkmale eine beliebige oder eine Kombination von Folgendem umfassen: eine Größe eines Lesevorgangs, eine Größe eines Schreibvorgangs, eine Angabe, ob eine Arbeitslast leseintensiv oder schreibintensiv ist, und ein E/A-Muster.
  6. Das nicht-transitorische maschinenlesbare Speichermedium nach Anspruch 2, wobei das Training des maschinellen Lernmodells weiterhin umfasst: Bestimmen eines Maßes für die Leistung des maschinellen Lernmodells, und als Reaktion darauf, dass das Maß ein Kriterium nicht erfüllt, eine weitere Iteration des Trainings durchzuführen, wobei das Training wiederholt wird, bis ein Maß für die Leistung des maschinellen Lernmodells das Kriterium in einer aktuellen Iteration erfüllt.
  7. Nicht-transitorisches maschinenlesbares Speichermedium nach Anspruch 6, wobei jede Iteration einer Vielzahl von Iterationen des Trainings die Parameter des Maschinenlernmodells aktualisiert.
  8. Nicht-transitorisches, maschinenlesbares Speichermedium nach Anspruch 6, wobei das Maß für die Leistung des maschinellen Lernmodells einen Verlust umfasst, der durch eine Verlustfunktion erzeugt wird.
  9. Nicht-transitorisches maschinenlesbares Speichermedium nach Anspruch 1, wobei die Anweisungen bei der Ausführung das System veranlassen,: durch das maschinelle Lernmodell den jeweiligen Kennzeichnungen, die den verschiedenen Arten von Dateisystemen entsprechen, Werte zuweisen, wobei jeder Wert der Werte eine Wahrscheinlichkeit der Auswahl eines jeweiligen Dateisystems der verschiedenen Arten von Dateisystemen für die Arbeitslastsammlung angibt.
  10. Nicht-transitorisches, maschinenlesbares Speichermedium nach Anspruch 9, wobei die Werte Wahrscheinlichkeitswerte umfassen, wobei jeder jeweilige Wahrscheinlichkeitswert der Wahrscheinlichkeitswerte eine Wahrscheinlichkeit darstellt, dass ein entsprechendes Etikett der Etiketten ein korrektes Etikett ist.
  11. nichttransitorisches maschinenlesbares Speichermedium nach Anspruch 1, wobei das maschinelle Lernmodell ein neuronales Netz umfasst.
  12. Nicht-transitorisches maschinenlesbares Speichermedium nach Anspruch 1, wobei die Anweisungen bei der Ausführung das System veranlassen,: Bereitstellung des ersten Dateisystems für die Arbeitslastsammlung auf der Grundlage der Identifizierung.
  13. Nicht-transitorisches maschinenlesbares Speichermedium nach Anspruch 12, wobei die Anweisungen bei der Ausführung das System veranlassen,: Pufferung von Ein-/Ausgabe-(I/O)-Anforderungen der Arbeitslastsammlung in einem virtuellen Dateisystem vor der Anwendung des maschinellen Lernmodells auf die Arbeitslastinformationen; und nach der Bereitstellung des ersten Dateisystems die gepufferten E/A-Anforderungen für das bereitgestellte Dateisystem bereitstellen.
  14. Nichttransitorisches maschinenlesbares Speichermedium nach Anspruch 12, wobei die Bereitstellung des ersten Dateisystems eine Bereitstellung des ersten Dateisystems auf Anforderung für die Arbeitslastsammlung ist.
  15. Ein System, das Folgendes umfasst: einen Prozessor; und ein nicht-übertragbares maschinenlesbares Speichermedium, das Anweisungen speichert, die auf dem Prozessor ausgeführt werden können, um: Informationen über die Arbeitslast einer Arbeitslastsammlung erhalten; Anwendung eines maschinellen Lernmodells auf die Arbeitsbelastungsinformationen, wobei das maschinelle Lernmodell unter Verwendung von Trainingsinformationen trainiert wird, die Merkmale verschiedener Arten von Arbeitsbelastungen enthalten; durch das maschinelle Lernmodell einen Wahrscheinlichkeitswert für eine Kategorie zu erzeugen, die einem ersten Dateisystem von verschiedenen Arten von Dateisystemen entspricht; und Verwendung des Wahrscheinlichkeitswerts für die Kategorie, die dem ersten Dateisystem entspricht, bei der Durchführung der On-Demand-Bereitstellung des ersten Dateisystems für die Workload-Sammlung, wobei das erste Dateisystem zur Verwendung beim Speichern von Dateien der Workload-Sammlung dient.
  16. System nach Anspruch 15, wobei die Kategorie eine erste Workload-Domäne aus einer Vielzahl verschiedener Workload-Domänen darstellt, und wobei die Anweisungen auf dem Prozessor ausführbar sind, um: die erste Workload-Domäne mit dem ersten Dateisystem korrelieren.
  17. System nach Anspruch 15, wobei die Anweisungen auf dem Prozessor ausführbar sind, um: Erzeugen von Wahrscheinlichkeitswerten für mehrere Kategorien, die mehreren Dateisystemen der verschiedenen Arten von Dateisystemen entsprechen, durch das maschinelle Lernmodell, wobei die Wahrscheinlichkeitswerte für die mehreren Kategorien den Wahrscheinlichkeitswert für die dem ersten Dateisystem entsprechende Kategorie umfassen; und auf der Grundlage der Wahrscheinlichkeitswerte feststellen, dass das erste Dateisystem für die Arbeitslastsammlung optimal ist.
  18. System nach Anspruch 15, wobei die Anweisungen auf dem Prozessor ausführbar sind, um: das maschinelle Lernmodell zu trainieren, das Folgendes umfasst: Extrahieren der Merkmale aus Eingabeinformationen, wobei die extrahierten Merkmale Merkmale umfassen, die sich auf Eingabe/Ausgabe (I/O)-Anforderungen der verschiedenen Arten von Arbeitslasten beziehen, und Erstellung von Merkmalsvektoren für die extrahierten Merkmale.
  19. Verfahren für ein System mit einem Hardware-Prozessor, das Folgendes umfasst: Training eines maschinellen Lernmodells, das Folgendes umfasst: Extrahieren von Merkmalen aus Workload-Informationen aus einer oder mehreren Quellen, wobei sich die Workload-Informationen auf verschiedene Arten von Workloads beziehen und wobei die extrahierten Merkmale Merkmale umfassen, die sich auf Eingabe/Ausgabe-Anforderungen (I/O) der verschiedenen Arten von Workloads beziehen, Erzeugung von Merkmalsvektoren der extrahierten Merkmale; und Zuweisung von Bezeichnungen zu den Merkmalsvektoren, um bezeichnete Merkmalsvektoren zu erzeugen, die beim Training des maschinellen Lernmodells verwendet werden; Empfang von Arbeitslastinformationen einer Arbeitslastsammlung; Anwendung des trainierten maschinellen Lernmodells auf die Arbeitslastinformationen; Erzeugen eines Wertes für eine Kategorie, die einem ersten Dateisystem von verschiedenen Arten von Dateisystemen entspricht, durch das trainierte maschinelle Lernmodell; und Verwendung des Wertes für die Kategorie, die dem ersten Dateisystem entspricht, bei der Durchführung der On-Demand-Bereitstellung des ersten Dateisystems für die Workload-Sammlung, wobei das erste Dateisystem zur Verwendung beim Speichern von Dateien der Workload-Sammlung dient.
  20. Verfahren nach Anspruch 19, wobei die den Merkmalsvektoren zugewiesenen Kennzeichnungen unterschiedliche Arbeitslastbereiche darstellen.
DE102022126866.7A 2022-07-29 2022-10-14 Bereitstellung von dateisystemen für die arbeitsbelastung Pending DE102022126866A1 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US17/816,276 2022-07-29
US17/816,276 US20240037067A1 (en) 2022-07-29 2022-07-29 File system provisioning for workload

Publications (1)

Publication Number Publication Date
DE102022126866A1 true DE102022126866A1 (de) 2024-02-01

Family

ID=89508596

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102022126866.7A Pending DE102022126866A1 (de) 2022-07-29 2022-10-14 Bereitstellung von dateisystemen für die arbeitsbelastung

Country Status (3)

Country Link
US (1) US20240037067A1 (de)
CN (1) CN117520280A (de)
DE (1) DE102022126866A1 (de)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20240070063A1 (en) * 2022-08-30 2024-02-29 Micron Technology, Inc. Sequential garbage collection
US20240104054A1 (en) * 2022-09-22 2024-03-28 Docusign, Inc. Smart content load

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005078419A (ja) * 2003-09-01 2005-03-24 Ricoh Co Ltd 情報処理装置及びファイル管理方法
EP1872249B1 (de) * 2005-04-07 2016-12-07 Adaptive Computing Enterprises, Inc. Zugang auf anfrage zu computerressourcen
KR101594915B1 (ko) * 2014-01-23 2016-02-17 서울대학교산학협력단 매니코어 클러스터 시스템 상에서 병렬 프로그래밍을 수행하는 방법 및 매니코어 클러스터 시스템
US9864749B2 (en) * 2014-06-27 2018-01-09 Netapp, Inc. Methods for provisioning workloads in a storage system using machine learning and devices thereof
US10956230B2 (en) * 2018-10-01 2021-03-23 Vmware, Inc. Workload placement with forecast
US11907675B2 (en) * 2019-01-18 2024-02-20 Uber Technologies, Inc. Generating training datasets for training neural networks
US11275672B2 (en) * 2019-01-29 2022-03-15 EMC IP Holding Company LLC Run-time determination of application performance with low overhead impact on system performance
US20220261295A1 (en) * 2021-02-05 2022-08-18 Qpicloud Technologies Private Limited Method and system for ai based automated capacity planning in data center
US12019532B2 (en) * 2021-04-14 2024-06-25 EMC IP Holding Company LLC Distributed file system performance optimization for path-level settings using machine learning
US11868261B2 (en) * 2021-07-20 2024-01-09 Oracle International Corporation Prediction of buffer pool size for transaction processing workloads

Also Published As

Publication number Publication date
CN117520280A (zh) 2024-02-06
US20240037067A1 (en) 2024-02-01

Similar Documents

Publication Publication Date Title
DE69934102T2 (de) System und verfahren zur model-mining von komplexen informationtechnologiesystemen
DE102022126866A1 (de) Bereitstellung von dateisystemen für die arbeitsbelastung
DE112019002948T5 (de) Feststellen einer optimalen speicherumgebung für datensätze und für das migrieren von datensätzen
DE602004003361T2 (de) System und verfahren zur erzeugung von verfeinerungskategorien für eine gruppe von suchergebnissen
Gaber et al. A survey of classification methods in data streams
DE112015000218B4 (de) Verfahren, System und Computerprogramm zum Abtasten einer Mehrzahl von Speicherbereichen in einem Arbeitsspeicher nach einer spezifizierten Anzahl von Ergebnissen
WO2020207268A1 (zh) 数据库性能调整方法、装置、设备、系统及存储介质
DE102014204842A1 (de) Clustering von Daten
DE202015009874U1 (de) Implementierung semistrukturierter Daten als ein Datenbankelement erster Klasse
DE112018003081T5 (de) Optimieren von benutzerzufriedenheit beim schulen eines kognitiven hierarchischen speicherverwaltungssystems
DE102013215009A1 (de) Verfahren und System zur Optimierung der Datenübertragung
DE112021001986T5 (de) Verfahren und System zum Verarbeiten von Datenaufzeichnungen
DE112021002820T5 (de) Dynamische automatisierung einer auswahl von pipeline-artefakten
DE112021002572T5 (de) Multikriterielles optimieren von anwendungen
DE112018001290T5 (de) Verfahren zum Schätzen der Löschbarkeit von Datenobjekten
DE112013000725T5 (de) Überwachen von Inhaltsablagen, Identifizieren von falsch klassifizierten Inhaltsobjekten und Vorschlagen einer Neuklassifizierung
DE112021005422T5 (de) Auf lernen beruhende arbeitslast-ressourcenoptimierung für datenbank-managementsysteme
DE112020002892T5 (de) Aktives lernen für den datenabgleich
DE102018010163A1 (de) Automatisches Generieren sinnvoller Nutzersegmente
DE112021004234T5 (de) Einsetzen von metalernen zum optimieren der automatischen auswahl von pipelinesdes maschinellen lernens
DE102021127522A1 (de) Verwaltung der arbeitsbelastung anhand eines trainierten modells
CN112966162A (zh) 一种基于数据仓库与中间件的科技资源集成方法及装置
DE112022002919T5 (de) Datenverteilung und sicherheit in einer mehrschichtigen speicher-infrastruktur
DE112020004801T5 (de) Intelligenter datenpool
DE102015015827A1 (de) Verfahren und Vorrichtung zum Aufbau einer Audio-Fingerabdruck-Datenbank und zur Suche nach einem Audio-Fingerabdruck

Legal Events

Date Code Title Description
R083 Amendment of/additions to inventor(s)