DE69516538T2 - Speicherung von rechnerdaten - Google Patents
Speicherung von rechnerdatenInfo
- Publication number
- DE69516538T2 DE69516538T2 DE69516538T DE69516538T DE69516538T2 DE 69516538 T2 DE69516538 T2 DE 69516538T2 DE 69516538 T DE69516538 T DE 69516538T DE 69516538 T DE69516538 T DE 69516538T DE 69516538 T2 DE69516538 T2 DE 69516538T2
- Authority
- DE
- Germany
- Prior art keywords
- file
- accessed
- storage means
- archiving
- mass storage
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Lifetime
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1446—Point-in-time backing up or restoration of persistent data
- G06F11/1448—Management of the data involved in backup or backup restore
- G06F11/1451—Management of the data involved in backup or backup restore by selection of backup contents
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2201/00—Indexing scheme relating to error detection, to error correction, and to monitoring
- G06F2201/80—Database-specific techniques
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S707/00—Data processing: database and file management or data structures
- Y10S707/99951—File or database maintenance
- Y10S707/99952—Coherency, e.g. same view to multiple users
- Y10S707/99955—Archiving or backup
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- Quality & Reliability (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Debugging And Monitoring (AREA)
- Memory System Of A Hierarchy Structure (AREA)
- Photoreceptors In Electrophotography (AREA)
- Time Recorders, Dirve Recorders, Access Control (AREA)
Description
- Die vorliegende Erfindung betrifft hierarchisches Speichermanagement von Computerdateien.
- Das auf Personalcomputer-Festplatten, die als Massenspeicher dienen, gespeicherte Datenvolumen hat im Laufe der letzten 10 Jahre rapide zugenommen. Dies trifft besonders auf Daten zu, die auf Netzwerk-Daten-Servern gespeichert sind, bei denen Festplatten-Untersysteme von 1 GB (Gigabyte) oder mehr, die viele Tausend Dateien enthalten, heute gang und gäbe sind.
- Typischerweise wird auf viele der Dateien auf einem Netzwerk- Daten-Server eine Zeitlang nicht zugegriffen. Dies kann vielerlei Gründe haben; die Datei kann eine alte Version oder eine Sicherungskopie sein, oder sie kann einfach nur für den Fall aufbewahrt worden sein, daß sie irgendwann einmal benötigt wird. Die Datei kann in der Tat völlig überflüssig sein; allerdings kann sie nur von ihrem Eigentümer als solche identifiziert werden, und demzufolge wird die Datei aus Sicherungs- /Sicherheitsgründen aufbewahrt. In der Datenverarbeitung übliche Verfahren legen nahe, daß Dateien im Zweifelsfall auf unbestimmte Zeit aufbewahrt werden sollen. Daraus folgt natürlich, daß die Festplatte mit alten Dateien voll wird. Dies geschieht in fast jedem Personal-Computing-System auf Mikroprozessorbasis, ob klein oder groß.
- Hierarchisches Speichermanagement (HSM) ist eine bekannte Technik zur Lösung dieses Problems. Die meisten Betriebssysteme zeichnen das Datum und den Zeitpunkt der letzten Dateiaktualisierung (d. h. Einspeicherung) auf. Viele zeichnen außerdem das Datum und den Zeitpunkt des letzten Dateizugriffs (d. h. Ablesung) auf. Ein HSM-System durchsucht regelmäßig die Dateiliste auf einer Festplatte und überprüft dabei von jeder das Datum/den Zeitpunkt des letzten Zugriffs. Wurde eine Datei über einen vorbestimmten Zeitraum (gewöhnlich 1 bis 6 Monate) nicht benutzt, dann wird die Datei archiviert, d. h. sie wird auf einen Sekundärspeicher wie zum Beispiel ein Band übertragen und von der Festplatte gelöscht.
- HSM ist gewöhnlich in die Datensicherung eingebunden. Nehmen wir zum Beispiel ein Bandsicherungssystem mit HSM-Einrichtungen, bei dem die Inaktivitätsschwelle auf drei Monate eingestellt ist. Beim regelmäßig ablaufenden (typischerweise wenigstens wöchentlich) Sicherungsprozeß wird festgestellt, daß das letzte Zugriffsdatum für eine bestimmte Datei mehr als 3 Monate zurückliegt. Das Sicherungssystem stellt sicher, daß es beispielsweise mehr als drei Sicherungskopien der Datei auf verschiedenen Bändern zur Verfügung hat (oder wartet, bis es über drei Kopien verfügt) und löscht dann die Datei. Sollte die Datei irgendwann einmal benötigt werden, dann wird sie vom Benutzer einfach von einem der drei Sicherungsbänder wiedergewonnen. Das Sicherungssystem muß gewährleisten, daß Bänder, die Archivierungskopien der Datei enthalten, nicht überschrieben werden. Dieses Verfahren stellt eine Langzeitlösung für das Problem bereit, da Bänder entfernbar, leicht zu ersetzen und preisgünstig sind.
- Nachdem eine Datei von einem HSM-System gelöscht wurde, ist sie auf der Originalplatte nicht mehr sichtbar. Dies kann von Nachteil sein, wenn ein Benutzer oder eine Anwendung später beschließen sollte, daß ein Zugriff auf die Datei notwendig ist, da die Datei beim Durchsuchen der Platte nicht auffindbar ist. Der Benutzer oder die Anwendung verfügt dann über kein Mittel, das ihn/sie darüber informiert, daß die Datei von einer Sicherung wiedergewonnen werden könnte, und eine Anwendung könnte folglich von irreführenden Informationen bis hin zu einem fatalen Fehler alles Mögliche verursachen.
- Statt spurlos beseitigt zu werden, sollte die Datei im Idealfall weiterhin im Verzeichnis der Platte aufgeführt werden (vorzugsweise mit irgendeinem Mittel zur Kennzeichnung, daß sie auf den Sicherungs- oder Sekundärspeicher übertragen wurde), jedoch ohne daß die tatsächlichen Dateidaten vorhanden sind und Speicherplatz in Anspruch nehmen. In der Tat gibt es diese Einrichtung in vielen HSM-Systemen und ist als Migration (Wegspeicherung) bekannt. Das HSM-System beläßt die Dateireferenz gewöhnlich im Verzeichnis und ersetzt die Dateidaten entweder mit einem kleinen Stumpf , der die Identität des Ortes enthält, wo die weggespeicherte Datei zu finden ist, oder löscht die Daten vollständig, wobei eine Datei mit der Länge Null zurückbleibt.
- Eine weitere Verbesserung von HSM-Systemen, als De-Migration (Zurückspeicherung) bekannt, läßt das HSM-System automatisch eine weggespeicherte Datei auf die Originalplatte umspeichern, wenn ein Benutzer oder eine Anwendung versucht, auf diese zuzugreifen. Dies ist offensichtlich nur dann möglich, wenn das Sekundärspeichermedium, das die weggespeicherte Datei enthält, ständig mit dem System verbunden ist. Wenn weggespeicherte Daten in einer solchen near-line Vorrichtung, zum Beispiel eine Bildplatten- Jukebox , gespeichert sind, dann kann die Dateizugriffsanforderung sogar vorübergehend aufgehoben werden, bis die Datei zurückgespeichert ist, wonach so fortgefahren werden kann, als wäre die Datei niemals weggespeichert worden.
- Die oben beschriebenen HSM-Techniken sind effektiv, wenn sie auf eine große Anzahl relativ kleiner Dateien angewendet werden, die stets von nur einem Benutzer verwendet werden. Nehmen wir aber einmal ein Datenbanksystem, in dem mehrere Benutzer auf eine einzelne große Datenbankdatei zugreifen, die Kundennamen und Adreßdatensätze oder ähnliche historische Daten enthält. Da ständig neue Kundendatensätze hinzugefügt und Datensätze bestehender Kunden geändert werden, kommt die Datei niemals für eine Wegspeicherung in Frage, da sie stets verfügbar sein muß. Dennoch weist eine solche Datei gewöhnlich viele Datensätze für alte inaktive Kunden auf, deren Details für eine mögliche zukünftige Bezugnahme aufbewahrt werden müssen, auf deren Datensätze ansonsten aber über längere Zeiträume nicht zugegriffen wird. Der von solchen inaktiven Datensätzen belegte Speicherplatz kann oft die Mehrheit des von der gesamten Datei belegten Platzes repräsentierten.
- Es ist bereits eine Direktzugriffsdatei bekannt, bei der geringe Datenmengen auf/von irgendeinen/-einem Teil der Datei wahllos geschrieben oder gelesen werden können. Wird eine neue Direktzugriffsdatei erstellt, so weist die Datei eine Länge von Null auf, bis Daten in sie eingespeichert werden. Da die Datei über einen Direktzugriff verfügt, braucht sich das erste eingespeicherte Datenstück nicht unbedingt bei Relativzeiger O (d. h. am Anfang der Datei) zu befinden, es könnte an einer beliebigen Position eingespeichert werden. 10 Bytes an Daten könnten zum Beispiel ab Relativzeiger 1000 eingespeichert werden. Die Datei hat dann eine logische Länge von 1010 Bytes, obwohl nur zehn Bytes tatsächlich eingespeichert wurden. Einige Betriebssysteme bekommen diese Situation in den Griff, indem sie die fehlenden 1000 Bytes mit Nullzeichen oder wahllosen Zeichen automatisch auffüllen , so daß 1010 Bytes zugeordnet werden, obwohl nur 10 tatsächlich eingespeichert wurden.
- Fortschrittliche Betriebssysteme, wie solche, die in Netzwerk-Daten-Servern zum Einsatz kommen, unterstützen das Konzept verteilter Speicherung (Dateien), bei dem Speicherplatz nur solchen Bereichen der Datei zugeordnet wird, in die tatsächlich Daten eingespeichert wurden. Gewöhnlich wird dies erreicht, indem die Dateizuordnungstabelle (ein Plan, der angibt, wie die Dateien auf der Platte gespeichert sind) erweitert wird, so daß jede Eingabe, die den nächsten Ort angibt, in dem Daten für eine bestimmte Datei gespeichert sind, von einem Wert begleitet wird, der den logischen Relativzeiger angibt, an dem die Daten beginnen. Somit würde die erste Eingabe in dem obigen Beispiel angeben, daß Daten bei Position x auf der Platte beginnen und daß sich das erste Byte am logischen Relativzeiger 1000 in der Datei befindet (in einer normalen Datei wäre der logische Relativzeiger 0). Die Bereiche einer verteilten Datei, in die nie Daten eingespeichert wurden, sind als Löcher bekannt.
- Die verschiedenen Aspekte der Erfindung sind in den folgenden unabhängigen Ansprüchen definiert. Vorteilhafte Merkmale der Erfindung sind in den zugehörigen Ansprüchen dargelegt.
- In der bevorzugten Ausgestaltung der Erfindung, die nachstehend unter Bezugnahme auf die Zeichnungen beschrieben wird, wird eine Datenbank verwaltet, praktischerweise als Hilfsdatenbank bezeichnet, die angibt, auf welche Datenblöcke an welchem Datum zugegriffen wurde. Blöcke, auf die nicht zugegriffen wurde, können dann archiviert und aus der Plattendatei gelöscht werden, um den Speicherplatzbedarf zu reduzieren. Zum Löschen kann die FAT (Dateizuordnungstabelle) so geändert werden, daß die Datei als verteilte Datei behandelt wird.
- Erfolgt eine Leseanforderung für einen Teil einer Datei, der archiviert oder weggespeichert wurde, dann speichert das System den benötigten Dateiteil zurück, bevor die Leseanforderung erfüllt wird.
- Datensätze, auf die kürzlich zugegriffen wurde, befinden sich allerdings bereits auf der Festplatte, so daß auf sie sofort wieder zugegriffen werden kann. Somit sind häufig benötigte Datensätze sofort verfügbar, ohne daß die gesamte Datei auf der Festplatte erhalten bleiben muß.
- Das Verfahren kann tatsächlich dadurch erweitert werden, daß die Inaktivitätsschwelle auf die Lebensdauer der Hilfsdatenbank erhöht wird. Wird auf nur wenige Datensätze einer großen Datenbankdatei zugegriffen, dann könnten alle Datensätze, auf die zugegriffen wurde, auf der Festplatte bleiben, unabhängig vom Datum des letzten Zugriffs. Die Datensätze, auf die nicht zugegriffen wurde, können allerdings gelöscht werden, um Speicherplatz freizumachen. In diesem Fall braucht die Hilfsdatenbank nicht das Datum oder Datum und Zeit des letzten Zugriffs zu enthalten. In großen Abständen, z. B. jeden Monat, können alle Bereiche, auf die zugegriffen wurde, weggespeichert und die Hilfsdatenbank gelöscht werden.
- Das Verfahren kann in Verbindung mit dem Teildateispeicherverfahren der US-Patentanmeldung 08/165,382 (jetzt US-A-5,617,566) angewendet werden. Die Hilfsdatenbank muß dann zusätzlich registrieren, ob die Dateizugriffe Schreibzugriffe, bei denen Daten möglicherweise modifiziert wurden, oder nur Lesezugriffe waren. Das Teildateisicherungsverfahren der obengenannten Anmeldung sah keine Speicherplatzschaffung auf der Festplatte vor, während solche Datensätze verfügbar blieben, auf die wahrscheinlich wieder zugegriffen würde.
- Die Erfindung wird nachfolgend ausführlicher beispielhaft unter Bezugnahme auf die Begleitzeichnungen beschrieben. Dabei zeigt:
- Fig. 1 ein Blockdiagramm eines Personalcomputersystems mit einem Bandlaufwerk;
- Fig. 2 ein Diagramm, das Zugriffe auf eine Datei darstellt;
- Fig. 3 ein Ablaufdiagramm, das einen Dateizugriffsvorgang gemäß der Erfindung darstellt;
- Fig. 4 ein der Fig. 2 ähnliches Diagramm, das Dateiteile darstellt, die auf der Festplatte erhalten bleiben sollen;
- Fig. 5 ein Ablaufdiagramm, das einen Sicherungsvorgang gemäß der Erfindung darstellt, wie er von dem hierarchischen Speichermanagementsystem implementiert wird;
- Fig. 6 ein Ablaufdiagramm, das einen Lesezugriffsvorgang bei einer Datei darstellt, die teilweise archiviert wurde;
- Fig. 7 ein Diagramm, das einen Teil des Speicherbelegungsplans auf Betriebssystemebene eines konventionellen Personalcomputers darstellt; und
- Fig. 8 ein Diagramm, das den entsprechenden Teil des Speicherbelegungsplans im erfindungsgemäßen Verfahren darstellt.
- Fig. 1 der Zeichnungen zeigt einen Personalcomputer (PC) 10 mit einer Zentraleinheit (CPU) 12, einem Arbeitsspeicher (RAM) 14 und einem Massenspeicher in der Form einer Festplatte 16. Der Personalcomputer ist darüber hinaus mit einer Bandeinheit 18 ausgestattet, die einen Sekundärspeicher für Sicherungs- und Archivierungszwecke bereitstellt.
- Beim Gebrauch speichert der Arbeitsspeicher 14 Befehle, die auf die Zentraleinheit 12 angewendet werden, um ihren Betrieb zu steuern. Einige dieser Befehle kommen direkt vom Betriebssystem, andere haben ihren Ursprung in dem auf dem Computer laufenden Anwendungsprogramm.
- Betriebssysteme unterhalten gewöhnlich eine Dateizuordnungstabelle (FAT), die den physikalischen Ort jedes Datenblocks auf der Festplatte registriert. Darüber hinaus registriert das Betriebssystem in bezug auf jede Datei einen Archivflag, der gesetzt wird, wenn die Datei modifiziert wird, und der weggenommen werden kann, wenn die Datei gesichert ist. Existierende Sicherungssysteme verwenden die Archivflags, um zu ermitteln, ob eine Datei modifiziert wurde und somit gesichert werden muß.
- Es kann ein hierarchisches Speichermanagementsystem verwendet werden, das automatisch jede Datei auf Band sichert, auf die über einen bestimmten Zeitraum nicht zugegriffen wurde.
- In der bevorzugten Ausgestaltung der vorliegenden Erfindung wird eine Hilfsdatenbank verwaltet, die zu jeder Datei angibt, auf welche Datenblöcke an welchem Datum zugegriffen wurde, so daß das hierarchische Speichermanagementsystem regelmäßig solche Blöcke archivieren oder wegspeichern kann, auf die nicht zugegriffen wurde. Diese Blöcke können dann gelöscht und der Speicherplatzbedarf somit reduziert werden.
- Nehmen wir zum Beispiel eine Datei mit einer anfänglichen Länge von 125 Bytes, die fünf Datensätze mit einer Länge von jeweils 25 Bytes enthält, für die am 1. Januar 1995 eine Hilfsdatenbank geöffnet wird, um Anforderungen für einen Zugriff auf einen existierenden Datensatz in der oder zum Hinzufügen eines neuen Datensatzes zu der Datei abzufangen. Die folgenden Anforderungen können über einen bestimmten Zeitraum, z. B. zwischen dem 1. Januar und dem 10. April 1995, vorliegen:
- 21. Januar 1995 - Neuer Datensatz am Relativzeiger 125 hinzugefügt, Länge 25 Bytes.
- 3. Februar 1995 - Auf alten Datensatz am Relativzeiger 25 zugegriffen (gelesen), Länge 25 Bytes.
- 15. Februar 1995 - Auf alten Datensatz am Relativzeiger 75 zugegriffen (gelesen), Länge 25 Bytes.
- 3. April 1995 - Neuen Datensatz am Relativzeiger 150 hinzugefügt, Länge 25 Bytes.
- Wenn eine Anforderung abgefangen wird, dann werden das Datum, die Position des Datensatzes in der Datei und die Länge des Datensatzes in der Hilfsdatenbank in der folgenden Weise notiert: Tabelle 1
- Es muß natürlich möglich sein, die jeweilige benötigte Datei zu identifizieren. Hier wird davon ausgegangen, daß für jede Datei eine separate Hilfsdatenbank verwaltet wird. In der Praxis wird möglicherweise bevorzugt, für jedes Unterverzeichnis eine separate Hilfsdatenbank zu verwalten; in diesem Fall muß die Datei auch innerhalb der Datenbank identifiziert werden. Dadurch wird jedoch die Anzahl von Hilfsdatenbanken und somit die Anzahl von zusätzlich erstellten Dateien reduziert. Im Prinzip könnte eine einzige Hilfsdatenbank für die gesamte Platte erstellt werden.
- Auf Dateibereiche, die nicht in der in Tabelle 1 dargestellten Hilfsdatenbank enthalten sind, wurde überhaupt nicht zugegriffen. Die Tageszahl ist einfach eine Zähleinrichtung, die die Tage darstellt, die seit einem beliebigen Startdatum (in diesem Fall der 1. Januar 1900) vergangen sind. In einem höherentwickelten System könnten sowohl Datum als auch Zeit (Datum/Zeit) enthalten sein. Fig. 2 stellt die Datei schematisch dar, wobei schattierte Bereiche Dateidaten repräsentieren, die gelesen oder eingespeichert wurden, und weiße Bereiche Daten repräsentieren, auf die nicht zugegriffen wurde.
- Die Schritte bei der Durchführung eines Zugriffs entsprechen somit den in Fig. 3 gezeigten. Schritt 20 gibt an, daß ein Zugriff erforderlich ist. Dies kann ein Lesezugriff oder ein Schreibzugriff sein. Zuerst wird die Datei identifiziert (Schritt 22), dann werden der Ausgangsrelativzeiger und die Zugriffslänge identifiziert (Schritt 24). In Schritt 26 werden diese Daten in einer Hilfsdatenbank zusammen mit dem Datum, wie in Tabelle 1 gezeigt, gespeichert. Schritt 26 beinhaltet vorzugsweise einen Konsolidierungsvorgang, der sicherstellt, daß die Hilfsdatenbank keine redundanten Informationen enthält. Nachfolgende Zugriffe können zum Beispiel vorherige Zugriffe verdoppeln oder überlappen. Nachdem diese Schritte abgeschlossen sind, erfolgt der ursprünglich gewünschte Dateizugriff (Schritt 28), wonach die Routine abgeschlossen ist (Schritt 30).
- Diese Schritte erfolgen für jeden Zugriff, so daß die Datei bis zum 10. April eine Länge von 175 Bytes hat und sieben Datensätze enthält, während die Hilfsdatenbank wie in Tabelle 1 oben aussieht. Die Datensätze, auf die während des Überwachungszeitraums (neunundsiebzig Tage) überhaupt nicht zugegriffen wurde, kommen offensichtlich alle für eine Archivierung in Frage. Angenommen, es wird beschlossen, daß alle Datensätze, auf die innerhalb der vergangenen sechzig Tage nicht zugegriffen wurde, archiviert werden sollen. Die Datensätze werden zunächst unter der Annahme sortiert, daß die gesamte Datei auf den Sekundärspeicher weggespeichert werden soll, anschließend wird die Hilfsdatenbank nach allen Datensätzen mit einer Tageszahl von 34739 oder größer durchsucht (wobei 34739 der sechzigste Tag vor dem 10. April ist, der Tag 34799 ist). Alle Datensätze mit einer Tageszahl, die dieses Kriterium erfüllt, werden identifiziert, und die Teile der Datei, in denen sie enthalten sind, werden entsprechend gekennzeichnet, so daß sie keiner Wegspeicherung unterliegen. Teile der Datei, die nicht gekennzeichnet wurden, werden somit zur Wegspeicherung gelöscht.
- Von den vier Datensätzen, auf die zwischen dem 1. Januar und dem 10. April 1995 zugegriffen wurde, haben nur die letzten beiden vom 15. Februar und 3. April 1995 jeweils eine Tageszahl von wenigstens 34739. Daher bleiben nur die beiden jüngsten Datensätze erhalten, und der Rest der Datei - die mit Bytes 0 bis 74 und Bytes 100 bis 149 definierten Teile - wird weggespeichert. Dies ist in Fig. 4 schematisch dargestellt, in der die zu erhaltenen Datensätze schraffiert und die umzustellenden Datensätze weiß dargestellt sind. Die für die Wegspeicherung bestimmten Datenbereiche der Datei werden jetzt in den Sekundärspeicher unter Anwendung normaler HSM-Prozeduren kopiert. Einzelheiten über den Ort und die Länge jedes Datensatzes werden vom HSM-System verwaltet, um eine spätere Rückspeicherung zu erleichtern. Darüber hinaus kann die Hilfsdatenbank editiert werden, um jede Spur der Datensätze mit einer Tageszahl von weniger als 34739 zu entfernen, wodurch eine unkontrollierte Erweiterung der Größe der Hilfsdatenbank vermieden wird.
- Um einen Vorteil von der Wegspeicherung der nicht gebrauchten Datensätze auf den Sekundärspeicher zu erhalten, ist es notwendig, den von diesen Datensätzen auf der Platte belegten Platz freizumachen. Dies wird effektiv dadurch erreicht, daß aus der Datei eine verteilte Datei gemacht wird. Mit anderen Worten, die einer Wegspeicherung unterzogenen Datensätze werden durch Löcher ersetzt. Der zuvor von den redundanten Datensätzen belegte Speicherplatz wird somit wiedergewonnen, da die Löcher keinen Speicherplatz in Anspruch nehmen. Angenommen, der Datensatz mit dem höchsten Relativzeigerwert wird nicht archiviert, dann bleibt die logische Länge der Datei durch diesen Vorgang unverändert, aber die Byte-Zahl der tatsächlichen Daten wird verringert, wodurch Platz für neue Dateidaten geschaffen wird.
- Die verteilte Datei kann wie folgt erstellt werden. Angenommen, das System hat eine Dateizuordnungstabelle (FAT), in der Speicherplatz praktischerweise in Blöcken zu 25 Bytes zugeordnet wird. Es sind folglich sieben Blöcke zur Berücksichtigung der 175 Bytes der Datei vom 10. April 1995 notwendig. Die Datei kann wie folgt zugeordnet werden: Tabelle 2
- Es ist zu beachten, daß der erste Eintrag in der Verzeichnisstruktur gespeichert wird. Jeder Block auf der Platte verfügt über einen Eintrag in der Tabelle, die den Block angibt, in dem der nächste Teil der Datei zu finden ist. Der zweite Block weist zum Beispiel einen Eintrag auf, der ihn mit Block 3 verknüpft, wo der. Teil der Datei mit einem Relativzeiger von 50 Bytes zu finden ist. Der siebte Block weist lediglich einen negativen Eintrag (-1) auf, um darauf hinzuweisen, daß er der letzte Block ist, der Daten für die Datei enthält. In diesem Beispiel wird die Datei praktischerweise fortlaufend in Blöcken von 1 bis 7 gespeichert, in der Praxis könnten die Blöcke aber genausogut in willkürlicher Reihenfolge mit Lücken dazwischen zugeordnet werden.
- Die Zuordnungstabelle muß angeglichen werden, um den von den weggespeicherten Datensätzen belegten Speicherplatz freizumachen, mit anderen Worten, Bytes 0 bis 74 und Bytes 100 bis 149 der Datei müssen gelöscht werden. Der erste Bereich wird von den Blöcken 1, 2 und 3 und der zweite von den Blöcken 5 und 6 erfaßt. Werden die Daten in diesen Blöcken gelöscht, dann werden die restlichen Einträge für die Datei so angeglichen, daß eine Kette von Einträgen erhalten bleibt. Die modifizierte Dateizuordnungstabelle würde daher wie folgt aussehen: Tabelle 3
- Die Blöcke 1, 2, 3, 5 und 6 haben jeweils einen Nulleintrag (0), der darauf hinweist, das sie keine Daten mehr aufweisen. Von der modifizierten Dateizuordnungstabelle kann das Betriebssystem problemlos ermitteln, daß der erste zugeordnete Block für die Datei Block 4 ist, der Daten enthält, die beim logischen Relativzeiger 75 beginnen, und daß der nächste (und letzte) Block von Dateidaten in Block 7 gespeichert ist und Daten enthält, die beim logischen Relativzeiger 150 beginnen. Es ist zu beachten, daß einige Betriebssysteme keinen logischen Relativzeiger für den ersten zugeordneten Block speichern, der in solchen Systemen daher nicht freigemacht werden kann.
- Die genaue Löschmethode ist nicht von Bedeutung. Es ist allerdings wichtig, daß der von den weggespeicherten Blöcken belegte Platz auf der Festplatte zur Verfügung gestellt wird, d. h. er wird für den Gebrauch freigemacht.
- Für ein besseres Verständnis wird in dem oben angeführten Beispiel davon ausgegangen, daß die Blockgröße und die Lese- /Schreibanforderungen 25 Bytes betragen; ferner wird angenommen, daß die Anforderungen alle ganz genau auf Blockgrenzen stattfanden. In der Praxis ist die zugeordnete Blockgröße gewöhnlich ein Vielfaches von 512 Bytes, und die Position und die Länge von Lese-/Schreibanforderungen unterliegt erheblichen Schwankungen. Da nur ganze Blöcke freigemacht (gelöscht) werden können, muß das System so implementiert werden, daß nur Datenbereiche weggespeichert und freigemacht werden, die ganze Blöcke repräsentieren. Da große Dateien typischerweise viele Tausend Blöcke in Anspruch nehmen, ist diese Effizienzreduzierung selten von Bedeutung.
- Die obigen Schritte sind im Ablaufdiagramm von Fig. 5 dargestellt. Schritt 40 zeigt den Start eines Sicherungsvorgangs an. Zunächst wird die benötigte Datei identifiziert (Schritt 42). Anschließend wird die Hilfsdatenbank abgefragt (Schritt 44), um Blöcke, auf die seit einem bestimmten Datum zugegriffen wurde, von solchen zu unterscheiden, auf die nicht zugegriffen wurde. In Schritt 46 sind Blöcke identifiziert, auf die seit dem bestimmten Datum nicht zugegriffen wurde. Es kann nun in der Tat sein, daß die nicht zugegriffenen Blöcke im Rahmen eines normalen Routinesicherungsvorgangs bereits gesichert wurden. Typischerweise werden sie öfter als einmal gesichert worden sein. Sie brauchen daher nicht noch einmal weggespeichert oder gesichert zu werden. Es ist allerdings eine Wegspeicherung von Blöcken zum Sekundärspeicher notwendig, von denen es noch nicht genügend Sicherungskopien gibt. Diese können durch eine Markierung identifiziert werden. Ob die Blöcke, die weggespeichert werden sollen, oder die, die nicht weggespeichert werden sollen, markiert werden, ist unerheblich, solange sie angemessen auseinandergehalten werden. Im Entscheidungsschritt 48 wird daher ermittelt, ob bereits ausreichend (z. B. drei) Sicherungskopien existieren. Wenn nicht, dann werden die markierten Blöcke in Schritt 50 gesichert oder weggespeichert. In Schritt 52 wird der von allen Blöcken, auf die nicht zugegriffen wurde, belegte Platz freigemacht, indem die Systemdateizuordnungstabelle (FAT) geändert wird, um die Datei in eine verteilte Datei zu konvertieren. Ist die Datei bereits eine verteilte Datei, dann werden mehr Löcher hinzugefügt. Die Routine ist nun abgeschlossen (Schritt 54).
- Als letzte Verbesserung werden nachfolgende Leseanforderungen zur Datei abgefangen, um zu ermitteln, ob die Anforderung versucht, weggespeicherte Daten zu lesen. Werden keine Vorkehrungen zum Abfangen von Leseanforderungen getroffen, dann könnte das Betriebssystem entweder Leerdaten zurücksenden oder einen Fehler melden, wenn versucht wird, ein Loch einer verteilten Datei zu lesen. Wird eine Anforderung zum Lesen weggespeicherter Daten abgefangen, dann können die entsprechenden Signale generiert werden, um die angeforderten Informationen automatisch zurückzuspeichern. Sind individuelle Leseanforderungen klein, dann ist die zum Zurückspeichern von Daten benötigte Zeit im Vergleich zum Zurückspeichern einer ganzen Datei kurz, da nur die tatsächlich benötigten Daten zurückgeholt werden.
- Dieser Vorgang ist in Fig. 6 dargestellt. Schritt 60 zeigt den Start eines Dateilesezugriffs an. Die Datei wird identifiziert (Schritt 62), und der Ausgangsrelativzeiger und die Leselänge werden bei Schritt 64 wie in Fig. 3 extrahiert. Nun geht der Prozeß zum Entscheidungsschritt 66 über, in dem die Dateizuordnungstabelle (FAT) überprüft wird, um zu ermitteln, ob die Leseanforderung eine Anforderung zum Lesen von Daten in (einem) Block oder Blöcken ist, die unter Anwendung der Routine aus Fig. 5 weggespeichert wurden. Lautet die Antwort auf diese Frage Nein, dann geht der Prozeß zu den Schritten 70, 72 und 74 über, die jeweils den Schritten 26, 28 und 30 in Fig. 3 entsprechen. Lautet die Antwort auf die Frage in Schritt 66 jedoch Ja, dann werden die benötigten Daten zunächst in Schritt 68 zurückgespeichert, wonach der Prozeß wie zuvor zu den Schritten 70, 72 und 74 übergeht. Es ist nicht erforderlich, den gesamten Block zurückzuspeichern, und im allgemeinen wird/werden nur der/die benötigte(n) Datensatz/Datensätze zurückgespeichert. Diese können sich in einem Block befinden oder über zwei oder mehrere Blöcke erstrecken.
- Die Routinen von Fig. 3 und 6 setzen voraus, daß Plattenzugriffe abgefangen werden. Wie dies erreicht wird, wird unter Bezugnahme auf die Fig. 7 und 8 beschrieben. Wann immer ein Programm auf eine Datei zugreifen möchte, ruft es eine standardmäßige Routine ab, die Daten in die Platte einspeichert. Diese Routine, die im Falle des DOS-Betriebssystems als Interrupt 21-hex-Funktion (INT21h) bekannt ist, ist ein integrierter Bestandteil des Betriebssystems. Plattenablesung ist INT21h- Funktion 3Fh, und Platteneinspeicherung ist INT21h-Funktion 40h. Die von der Routine durchgeführte Aktion ist von den Parametern abhängig, die beim Eintritt in die Routine weitergegeben werden. Diese Routine ist in Fig. 7 als INT21h dargestellt und ist ein Bestandteil des Betriebssystems in einem Systemspeicherbelegungsplan, wobei die Eintrittsstelle INT21h von einem Pfeil dargestellt wird. Zur Durchführung eines bevorzugten erfindungsgemäßen Verfahrens wird ein zusätzlicher Programmcode auf Betriebssystemschnittstellenebene, wie in Fig. 8 gezeigt, hinzugefügt. In einer DOS-Umgebung kann dieser in der Praxis als ein Treiber unter Verwendung der CONFigurSYS Datei in den Computer geladen werden.
- Die hinzugefügte Software hat den Effekt, daß ein Befehl für die Dateneinspeicherung durch einen alternativen Befehlssatz ersetzt oder ergänzt wird.
- Bei anderen Betriebssystemen ist es ebenso notwendig, die Dateischreibfunktion auf analoge Weise zu unterbrechen. Der erfahrene Programmierer wird in der Lage sein, die notwendigen Routinen unter Befolgung der obigen Beschreibung bezüglich des DOS-Betriebssystems vorzubereiten.
- Im allgemeineren kann die Erfindung in vielen modifizierten Verfahren und anderen Verfahren und Systemen als den beschriebenen und dargestellten implementiert werden.
- Insbesondere können das Verfahren und das System mit dem Teildateisicherungssystem meiner zuvor genannten Anmeldung 08/165,382, Patent 5,617,566, kombiniert werden. Wird dies getan, dann kann die gleiche Hilfsdatenbank zum Notieren von Datenmodifikationen verwendet werden, wie sie gemäß der vorliegenden Erfindung zum Notieren von Datenzugriffen verwendet wird. Der einzige Unterschied besteht darin, daß in der Hilfsdatenbank registriert werden muß, ob es sich bei dem Zugriff um einen Lesezugriff oder einen Schreibzugriff handelte. Das Teildateisicherungssystem meiner zuvor genannten Anmeldung spricht dann auf Einträge an, die Schreibzugriffe auf die Hilfsdatenbank betreffen, während das Teildatei-HSM-System der vorliegenden Anmeldung sowohl Lese- als auch Schreibzugriffe berücksichtigt.
- In einer anderen Modifikation wird das System tatsächlich durch Erhöhen der Inaktivitätsschwelle auf die Lebensdauer der Hilfsdatenbank erweitert. Das heißt, in Fig. 5 wird der Schritt 44 so modifiziert, daß statt der Unterscheidung von Blöcken, auf die seit einem bestimmten Datum zugriffen wurde oder nicht, zwischen Blöcken unterschieden wird, auf die überhaupt zugegriffen oder nicht zugegriffen wurde, d. h. seitdem die Hilfsdatenbank das erste Mal erstellt oder gefüllt wurde. In diesem Fall braucht die Hilfsdatenbank nicht mehr das Datum oder Datum/Zeit jedes Zugriffs zu registrieren.
- Unter bestimmten Umständen ist es möglicherweise nicht erwünscht, bestimmte Dateiteile umzustellen, obwohl auf sie nicht zugegriffen wurde. Dies kann zum Beispiel auf den ersten und möglicherweise den letzten Block in jeder Datei zutreffen.
- Wenn die Erfindung in einem vollständig neuen Betriebssystem ausgeführt werden soll, dann könnte die Hilfsdatenbank schließlich im Prinzip mit der Dateizuordnungstabelle (FAT) kombiniert werden. Es wird jedoch normalerweise bevorzugt, die beiden voneinander getrennt zu halten.
Claims (16)
1. Computersystem mit Einrichtungen für ein
hierarchisches Speichermanagement, wobei das Computersystem
einen Arbeitsspeicher (14), eine Zentraleinheit (12), ein
primäres Massenspeichermittel (16), ein sekundäres
Archivierungsspeichermittel (18) und eine Vorrichtung zum
Archivieren von indem Computersystem gespeicherten Daten
beinhaltet, wobei die genannte Vorrichtung folgendes
umfaßt:
(a) Mittel für die Verwendung beim normalen Gebrauch, die
folgendes umfassen:
ein Mittel, um im Arbeitsspeicher (14) gespeicherte
Befehle der Zentraleinheit (12) bereitzustellen, um die
Zentraleinheit (12) zu veranlassen, auf im primären
Massenspeichermittel (16) gespeicherte Daten zuzugreifen zu
versuchen, durch Generieren von wenigstens einer
Leseanforderung;
ein erstes Identifikationsmittel (22) zum
Identifizieren einer Datei, auf die zugegriffen werden
soll, wobei sich die Datei aus Dateiteilen zusammensetzt;
ein zweites Identifikationsmittel (24) zum
Identifizieren von Dateiteilen in der Datei, auf die
zugegriffen werden soll;
ein Zugriffsmittel (28) zum Zugreifen auf die
Dateiteile, das ein Mittel zum Prüfen einer
Dateizuordnungstabelle aufweist, die die Orte von
Dateiteilen auf dem primären Massenspeichermittel (16)
definiert, um zu ermitteln, ob sich die Dateiteile auf dem
primären Massenspeichermittel (16) befinden, und wenn dies
der Fall ist, die Orte solcher Dateiteile; und
Baumittel (26) zum Aufbauen einer Datenbank, die die
Dateiteilorte identifiziert, auf die zugegriffen werden
soll, wobei die Datenbank nicht den Dateiteil selbst
beinhaltet;
(b) Mittel zum Archivieren, das folgendes umfaßt:
ein Mittel, um im Arbeitsspeicher (14) gespeicherte
Befehle der Zentraleinheit (12) bereitzustellen, um die
Zentraleinheit (12) zu veranlassen, ausgewählte, im
primären Massenspeichermittel (16) gespeicherte Daten auf
dem sekundären Archivierungsspeichermittel (18) zu
archivieren, um auf dem primären Massenspeichermittel (16)
Platz freizumachen;
ein drittes Identifikationsmittel (42, 44), um anhand
der Datenbank Dateiteilorte zu identifizieren, auf die
zugegriffen wurde;
ein Archivierungsmittel (46-50), um wenigstens einige
Dateiteile, auf die nicht zugegriffen wurde, aus dem
primären Massenspeichermittel (16) auf das sekundäre
Archivierungsspeichermittel (18) zu archivieren; und
ein Löschmittel (52), um den von denjenigen
Dateiteilen belegten Platz auf dem primären
Massenspeichermittel (16) freizumachen, auf die nicht
zugegriffen wurde, aber die von dem Archivierungsmittel
archiviert wurden, während Dateiteile, auf die zugegriffen
wurde, auf dem primären Massenspeichermittel (16) erhalten
bleiben; und
(c) Mittel zur Informationswiedergewinnung, die folgendes
umfassen:
ein Mittel, um im Arbeitsspeicher (14) gespeicherte
Befehle der Zentraleinheit (12) bereitzustellen, um die
Zentraleinheit (12) zu veranlassen, ausgewählte, auf dem
sekundären Archivierungsspeichermittel (18) archivierte
Daten wieder auf das primäre Massenspeichermittel (16)
umzuspeichern, damit darauf zugegriffen werden kann; und
ein Mittel (68, 70), das, wenn das Zugriffsmittel
ermittelt, daß sich gewünschte Dateiteile nicht auf dem
primären Massenspeichermittel (16) befinden, anspricht,
indem es die gewünschten Dateiteile aus dem sekundären
Archivierungsspeichermittel (18) für den Zugriff auf das
primäre Massenspeichermittel (16) umspeichert.
2. Computersystem nach Anspruch 1, bei dem die Dateiteile
Blöcke sind, die den in der Dateizuordnungstabelle
identifizierten Elementarblöcken entsprechen.
3. Computersystem nach Anspruch 1 oder 2, bei dem die
Datenbank ferner definiert, ob der Zugriff ein
Schreibzugriff oder ein Lesezugriff ist.
4. Computersystem nach Anspruch 1, 2 oder 3, bei dem das
Baumittel (26) die Dateiteile identifiziert, auf die
zugegriffen werden soll, sowie das Datum oder Datum und
Zeit, an dem/zu der der Zugriff erfolgt.
5. Computersystem nach Anspruch 4, bei dem das dritte
Identifikationsmittel (42, 44) ein Mittel (44) umfaßt, um
aus der Datenbank Dateiteile zu identifizieren, auf die
seit einem bestimmten Datum zugegriffen wurde, und
Dateiteile, auf die seit dem vorgegebenen Datum nicht
zugegriffen wurde; das Archivierungsmittel (46-50) ein
Mittel umfaßt, um wenigstens einige Dateiteile auf das
sekundäre Archivierungsspeichermittel (18) zu archivieren,
auf die seit dem vorgegebenen Datum nicht zugegriffen
wurde; und das Löschmittel (52) ein Mittel umfaßt, um auf
dem primären Massenspeichermittel (16) den von denjenigen
Dateiteilen belegten Platz freizumachen, auf die seit dem
vorgegebenen Datum nicht zugegriffen wurde, die aber von
dem Archivierungsmittel archiviert wurden, während
Dateiteile auf dem primären Massenspeichermittel (16)
erhalten bleiben, auf die seit dem vorgegebenen Datum
zugegriffen wurde.
6. Computersystem nach Anspruch 5, bei dem das
Archivierungsmittel (46-50) und das Löschmittel (52) Mittel
(48) zum Archivieren und Löschen derjenigen Dateiteile
beinhalten, auf die seit dem vorgegebenen Datum nicht
zugegriffen wurde und die bereits mit einer vorbestimmten
Häufigkeit gesichert wurden.
7. Computersystem nach einem der vorherigen Ansprüche,
bei dem das Löschmittel (52) ein Mittel zum Ändern der
Dateizuordnungstabelle umfaßt.
8. Computersystem nach einem der vorherigen Ansprüche,
bei dem das Baumittel (26) die Datenbank konsolidiert, um
redundante Informationen zu entfernen.
9. Verfahren zum Zugreifen auf Daten, die in einem
Computersystem gespeichert sind, das Einrichtungen für ein
hierarchisches Speichermanagement beinhaltet, wobei das
Computersystem einen Arbeitsspeicher, eine Zentraleinheit,
ein primäres Massenspeichermittel, ein sekundäres
Archivierungsspeichermittel und eine Vorrichtung zum
Archivieren von in dem Computersystem gespeicherten Daten
aufweist, wobei das Verfahren die folgenden Schritte
umfaßt:
(a) beim normalen Gebrauch:
Bereitstellen von im Arbeitsspeicher gespeicherten
Befehlen für die Zentraleinheit, um die Zentraleinheit zu
veranlassen, auf im primären Massenspeichermittel
gespeicherte Daten zuzugreifen zu versuchen, durch
Generieren von wenigstens einer Leseanforderung;
Identifizieren einer Datei, auf die zugegriffen werden
soll, wobei sich die Datei aus Dateiteilen zusammensetzt;
Identifizieren von Dateiteilen in der Datei, auf die
zugegriffen werden soll;
Zugreifen auf die Dateiteile, wobei der
Zugriffsschritt das Prüfen einer Dateizuordnungstabelle
beinhaltet, die die Orte von Dateiteilen auf dem primären
Massenspeichermittel definiert, um zu ermitteln, ob sich
die Dateiteile auf dem primären Massenspeichermittel
befinden, und wenn dies der Fall ist, die Orte solcher
Dateiteile; und
Aufbauen einer Datenbank, die die Dateiteilorte
identifiziert, auf die zugegriffen werden soll, wobei die
Datenbank nicht den Dateiteil selbst beinhaltet;
(b) beim Archivieren:
Bereitstellen von im Arbeitsspeicher gespeicherten
Befehlen für die Zentraleinheit, um die Zentraleinheit zu
veranlassen, ausgewählte, im primären Massenspeichermittel
gespeicherte Daten auf dem sekundären
Archivierungsspeichermittel zu archivieren, um auf dem
primären Massenspeichermittel Platz freizumachen;
Identifizieren von Dateiteilorten anhand der
Datenbank, auf die zugegriffen wurde;
Archivieren wenigstens einiger Dateiteile, auf die
nicht zugegriffen wurde, aus dem primären
Massenspeichermittel auf das sekundäre
Archivierungsspeichermittel; und
Freimachen des von denjenigen Dateiteilen belegten
Platzes auf dem primären Massenspeichermittel, auf die
nicht zugegriffen wurde, aber die von dem
Archivierungsmittel archiviert wurden, während Dateiteile,
auf die zugegriffen wurde, auf dem primären
Massenspeichermittel erhalten bleiben; und
(c) zur Informationswiedergewinnung:
Bereitstellen von im Arbeitsspeicher gespeicherten
Befehlen für die Zentraleinheit, um die Zentraleinheit zu
veranlassen, ausgewählte, auf dem sekundären
Archivierungsspeichermittel archivierte Daten wieder auf
das primäre Massenspeichermittel umzuspeichern, damit
darauf zugegriffen werden kann; und
wenn ermittelt wird, daß sich gewünschte Dateiteile
nicht auf dem primären Massenspeichermittel befinden,
Umspeichern der gewünschten Dateiteile aus dem sekundären
Archivierungsspeichermittel auf das primäre
Massenspeichermittel, damit darauf zugegriffen werden kann.
10. Verfahren nach Anspruch 9, bei dem die Dateiteile
Blöcke sind, die den in der Dateizuordnungstabelle
identifizierten Elementarblöcken entsprechen.
11. Verfahren nach Anspruch 9 oder 10, bei dem die
Datenbank ferner definiert, ob der Zugriff ein
Schreibzugriff oder ein Lesezugriff ist.
12. Verfahren nach Anspruch 9, 10 oder 11, bei dem der
Aufbauschritt die Dateiteile identifiziert, auf die
zugegriffen werden soll, sowie das Datum oder Datum und
Zeit, an dem bzw. zu der der Zugriff erfolgt.
13. Verfahren nach Anspruch 12, bei dem der Schritt des
Archivierens der Identifizierung, auf welche Dateiteile
zugegriffen wurde, die Identifizierung von Dateiteilen
anhand der Datenbank umfaßt, auf die seit einem bestimmten
Datum zugegriffen wurde, und von Dateiteilen, auf die seit
dem vorgegebenen Datum nicht zugegriffen wurde; der
Archivierungsschritt das Archivieren von wenigstens einigen
Dateiteilen auf das sekundäre Archivierungsspeichermittel
umfaßt, auf die seit dem vorgegebenen Datum nicht
zugegriffen wurde; und der Löschschritt das Freimachen des
von denjenigen Teilen belegten Platzes auf dem primären
Massenspeichermittel umfaßt, auf die seit dem vorgegebenen
Datum nicht zugegriffen wurde, die jedoch von dem
Archivierungsmittel archiviert wurden, während auf dem
primären Massenspeichermittel Dateiteile erhalten bleiben,
auf die seit dem vorgegebenen Datum zugegriffen wurde.
14. Verfahren nach Anspruch 13, bei dem der
Archivierungsschritt und der Löschschritt das Archivieren
und Löschen derjenigen Dateiteile umfaßt, auf die seit dem
vorgegebenen Datum nicht zugegriffen wurde und die bereits
mit einer vorbestimmten Häufigkeit gesichert wurden.
15. Verfahren nach einem der Ansprüche 9 bis 14, bei dem
der Löschschritt das Ändern der Dateizuordnungstabelle
umfaßt.
16. Verfahren nach einem der Ansprüche 9 bis 15, bei dem
der Aufbauschritt das Konsolidieren der Datenbank
beinhaltet, um redundante Informationen zu entfernen.
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US08/356,478 US5617566A (en) | 1993-12-10 | 1994-12-15 | File portion logging and arching by means of an auxilary database |
| PCT/GB1995/002817 WO1996018960A1 (en) | 1994-12-15 | 1995-12-01 | Storage of computer data |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| DE69516538D1 DE69516538D1 (de) | 2000-05-31 |
| DE69516538T2 true DE69516538T2 (de) | 2000-11-23 |
Family
ID=23401599
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| DE69516538T Expired - Lifetime DE69516538T2 (de) | 1994-12-15 | 1995-12-01 | Speicherung von rechnerdaten |
Country Status (24)
| Country | Link |
|---|---|
| US (1) | US5617566A (de) |
| EP (1) | EP0797805B1 (de) |
| JP (1) | JPH10510642A (de) |
| KR (1) | KR100437199B1 (de) |
| CN (1) | CN1118035C (de) |
| AT (1) | ATE192249T1 (de) |
| AU (1) | AU710755B2 (de) |
| BG (1) | BG63096B1 (de) |
| BR (1) | BR9510506A (de) |
| CA (1) | CA2207735C (de) |
| CZ (1) | CZ294346B6 (de) |
| DE (1) | DE69516538T2 (de) |
| DK (1) | DK0797805T3 (de) |
| ES (1) | ES2145308T3 (de) |
| FI (1) | FI972544L (de) |
| GR (1) | GR3033775T3 (de) |
| HU (1) | HU221081B1 (de) |
| IS (1) | IS1890B (de) |
| MX (1) | MX9704419A (de) |
| NO (1) | NO312529B1 (de) |
| NZ (1) | NZ296165A (de) |
| PL (1) | PL182609B1 (de) |
| RU (1) | RU2182360C2 (de) |
| WO (1) | WO1996018960A1 (de) |
Families Citing this family (58)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US5619656A (en) * | 1994-05-05 | 1997-04-08 | Openservice, Inc. | System for uninterruptively displaying only relevant and non-redundant alert message of the highest severity for specific condition associated with group of computers being managed |
| US5832525A (en) * | 1996-06-24 | 1998-11-03 | Sun Microsystems, Inc. | Disk fragmentation reduction using file allocation tables |
| US5819298A (en) * | 1996-06-24 | 1998-10-06 | Sun Microsystems, Inc. | File allocation tables with holes |
| CA2221216A1 (en) * | 1996-11-15 | 1998-05-15 | Mark Squibb | System and apparatus for merging a write event journal and an original storage to produce an updated storage using an event map |
| US6366988B1 (en) | 1997-07-18 | 2002-04-02 | Storactive, Inc. | Systems and methods for electronic data storage management |
| US5983368A (en) * | 1997-08-26 | 1999-11-09 | International Business Machines Corporation | Method and system for facilitating hierarchical storage management (HSM) testing |
| US6173359B1 (en) * | 1997-08-27 | 2001-01-09 | International Business Machines Corp. | Storage and access to scratch mounts in VTS system |
| US6067541A (en) * | 1997-09-17 | 2000-05-23 | Microsoft Corporation | Monitoring document changes in a file system of documents with the document change information stored in a persistent log |
| US5953729A (en) * | 1997-12-23 | 1999-09-14 | Microsoft Corporation | Using sparse file technology to stage data that will then be stored in remote storage |
| US6378128B1 (en) * | 1998-10-08 | 2002-04-23 | Microsoft Corporation | System and method for dynamically modifying an install-set |
| US6240427B1 (en) * | 1999-01-05 | 2001-05-29 | Advanced Micro Devices, Inc. | Method and apparatus for archiving and deleting large data sets |
| US6408314B1 (en) | 1999-07-06 | 2002-06-18 | Synscort Incorporated | Method of performing a high-performance sort which gains efficiency by reading input file blocks sequentially |
| US6415300B1 (en) | 1999-07-06 | 2002-07-02 | Syncsort Incorporated | Method of performing a high-performance backup which gains efficiency by reading input file blocks sequentially |
| US6981005B1 (en) * | 2000-08-24 | 2005-12-27 | Microsoft Corporation | Partial migration of an object to another storage location in a computer system |
| KR20020031509A (ko) * | 2000-10-20 | 2002-05-02 | 김영돈, 정춘보 | 프로그램 제작툴에서 데이터 관리방법 |
| WO2003038673A2 (en) * | 2001-10-31 | 2003-05-08 | Gen-I Limited | Information archiving software |
| US20030084071A1 (en) * | 2001-11-01 | 2003-05-01 | International Business Machines Corporation | Method and system for managing computer performance |
| KR100468276B1 (ko) * | 2001-12-13 | 2005-01-27 | (주)아이디스 | 멀티미디어 데이터 저장 및 검색 방법 |
| GB0207969D0 (en) * | 2002-04-08 | 2002-05-15 | Ibm | Data processing arrangement and method |
| US20040015524A1 (en) * | 2002-07-19 | 2004-01-22 | Chalstrom Robert Eugene | Method and apparatus for managing digitally-stored media files |
| US6889302B2 (en) * | 2002-08-29 | 2005-05-03 | International Business Machines Corporation | Apparatus and method to maintain information in one or more virtual volume aggregates comprising a plurality of virtual volumes |
| US7366760B2 (en) * | 2003-01-03 | 2008-04-29 | Microsoft Corporation | System and method for improved client server communications of email messages |
| US8065277B1 (en) | 2003-01-17 | 2011-11-22 | Daniel John Gardner | System and method for a data extraction and backup database |
| US20040143609A1 (en) * | 2003-01-17 | 2004-07-22 | Gardner Daniel John | System and method for data extraction in a non-native environment |
| US8375008B1 (en) | 2003-01-17 | 2013-02-12 | Robert Gomes | Method and system for enterprise-wide retention of digital or electronic data |
| US8630984B1 (en) | 2003-01-17 | 2014-01-14 | Renew Data Corp. | System and method for data extraction from email files |
| US8943024B1 (en) | 2003-01-17 | 2015-01-27 | Daniel John Gardner | System and method for data de-duplication |
| US8010491B2 (en) * | 2003-02-28 | 2011-08-30 | Microsoft Corporation | Method for managing multiple file states for replicated files |
| US8856163B2 (en) * | 2003-07-28 | 2014-10-07 | Google Inc. | System and method for providing a user interface with search query broadening |
| US8131739B2 (en) * | 2003-08-21 | 2012-03-06 | Microsoft Corporation | Systems and methods for interfacing application programs with an item-based storage platform |
| US7107416B2 (en) | 2003-09-08 | 2006-09-12 | International Business Machines Corporation | Method, system, and program for implementing retention policies to archive records |
| JP4189595B2 (ja) * | 2004-08-25 | 2008-12-03 | コニカミノルタビジネステクノロジーズ株式会社 | ファイル管理装置 |
| RU2406118C2 (ru) * | 2004-09-22 | 2010-12-10 | Майкрософт Корпорейшн | Способ и система для синтетического резервного копирования и восстановления данных |
| JP4144609B2 (ja) * | 2004-09-29 | 2008-09-03 | ソニー株式会社 | 情報処理装置、メモリ領域管理方法、並びにコンピュータ・プログラム |
| US7411693B2 (en) * | 2004-10-15 | 2008-08-12 | Agfa Inc. | Image data dissemination system and method |
| US8069151B1 (en) | 2004-12-08 | 2011-11-29 | Chris Crafford | System and method for detecting incongruous or incorrect media in a data recovery process |
| US20060136525A1 (en) * | 2004-12-21 | 2006-06-22 | Jens-Peter Akelbein | Method, computer program product and mass storage device for dynamically managing a mass storage device |
| US7831639B1 (en) * | 2004-12-22 | 2010-11-09 | Symantec Operating Corporation | System and method for providing data protection by using sparse files to represent images of data stored in block devices |
| US8527468B1 (en) | 2005-02-08 | 2013-09-03 | Renew Data Corp. | System and method for management of retention periods for content in a computing system |
| US8108579B2 (en) * | 2005-03-31 | 2012-01-31 | Qualcomm Incorporated | Mechanism and method for managing data storage |
| JP2006338461A (ja) * | 2005-06-03 | 2006-12-14 | Hitachi Ltd | 電子的なファイルの記憶を制御するシステム及び方法 |
| US7853667B1 (en) * | 2005-08-05 | 2010-12-14 | Network Appliance, Inc. | Emulation of transparent recall in a hierarchical storage management system |
| US7434218B2 (en) * | 2005-08-15 | 2008-10-07 | Microsoft Corporation | Archiving data in a virtual application environment |
| JP4563314B2 (ja) * | 2005-12-14 | 2010-10-13 | 富士通株式会社 | ストレージシステム制御装置、ストレージシステム制御プログラム、ストレージシステム制御方法 |
| US8150827B2 (en) * | 2006-06-07 | 2012-04-03 | Renew Data Corp. | Methods for enhancing efficiency and cost effectiveness of first pass review of documents |
| WO2009068101A1 (en) | 2007-11-29 | 2009-06-04 | Airbus Deutschland Gmbh | System and method for archiving of data |
| RU2457622C2 (ru) * | 2007-11-29 | 2012-07-27 | Эйрбас Оперейшнс Гмбх | Система и способ архивирования данных |
| US8117234B2 (en) * | 2008-01-24 | 2012-02-14 | International Business Machines Corporation | Method and apparatus for reducing storage requirements of electronic records |
| US8615490B1 (en) | 2008-01-31 | 2013-12-24 | Renew Data Corp. | Method and system for restoring information from backup storage media |
| JP5248912B2 (ja) | 2008-05-12 | 2013-07-31 | 株式会社日立製作所 | サーバ計算機、計算機システムおよびファイル管理方法 |
| US20110145269A1 (en) * | 2009-12-09 | 2011-06-16 | Renew Data Corp. | System and method for quickly determining a subset of irrelevant data from large data content |
| WO2011075610A1 (en) | 2009-12-16 | 2011-06-23 | Renew Data Corp. | System and method for creating a de-duplicated data set |
| US8423727B2 (en) * | 2010-03-16 | 2013-04-16 | Hitachi, Ltd. | I/O conversion method and apparatus for storage system |
| US8386421B2 (en) | 2010-06-28 | 2013-02-26 | Microsoft Corporation | Concurrency control for confluent trees |
| US8412689B2 (en) * | 2010-07-07 | 2013-04-02 | Microsoft Corporation | Shared log-structured multi-version transactional datastore with metadata to enable melding trees |
| US9848106B2 (en) | 2010-12-21 | 2017-12-19 | Microsoft Technology Licensing, Llc | Intelligent gameplay photo capture |
| US10114844B2 (en) * | 2015-11-30 | 2018-10-30 | International Business Machines Corporation | Readiness checker for content object movement |
| CN106227795A (zh) * | 2016-07-20 | 2016-12-14 | 曙光信息产业(北京)有限公司 | 分级存储的检测方法和系统 |
Family Cites Families (19)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US4507751A (en) * | 1982-06-21 | 1985-03-26 | International Business Machines Corporation | Method and apparatus for logging journal data using a log write ahead data set |
| US4588991A (en) * | 1983-03-07 | 1986-05-13 | Atalla Corporation | File access security method and means |
| US4686620A (en) * | 1984-07-26 | 1987-08-11 | American Telephone And Telegraph Company, At&T Bell Laboratories | Database backup method |
| JPH0785248B2 (ja) * | 1986-03-14 | 1995-09-13 | 株式会社東芝 | デ−タフアイルシステム |
| US5043871A (en) * | 1986-03-26 | 1991-08-27 | Hitachi, Ltd. | Method and apparatus for database update/recovery |
| GB2196764A (en) * | 1986-10-30 | 1988-05-05 | Apple Computer | Hierarchical file system |
| SU1424024A1 (ru) * | 1987-02-16 | 1988-09-15 | Предприятие П/Я Г-4173 | Система сбора и обработки информации |
| FR2624632A1 (fr) * | 1987-12-14 | 1989-06-16 | Guillot Pierre | Procede d'archivage automatique de documents sur unite de stockage utilisant une transmission compactee et cryptee, et le serveur documentaire pour sa mise en oeuvre |
| DE69023770T2 (de) * | 1989-07-11 | 1996-05-23 | Intelligence Quotient Int | Verfahren zum betrieb eines datenverarbeitungssystems. |
| GB8915875D0 (en) * | 1989-07-11 | 1989-08-31 | Intelligence Quotient United K | A method of operating a data processing system |
| US5454099A (en) * | 1989-07-25 | 1995-09-26 | International Business Machines Corporation | CPU implemented method for backing up modified data sets in non-volatile store for recovery in the event of CPU failure |
| US5163148A (en) * | 1989-08-11 | 1992-11-10 | Digital Equipment Corporation | File backup system for producing a backup copy of a file which may be updated during backup |
| SU1730642A1 (ru) * | 1989-09-22 | 1992-04-30 | Всесоюзный Научно-Исследовательский Институт Проблем Вычислительной Техники И Информатики | Устройство дл управлени формированием массивов данных учета населени |
| US5214768A (en) * | 1989-11-01 | 1993-05-25 | E-Systems, Inc. | Mass data storage library |
| US5276860A (en) * | 1989-12-19 | 1994-01-04 | Epoch Systems, Inc. | Digital data processor with improved backup storage |
| US5363473A (en) * | 1991-05-28 | 1994-11-08 | The Trustees Of Columbia University In The City Of New York | Incremental update process and apparatus for an inference system |
| JPH05250244A (ja) * | 1992-03-04 | 1993-09-28 | Nec Corp | データベースシステム |
| US5263154A (en) * | 1992-04-20 | 1993-11-16 | International Business Machines Corporation | Method and system for incremental time zero backup copying of data |
| US5455946A (en) * | 1993-05-21 | 1995-10-03 | International Business Machines Corporation | Method and means for archiving modifiable pages in a log based transaction management system |
-
1994
- 1994-12-15 US US08/356,478 patent/US5617566A/en not_active Expired - Lifetime
-
1995
- 1995-12-01 PL PL95321160A patent/PL182609B1/pl not_active IP Right Cessation
- 1995-12-01 DK DK95938528T patent/DK0797805T3/da active
- 1995-12-01 AT AT95938528T patent/ATE192249T1/de not_active IP Right Cessation
- 1995-12-01 CN CN95197368A patent/CN1118035C/zh not_active Expired - Fee Related
- 1995-12-01 HU HU9702187A patent/HU221081B1/hu not_active IP Right Cessation
- 1995-12-01 KR KR1019970704018A patent/KR100437199B1/ko not_active Expired - Fee Related
- 1995-12-01 CZ CZ19971859A patent/CZ294346B6/cs not_active IP Right Cessation
- 1995-12-01 AU AU39889/95A patent/AU710755B2/en not_active Ceased
- 1995-12-01 CA CA002207735A patent/CA2207735C/en not_active Expired - Fee Related
- 1995-12-01 NZ NZ296165A patent/NZ296165A/en unknown
- 1995-12-01 ES ES95938528T patent/ES2145308T3/es not_active Expired - Lifetime
- 1995-12-01 EP EP95938528A patent/EP0797805B1/de not_active Expired - Lifetime
- 1995-12-01 FI FI972544A patent/FI972544L/fi not_active Application Discontinuation
- 1995-12-01 WO PCT/GB1995/002817 patent/WO1996018960A1/en not_active Ceased
- 1995-12-01 RU RU97111812/09A patent/RU2182360C2/ru not_active IP Right Cessation
- 1995-12-01 JP JP8518452A patent/JPH10510642A/ja not_active Ceased
- 1995-12-01 BR BR9510506A patent/BR9510506A/pt not_active IP Right Cessation
- 1995-12-01 DE DE69516538T patent/DE69516538T2/de not_active Expired - Lifetime
-
1997
- 1997-06-13 MX MX9704419A patent/MX9704419A/es not_active IP Right Cessation
- 1997-06-13 IS IS4507A patent/IS1890B/is unknown
- 1997-06-16 NO NO19972784A patent/NO312529B1/no unknown
- 1997-06-16 BG BG101622A patent/BG63096B1/bg unknown
-
2000
- 2000-06-23 GR GR20000401472T patent/GR3033775T3/el not_active IP Right Cessation
Also Published As
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| DE69516538T2 (de) | Speicherung von rechnerdaten | |
| DE60213867T2 (de) | Vorrichtung zur verwaltung von datenreplikation | |
| DE3784190T2 (de) | Eintragung eines datenbasisindex in das journal zur verbesserten rueckstellung. | |
| DE102013215535B4 (de) | Sicherung oder wiederherstellung von daten mit hilfe eines hauptspeichers und nichtflüchtiger speichermedien | |
| DE69224678T2 (de) | Dynamische Softwaremigration | |
| DE69119222T2 (de) | Datensicherung und Beseitigung in einem Datenverarbeitungssystem | |
| DE112007003693B4 (de) | Datenverarbeitungsvorrichtung und Verfahren zur Datenverarbeitung | |
| DE69601850T2 (de) | Transaktionsgerättreiberverfahren für ein Dateiensystem mit Logging-Möglichkeit | |
| DE69530405T2 (de) | Schnappschuss von auf einem massenspeichersystem gespeicherten daten | |
| DE68927142T2 (de) | Verriegelungs- und Lese-Minimierung in einem segmentierten Speicherraum | |
| DE69622238T2 (de) | Verfahren und Vorrichtung zur Sicherungsablaufplanung mit verstellbarem Niveau | |
| DE69025507T2 (de) | Gerät zur Sicherung und Wiederherstellung für Digitalrechner | |
| DE69513956T2 (de) | Datenspeicherverwaltung für in einem netzwerk zusammengeschaltete prozessoren | |
| DE69425658T2 (de) | Anordnung eines dateisystems zum beschreiben beliebiger bereiche | |
| DE69126066T2 (de) | Verfahren und Gerät zur Optimierung des Logbuchaufhebungsgebrauchs | |
| DE4220198C2 (de) | Transaktionsverarbeitungsverfahren für einen digitalen Computer und Transaktionsverarbeitungssystem | |
| DE69636330T2 (de) | Verfahren für On-line- und Echzeit-Datenmigration | |
| DE69311952T2 (de) | Verfahren und System zur inkrementalen Datensicherung | |
| DE60129025T2 (de) | Speicherbereichszuordnung in einem dateisystem zum beschreiben beliebiger bereiche | |
| DE602005001041T2 (de) | Speicherauszugssystem | |
| DE69418482T2 (de) | Inkrementales datensicherungssystem | |
| DE69802294T2 (de) | Systemen zur datensicherung und -rückgewinnung | |
| DE69030024T2 (de) | Verfahren zur Herstellung einer Duplikation von einer Datenbank | |
| DE69636192T2 (de) | Datenmigrationssystem und -verfahren unter verwendung von undichten dateien | |
| DE60304677T2 (de) | Verfahren und vorrichtung zur bereitstellung einer inkrementellen wiederherstellung eines speichermediums bei datenverlust |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| 8364 | No opposition during term of opposition |