DE102007026104B4 - Verfahren zum dynamischen Ändern einer Dateidarstellung, Verfahren zum Verhindern von Dateiübergängen und ein Informaationssystem - Google Patents

Verfahren zum dynamischen Ändern einer Dateidarstellung, Verfahren zum Verhindern von Dateiübergängen und ein Informaationssystem Download PDF

Info

Publication number
DE102007026104B4
DE102007026104B4 DE102007026104.9A DE102007026104A DE102007026104B4 DE 102007026104 B4 DE102007026104 B4 DE 102007026104B4 DE 102007026104 A DE102007026104 A DE 102007026104A DE 102007026104 B4 DE102007026104 B4 DE 102007026104B4
Authority
DE
Germany
Prior art keywords
file
representation
access
write
file representation
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
DE102007026104.9A
Other languages
English (en)
Other versions
DE102007026104A1 (de
Inventor
Aziz Gulbeden
Ramesh Radhakrishnan
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.)
Dell Products LP
Original Assignee
Dell Products 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 Dell Products LP filed Critical Dell Products LP
Publication of DE102007026104A1 publication Critical patent/DE102007026104A1/de
Application granted granted Critical
Publication of DE102007026104B4 publication Critical patent/DE102007026104B4/de
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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
    • 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/1734Details of monitoring file system events, e.g. by the use of hooks, filter drivers, logs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0866Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches for peripheral storage systems, e.g. disk cache
    • GPHYSICS
    • 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/176Support for shared access to files; File sharing support
    • G06F16/1767Concurrency control, e.g. optimistic or pessimistic approaches
    • G06F16/1774Locking methods, e.g. locking methods for file systems allowing shared and concurrent access to files
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B27/00Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
    • G11B27/36Monitoring, i.e. supervising the progress of recording or reproducing

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)
  • Databases & Information Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

Verfahren zum dynamischen Ändern einer Dateidarstellung, aufweisend:Überwachen des Zugreifens auf eine Datei;Bestimmen eines der Datei zugeordneten Zugriffsmusters, wobei das Zugriffsmuster eine Betriebsart und eine Betriebsfrequenz für die Datei umfasst;Dynamisches Ändern der Dateidarstellung der Datei in eine andere Dateidarstellung auf der Grundlage des bestimmten der Datei zugeordneten Zugriffsmusters, wobei die andere Dateidarstellung eine große Dateidarstellung, eine normale Dateidarstellung oder eine Schreib-Dateidarstellung umfasst; undBestimmen durch Verwendung einer Sperre, die Ändern der Dateidarstellung für eine vorbestimmte Zeitdauer verhindert, wie häufig eine Darstellung einer Datei geändert wird.

Description

  • Gebiet der Offenbarung
  • Die vorliegende Offenbarung bezieht sich im Allgemeinen auf verteilte Dateisysteme. Insbesondere bezieht sich die vorliegende Offenbarung auf ein Verfahren zum dynamischen Ändern von einer Dateidarstellungen, ein Verfahren zum Verhindern von Dateiübergängen und ein Informationsverarbeitungssystem.
  • Hintergrund der Erfindung
  • Da der Wert und die Verwendung von Informationen beständig anwachsen, suchen Privatpersonen und Unternehmen nach zusätzlichen Möglichkeiten, um Informationen zu verarbeiten und zu speichern. Eine den Benutzern verfügbare Option sind Informationsverarbeitungssysteme. Im Allgemeinen verarbeitet ein Informationsverarbeitungssystem, übersetzt, speichert und/oder überträgt Informationen oder Daten für geschäftliche, persönliche oder andere Zwecke, wobei den Benutzern ermöglicht wird, Nutzen aus dem Wert der Information zu ziehen. Da Technologie und Informationsverarbeitungsbedürfnisse und Erfordernisse zwischen verschiedenen Benutzern oder Anwendungen variieren, können Informationsverarbeitungssysteme ebenfalls variieren, hinsichtlich welche Information verarbeitet werden, wie die Informationen verarbeitet werden und wie viel Informationen verarbeitet, gespeichert oder übertragen werden und wie schnell und wirkungsvoll die Informationen verarbeitet, gespeichert oder übertragen werden können. Die Unterschiede zwischen den Informationsverarbeitungssystemen erlauben es, dass Informationsverarbeitungssystem allgemein sind oder für einen speziellen Benutzer oder eine spezielle Anwendung konfiguriert sind, wie Verarbeitung von Finanztransaktionen, Reservierungen von Fluglinien, Datenspeicherungen in Unternehmen oder weltweite Kommunikation. Informationsverarbeitungssysteme können zusätzlich eine Vielzahl von Hardware und Software Komponenten einschließen, die so ausgelegt werden können, dass sie Informationen verarbeiten, speichern und übertragen können und ein oder mehrere Rechnersysteme, Datenspeichersysteme und Netzwerksysteme umfassen können.
  • Gewisse Arten von Informationsverarbeitungssystemen, zum Beispiel verteilte Dateisysteme, können verschiedene Dateidarstellungsschemata einsetzen, die auf der Basis des Systemtyps variieren können. Manche verteilte Dateisysteme, wie etwa ein paralleles virtuelles Dateisystem (parallel virtual file system (PVFS)), können Striping (in Streifen zerlegen) verwenden, um das Leistungsverhalten für große Operationen zu verbessern. Andere Systeme können einen protokoll- (log) oder einen journalbasierten (journal based) Ansatz für Geschwindigkeit und Zuverlässigkeit verwenden. Noch andere Systeme können einfache (plain) oder normale (regular) Dateien verwenden, wegen der relativen Einfachheit von solchen Dateien.
  • Striping und parallele Ein-/Ausgabe- (I/O) Operationen funktionieren gut für gro-ße Dateisystemoperationen. Für kleine Dateisystemoperationen kann jedoch Striping den Mehraufwand (overhead) vergrößern und zu einem relativ schlechten Leistungsverhalten führen. Für schreibintensive Operationen können protokoll- oder journalbasierte Systeme zu einem relativ höheren Leistungsverhalten führen, weil diese Systeme Cash-Speicher wirksam nutzen können und das Schreiben sequenziell ausführen können. Lese-Operationen können in solchen Systemen zu einem größeren Mehraufwand führen.
  • Verteilte Dateisysteme, die verschiedene Dateidarstellungsschemata unterstützen, können es einem Benutzer ermöglichen manuell zu entscheiden, wie eine Datei gespeichert werden soll. Andere Parameter, wie etwa die Stripe-Größe (stripe size) können festgelegt sein oder von dem Benutzer manuell festgesetzt werden. Diese Systeme stellen keinen automatischen Weg bereit, um diese Entscheidungen durch das Dateisystem und nicht den Benutzer zu treffen.
  • Die US 2003/0210790 A1 offenbart ein Verfahren zum Implementieren eines Dateisystems, das das Erzeugen einer Mehrzahl von Verschlüsselungsgruppen für eine Mehrzahl von Dateien basierend auf Attributen von jeder Datei umfasst. Ein Ereignis wird detektiert und eine ausgewählte Dateiverschlüsselungsgruppe wird in Antwort auf das Ereignis in eine Mehrzahl von Untergruppen aufgeteilt. Die Aufteilung basiert auf einem Zugriffsmuster für jede Datei in der ausgewählten Dateiverschlüsselungsgruppe.
  • Die US 2004/0002982 A1 offenbart ein Verfahren zum Editieren von Konfigurationsdaten, so dass sich Änderungen in einer Darstellung der Konfigurationsdaten in einer oder mehreren anderen Darstellungen der Konfigurationsdaten widerspiegeln. Die geänderten Konfigurationsdaten können ohne Neustart des entsprechenden Programmmoduls wirksam werden. Mehrere Änderungen der Konfigurationsdaten können zusammengeführt werden. Eine Unterscheidungsoperation kann zum Identifizieren eines geänderten Teils der Konfigurationsdaten verwendet werden. Für eine oder mehrere geänderte Teile kann ein Aktualisierungsprogramm („updategram“) erzeugt werden und zum Aktualisieren einer Mehrzahl von Programmmodulen von mehreren verbundenen Computersystemen verwendet werden.
  • Die US 2006/0080365 A1 offenbart ein Verfahren und System zum Speichern einer Datei in einer Speicherdomäne. Das Verfahren umfasst die Überwachung des Zugriffs auf eine Datei, um ein Dateizugriffsmuster zu bestimmen, die Kennzeichnung der Datei, um das identifizierte Zugriffsmuster anzuzeigen, und die Verwendung der Kennzeichnung, um ein geeignetes Speichermedium in einer Speicherdomäne für die Datei, wenn verfügbar, auf der Grundlage des Zugriffsmusters zu identifizieren.
  • Kurze Beschreibung der Zeichnungen
  • Die vorliegende Erfindung wurde gemacht, um das oben erwähnte Problem zu lösen, und es ist deshalb eine Aufgabe der vorliegenden Erfindung, ein Verfahren zum dynamischen Ändern von einer Dateidarstellungen, ein Verfahren zum Verhindern von Dateiübergängen und ein Informationsverarbeitungssystem bereitzustellen.
  • Diese Aufgabe wird durch die Merkmale des Patentanspruchs 1, die Merkmale des nebengeordneten Patentanspruchs 9, und die Merkmale des nebengeordneten Patentanspruchs 11 gelöst. Vorteilhafte Weiterbildungen der Erfindung sind Gegenstand der Unteransprüche.
  • Es ist selbstverständlich, dass zur Einfachheit und Klarheit der Veranschaulichung, Elemente, die in den Figuren veranschaulicht sind, nicht notwendigerweise maßstabsgerecht gezeichnet wurden. Beispielsweise sind die Abmaße von einigen Elementen übertrieben relativ zu anderen Elementen. Ausführungsformen, die Lehren der vorliegenden Offenbarung berücksichtigen, werden gezeigt und beschrieben mit Bezug auf die hierin präsentierten Zeichnungen, in denen:
    • 1 ein allgemeines Diagramm ist, das ein Informationsverarbeitungssystem veranschaulicht;
    • 2 ein Flussdiagramm ist, das ein Verfahren zum Überwachen von Dateien innerhalb eines Informationsverarbeitungssystems veranschaulicht;
    • 3 ein Flussdiagramm ist, das ein Verfahren zum dynamischen Ändern von Dateidarstellungen innerhalb eines Informationsverarbeitungssystems veranschaulicht; und
    • 4 ein Flussdiagramm ist, das ein Verfahren zum Verhindern von Änderungen von Dateidarstellungen innerhalb eines Informationsverarbeitungssystems veranschaulicht.
  • Die Verwendung von gleichen Bezugszeichen in verschiedenen Abbildungen bezeichnet ähnliche oder gleiche Elemente.
  • Detaillierte Beschreibung der Zeichnungen
  • Ein Informationsverarbeitungssystem wird offenbart und kann einen Prozessor und einen Speicher in Kommunikation mit dem Prozessor umfassen. Weiterhin kann ein Dateizugriffsmonitor in den Speicher eingebettet sein. Der Dateizugriffsmonitor kann eine oder mehrere Dateien innerhalb des Informationsverarbeitungssystems überwachen und eine Dateidarstellung ändern, die jeder der einen oder der mehreren Dateien zugeordnet ist auf der Grundlage von Zugriffsmustern, die jeder der einen oder der mehreren Dateien zugeordnet sind.
  • Wie oben angedeutet, wird die folgende Beschreibung in Verbindung mit den Figuren bereitgestellt, um bei dem Verständnis der hierin offenbarten Lehren mitzuwirken. Die folgende Diskussion wird sich auf spezielle Ausformungen und Ausführungsformen der Lehren konzentrieren. Dieser Fokus ist vorgesehen, um beim Beschreiben der Lehren mitzuwirken und sollte nicht als eine Begrenzung des Geltungsbereichs oder der Anwendbarkeit der Lehren interpretiert werden. Zum Beispiel fokussiert sich viel von dem Folgenden auf dynamisches Ändern von Dateidarstellungen innerhalb eines verteilten Dateisystems. Obwohl die Lehren sicherlich in dieser Anwendung verwendet werden können, können die Lehren ebenso in anderen Anwendungen und mit mehreren verschiedenen Arten von Architekturen, wie etwa verteilte Rechnerarchitekturen, Client-/Serverarchitekturen oder Middleware-Serverarchitekturen, verwendet werden.
  • Zunächst unter Bezug auf 1 ist ein Informationsverarbeitungssystem gezeigt und ist im Allgemeinen mit 100 bezeichnet. Für Zwecke dieser Offenbarung kann ein Informationsverarbeitungssystem irgend ein Mittel oder eine Anhäufung von Mitteln umfassen, die betriebsfähig sind, um irgendeine Form von Information, Intelligenz oder Daten für geschäftliche, wissenschaftliche, zum Steuern oder für andere Zwecke zu berechnen, klassifizieren, verarbeiten, senden, empfangen, abfragen, hervorbringen, schalten, speichern, anzeigen, bekanntmachen, nachweisen, aufnehmen, vervielfältigen, bearbeiten oder benutzen. Ein Informationsverarbeitungssystem kann beispielsweise ein Personal Computer, ein Netzwerkspeichergerät oder irgendeinen anderes geeignetes Gerät sein und kann in Größe, Form, Leistungsfähigkeit, Funktionsweise und Preis variieren. Das Informationsverarbeitungssystem kann einen Direktzugriffspeicher (RAM) umfassen, eine oder mehrere Verarbeitungsressourcen, wie etwa eine zentrale Prozessoreinheit (CPU) oder Steuerungslogik in Hardware oder Software, Festwertspeicher (ROM) und/oder andere Arten von nichtflüchtigem Speicher. Zusätzliche Bestandteile des Informationsverarbeitungssystems können ein oder mehrere Plattenlaufwerke, einen oder mehrere Netzwerkanschlüsse für die Kommunikation mit externen Geräten beinhalten, ebenso wie verschiedene Ein- und Ausgabegeräte (I/O devices), wie eine Tastatur, eine Maus und einen Videobildschirm. Das Informationsverarbeitungssystem kann ebenfalls einen oder mehrere Busse umfassen, die betriebsfähig sind, um Nachrichten zwischen verschiedenen Hardware Komponenten zu übertragen.
  • In einer bestimmten Ausführungsform kann, wie in 1 gezeigt, das Informationsverarbeitungssystem 100 ein Netzwerk 102 umfassen. Beispielsweise kann das Netzwerk 102 ein weiträumiges Netz (wide area network (WAN)), ein lokales Netz (local area network (LAN)) oder Kombinationen davon sein.
  • Wie in 1 veranschaulicht, kann das System 100 einen ersten Benutzercomputer 104, einen zweiten Benutzercomputer 106 und einen N-ten Benutzercomputer 108 umfassen, die an das Netzwerk angeschlossen sind. Der erste Benutzercomputer 104 kann einen Prozessor 110 und einen Speicher 112, der an den Prozessor 110 angeschlossen ist, umfassen. Der zweite Benutzercomputer 106 kann einen Prozessor 114 und einen Speicher 116, der an den Prozessor 114 angeschlossen ist, umfassen. Zusätzlich kann der N-te Benutzercomputer 108 einen Prozessor 118 und einen Speicher 120, der an den Prozessor 118 angeschlossen ist, umfassen.
  • Das System 100 kann weiterhin einen ersten Dateiserver 122, einen zweiten Dateiserver 124 und einen N-ten Dateiserver 126, die an das Netzwerk angeschlossen sind, umfassen. Der erste Dateiserver 122 kann einen Prozessor 128 und einen Speicher 130, der an den Prozessor 128 angeschlossen ist, umfassen. Der zweite Dateiserver 124 kann einen Prozessor 132 und einen Speicher 134, der an den Prozessor 132 angeschlossen ist, umfassen. Zudem kann der N-te Dateiserver 126 einen Prozessor 136 und einen Speicher 138, der an den Prozessor 136 angeschlossen ist, umfassen. In einer besonderen Ausführungsform können die Dateiserver 122, 124, 126 an das Netzwerk 102 über einen Dateimanagementserver 140 angeschlossen sein. Der Dateimanagementserver 140 kann einen Prozessor 142 und einen Speicher 144, der an den Prozessor 142 angeschlossen ist, umfassen. Ein Dateizugriffsmonitor 146 kann in den Speicher 144 des Dateimanagementservers 140 eingebettet sein. Der Dateizugriffsmonitor 146 kann Logik umfassen, die ausgeführt werden kann, um eine oder mehrere Dateien zu verwalten, die innerhalb der Dateiserver 122, 124, 126 gespeichert sein können.
  • In einer alternativen Ausführungsform kann der Dateizugriffsmonitor 146 in den Speicher 130, 134, 138 von einem der anderen Server 122, 124, 126 eingebettet sein. Weiterhin kann der Dateizugriffsmonitor 146 in den Speicher 112, 116, 120 von einem der Benutzercomputer 104, 106, 108 eingebettet sein.
  • In einer besonderen Ausführungsform können die Dateien in den Servern 122, 124, 126 als drei verschiedene Darstellungen gespeichert werden. Beispielsweise kann eine bestimmte Datei als eine große Dateidarstellung, eine normale (regulär) Dateidarstellung oder eine Schreib-Dateidarstellung gespeichert werden. Die gro-ße Dateidarstellung kann eine striped (in Streifen zerlegte) Dateidarstellung umfassen, in welcher die Datei in Streifen geteilt werden kann und wobei jeder Streifen auf einem unterschiedlichen Server gespeichert werden kann. Die Stripe-Größe ist ein Parameter, der durch einen Benutzer gesetzt oder definiert werden kann. Die normale Dateidarstellung zeigt an, dass die Datei, wie sie ist, gespeichert werden soll. Die Schreib-Dateidarstellung ist eine Darstellung für eine Datei, die effizient für Dateien ist, die häufige Schreib-Operationen umfassen. Die Schreib-Dateidarstellung kann eine protokollstrukturierte Dateidarstellung umfassen.
  • Der Dateisystemmonitor 146 kann die Dateien innerhalb des Systems 100 auf Dateiniveau ohne Unterbrechung überwachen. Weiterhin kann auf der Grundlage der Dateiaktivität der Dateisystemmonitor 146 eine Dateidarstellung für jede Datei wählen, die im Wesentlichen die Effizienz des Systems 100 maximiert. Der Dateisystemmonitor 146 kann jede Datei innerhalb des Systems 100 überwachen, um zu bestimmen, ob die gegenwärtige Dateidarstellung jeder Datei eine optimale Dateidarstellung ist. Ebenso kann der Dateisystemmonitor 146 eine optimale Dateidarstellung für jede Datei bestimmen auf der Grundlage der Zugriffscharakteristik von jeder Datei. Zusätzlich kann der Dateisystemmonitor 146 dynamisch eine Dateidarstellung von jeder Datei ändern von einer normalen Dateidarstellung zu einer großen Dateidarstellung, von einer normalen Dateidarstellung zu einer Schreib-Dateidarstellung, von einer großen Dateidarstellung zu einer normalen Dateidarstellung und von einer Schreib-Dateidarstellung zu einer normalen Dateidarstellung.
  • In einer besonderen Ausführungsform kann, falls der Dateisystemmonitor 146 feststellt, dass ein Zugriffsmuster für eine bestimmte Datei für eine andere Dateidarstellung geeignet ist, der Dateisystemmonitor 146 automatisch und dynamisch die Dateidarstellung ändern, um die Leistung des Systems 100 zu erhöhen. Der Dateisystemmonitor 146 kann Metadaten-Informationen verfolgen, zum Beispiel Operationsart, Operationsfrequenz und Dateigröße, die der Operation zugeordnet ist, für jede Datei, die erzeugt und in dem System 100 gespeichert ist.
  • Falls in einer besonderen Ausführungsform der Dateisystemmonitor 146 bestimmt, dass der Zugriff auf eine normale Datei in großen Blockgrößen geschieht, kann der Dateisystemmonitor 146 ebenfalls die Datei von einer normalen Dateidarstellung in eine große Dateidarstellung umwandeln, zum Beispiel in eine striped Datei, um Vorteil aus parallelem Zugriff zu ziehen. Die Schwelle, um eine Zugriffsgröße als groß einzuteilen, kann im Voraus durch Systemdesigner bestimmt werden oder das Dateisystem kann eine oder mehrere Heuristiken verwenden, um die Schwelle zu bestimmen. Falls der Dateisystemmonitor 146 bestimmt, dass der Zugriff auf eine große Datei mit zufälligen Adressabständen auftritt, kann der Dateisystemmonitor 146 die große Dateidarstellung in eine normale Dateidarstellung umwandeln. Diese Umwandlung kann zusätzlichen Mehraufwand minimieren durch Vermeiden der Notwendigkeit mehrere Eingangs-/Ausgangsserver zu verbinden, um die große Dateidarstellung zu bearbeiten.
  • Falls weiterhin der Dateisystemmonitor 146 bestimmt, dass die Menge an Schreibvorgängen (writes) für eine normale Datei wesentlich größer als die Menge von Lesevorgängen (reads) von derselben normalen Datei ist, kann der bei Dateisystemmonitor 146 die normale Datei in eine Schreib-Dateidarstellung umwandeln, zum Beispiel eine protokollstrukturierte Dateidarstellung, um Vorteil aus dem sequenziellen Zugriff auf den Speicher zu ziehen. Zusätzlich kann, falls der Dateisystemmonitor 146 feststellt, dass eine Menge von Lesevorgängen einer Schreib-Dateidarstellung wesentlich größer als eine Menge von Schreibvorgängen derselben Datei ist, der Dateisystemmonitor 146 die Schreib-Dateidarstellung in eine normale Dateidarstellung umwandeln, um den Mehraufwand zu reduzieren, der mit dem Lesen des Protokolls der Datei verbunden ist.
  • Falls die Entscheidung getroffen ist, die Art in der eine Datei gespeichert ist zu ändern, kann der Dateisystemmonitor 146 den Übergang transparent durchführen. Folglich können eine oder mehrere Anwendungen, die auf die Datei zugreifen weiterhin Operationen auf der Datei durchführen während der Übergang stattfindet. Um die Einbuße zu verringern, die in Folge des Mehraufwands während des Änderns der Art wie eine Datei dargestellt ist, erfahren wird, können einige Grenzen darüber gesetzt werden, wie häufig eine Darstellung einer Datei geändert werden kann. Zum Beispiel kann eine bestimmte Datei nur einmal oder zweimal pro Tausend Zugriffe durch die Verwendung einer Sperre geändert werden, die Ändern der Dateidarstellungsoperation für eine vorbestimmte Zeitdauer verhindert.
  • Der Dateisystemmonitor 146 kann ebenfalls Übergänge für eine bestimmte Zeit verzögern, um ein Dateizugriffsmuster zu bestätigen. Dies kann die Anzahl der Übergänge begrenzen und kann Mehraufwandseinbußen infolge des Fällens von inkorrekten Entscheidungen vermeiden. In einer besonderen Ausführungsform können die hierin beschriebenen Schwellenwerte, die Änderungen zwischen verschiedenen Dateidarstellungen auslösen, manuell oder durch Systemingenieure festgesetzt sein. Alternativ kann der Dateisystemmonitor 146 die Schwellenwerte auf der Grundlage von einer oder mehreren Heuristiken bestimmen. Weiterhin kann der Dateisystemmonitor 146 warten eine Änderung an einer Datei durchzuführen, falls es keine offenen Zugriffsberechtigungen für die fragliche Datei gibt. Dies kann im Wesentlichen Mehraufwandsfragen aus der Perspektive eines Benutzers eliminieren und kann sicherstellen, dass der Benutzer die Datei nicht für irgendwelche Operationen offen hat. Folglich können dem Benutzer irgendwelche Übergänge der Dateidarstellung unbemerkt bleiben.
  • Durch Verwenden der hierin beschriebenen Verfahren kann das System 100 ein optimales Darstellungsschema für die darin gespeicherten Dateien bestimmen, und das System 100 kann die Effizienz der Bearbeitung dieser Dateien verbessern.
  • Mit Bezug auf 2 ist ein Verfahren zum Überwachen von einer oder mehreren Dateien gezeigt, und es beginnt bei Block 200. Bei Block 200 kann ein Dateizugriffsmonitor auf eine Mehrzahl von Dateien innerhalb eines Systems zugreifen, welches einen oder mehrere Dateiserver aufweist, zum Beispiel das hierin beschriebene System 100. Bei Entscheidungsschritt 202 kann der Dateizugriffsmonitor bestimmen, ob ein bestimmter Zugriff eine große Dateioperation oder eine kleine Dateioperation umfasst. In einer besonderen Ausführungsform kann ein Zugriff als große Dateioperation betrachtet werden, falls der Zugriff einen Block von Daten von größer oder gleich einem Megabyte (1 MB) umfasst.
  • Bei Entscheidungsschritt 202 fährt, falls der Zugriff eine große Dateioperation umfasst, das Verfahren zu Block 204 fort und ein großes/kleines Zugriffsverhältnis kann vergrößert werden. Das große/kleine Zugriffsverhältnis kann einen gro-ßen Zugriffszähler und einen kleinen Zugriffszähler umfassen und das gro-ße/kleine Zugriffsverhältnis kann vergrößert werden durch Vergrößern des großen Zugriffszählers. Alternativ kann das große/kleine Zugriffsverhältnis vergrößert werden durch Verkleinern des kleinen Zugriffszählers. Bei Entscheidungsschritt 202 kann, falls der Zugriff eine kleine Dateioperation umfasst, das Verfahren zu Block 206 weitergehen und das groß/klein Verhältnis kann verkleinert werden. Das groß/klein Verhältnis kann verkleinert werden durch Vergrößern des kleinen Zugriffszählers. Alternativ kann das groß/klein Verhältnis verkleinert werden durch Verkleinern des großen Zugriffszählers.
  • Von Block 204 oder Block 206 kann das Verfahren zu Entscheidungsschritt 208 weitergehen und der Dateizugriffsmonitor kann bestimmen, ob der Zugriff auf die Datei eine Lese-Operation oder eine Schreib-Operation umfasst. Falls der Dateizugriff eine Lese-Operation umfasst, kann das Verfahren zu Block 210 fortfahren und ein Lese-/Schreib-Verhältnis kann vergrößert werden. Das Lese-/Schreib-Zugriffsverhältnis kann einen Lese-Zugriffszähler und einen Schreib-Zugriffszähler umfassen. Weiterhin kann das Lese-/Schreib-Zugriffsverhältnis vergrößert werden durch Vergrößern des Lese-Zugriffszählers. Alternativ kann das Lese-/Schreib-Zugriffsverhältnis vergrößert werden durch Verkleinern des Schreib-Zugriffzählers. Bei Entscheidungsschritt 208 kann, falls der Zugriff eine Schreib-Datenoperation umfasst, das Verfahren zu Block 212 gehen und das Lese-/Schreib-Verhältnis kann verkleinert werden. Das Lese-/Schreib-Verhältnis kann verkleinert werden durch Vergrößern des Schreib-Zugriffzählers. Alternativ kann das Lese-/Schreib-Verhältnis verkleinert werden durch Verkleinern des Schreib-Zugriffszählers.
  • Von Block 210 oder Block 212 kann das Verfahren zu Entscheidungsschritt 214 fortfahren und der Dateizugriffsmonitor kann bestimmen, ob der Zugriff auf die Dateien geendet hat. Falls der Zugriff nicht geendet hat, kann das Verfahren zu Block 200 zurückkehren und fährt wie darin beschrieben fort. Andernfalls, falls der Zugriff geendet hat, kann das Verfahren bei Zustand 216 enden.
  • Nun Bezug nehmend auf 3 ist ein Verfahren zum dynamischen Ändern von Dateidarstellungen gezeigt. Das Verfahren kann durch einen Dateizugriffsmonitor ausgeführt werden, zum Beispiel durch den gezeigten und oben in Verbindung mit dem System 100 beschriebenen Dateizugriffsmonitor 146. Beginnend bei Block 300 kann der Dateizugriffsmonitor Zugriff auf eine oder mehrere Dateien innerhalb des Systems 100 überwachen. Bei Entscheidungsschritt 302 kann der Dateizugriffsmonitor eine Dateidarstellung bestimmen, die der Datei zugeordnet ist. Beispielsweise kann die Dateidarstellung eine große Dateidarstellung, eine normale Dateidarstellung oder eine Schreib-Dateidarstellung sein. Weiterhin kann die große Dateidarstellung eine striped Datei sein und die Schreib-Dateidarstellung kann eine protokollstrukturierte Datei sein.
  • Falls die Datei eine striped Datei ist, kann das Verfahren zu Entscheidungsschritt 304 fortfahren und der Dateizugriffsmonitor kann bestimmen, ob der Zugriff auf die striped Datei bei zufälligen Adressabständen erfolgt. Falls nicht, schreitet das Verfahren zu Block 306 fort und der Dateizugriffsmonitor behält die Datei als eine striped Datei bei. Das Verfahren kann dann zu Entscheidungsschritt 308 fortfahren und der Dateizugriffsmonitor kann bestimmen, ob der Zugriff auf die Dateien in dem System geendet hat. Falls nicht, kann das Verfahren zu Block 300 zurückkehren und fährt wie darin beschrieben fort. Falls der Zugriff auf die Dateien endet, kann das Verfahren bei Zustand 3 10 enden.
  • Nach der Rückkehr zu Entscheidungsschritt 304 kann, falls der Zugriff auf die striped Datei bei zufälligen Adressabständen erfolgt, das Verfahren zu Block 312 gehen und der Dateizugriffsmonitor kann die striped Datei in eine normale Datei ändern. In einer besonderen Ausführungsform kann das Ändern der striped Datei in eine normale Datei zusätzlichen Mehraufwand minimieren durch Vermeiden der Notwendigkeit mehrere Eingangs-/Ausgangsserver zu verbinden, um die gro-ße Dateidarstellung zu bearbeiten. Von dem Block 312 kann das Verfahren zu Entscheidungsschritt 308 weiter gehen und fährt wie darin beschrieben fort.
  • Nach der Rückkehr zu Entscheidungsschritt 302 kann, falls die Datei eine normale Datei ist, das Verfahren sich zu Entscheidungsschritt 314 bewegen. Bei Entscheidungsschritt 314 kann der Dateizugriffsmonitor bestimmen, ob ein großes/kleines Zugriffsverhältnis für die Dateien größer als eine Schwelle ist. Zum Beispiel kann die Schwelle fünf sein. Falls das große/kleine Zugriffsverhältnis größer als die Schwelle ist, kann das Verfahren sich zu Block 316 bewegen und der Dateizugriffsmonitor kann die normale Datei in eine striped Datei ändern. Danach kann das Verfahren sich zu Entscheidungsschritt 308 bewegen und wie darin beschrieben fortfahren.
  • Bei Entscheidungsschritt 314 kann, falls das große/kleine Zugriffsverhältnis niedriger als die Schwelle ist, das Verfahren zu Entscheidungsschritt 318 fortfahren und der Dateizugriffsmonitor kann bestimmen, ob das Lese-/Schreib-Verhältnis geringer als eine Schwelle ist. Falls das Lese-/Schreib-Verhältnis nicht geringer als die Schwelle ist, kann das Verfahren zu Block 320 weitergehen und der Dateizugriffsmonitor kann die Datei als eine normale Datei beibehalten. Das Verfahren kann sich dann zu Entscheidungsschritt 308 bewegen und wie darin beschrieben fortfahren.
  • Nach der Rückkehr zu Entscheidungsschritt 318 kann, falls das Lese-/Schreib-Verhältnis geringer als die Schwelle ist, das Verfahren zu Block 322 fortfahren und der Dateizugriffsmonitor kann die normale Datei in eine protokollstrukturierte Datei ändern. In einer besonderen Ausführungsform kann die protokollstrukturierte Dateidarstellung bessere Effizienz für Schreib-Operationen ergeben. Weiterhin kann, indem das Lese-/Schreib-Verhältnis abnimmt, dies ein Anzeichen dafür sein, dass der Zugriff auf die Datei größere Schreib-Operationen als Lese-Operationen umfasst. Von Block 322 kann das Verfahren zu Entscheidungsschritt 308 gehen und wie darin beschrieben fortfahren.
  • Nach der Rückkehr zu dem Entscheidungsschritt 302 kann, falls die Dateidarstellung protokollstrukturiert ist, das Verfahren zu Entscheidungsschritt 324 gehen und der Dateizugriffsmonitor kann bestimmen, ob ein Lese-/Schreib-Verhältnis, das der protokollstrukturierten Datei zugeordnet ist, größer als eine Schwelle ist. Falls das Lese-/Schreib-Verhältnis nicht größer als die Schwelle ist, kann das Verfahren zu Block 326 gehen und der Dateizugriffsmonitor kann die Datei als eine protokollstrukturierte Datei beibehalten. Das Verfahren kann dann zu Entscheidungsschritt 308 gehen und wie darin beschrieben fortfahren.
  • Bei Entscheidungsschritt 324 kann, falls das Lese-/Schreib-Verhältnis größer als die Schwelle ist, das Verfahren zu Block 328 gehen und der Dateizugriffsmonitor kann die protokollstrukturierte Datei in eine normale Datei ändern. Danach kann das Verfahren zu Entscheidungsschritt 308 gehen und wie darin beschrieben fortfahren.
  • Nun Bezug nehmend auf 4 ist ein Verfahren zum Verhindern von Dateidarstellungsübergängen gezeigt. In einer besonderen Ausführungsform kann das Verfahren durch einen Dateizugriffsmonitor ausgeführt werden, zum Beispiel den Dateizugriffsmonitor 146, der in Verbindung mit dem System 100 gezeigt und oben beschrieben ist. Beginnend bei Block 400 kann der Dateizugriffsmonitor jede Datei innerhalb des Systems 100 überwachen. Bei Entscheidungsschritt 402 kann der Dateizugriffsmonitor bestimmen, ob eine Übergangssperre auf einer bestimmten Datei, auf die zugegriffen werden soll, liegt. Falls dem so ist, kann das Verfahren zu Entscheidungsschritt 404 gehen und der Dateizugriffsmonitor kann bestimmen, ob die Übergangssperre auf der Datei abgelaufen ist. Falls die Übergangssperre abgelaufen ist, kann das Verfahren zu Block 406 gehen und der Dateizugriffsmonitor kann einen Übergang zu einer anderen Dateidarstellung verhindern. Danach kann das Verfahren zu Entscheidungsschritt 408 gehen und der Dateizugriffsmonitor kann bestimmen, ob der Zugriff auf die Dateien des Systems geendet hat. Falls der Zugriff endet, kann das Verfahren bei Zustand 410 enden. Andernfalls, falls der Zugriff weitergeht, kann das Verfahren zu Block 400 zurückkehren und wie darin beschrieben fortfahren.
  • Bei Entscheidungsschritt 402 kann, falls keine Übergangssperre auf der Datei ist, das Verfahren zu Entscheidungsschritt 412 fortfahren. Das Verfahren kann auch von Entscheidungsschritt 404 zu Entscheidungsschritt 412 fortfahren, falls die Übergangssperre abgelaufen ist.
  • Bei Entscheidungsschritt 412 kann der Dateizugriffsmonitor bestimmen, ob der Zugriff auf die Datei die Änderung der Dateidarstellung veranlasst hat. Beispielsweise kann sich die Dateidarstellung ändern von einer striped Datei zu einer normalen Datei, von einer normalen Datei zu einer striped Datei, von einer striped Datei zu einer protokollstrukturierten Datei oder von einer protokoll strukturierten Datei zu einer normalen Datei. Falls der Zugriff keine Änderung in der Dateidarstellung verursacht hat, kann das Verfahren zu Entscheidungsschritt 408 gehen und wie darin beschrieben fortfahren.
  • Bei Entscheidungsschritt 412 kann, falls der Zugriff die Änderung der Dateidarstellung verursacht, das Verfahren zu Block 414 gehen und der Dateizugriffsmonitor kann einen Übergangszähler für diese Datei vergrößern. Nach dem Weitergehen zu Entscheidungsschritt 416 kann der Dateizugriffsmonitor bestimmen, ob der Übergangszähler für diese Datei größer als eine Schwelle ist. Falls der Übergangszähler nicht größer als die Schwelle ist, kann das Verfahren zu Entscheidungsschritt 408 gehen und wie darin beschrieben fortfahren. Umgekehrt, falls der Übergangszähler größer als die Schwelle ist, kann das Verfahren zu Block 418 fortfahren und der Dateizugriffsmanager kann eine Übergangssperre auf die Datei legen, um einen Übergang zu einer anderen Dateidarstellung zu verhindern. Danach kann das Verfahren zu Entscheidungsschritt 408 gehen und wie darin beschrieben fortfahren.
  • Mit der hierin beschriebenen Konfigurationsstruktur können das System und Verfahren ein System und Verfahren zum dynamischen Ändern der Dateidarstellungen innerhalb eines verteilten Dateisystems bereitstellen. Beispielsweise kann die Dateidarstellung von einer striped Datei zu einer normalen Datei, von einer normalen Datei zu einer striped Datei, von einer normalen Datei zu einer protokollstrukturierten Datei oder von einer protokollstrukturierten Datei zu einer normalen Datei geändert werden. Weiter kann das System eine bestimmte Datei sperren, um zu verhindern, dass sich die Dateidarstellung zu häufig ändert.

Claims (19)

  1. Verfahren zum dynamischen Ändern einer Dateidarstellung, aufweisend: Überwachen des Zugreifens auf eine Datei; Bestimmen eines der Datei zugeordneten Zugriffsmusters, wobei das Zugriffsmuster eine Betriebsart und eine Betriebsfrequenz für die Datei umfasst; Dynamisches Ändern der Dateidarstellung der Datei in eine andere Dateidarstellung auf der Grundlage des bestimmten der Datei zugeordneten Zugriffsmusters, wobei die andere Dateidarstellung eine große Dateidarstellung, eine normale Dateidarstellung oder eine Schreib-Dateidarstellung umfasst; und Bestimmen durch Verwendung einer Sperre, die Ändern der Dateidarstellung für eine vorbestimmte Zeitdauer verhindert, wie häufig eine Darstellung einer Datei geändert wird.
  2. Verfahren nach Anspruch 1, weiterhin aufweisend: Vergrößern eines großen/kleinen Zugriffsverhältnisses für die Datei, falls Zugreifen auf die Datei die große Dateioperation umfasst; und Verkleinern des großen/kleinen Zugriffsverhältnisses für die Datei, falls Zugreifen auf die Datei, die kleine Dateioperation umfasst.
  3. Verfahren nach Anspruch 1, weiterhin aufweisend: Bestimmen, ob Zugreifen auf die Datei eine Lese-Operation oder eine Schreib-Operation umfasst; Verkleinern eines Lese-/Schreib-Verhältnisses, falls Zugreifen auf die Datei die Schreib-Operation umfasst; und Vergrößern des Lese-/Schreib-Verhältnisses, falls Zugreifen auf die Datei die Lese-Operation umfasst.
  4. Verfahren nach Anspruch 3, weiterhin aufweisend Bestimmen der Dateidarstellung.
  5. Verfahren nach Anspruch 4, weiterhin aufweisend Ändern der Dateidarstellung von der großen Dateidarstellung zu der normalen Dateidarstellung, falls der Zugriff auf die Datei in zufälligen Abständen erfolgt.
  6. Verfahren nach Anspruch 4, weiterhin aufweisend Ändern der Dateidarstellung von der normalen Dateidarstellung zu der großen Dateidarstellung, falls das große/kleine Zugriffsverhältnis größer als eine Schwelle ist.
  7. Verfahren nach Anspruch 4, weiterhin aufweisend Ändern der Dateidarstellung von der normalen Dateidarstellung zu der Schreib-Dateidarstellung falls das Lese-/Schreib-Verhältnis geringer als eine Schwelle ist.
  8. Verfahren nach Anspruch 4, weiterhin aufweisend das Ändern der Dateidarstellung von der Schreib-Dateidarstellung zu der normalen Dateidarstellung, falls das Lese-/Schreib-Verhältnis größer als eine Schwelle ist.
  9. Verfahren zum Verhindern von Dateiübergängen, aufweisend: Dynamisches Ändern einer Dateidarstellung, die einer Datei zugeordnet ist, in eine andere Dateidarstellung auf der Grundlage des Zugriffsmusters, das der Datei zugeordnet ist, wenn eine Übergangssperre auf der nicht Datei vorhanden ist; wobei die andere Dateidarstellung eine große Dateidarstellung, eine normale Dateidarstellung oder eine Schreib-Dateidarstellung umfasst; Speichern der Dateidarstellung nach dem Bestimmen ob die Übergangssperre auf der Datei vorhanden ist; Vergrößern eines Übergangzählers für die Datei, wenn die Dateidarstellung sich ändert; und Sperren der Dateidarstellung, um eine Änderung in der Dateidarstellung zu verhindern, wenn der Übergangszähler größer als eine Schwelle ist.
  10. Verfahren nach Anspruch 9, weiterhin aufweisend: Bestimmen, ob die Übergangssperre abgelaufen ist; Ändern der Dateidarstellung, die der Datei zugeordnet ist, falls die Übergangssperre abgelaufen ist; und Verhindern der Änderung der Dateidarstellung, die der Datei zugeordnet ist, falls die Übergangssperre nicht abgelaufen ist.
  11. Informationsverarbeitungssystem, aufweisend: einen Prozessor; einen Speicher in Kommunikation mit dem Prozessor; und einen Dateizugriffsmonitor, der in den Speicher eingebettet ist, wobei der Dateizugriffsmonitor konfiguriert ist, um eine Datei in dem Informationsverarbeitungssystem zu überwachen und um eine der Datei zugeordnete Dateidarstellung auf der Grundlage eines Zugriffsmusters, das der Datei zugeordnet ist, dynamisch zu ändern, wobei die andere Dateidarstellung eine große Dateidarstellung, eine normale Dateidarstellung oder eine Schreib-Dateidarstellung umfasst, und wobei die Änderung der Dateidarstellung durchgeführt wird während eine oder mehrere Anwendungen fortfahren Operationen an der Datei durchzuführen, und wobei der Dateizugriffsmonitor konfiguriert ist, um wie häufig eine Darstellung einer Datei geändert wird, durch Verwendung einer Sperre, die Ändern der Dateidarstellung für eine vorbestimmte Zeitdauer verhindert, zu bestimmen.
  12. Informationsverarbeitungssystem nach Anspruch 11, wobei der Dateizugriffsmonitor Logik aufweist, zum: Überwachen des Zugreifens auf die Datei; und Bestimmen, ob Zugreifen auf die Datei eine große Dateioperation oder eine kleine Dateioperation umfasst.
  13. Informationsverarbeitungssystem nach Anspruch 12, wobei der Dateizugriffsmonitor weiterhin Logik aufweist, zum: Vergrößern eines großen/kleinen Zugriffsverhältnisses für die Datei, falls Zugreifen auf die Datei, die große Dateioperation umfasst; und Verkleinern des großen/kleinen Zugriffsverhältnisses für die Datei, falls Zugreifen auf die Datei, die kleine Dateioperation umfasst.
  14. Informationsverarbeitungssystem nach Anspruch 13, wobei der Dateizugriffsmonitor weiterhin Logik aufweist, zum: Bestimmen, ob Zugreifen auf die Datei eine Lese-Operation oder eine Schreib-Operation umfasst; Verkleinern eines Lese-/Schreib-Verhältnisses, falls das Zugreifen auf die Datei, die Schreib-Operation umfasst; und Vergrößern des Lese-/Schreib-Verhältnisses, falls das Zugreifen auf die Datei, die Lese-Operation umfasst.
  15. Informationsverarbeitungssystem nach Anspruch 14, wobei der Dateizugriffsmonitor weiterhin Logik aufweist, zum: Bestimmen der Dateidarstellung; Ändern der Dateidarstellung von der großen Dateidarstellung zu der normalen Dateidarstellung, falls der Zugriff auf die Datei bei zufälligen Abständen erfolgt; Ändern der Dateidarstellung von der normalen Dateidarstellung zu der großen Dateidarstellung, falls das große/kleine Zugriffsverhältnis größer als eine Schwelle ist; Ändern der Dateidarstellung von der normalen Dateidarstellung zu der Schreib-Dateidarstellung, falls das Lese-/Schreib-Verhältnis unter eine Schwelle fällt; und Ändern der Dateidarstellung von der Schreib-Dateidarstellung zu der normalen Dateidarstellung, falls das Lese-/Schreib-Verhältnis größer als eine Schwelle ist.
  16. Informationsverarbeitungssystem nach Anspruch 11, wobei der Dateizugriffsmonitor weiterhin Logik aufweist, zum: Bestimmen, ob eine Übergangssperre auf einer Datei vorhanden ist; und Erlauben der Änderung der Dateidarstellung, die der Datei zugeordnet ist, falls die Übergangsschwelle nicht vorhanden ist.
  17. Informationsverarbeitungssystem nach Anspruch 16, wobei der Dateizugriffsmonitor weiterhin Logik aufweist, zum: Bestimmen, ob die Übergangssperre abgelaufen ist; und Erlauben der Änderung der Dateidarstellung, die der Datei zugeordnet ist, falls die Übergangssperre abgelaufen ist.
  18. Informationsverarbeitungssystem nach Anspruch 11, wobei der Dateizugriffsmonitor weiterhin Logik aufweist, um den Übergangszähler für die Datei zu vergrößern, falls sich die Dateidarstellung ändert.
  19. Informationsverarbeitungssystem nach Anspruch 18, wobei der Dateizugriffsmonitor weiterhin Logik aufweist, um die Änderung der Dateidarstellung zu verhindern, falls der Übergangszähler größer als eine Schwelle ist.
DE102007026104.9A 2006-07-11 2007-06-05 Verfahren zum dynamischen Ändern einer Dateidarstellung, Verfahren zum Verhindern von Dateiübergängen und ein Informaationssystem Active DE102007026104B4 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US11/484,816 US8019790B2 (en) 2006-07-11 2006-07-11 System and method of dynamically changing file representations
US11/484,816 2006-07-11

Publications (2)

Publication Number Publication Date
DE102007026104A1 DE102007026104A1 (de) 2008-01-17
DE102007026104B4 true DE102007026104B4 (de) 2023-02-02

Family

ID=38352892

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102007026104.9A Active DE102007026104B4 (de) 2006-07-11 2007-06-05 Verfahren zum dynamischen Ändern einer Dateidarstellung, Verfahren zum Verhindern von Dateiübergängen und ein Informaationssystem

Country Status (8)

Country Link
US (1) US8019790B2 (de)
CN (1) CN101105808B (de)
DE (1) DE102007026104B4 (de)
FR (1) FR2904128A1 (de)
GB (2) GB2440020B (de)
IE (1) IE20070392A1 (de)
SG (1) SG139626A1 (de)
TW (1) TWI368855B (de)

Families Citing this family (36)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090119782A1 (en) * 2007-11-07 2009-05-07 Sandisk Il Ltd. Method and device for digital rights protection
US8255373B2 (en) * 2008-10-24 2012-08-28 Microsoft Corporation Atomic multiple modification of data in a distributed storage system
US9361326B2 (en) * 2008-12-17 2016-06-07 Sap Se Selectable data migration
US8171219B2 (en) * 2009-03-31 2012-05-01 Intel Corporation Method and system to perform caching based on file-level heuristics
US20110153674A1 (en) * 2009-12-18 2011-06-23 Microsoft Corporation Data storage including storing of page identity and logical relationships between pages
US8345489B2 (en) * 2010-09-02 2013-01-01 International Business Machines Corporation Caching scheme synergy for extent migration between tiers of a storage system
US10698775B2 (en) 2016-05-31 2020-06-30 Mongodb, Inc. Method and apparatus for reading and writing committed data
US10713280B2 (en) 2010-12-23 2020-07-14 Mongodb, Inc. Systems and methods for managing distributed database deployments
US11615115B2 (en) 2010-12-23 2023-03-28 Mongodb, Inc. Systems and methods for managing distributed database deployments
US9740762B2 (en) 2011-04-01 2017-08-22 Mongodb, Inc. System and method for optimizing data migration in a partitioned database
US10346430B2 (en) 2010-12-23 2019-07-09 Mongodb, Inc. System and method for determining consensus within a distributed database
US8996463B2 (en) 2012-07-26 2015-03-31 Mongodb, Inc. Aggregation framework system architecture and method
US11544288B2 (en) 2010-12-23 2023-01-03 Mongodb, Inc. Systems and methods for managing distributed database deployments
US10740353B2 (en) 2010-12-23 2020-08-11 Mongodb, Inc. Systems and methods for managing distributed database deployments
US10997211B2 (en) 2010-12-23 2021-05-04 Mongodb, Inc. Systems and methods for database zone sharding and API integration
US10262050B2 (en) 2015-09-25 2019-04-16 Mongodb, Inc. Distributed database systems and methods with pluggable storage engines
US9805108B2 (en) 2010-12-23 2017-10-31 Mongodb, Inc. Large distributed database clustering systems and methods
US10977277B2 (en) 2010-12-23 2021-04-13 Mongodb, Inc. Systems and methods for database zone sharding and API integration
US8996887B2 (en) * 2012-02-24 2015-03-31 Google Inc. Log structured volume encryption for virtual machines
US8626917B2 (en) * 2012-03-16 2014-01-07 Sap Ag File access using counter locking mechanism
JP5884602B2 (ja) * 2012-03-30 2016-03-15 富士通株式会社 ストレージ制御装置、およびストレージシステム
US11403317B2 (en) 2012-07-26 2022-08-02 Mongodb, Inc. Aggregation framework system architecture and method
US11544284B2 (en) 2012-07-26 2023-01-03 Mongodb, Inc. Aggregation framework system architecture and method
US10872095B2 (en) 2012-07-26 2020-12-22 Mongodb, Inc. Aggregation framework system architecture and method
US8788533B2 (en) * 2012-10-26 2014-07-22 Sap Ag Read access logging
CN103605726B (zh) * 2013-11-15 2017-11-14 中安消技术有限公司 一种小文件的存取方法、系统及控制节点和存储节点
KR102330389B1 (ko) * 2014-07-24 2021-11-24 삼성전자주식회사 데이터 저장 장치 및 그것의 데이터 처리 방법
US10713275B2 (en) 2015-07-02 2020-07-14 Mongodb, Inc. System and method for augmenting consensus election in a distributed database
US10673623B2 (en) 2015-09-25 2020-06-02 Mongodb, Inc. Systems and methods for hierarchical key management in encrypted distributed databases
US10846411B2 (en) * 2015-09-25 2020-11-24 Mongodb, Inc. Distributed database systems and methods with encrypted storage engines
TWI626584B (zh) * 2016-02-23 2018-06-11 宏碁股份有限公司 智能磁碟監控方法以及使用該方法的裝置
US10776220B2 (en) 2016-06-27 2020-09-15 Mongodb, Inc. Systems and methods for monitoring distributed database deployments
US20180276232A1 (en) * 2017-03-27 2018-09-27 Microsoft Technology Licensing, Llc Enhanced administrative controls for a unified file retention management system
US11232068B2 (en) 2017-03-27 2022-01-25 Microsoft Technology Licensing, Llc Unified document retention management system
US10866868B2 (en) 2017-06-20 2020-12-15 Mongodb, Inc. Systems and methods for optimization of database operations
US11755537B2 (en) * 2021-03-15 2023-09-12 Vmware, Inc. Optimizing file access statistics collection

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030210790A1 (en) 2002-05-08 2003-11-13 Erik Riedel Optimizing costs associated with managing encrypted data
US20040002982A1 (en) 2002-06-27 2004-01-01 Ersek Richard A. Dynamic metabase store
US20060080365A1 (en) 2004-10-13 2006-04-13 Glover Frederick S Transparent migration of files among various types of storage volumes based on file access properties

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5257370A (en) 1989-08-29 1993-10-26 Microsoft Corporation Method and system for optimizing data caching in a disk-based computer system
US5333311A (en) 1990-12-10 1994-07-26 Alsoft, Inc. Optimizing a magnetic disk by allocating files by the frequency a file is accessed/updated or by designating a file to a fixed location on a disk
US5608890A (en) * 1992-07-02 1997-03-04 International Business Machines Corporation Data set level cache optimization
JPH0883202A (ja) 1994-09-14 1996-03-26 Toshiba Corp 電子ファイリング装置
JP3641872B2 (ja) 1996-04-08 2005-04-27 株式会社日立製作所 記憶装置システム
US6272235B1 (en) * 1997-03-03 2001-08-07 Bacus Research Laboratories, Inc. Method and apparatus for creating a virtual microscope slide
FR2766269B1 (fr) * 1997-07-18 1999-10-01 Framatome Sa Sonde a courants de foucault pour le controle non destructif de la paroi d'un tube et procede de traitement des signaux de la sonde
US6442682B1 (en) * 1999-02-18 2002-08-27 Auspex Systems, Inc. Characterization of data access using file system
US6374056B1 (en) * 1999-03-19 2002-04-16 Fuji Photo Optical Co., Ltd. Camera with magnetic recording device
US6810200B1 (en) * 1999-04-14 2004-10-26 Matsushita Electric Industrial Co., Ltd. Digital data processing device that restricts usage of data present on a recording medium
US6487633B1 (en) * 1999-05-03 2002-11-26 3Ware, Inc. Methods and systems for accessing disks using forward and reverse seeks
US6389420B1 (en) * 1999-09-30 2002-05-14 Emc Corporation File manager providing distributed locking and metadata management for shared data access by clients relinquishing locks after time period expiration
US6779095B2 (en) * 2000-06-19 2004-08-17 Storage Technology Corporation Apparatus and method for instant copy of data using pointers to new and original data in a data location
TW561358B (en) * 2001-01-11 2003-11-11 Force Corp Z File switch and switched file system
US7246119B2 (en) * 2002-03-08 2007-07-17 Kabushiki Kaisha Toshiba Method and implementation of session-based file locking for network applications
JP2003296152A (ja) 2002-03-29 2003-10-17 Toshiba Corp Hsmシステムおよび同システムのマイグレーション制御方法
WO2005008491A2 (en) * 2003-07-10 2005-01-27 Computer Associates Think, Inc. Dynamic web server
US7552474B2 (en) * 2004-03-01 2009-06-23 International Business Machines Corporation Detecting the presence of an installation on a data processing system based on the relative storage locations of one or more files
EP1677306A1 (de) 2005-01-04 2006-07-05 Deutsche Thomson-Brandt Gmbh Verfahren zum Ändern des Arbeitens auf einem Speichermedium von einem aktuellen Dateisystem auf ein neues Dateisystem

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030210790A1 (en) 2002-05-08 2003-11-13 Erik Riedel Optimizing costs associated with managing encrypted data
US20040002982A1 (en) 2002-06-27 2004-01-01 Ersek Richard A. Dynamic metabase store
US20060080365A1 (en) 2004-10-13 2006-04-13 Glover Frederick S Transparent migration of files among various types of storage volumes based on file access properties

Also Published As

Publication number Publication date
GB2440020A (en) 2008-01-16
FR2904128A1 (fr) 2008-01-25
GB0822628D0 (en) 2009-01-21
DE102007026104A1 (de) 2008-01-17
GB2440020B (en) 2009-06-24
CN101105808B (zh) 2013-08-21
GB2455424A (en) 2009-06-10
GB0712313D0 (en) 2007-08-01
SG139626A1 (en) 2008-02-29
CN101105808A (zh) 2008-01-16
TW200807266A (en) 2008-02-01
GB2455424B (en) 2009-12-23
US8019790B2 (en) 2011-09-13
IE20070392A1 (en) 2008-03-05
US20080016021A1 (en) 2008-01-17
TWI368855B (en) 2012-07-21

Similar Documents

Publication Publication Date Title
DE102007026104B4 (de) Verfahren zum dynamischen Ändern einer Dateidarstellung, Verfahren zum Verhindern von Dateiübergängen und ein Informaationssystem
DE112018000193B4 (de) Daten sequenziell in Zonen in einem verstreuten Speichernetzwerk speichern
DE112007001215B4 (de) Vorhersage der Leistungsnutzung von Rechenplattformspeicher
DE112011101633B4 (de) Virtualisierung und dynamische Ressourcenzuweisung berücksichtigendes Neuordnen von Speicherebenen
DE112012005037B4 (de) Verwalten von redundanten unveränderlichen Dateien unter Verwendung von Deduplizierungen in Speicher-Clouds
DE112012003505B4 (de) Automatisierte Auswahl von Funktionen zum Verringern der Speicherkapazität auf der Grundlage von Leistungsanforderungen
DE69433047T2 (de) Verfahren und Anordnung zur Zuteilung von Systembetriebsmitteln, um die Dienstqualität zu sichern
DE602005004166T2 (de) Vorrichtung, system und verfahren zur reinitialisierung einer serialisierung von dateisystemen
DE202012013432U1 (de) Speichern von Daten auf Speicherknoten
DE112019002948T5 (de) Feststellen einer optimalen speicherumgebung für datensätze und für das migrieren von datensätzen
DE112011104787B4 (de) Nutzung von Inhalten über persönliche Clouds
DE102012223167B4 (de) Gemeinsame Nutzung von Artefakten zwischen kollaborativen Systemen
DE102020112531A1 (de) Operationelle metrische Berechnung für Arbeitsbelastungstyp
DE602004009176T2 (de) Dienstverwaltung durch verwendung mehrerer dienstort-manager
DE102016100773A1 (de) Erfassen von Komprimierungsleistungsmesswerten für die Verarbeitung von Daten
DE112020003825T5 (de) Entsprechung zwischen externen Operationen und Containern sowie Mutationsereignissen
DE10115722A1 (de) Effiziente Echtzeitverwaltung von Speicherbetriebsmitteln
DE102006027425A1 (de) System und Verfahren zur Implementierung eines gemeinsamen Deskriptorformats
DE112019005043T5 (de) Streamzuweisung unter verwendung von stream-guthaben
DE102006026474A1 (de) System und Verfahren für das automatische Optimieren von erhältlichen virtuellem Speicher
DE69936674T2 (de) Speicherteilsystem und Verfahren zur Reorganisierung von multiplexierten Daten
DE102016125020B4 (de) Verfahren zum Betreiben eines Druckservers für digitale Hochleistungsdrucksysteme
DE102016125023B4 (de) Verfahren zum Betreiben eines Druckservers für digitale Hochleistungsdrucksysteme
DE112021000408T5 (de) Prädiktives bereitstellen von fern gespeicherten dateien
DE112020003312T5 (de) Speicherzuweisungserweiterung von mikrodiensten

Legal Events

Date Code Title Description
OP8 Request for examination as to paragraph 44 patent law
R016 Response to examination communication
R016 Response to examination communication
R018 Grant decision by examination section/examining division
R020 Patent grant now final