DE112021000935T5 - USING BUSINESS CONTINUITY AND DISASTER RECOVERY FOR ANY POINT-IN-TIME BACKUPS - Google Patents
USING BUSINESS CONTINUITY AND DISASTER RECOVERY FOR ANY POINT-IN-TIME BACKUPS Download PDFInfo
- Publication number
- DE112021000935T5 DE112021000935T5 DE112021000935.4T DE112021000935T DE112021000935T5 DE 112021000935 T5 DE112021000935 T5 DE 112021000935T5 DE 112021000935 T DE112021000935 T DE 112021000935T DE 112021000935 T5 DE112021000935 T5 DE 112021000935T5
- Authority
- DE
- Germany
- Prior art keywords
- journal
- data
- stream
- backups
- backup
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR 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/1458—Management of the backup or restore process
- G06F11/1466—Management of the backup or restore process to make the backup process non-disruptive
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR 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/1471—Saving, restoring, recovering or retrying involving logging of persistent data for recovery
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR 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/16—Error detection or correction of the data by redundancy in hardware
- G06F11/20—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
- G06F11/2053—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant
- G06F11/2056—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant by mirroring
Abstract
Erzeugen von Backups zu einem beliebigen Zeitpunkt (Any-Point-in-Time-Backups) ohne Erzeugung nativer Snapshots. Produktionsdaten werden so gesplittet, dass ein Journalstrom an ein Datenschutzsystem gesendet wird, das lokal oder entfernt sein kann. Der Journalstrom umfasst einen Datenstrom und einen Metadatenstrom. Backups werden im Datenschutzsystem synthetisiert, indem mindestens ein Teil des Journals gerollt wird. Es kann ein Backup für jeden im Journal dargestellten Zeitpunkt synthetisiert werden.Create any-point-in-time backups without creating native snapshots. Production data is split so that a journal stream is sent to a data protection system, which can be local or remote. The journal stream includes a data stream and a metadata stream. Backups are synthesized in the data protection system by rolling at least part of the journal. A backup can be synthesized for each time point represented in the journal.
Description
VERWANDTE ANMELDUNGENRELATED APPLICATIONS
Diese Anmeldung bezieht sich auf die
BEREICH DER ERFINDUNGFIELD OF THE INVENTION
Ausführungsformen der vorliegenden Erfindung betreffen allgemein Datenschutz und Datenschutzoperationen. Insbesondere betreffen zumindest einige Ausführungsformen der Erfindung Systeme, Hardware, Software, computerlesbare Medien und Verfahren für Datenschutzoperationen, einschließlich Datensicherungen zu einem beliebigen Zeitpunkt (Any-Point-in-Time-Backups).Embodiments of the present invention relate generally to data protection and data protection operations. More particularly, at least some embodiments of the invention relate to systems, hardware, software, computer-readable media, and methods for data protection operations, including any-point-in-time backups.
HINTERGRUNDBACKGROUND
Computersysteme speichern oft Daten, die einen erheblichen Wert haben. Jedes Unternehmen, das ein Problem mit seinen Daten hat, kann wirtschaftliche Probleme, Kundenprobleme, Vertrauensprobleme und dergleichen erleben. Daher ist die Fähigkeit, Daten zu schützen, ein wichtiger Aspekt vieler Computersysteme. Die Fähigkeit, Daten so schnell und mit so wenig Verlust wie möglich wiederherzustellen, verringert den Umfang und das Ausmaß der durch problematische Daten verursachten Probleme.Computer systems often store data that has significant value. Any business that has a problem with its data can experience economic problems, customer problems, trust problems and the like. Therefore, the ability to protect data is an important aspect of many computer systems. The ability to recover data as quickly and with as little loss as possible reduces the scope and scale of problems caused by problematic data.
Computersysteme verwenden häufig virtuelle Maschinen, um Anwendungen auszuführen. Der Schutz virtueller Maschinen kann jedoch schwierig sein. Konventionell werden Snapshots verwendet, um Sicherungen bzw. Backups bei den virtuellen Maschinen durchzuführen. Zur Durchführung von Snapshots müssen die virtuellen Maschinen jedoch in den Ruhezustand versetzt und stillgelegt werden. Dies kann zu einer Unterbrechung der auf den virtuellen Maschinen laufenden Anwendungen führen.Computer systems often use virtual machines to run applications. However, protecting virtual machines can be difficult. Conventionally, snapshots are used to take backups of the virtual machines. However, in order to perform snapshots, the virtual machines must be hibernated and quiesced. This can disrupt the applications running on the virtual machines.
Darüber hinaus ist es aus praktischer Sicht schwierig, häufige Snapshots zu erstellen. Es gibt viele systemweite Beschränkungen, die sich auf die Anzahl der Snapshots auswirken, die erstellt werden können. Tatsächlich sind die meisten Systeme darauf beschränkt, Snapshots im Bereich von Minuten bis Stunden zu erstellen. Zwar können Spiegelungssysteme eingesetzt werden, um die Häufigkeit der Snapshots zu kompensieren, doch erfordern diese Lösungen erhebliche Speicherressourcen und sind mit einem erheblichen Verwaltungsaufwand verbunden.In addition, from a practical point of view, it is difficult to take frequent snapshots. There are many system-wide limitations that affect the number of snapshots that can be created. In fact, most systems are limited to taking snapshots in the range of minutes to hours. While mirroring systems can be used to compensate for the frequency of snapshots, these solutions require significant storage resources and are associated with significant management overhead.
All diese Faktoren wirken sich auf das Wiederherstellungsziel („Recovery Point Objective“ (RPO)) eines Unternehmens aus. Das RPO drückt eine Beziehung zwischen der Zeit zwischen den Backups und der Datenmenge, die zwischen den Backups verloren gehen könnte, aus. Wenn das RPO eines Unternehmens niedrig gehalten wird, ist das Unternehmen in einer besseren Lage, wenn Daten beschädigt werden oder verloren gehen, als in einer Situation mit einem höheren RPO. Daher besteht die Notwendigkeit, die Art und Weise, wie Daten geschützt werden, zu verbessern.All of these factors affect an organization's recovery point objective (RPO). RPO expresses a relationship between the time between backups and the amount of data that could be lost between backups. When a company's RPO is kept low, the company is in a better position when data is corrupted or lost than it is in a higher RPO situation. Therefore, there is a need to improve the way data is protected.
Figurenlistecharacter list
Um die Art und Weise zu beschreiben, in der zumindest einige der Vorteile und Merkmale der Erfindung erreicht werden können, wird eine genauere Beschreibung der Ausführungsformen der Erfindung durch Bezugnahme auf spezifische Ausführungsformen davon, die in den beigefügten Zeichnungen dargestellt sind, gegeben. In dem Bewusstsein, dass diese Zeichnungen nur typische Ausführungsformen der Erfindung darstellen und daher nicht als Einschränkung ihres Umfangs anzusehen sind, werden Ausführungsformen der Erfindung anhand der beigefügten Zeichnungen mit zusätzlicher Spezifität und Detailgenauigkeit beschrieben und erläutert, wobei:
-
1 ein Beispiel für ein Datenschutzsystem zeigt, das so konfiguriert ist, dass es Datenschutzoperationen durchführt und Point-in-Time-Backups ohne die Verwendung nativer Snaphots erstellt; -
2 ein Beispiel für ein Journal zeigt, das bei der Erstellung von Point-in-Time-Backups verwendet wird; -
3 ein Beispiel für Backups zeigt, die von einem Journal in einem Datenschutzsystem erzeugt werden; und -
4 ein Beispiel für ein Verfahren zur Erzeugung von Any-Point-in-Time-Backups zeigt.
-
1 shows an example of a data protection system configured to perform data protection operations and create point-in-time backups without using native snapshots; -
2 shows an example of a journal used when creating point-in-time backups; -
3 shows an example of backups created by a journal in a data protection system; and -
4 shows an example of a method for creating any-point-in-time backups.
DETAILLIERTE BESCHREIBUNG EINIGER BEISPIELHAFTER AUSFÜHRUNGSFORMENDETAILED DESCRIPTION OF SOME EXEMPLARY EMBODIMENTS
Ausführungsformen der vorliegenden Erfindung betreffen allgemein Datenschutzoperationen. Insbesondere betreffen zumindest einige Ausführungsformen der Erfindung Systeme, Hardware, Software, computerlesbare Medien und Verfahren für Datenschutzoperationen, einschließlich Datensicherungsoperationen (Backup-Operationen), Wiederherstellungsoperationen, Bilderzeugungsoperationen, Replikationsoperationen, Point-in-Time (PiT)-Operationen, Deduplizierungsoperationen oder dergleichen oder Kombinationen davon.Embodiments of the present invention relate generally to data protection operations. In particular, at least some embodiments of the invention relate to systems, hardware, software, computer-readable media, and methods for data protection operations, including data protection (backup) operations, restore operations, imaging operations, replication operations, point-in-time (PiT) operations, deduplication operations, or the like, or combinations from that.
Ausführungsformen der Erfindung betreffen Systeme und Verfahren zur Durchführung von Backup-Operationen einschließlich PiT-Operationen. Dazu gehört das Erzeugen, Synthetisieren und/oder Speichern von Bildern oder Snapshots oder anderen Backups auf einem Sekundärspeicher (z. B. DELL EMC Data Domain). Ausführungsformen der Erfindung replizieren kontinuierlich einen IO-Strom. Der replizierte IO-Strom kann als Journal formatiert werden, das die Daten und die Metadaten in getrennten Strömen hält. Das Journal wird auf der Sekundärspeichervorrichtung gespeichert, und Backups können aus dem Journal generiert oder synthetisiert werden. Dies wird erreicht, ohne dass Snaphots der Quelldaten durchgeführt werden müssen (daher sind keine nativen Snaphots erforderlich). Ausführungsformen der Erfindung sind im Vergleich zu nativen Snapshots (die oftmals stillgelegte und/oder ruhende Anwendungen erfordern) mit deutlich weniger Overhead verbunden und ermöglichen außerdem eine Backup-Funktionalität zu jedem beliebigen Zeitpunkt (Any-Point-in-Time-Backup). Backups können auch auf einer zweiten Speicherebene gespeichert werden.Embodiments of the invention relate to systems and methods for performing backup operations including PiT operations. This includes creating, synthesizing and/or storing images or snapshots or other backups on secondary storage (e.g. DELL EMC Data Domain). Embodiments of the invention continuously replicate an IO stream. The replicated IO stream can be formatted as a journal that keeps the data and metadata in separate streams. The journal is stored on the secondary storage device and backups can be generated or synthesized from the journal. This is achieved without having to take snapshots of the source data (therefore native snapshots are not required). Embodiments of the invention involve significantly less overhead compared to native snapshots (which often require shut down and/or dormant applications) and also enable any-point-in-time backup functionality. Backups can also be stored on a second storage tier.
In
In diesem Beispiel kann die Virtualisierungsplattform 104 mit einem Splitter 106 verbunden sein. Der Splitter 106 kann in die Virtualisierungsplattform 104 eingebettet sein oder innerhalb der Virtualisierungsplattform 104 oder als separate Schicht operieren. Der Splitter 106 ist für die Replikation von Daten konfiguriert und kann beispielsweise Daten seriell oder parallel replizieren. Tatsächlich fängt der Splitter 106 IOs, wie z. B. Schreibvorgänge, ab. Der Schreibvorgang wird an den Produktionsspeicher 108 weitergeleitet oder durchläuft diesen. Eine Kopie der Daten wird an das Datenschutzsystem gesendet.In this example, the
Insbesondere kann der Splitter 106 Schreibvorgänge auf dem Produktionsspeicher 108 abfangen und die Schreibvorgänge an eine RPA (z. B. Recover Point Appliance) 120 replizieren. Die RPA 120 kann physisch oder virtuell sein. Der Splitter 106 (der eine Anordnung vom Spiegeltyp sein kann) kann die Daten parallel replizieren. Bei der parallelen Replikation oder dem Splitting wird eine Kopie der Daten parallel oder nahezu parallel zu den Daten, die an den Produktionsspeicher 108 gesendet werden, an die RPA 120 gesendet. Bei dem parallelen Splitting muss der Splitter 106 nicht auf eine Bestätigung hinsichtlich der Übergabe des Schreibvorgangs an den Produktionsspeicher 108 warten, bevor er die Daten oder eine Kopie der Daten an die RPA 120 überträgt.In particular, the
Bei serieller Übertragung oder seriellem Splitting kann der Splitter in einer Ausführungsform den Schreibvorgang an den Produktionsspeicher 108 senden. Nach Erhalt einer Bestätigung kann der Splitter 106 dann die Daten oder eine Kopie der Daten an die RPA 120 übertragen. Wie unten erläutert, kann die Bestätigung in einigen Fällen vom Aggregator 110 gesendet werden.With serial transfer or serial splitting, in one embodiment, the splitter may send the write to
Die RPA 120 kann den Aggregator 110 und einen Sekundärspeicher 112 umfassen, der beispielsweise ein Beispiel für einen Speicher der zweiten Ebene ist. Der Sekundärspeicher kann auch andere Komponenten, wie zum Beispiel einen Prozessor und/oder Controller enthalten, der die Verarbeitung der Daten für die Speicherung und/oder die Erstellung von Backups ermöglicht. So können die Schreibvorgänge oder der Datenstrom, die vom Splitter 106 kommen, in ein Journal 116 übertragen und im Sekundärspeicher 112 gespeichert werden. Die Daten 114 können Bilder oder Backups enthalten, die aus dem Journal 116 synthetisiert oder generiert werden. DELL Datadomain ist ein Beispiel für die RPA 120. Der Aggregator 110 kann in die RPA 120 integriert oder nicht in diese integriert sein. Der Aggregator 110 kann jedoch Teil der RPA 120 sein und in dem Datenschutzsystem enthalten sein.The
Beispielsweise wird der Sekundärspeicher 112 dedupliziert. Zum Beispiel können die Daten 114 (die das Journal 116 enthalten können) in einem Pool mit Signaturen (z. B. Hashes) gespeichert werden, die für jeden Block oder jedes Datum berechnet werden. Mit anderen Worten: die im Sekundärspeicher 112 gespeicherten Daten 114 umfassen, nur als Beispiel, die Datenblöcke oder -pakete (Chunks), Signaturen für jeden der Blöcke, ein Journal und Backups oder Bilder. Ein Volume im Speicher kann eine Folge von Datensignaturen sein - ähnlich einer Liste von Zeigern (Pointer) auf die Daten. Auf diese Weise kann jedes Datenelement einmal gespeichert und mehrfach darauf verwiesen werden, was zu einer Deduplizierung der Daten auf dem Sekundärspeicher 112 führt. In der Regel sind die Signaturen in einer Baumstruktur angeordnet. Das Journal kann unter Verwendung der Signaturen gespeichert werden und wird ebenfalls dedupliziert und nimmt nicht so viel Platz wie die Daten selbst ein.For example,
Datenkopiervorgänge auf Speichersystemen, wie zum Beispiel dem Sekundärspeicher 112, können sehr effizient sein, da die Daten selbst nicht kopiert werden müssen. Nur die Signaturen müssen kopiert werden. Dies ist ein Beispiel für eine schnelle Kopie. Vorteilhaft ist, dass ganze Datenträger/Volumes in einem Bruchteil der Zeit, die eine Vollkopie erfordern würde, kopiert werden können.Data copy operations on storage systems such as
In deduplizierten Systemen, wie zum Beispiel dem Sekundärspeicher 112 oder allgemeiner der RPA 120, kann die Deduplizierung mit einer festen Chunkgröße erfolgen (z. B. 4K oder 8k Chunks oder Blöcke). Darüber hinaus ist die Deduplizierung auf ein Vielfaches der Chunkgröße ausgerichtet. Folglich sollten IOs oder Schreibvorgänge an diesen Grenzen ausgerichtet sein. Bei einer Chunkgröße von 4K sollten die IOs an 0-, 4K-, 8k-, 12k- usw. Grenzen oder -Adressen ausgerichtet werden. Wenn ein IO nicht ausgerichtet ist (z. B. zielt ein 4K-IO auf die Adresse 2k ab), werden die IOs abgelehnt oder entlang der Ausrichtungsgrenzen unterbrochen.In deduplicated systems, such as
Dies kann zumindest am Zielort zu Problemen führen, da der Zielort (die RPA 120 oder der Sekundärspeicher 112) möglicherweise nicht über die Daten verfügt, die zur vollständigen Abdeckung des gesamten Chunks erforderlich sind, oder keinen Zugriff darauf hat. Infolgedessen müssen einige IOs möglicherweise auf bestimmte Weise behandelt werden. Nicht ausgerichtete Chunks, IOs, die kein Vielfaches der Chunkgröße sind, und IOs, die kleiner als die Chunkgröße sind, werden vor oder während des Prozesses der Aufnahme der Chunks in die RPA 120 oder in den Sekundärspeicher 112 verarbeitet. Die Verarbeitung kann zum Beispiel am Splitter 106 oder am Aggregator 110 erfolgen. Diese Chunks können so verarbeitet werden, dass sie ausgerichtet sind und die richtige Größe haben.This can cause problems, at least at the destination, since the destination (the
Beispielsweise kann der Host 102 (oder eine Anwendung oder eine virtuelle Maschine) mit einem IO-Muster verbunden sein, und die Daten im IO-Strom entsprechen möglicherweise nicht den Anforderungen der RPA 120. Ausführungsformen der Erfindung sind in der Lage, verschiedene IO-Muster zu verarbeiten.For example, the host 102 (or an application or virtual machine) may be connected to an IO pattern and the data in the IO stream may not conform to the
Ausführungsformen der Erfindung stellen ein Schema oder System zur Durchführung von Datenschutzoperationen einschließlich Datensicherungs- (Backup-) oder Replikationsoperationen ohne die Verwendung nativer Snapshots bereit. Somit ist ein Snapshot des Hosts 102 oder einer virtuellen Maschine oder Anwendung auf dem Host nicht erforderlich. Eine Streaming-IO-Quelle, bei der es sich um den Splitter 106 handeln kann, erfasst oder fängt den IO-Strom ab, der an den Produktionsspeicher 108 gesendet wird. Eine Kopie des IO-Stroms wird an die RPA 120 gesendet. Die Kopie kann jedoch ein anderes Format haben als der abgefangene IO-Strom.Embodiments of the invention provide a scheme or system for performing data protection operations including data protection (backup) or replication operations without using native snapshots. Thus, a snapshot of the
Die auf diese Weise gespeicherten replizierten Daten ermöglichen Backups mit einem RPO von nahezu Null, Backups zu jedem beliebigen Zeitpunkt (Any-Point-of-Time-Backups) und erfordern auf der Quellseite keine Betäubungs- (Stunning-) oder Stilllegungs- (Quiescing) Operationen.Replicated data stored in this way enables near-zero RPO backups, any-point-of-time backups, and requires no source-side stunning or quiescing operations.
Wie in
In einigen Beispielen werden IOs, die von virtuellen Maschinen oder Hosts gesendet werden, an mindestens zwei Stellen gesendet. Spiegelungsvorrichtungen und Splitter, wie zum Beispiel der Splitter 106, erreichen dieses Ergebnis auf ähnliche Weise. In beiden Fällen gelangen die ursprünglichen IOs auf den Datenträger, z. B. den Produktionsspeicher 108, und eine zweite Kopie wird in das Datenschutzsystem, z. B. die RPA 120, eingeführt.In some examples, IOs sent from virtual machines or hosts are sent to at least two places. Mirroring devices and splitters, such as
Bei der Verarbeitung von nicht ausgerichteten IOs kann es einige Unterschiede geben, wenn die IOs parallel an die beiden Speicherorte oder seriell an einen Speicherort und dann an den anderen gesendet werden. Im Folgenden wird ein Splitter 106 zur Replikation für virtuelle Maschinen erörtert, bei dem die IOs seriell verarbeitet werden können.There may be some differences in processing unaligned IOs if the IOs are sent in parallel to the two locations or serially to one location and then to the other. A
Beispielsweise ist die RPA 120 so konfiguriert, dass sie eingehende Datenströme, wie z. B. eingehende Sicherungsdatenströme, verarbeitet. Diese Datenströme sind in der Regel große Datenpakete (Chunks). IOs, die vom Splitter 106 kommen oder von ihm empfangen werden, sind jedoch von einem IO-Muster abhängig, das mit einer Anwendung auf dem Host oder einer virtuellen Maschine verbunden ist, die die IOs erzeugt. Diese IOs können unterschiedliche Größen haben und sind möglicherweise für den Verbrauch durch die RPA 120 nicht optimal konfiguriert. Daher können IOs zwar aufgeteilt und direkt an den Sekundärspeicher 112 übertragen werden, doch umfassen Ausführungsformen der Erfindung einen Aggregator 110, der so konfiguriert ist, dass er einen Puffer bereitstellt. Insbesondere kann der Aggregator 110 die IOs vor dem Senden an den Sekundärspeicher 112 aggregieren oder stapeln. Somit bietet der RPA 120 eine Aggregationsfunktionalität.For example, the
Vom Splitter 106 empfangene IOs werden in einem Speicher der RPA 120 oder in einem temporären Speicher, der die Last bewältigen kann (z. B. VM VMDK, Blockspeicher, VSAN usw.), gesammelt oder gepuffert. Sobald sich genügend IOs in dem vom Aggregator 110 verwendeten Speicher oder temporärer Speicher angesammelt haben, werden die angesammelten IOs (z. B. in Stapeln/Batches) als Journal oder Journalstrom an den Sekundärspeicher gesendet. Dadurch wird der Sekundärspeicher 112 von hohen IOPs/kleinen IO-Mustern isoliert und die Übertragung an den Sekundärspeicher 112 optimiert. Die aggregierten IOs entsprechen auch dem mit dem Journal 116 assoziierten Format oder werden so verarbeitet, dass sie diesem entsprechen. Der Aggregator 110 richtet die IOs auch so aus, dass sie vom Sekundärspeicher 112 am besten genutzt werden können.IOs received by the
Insbesondere speichert der Aggregator 110 den eingehenden IO-Strom so, dass die IO-Daten an den Deduplizierungsgrenzen ausgerichtet sind. Dies trägt dazu bei, eine optimale Deduplizierung zu gewährleisten, sobald die akkumulierten IOs an den Sekundärspeicher 112 weitergeleitet werden. Das Ausrichten des IO-Stroms kann, wie unten beschrieben, die Aufteilung des IO-Stroms in einen Datenstrom und einen Metadatenstrom beinhalten.In particular, the
Wie bereits erwähnt, können bestimmte IOs eine weitere Verarbeitung erfordern. Wenn beispielsweise bei einer Chunk-Größe von 4K ein IO von 1K ankommt, kann der Splitter 106 3K aus dem Produktionsspeicher 108 lesen, so dass der IO eine Größe von 4K hat. Der resultierende Chunk kann dann an den Aggregator 110 gesendet werden. Die aus dem Produktionsspeicher 108 gelesenen Daten entsprechen in der Regel den Daten neben den 1K-Daten. So sind beispielsweise der 1K-IO und der 4K-Chunk mit derselben Adresse im Produktionsspeicher 108 verbunden.As already mentioned, certain IOs may require further processing. For example, with a chunk size of 4K, if an IO of 1K arrives, the
Wenn der Splitter 106 kleine IOs nicht kompensiert, kann der Aggregator 110 kleine IOs durch Lesen aus dem Produktionsspeicher 108 kompensieren. Wenn der 1K-IO beim Aggregator 110 eintrifft, kann der Aggregator 110: den IO nicht bestätigen, aus dem Produktionsspeicher 108 lesen und dann den ursprünglichen IO bestätigen. Dies wird typischerweise durchgeführt, wenn der Splitter 106 seriell splittet.If the
Beim seriellen Splitten wartet der Splitter 106 oder die Streaming-Quelle auf die Bestätigung der Produktionsdaten, bevor er die Daten an den Aggregator 110 sendet. Der Aggregator kann separat bestätigen. Das Komplementieren oder Kompensieren kleiner IOs kann zu Latenzzeiten führen. Nicht ausgerichtete IOs sind jedoch typischerweise selten.With serial splitting, the
Daher wird die Ausrichtung der IOs oder Schreibdaten vom Splitter 106 oder dem Aggregator 110 durchgeführt. Genauer gesagt, werden die zu replizierenden oder zu sichernden Daten für die Speicherung im Sekundärspeicher 112 vorbereitet.Therefore, the alignment of the IOs or write data is performed by the
Wie bereits erwähnt, kann das Journal einen Datenstrom und einen Metadatenstrom enthalten. So kann der IO-Strom verarbeitet werden, um dieses Format zu erzeugen. Beispielsweise kann das vom Splitter 106 gesendete oder vom Aggregator 110 ausgegebene Journal zwei Ströme enthalten: einen Datenstrom und einen Metadatenstrom.As mentioned earlier, the journal can contain a data stream and a metadata stream. This is how the IO stream can be processed to produce this format. For example, the journal sent by
Durch die Trennung des Journals 200 in einen Datenstrom 202 und einen Metadatenstrom 204 wird sichergestellt, dass die IO-Ausrichtung nicht durch die Metadaten beeinträchtigt oder beeinflusst wird.Separating the
Beispielsweise kann das Journal 200 in einer oder mehreren Dateien gespeichert werden. Beispielsweise kann das Journal 202 auf der Grundlage von Zeitintervallen in Abschnitte unterteilt werden. Die Zeitintervalle können einheitlich sein, müssen es aber nicht. Der Datenstrom 202 und der Metadatenstrom 204 können jedoch in denselben Intervallen unterteilt sein. Jeder Journalabschnitt (als Journaldatei bezeichnet) enthält einen Teil des Datenstroms 202 und einen entsprechenden Teil des Metadatenstroms 204.For example, the
Ausführungsformen der Erfindung erzeugen, wie bereits erwähnt, Backups ohne native Snaphots. Vielmehr können die Bilder oder Backups aus dem Journal generiert oder synthetisiert werden. Insbesondere kann bei einer Vollsicherung zum Zeitpunkt T und einer Journaldatei, die zum Zeitpunkt T beginnt und zum Zeitpunkt T + t endet, ein Backup für einen beliebigen Zeitpunkt im Intervall T + t synthetisiert werden. Da die Daten wie zuvor beschrieben dedupliziert werden, können die Kopieroperationen zur Erstellung des neuen Backups schnelle Kopieroperationen sein und sind daher effizient.As previously mentioned, embodiments of the invention create backups without native snapshots. Rather, the images or backups can be generated or synthesized from the journal. In particular, given a full backup at time T and a journal file starting at time T and ending at time T + t, a backup can be synthesized for any time in the interval T + t. Since the data is deduplicated as previously described, the copy operations to create the new backup can be fast copy operations and are therefore efficient.
Um zum Beispiel ein Backup zum Zeitpunkt T1 zu erstellen, kann eine Kopie einer Vollsicherung (Voll-Backup) vom Zeitpunkt T verwendet werden. Die Einträge im Journal, die zum Zeitpunkt T beginnen und zum Zeitpunkt T1 enden, werden dann auf die Vollsicherung angewendet - dies ist ein Beispiel für das Rollen des Journals oder der Journaldatei. Dadurch wird eine Vollsicherung zum Zeitpunkt T1 synthetisiert. Beim Kopieren der Journaleinträge werden die IOs aus dem Journal an den im Metadatenstrom spezifizierten Ort kopiert.For example, to create a backup at time T1, a copy of a full backup from time T can be used. The entries in the journal starting at time T and ending at time T1 are then applied to the full backup - this is an example of journal or journal file scrolling. This synthesizes a full backup at time T1. When copying the journal entries, the IOs are copied from the journal to the location specified in the metadata stream.
Da die IOs im Journal in der Reihenfolge ihres Eintreffens gespeichert werden, wird durch das Rollen oder Anwenden der Einträge im Journal in der Reihenfolge eine korrekte Darstellung der Daten zum Zeitpunkt T1 erzeugt. Da die Einträge im Journal in der richtigen Reihenfolge angeordnet werden, ist das Kopieren in das neue Backup eine schnelle Kopie, die keinen zusätzlichen Speicherplatz beansprucht. Auch wenn es sich bei den Kopieroperationen um schnelle Kopieroperationen handelt (bei denen Fingerabdrücke oder Signaturen und nicht die eigentlichen Daten kopiert werden), benötigen diese Vorgänge dennoch Zeit. Die Zeit hängt von der Menge des Journals ab, das verarbeitet oder gerollt wird. Auf diese Weise synthetisierte Bilder (Images) oder Backups können in einer bestimmten Kadenz, ad hoc (z. B. als Reaktion auf eine Kundenanfrage), für interne Zwecke, Disaster-Recovery-Zwecke, Business-Recovery-Zwecke oder dergleichen erstellt werden.Since the IOs are stored in the journal in the order in which they arrive, scrolling or applying the entries in the journal in order produces a correct representation of the data at time T1. Since the entries in the journal are arranged in the correct order, copying to the new backup is a fast copy that does not take up additional disk space. Even though the copy operations are fast copy operations (where fingerprints or signatures are copied rather than the actual data), these operations still take time. The time depends on the amount of journal being processed or rolled. Images synthesized in this way or backups can be created in a certain cadence, ad hoc (e.g. in response to a customer request), for internal purposes, disaster recovery purposes, business recovery purposes or the like.
Beispielsweise kann der Sekundärspeicher für sequentielle IOs optimiert sein. Das Journal kann so verarbeitet werden, dass es mit der Konfiguration des Sekundärspeichers in Einklang gebracht wird. Beispielsweise werden die Schreibvorgänge im Journal in einer Reihenfolge sortiert, die die Schreibvorgänge sequentieller macht, wobei gleichzeitig die Schreibreihenfolge beibehalten wird. Beispielsweise können die IOs in aufsteigender Reihenfolge auf der Grundlage der IO-Position oder -Adresse sortiert werden. Wenn sich zwei Schreibvorgänge (ganz oder teilweise) überschneiden, sollte der (zeitlich) spätere IO in der Sortierung weiter hinten stehen. Wenn ein IO vollständig von einem oder mehreren späteren IOs abgedeckt wird, kann zumindest der IO, der überschrieben wird, übersprungen werden, da er überschrieben wird.For example, the secondary storage can be optimized for sequential IOs. The journal can be processed to match the secondary storage configuration. For example, the writes in the journal are sorted in an order that makes the writes more sequential while preserving the write order. For example, the IOs can be sorted in ascending order based on IO position or address. If two write processes (completely or partially) overlap, the (chronologically) later IO should be further back in the sorting. If an IO is completely covered by one or more later IOs, at least the IO being overwritten can be skipped since it will be overwritten.
Der Aggregator 304 kann einige Verarbeitungen durchführen, wie z. B. die zuvor beschriebene Randausrichtung (Boundary Alignment) und das Stapeln (Batching) der Daten für große IO-Übertragungen an den Sekundärspeicher 330. Der Aggregator 304 kann für diese Zwecke einen temporären Speicher 306 verwenden.The
Der Aggregator kann einen Datenstrom erzeugen, der für ein Journal repräsentativ ist. Das Journal 320 kann einen Metadatenstrom 306 und einen Datenstrom 308 enthalten. Das Journal 320 kann zum Erstellen oder Synthetisieren von Backups verwendet werden.
In diesem Beispiel kann die Kadenz, mit der die Backups erstellt werden, mit der Anzahl der Voll-Backups und dem gewünschten RPO abgestimmt werden. Eine längere Kadenz kann zu einem höheren RPO führen, während eine kürzere Kadenz das RPO senken kann, aber auch Auswirkungen auf die Kapazität des Sekundärspeichers 330 haben kann.In this example, the cadence at which the backups are taken can be balanced with the number of full backups and the desired RPO. A longer cadence may result in a higher RPO, while a shorter cadence may lower the RPO, but may also impact
Anders ausgedrückt ist es schwierig, ein einziges Vollbild und das Journal aufzubewahren, da die Zeit, die benötigt wird, um das Journal auf einen bestimmten Zeitpunkt zu rollen, beträchtlich sein kann. Die Erstellung eines Voll-Backups für jeden Zeitpunkt würde es ermöglichen, ältere Bilder zu löschen. Dieser Ansatz kann jedoch erheblichen Speicherplatz erfordern. Durch die Wahl der Kadenz können diese konkurrierenden Belange der Anzahl der Vollsicherungen und der Rollzeit (Rolling-Time) des Journals ausgeglichen werden.In other words, it is difficult to keep a single frame and the journal because the time it takes to scroll the journal to any given point in time can be significant. Creating a full backup for each point in time would allow older images to be deleted. However, this approach can require significant storage space. By choosing the cadence these competing concerns of the number of full backups and the rolling time of the journal can be balanced.
Der Sekundärspeicher 330 kann auch (z. B. über einen Controller oder einen anderen Manager) die Möglichkeit bieten, Speicherplatz freizugeben. Je älter die Backups werden, desto geringer ist der Bedarf an einer vollen Auflösung. Beispielsweise können ältere Voll-Backups aufbewahrt und zumindest die entsprechenden Journaldateien gelöscht werden, da diese Journale in den Voll-Backups enthalten sind. Alternativ dazu können ältere Backups selektiv gelöscht werden. Statt einer Sicherung pro Stunde kann die Anzahl der Sicherungen auf eine pro Tag oder eine pro Woche ausgedünnt werden.
Neuere Bilder können in voller Auflösung gespeichert werden. Folglich bieten die neueren Bilder eine Funktionalität zu einem beliebigen Zeitpunkt (Any-Point-in-Time-Funktionalität). Diese Funktionalität wird mit zunehmendem Alter der Bilder reduziert. Beispielsweise und wenn alle Journalinformationen bestehen bleiben, können Vollbilder ohne Datenverlust gelöscht werden (mit Ausnahme des ersten Backups). Die Wiederherstellung eines bestimmten Zeitpunkts kann jedoch beträchtliche Zeit in Anspruch nehmen, um das Journal zu rollen.Newer images can be saved in full resolution. Consequently, the newer images offer any-point-in-time functionality. This functionality is reduced as the images age. For example, and if all journal information remains, full images can be deleted without data loss (except for the first backup). However, restoring to a specific point in time can take considerable time to scroll the journal.
Ausführungsformen der Erfindung sind in der Lage, Vollsicherungen (Voll-Backups) in einer bestimmten Kadenz zu erstellen. Die Entscheidung, wann ein Backup erstellt werden soll, muss jedoch nicht durch eine zeitliche Kadenz bestimmt sein. So kann beispielsweise ein neues Backup auf der Grundlage der Anzahl der IOs oder der Datenmenge im Journal erstellt werden. So kann beispielsweise alle 100 MB ein neues Backup erstellt werden. Alternativ können Backups auf der Grundlage der Prozessor-/Speicherressourcen für das Rollen oder auf der Grundlage der erwarteten Rollzeit erstellt werden. In einem anderen Beispiel können Backups aus Compliance-Gründen oder auf der Grundlage von Benutzeranforderungen erstellt werden.Embodiments of the invention are able to create full backups in a certain cadence. However, the decision as to when to create a backup does not have to be determined by a chronological cadence. For example, a new backup can be created based on the number of IOs or the amount of data in the journal. For example, a new backup can be created every 100 MB. Alternatively, backups can be created based on processor/memory resources for rolling or based on expected rolling time. In another example, backups can be created for compliance reasons or based on user requirements.
Wenn die Parallelität der Aktualisierung des Bildes während des Rollens begrenzt ist (z. B. aufgrund der Anzahl der Schreibhandles, die eine Datei öffnen können), kann das Voll-Backup beim schnellen Kopieren in mehrere Slabs aufgeteilt werden (z. B. 16-GB-Slabs) und jeder Slab kann parallel verarbeitet werden. Nachdem die IOs gerollt wurden, werden die Slabs zusammengefügt, um das Voll-Backup zu bilden. Dies ist eine Optimierung für die Rollgeschwindigkeit.If the parallelism of updating the image during scrolling is limited (e.g. due to the number of write handles that can open a file), when copying quickly the full backup can be divided into several slabs (e.g. 16- GB slabs) and each slab can be processed in parallel. After the IOs are rolled, the slabs are merged to form the full backup. This is an optimization for scroll speed.
Beim Rollen des Bildes können die Metadaten analysiert werden, um nach IOs zu suchen, die in dem zu verarbeitenden Intervall mehrfach geschrieben wurden. Es muss nur die letzte kopiert werden.When scrolling the image, the metadata can be analyzed to look for IOs that have been written multiple times in the interval to be processed. Only the last one needs to be copied.
Der IO-Strom wird von dem Datenschutzsystem oder einem Aggregator aggregiert 404. Das Aggregieren 404 des IO-Stroms kann die Aufteilung des IO-Stroms in einen Datenstrom und einen Metadatenstrom umfassen (falls erforderlich oder falls nicht bereits durch den Splitter durchgeführt). Der Aggregator kann auch die Ausrichtung und andere Funktionen, wie zuvor beschrieben, durchführen. Der Datenstrom und der Metadatenstrom bilden zusammen das Journal. Das Journal kann an den Sekundärspeicher übertragen werden. Das Journal wird dann im Sekundärspeicher gespeichert 406. Bei der Speicherung des Journals können der Datenstrom und der Metadatenstrom getrennt gehalten werden. Darüber hinaus kann das Journal in Journaldateien unterteilt werden, wobei jede Journaldatei einem Intervall entspricht, das auf verschiedenen Faktoren, wie zum Beispiel Zeit, Datenmenge, RPO-Erwartungen oder dergleichen, oder einer Kombination davon basieren kann.The IO stream is aggregated 404 by the data protection system or an aggregator. Aggregating 404 the IO stream may include splitting the IO stream into a data stream and a metadata stream (if necessary or if not already done by the splitter). The aggregator can also perform targeting and other functions as previously described. The data stream and the metadata stream together form the journal. The journal can be transferred to secondary storage. The journal is then stored 406 in secondary storage. When storing the journal, the data stream and metadata stream may be kept separate. Additionally, the journal may be divided into journal files, with each journal file corresponding to an interval that may be based on various factors such as time, amount of data, RPO expectations, or the like, or a combination thereof.
Sobald das Journal gespeichert ist (oder während das Journal gespeichert wird, zumindest weil das Journal als Stream empfangen wird und nicht notwendigerweise anhält), können Backups aus dem Journal generiert werden 408.Once the journal is saved (or while the journal is being saved, at least because the journal is received as a stream and not necessarily stopping), backups can be generated from the
Beispielsweise wird das Datenschutzsystem mit einer Vollsicherung vor dem Start des Journals gestartet. Dann kann durch Rollen des Journals relativ zum Backup ein neues Backup erzeugt werden. Dieser Prozess kann fortgesetzt werden, so dass die Backups auf der Grundlage vorheriger Backups und des Journals erstellt werden können. Mit der Zeit können Teile des Journals und/oder vorhandene Backups/Bilder gelöscht werden.For example, the data protection system is started with a full backup before the start of the journal. A new backup can then be created by scrolling the journal relative to the backup. This process can be continued so that the backups can be created based on previous backups and the journal. Over time, parts of the journal and/or existing backups/images may be erased.
Ausführungsformen der Erfindung, wie die hierin offenbarten Beispiele, können in vielerlei Hinsicht von Vorteil sein. Zum Beispiel, und wie aus der vorliegenden Offenbarung ersichtlich ist, können eine oder mehrere Ausführungsformen der Erfindung eine oder mehrere vorteilhafte und unerwartete Wirkungen in beliebiger Kombination liefern, von denen einige Beispiele im Folgenden aufgeführt sind. Es sei darauf hingewiesen, dass solche Effekte weder beabsichtigt sind, noch so ausgelegt werden sollten, dass sie den Umfang der beanspruchten Erfindung in irgendeiner Weise einschränken. Es sei ferner darauf hingewiesen, dass nichts hierin als ein wesentliches oder unverzichtbares Element einer Erfindung oder Ausführungsform ausgelegt werden sollte. Vielmehr können verschiedene Aspekte der offenbarten Ausführungsformen in vielfältiger Weise kombiniert werden, um weitere Ausführungsformen zu definieren. Solche weiteren Ausführungsformen werden als im Rahmen dieser Offenbarung liegend betrachtet. Ebenso sollte keine der Ausführungsformen, die in den Anwendungsbereich dieser Offenbarung fallen, so ausgelegt werden, dass sie eine bestimmte Aufgabe löst oder auf die Lösung einer bestimmten Aufgabe bzw. bestimmter Aufgaben beschränkt ist. Auch sollte keine dieser Ausführungsformen so ausgelegt werden, dass sie (eine) bestimmte(n) technische(n) Wirkung(en) oder (eine) bestimmte(n) Lösung(en) implementiert oder auf deren Implementierung beschränkt ist. Schließlich ist es nicht erforderlich, dass jede Ausführungsform jede der hierin offenbarten vorteilhaften und unerwarteten Wirkungen implementiert.Embodiments of the invention, such as the examples disclosed herein, can be advantageous in a number of ways. For example, and as will be apparent from the present disclosure, one or more embodiments of the invention provide one or more beneficial and unexpected effects in any combination, some examples of which are listed below. It should be noted that such effects are not intended nor should they be construed as limiting the scope of the claimed invention in any way. It is further noted that nothing herein should be construed as an essential or indispensable element of any invention or embodiment. Rather, various aspects of the disclosed embodiments can be combined in a variety of ways to define further embodiments. Such other embodiments are considered to be within the scope of this disclosure. Likewise, none of the embodiments that fall within the scope of this disclosure should be construed as solving any particular problem or limited to solving any particular problem or problems. Also, none of these embodiments should be construed as implementing or limited to implementing any particular technical effect(s) or solution(s). Finally, it is not necessary for every embodiment to implement every advantageous and unexpected effect disclosed herein.
Im Folgenden werden Aspekte von beispielhaften Betriebsumgebungen für verschiedene Ausführungsformen der Erfindung erörtert. Diese Diskussion ist nicht dazu gedacht, den Umfang der Erfindung oder die Anwendbarkeit der Ausführungsformen in irgendeiner Weise einzuschränken.Aspects of exemplary operating environments for various embodiments of the invention are discussed below. This discussion is not intended to limit the scope of the invention or the applicability of the embodiments in any way.
Im Allgemeinen können Ausführungsformen der Erfindung in Verbindung mit Systemen, Software und Komponenten implementiert werden, die einzeln und/oder gemeinsam PiT-Backup-Erzeugungsoperationen implementieren und/oder deren Implementierung bewirken. Solche Operationen können Datenlese-/schreib-/lösch-Operationen, Datendeduplizierungsoperationen, Datensicherungsoperationen, Datenwiederherstellungsoperationen, Datencloningperationen, Datenarchivierungsoperationen, PiT-Operationen, Syntheseoperationen und Disaster-Recovery-Operationen umfassen, sind jedoch nicht darauf beschränkt. Allgemeiner ausgedrückt, umfasst der Schutzumfang der Erfindung jede Betriebsumgebung, in der die offenbarten Konzepte nützlich sein können.In general, embodiments of the invention may be implemented in connection with systems, software, and components that individually and/or collectively implement and/or cause implementation of PiT backup creation operations. Such operations may include, but are not limited to, data read/write/erase operations, data deduplication operations, data backup operations, data restore operations, data cloning operations, data archiving operations, PiT operations, synthesis operations, and disaster recovery operations. More generally, the scope of the invention includes any operating environment in which the disclosed concepts may be useful.
Zumindest einige Ausführungsformen der Erfindung ermöglichen die Implementierung der offenbarten Funktionalität in bestehende Datensicherungsplattformen, wie z. B. die Dell-EMC NetWorker- und Avamar-Plattformen und die zugehörige Sicherungssoftware, sowie Speicherumgebungen, wie zum Beispiel die Dell-EMC Datadomain-Speicherumgebung. Im Allgemeinen ist der Schutzumfang der Erfindung jedoch nicht auf eine bestimmte Datensicherungsplattform oder Datenspeicherumgebung beschränkt.At least some embodiments of the invention enable the disclosed functionality to be implemented in existing data protection platforms, such as e.g. B. the Dell-EMC NetWorker and Avamar platforms and associated backup software, as well as storage environments such as the Dell-EMC Datadomain storage environment. In general, however, the scope of the invention is not limited to any particular backup platform or data storage environment.
Neue und/oder modifizierte Daten, die in Verbindung mit einigen Ausführungsformen gesammelt und/oder erzeugt werden, können in einer Datensicherungsumgebung gespeichert werden, die die Form einer öffentlichen oder privaten Cloud-Speicherumgebung, einer lokalen (On-Premise-) Speicherumgebung und von hybriden Speicherumgebungen annehmen kann, die öffentliche und private Elemente enthalten. Jede dieser Beispielspeicherumgebungen kann teilweise oder vollständig virtualisiert sein. Die Speicherumgebung kann ein Rechenzentrum umfassen oder aus einem solchen bestehen, das in der Lage ist, Lese-, Schreib-, Lösch-, Sicherungs-, Wiederherstellungs- und/oder Cloning-Operationen durchzuführen, die von einem oder mehreren Clients oder anderen Elementen der Betriebsumgebung initiiert werden. Wenn eine Datensicherung Gruppen von Daten mit jeweils unterschiedlichen Merkmalen umfasst, können diese Daten verschiedenen jeweiligen Zielen in der Speicherumgebung zugeordnet und gespeichert werden, wobei die Ziele jeweils einer Datengruppe mit einem oder mehreren bestimmten Merkmalen entsprechen.New and/or modified data collected and/or generated in connection with some embodiments may be stored in a backup environment, which may take the form of a public or private cloud storage environment, a local (on-premise) storage environment, and hybrid Can accept storage environments that contain public and private elements. Each of these example storage environments may be partially or fully virtualized. The storage environment may include or consist of a data center capable of performing read, write, delete, backup, restore and/or cloning operations requested by one or more clients or other elements of the operating environment are initiated. When a backup includes groups of data, each with different characteristics, that data can be associated and stored with different respective targets in the storage environment, each target corresponding to a group of data with one or more particular characteristics.
Beispiele für öffentliche Cloud-Speicherumgebungen, die in Verbindung mit den Ausführungsformen der Erfindung verwendet werden können, sind unter anderem Microsoft Azure, Amazon AWS und Google Cloud. Im Allgemeinen ist der Schutzumfang der Erfindung jedoch nicht auf die Verwendung eines bestimmten Typs oder einer bestimmten Implementierung von Cloud-Speicherung beschränkt.Examples of public cloud storage environments that may be used in connection with embodiments of the invention include Microsoft Azure, Amazon AWS, and Google Cloud. In general, however, the scope of the invention is not limited to the use of any particular type or implementation of cloud storage.
Zusätzlich zur Speicherumgebung kann die Betriebsumgebung auch einen oder mehrere Clients umfassen, die in der Lage sind, Daten zu sammeln, zu modifizieren und zu erstellen. Als solcher kann ein bestimmter Client eine oder mehrere Instanzen einer oder mehrerer Anwendungen, die solche Operationen in Bezug auf Daten durchführen, verwenden oder anderweitig damit verbunden sein.In addition to the storage environment, the operating environment may also include one or more clients capable of collecting, modifying, and creating data. As such, a particular client may use or otherwise be associated with one or more instances of one or more applications that perform such operations on data.
Vorrichtungen in der Betriebsumgebung können die Form von Software, physischen Maschinen oder virtuellen Maschinen (VM) oder einer beliebigen Kombination davon haben, wobei jedoch keine bestimmte Geräteimplementierung oder - konfiguration für irgendeine Ausführungsform erforderlich ist. Auch die Komponenten des Datenschutzsystems, wie zum Beispiel Datenbanken, Speicherserver, Speichervolumes (LUNs), Speicherplatten, Replikationsdienste, Sicherungsserver, Wiederherstellungsserver, Backup-Clients und Wiederherstellungs-Clients können ebenfalls die Form von Software, physischen Maschinen oder virtuellen Maschinen (VM) annehmen, wobei für keine Ausführungsform eine bestimmte Komponentenimplementierung erforderlich ist. Bei Verwendung von VMs kann ein Hypervisor oder ein anderer VMM (Virtual Machine Monitor) zur Erstellung und Steuerung der VMs eingesetzt werden. Der Begriff VM umfasst, ist aber nicht beschränkt auf, jede Virtualisierung, Emulation oder andere Darstellung eines oder mehrerer Computersystemelemente, wie z. B. Computersystemhardware. Eine VM kann auf einer oder mehreren Computerarchitekturen beruhen und bietet die Funktionalität eines physischen Computers. Eine VM-implementierung kann Hardware und/oder Software umfassen oder zumindest die Verwendung von Hardware und/oder Software beinhalten. Eine Abbildung einer VM kann verschiedene Formen annehmen, wie z. B. eine .VMDK-Datei.Devices in the operating environment may take the form of software, physical machines, or virtual machines (VM), or any combination thereof, but no particular device implementation or configuration is required for any embodiment. Also, the components of the data protection system, such as databases, storage servers, storage volumes (LUNs), storage disks, replication services, backup servers, recovery servers, backup clients, and recovery clients can also take the form of software, physical machines or virtual machines (VM), with no embodiment requiring a specific component implementation. When using VMs, a hypervisor or other VMM (Virtual Machine Monitor) can be used to create and control the VMs. The term VM includes, but is not limited to, any virtualization, emulation, or other representation of one or more computer system elements, such as B. Computer system hardware. A VM can be based on one or more computer architectures and provides the functionality of a physical computer. A VM implementation may involve hardware and/or software, or at least involve the use of hardware and/or software. A mapping of a VM can take various forms, such as: B. a .VMDK file.
Wie hierin verwendet, ist der Begriff „Daten“ weit gefasst. Daher umfasst dieser Begriff beispielsweise und ohne darauf beschränkt zu sein Datensegmente, wie sie zum Beispiel durch Datenstromsegmentierungsprozesse erzeugt werden können, Datenblöcke (Chunks), atomare Daten, E-Mails, Objekte jeder Art, Dateien jeder Art, einschließlich Mediendateien, Textverarbeitungsdateien, Tabellenkalkulationsdateien und Datenbankdateien, sowie Kontakte, Verzeichnisse, Unterverzeichnisse, Volumes und jede Gruppe von einem oder mehreren der vorgenannten.As used herein, the term "data" is broad. Thus, for example and not limited to, this term includes data segments such as may be produced by data stream segmentation processes, data blocks (chunks), atomic data, emails, objects of any kind, files of any kind including media files, word processing files, spreadsheet files, and Database files, as well as contacts, directories, subdirectories, volumes, and any group of one or more of the foregoing.
Beispielhafte Ausführungsformen der Erfindung sind auf jedes System anwendbar, das in der Lage ist, verschiedene Arten von Objekten in analoger, digitaler oder anderer Form zu speichern und zu verarbeiten. Obwohl Begriffe wie Dokument, Datei, Segment, Block oder Objekt beispielhaft verwendet werden können, sind die Grundsätze der Offenbarung nicht auf eine bestimmte Form der Darstellung und Speicherung von Daten oder anderen Informationen beschränkt. Vielmehr sind diese Grundsätze gleichermaßen auf jedes Objekt anwendbar, das in der Lage ist, Informationen darzustellen.Exemplary embodiments of the invention are applicable to any system capable of storing and processing various types of objects in analog, digital, or other form. Although terms such as document, file, segment, block, or object may be used as examples, the principles of the disclosure are not limited to any particular form of representing and storing data or other information. Rather, these principles are equally applicable to any object capable of representing information.
Wie hierin verwendet, ist der Begriff „Sicherung“ oder „Backup“ weit zu verstehen. Als solche umfassen Beispiele für Backups, die in Verbindung mit den Ausführungsformen der Erfindung verwendet werden können, unter anderem Voll-Backups, Teil-Backups, Klone, Snaphots und inkrementelle oder differenzielle Backups.As used herein, the term "backup" or "backup" is to be interpreted broadly. As such, examples of backups that may be used in connection with embodiments of the invention include, but are not limited to, full backups, partial backups, clones, snapshots, and incremental or differential backups.
Es folgen einige weitere beispielhafte Ausführungsformen der Erfindung. Diese sind nur beispielhaft dargestellt und sollen den Schutzumfang der Erfindung in keiner Weise einschränken.Some other exemplary embodiments of the invention follow. These are presented by way of example only and are not intended to limit the scope of the invention in any way.
Ausführungsform 1. Verfahren, umfassend das Splitten eines von einer Quelle empfangenen IO-Stroms, das Aggregieren des IO-Stroms und das Erzeugen eines Journals aus dem IO-Strom, wobei das Journal einen Datenstrom und einen Metadatenstrom umfasst, das Speichern des Journals in einem Sekundärspeicher und das Synthetisieren von Backups aus dem Journal.Embodiment 1. A method comprising splitting an IO stream received from a source, aggregating the IO stream and generating a journal from the IO stream, the journal comprising a data stream and a metadata stream, storing the journal in one Secondary storage and synthesizing backups from the journal.
Ausführungsform 2. Das Verfahren der Ausführungsform 1, das ferner das Erzeugen der Backups gemäß einer Kadenz umfasst, wobei die Kadenz auf mindestens einem der folgenden Faktoren basiert: Zeit, Journalgröße, erwartete Journalrollzeit, erwartetes RPO.Embodiment 2. The method of embodiment 1, further comprising creating the backups according to a cadence, the cadence being based on at least one of the following factors: time, journal size, expected journal roll time, expected RPO.
Ausführungsform 3. Das Verfahren der Ausführungsform 1 und/oder 2, das ferner das Aufteilen des Journals in Journaldateien umfasst, wobei jede Journaldatei einen Teil des Datenstroms und einen entsprechenden Teil des Metadatenstroms enthält.Embodiment 3. The method of embodiment 1 and/or 2, further comprising dividing the journal into journal files, each journal file containing a portion of the data stream and a corresponding portion of the metadata stream.
Ausführungsform 4. Das Verfahren der Ausführungsform 1, 2 und/oder 3, das ferner das Erzeugen eines neuen Backups aus einem vorherigen Backup und einer der Journaldateien umfasst.Embodiment 4. The method of embodiment 1, 2 and/or 3, further comprising creating a new backup from a previous backup and one of the journal files.
Ausführungsform 5. Das Verfahren der Ausführungsform 1, 2, 3 und/oder 4, das ferner das Ausrichten des Metadatenstroms umfasst.Embodiment 5. The method of embodiment 1, 2, 3 and/or 4, further comprising aligning the metadata stream.
Ausführungsform 6. Das Verfahren der Ausführungsform 1, 2, 3, 4 und/oder 5, das ferner die Durchführung einer schnellen Kopie umfasst, um jedes der Backups zu synthetisieren.Embodiment 6. The method of embodiment 1, 2, 3, 4 and/or 5, further comprising performing a fast copy to synthesize each of the backups.
Ausführungsform 7. Das Verfahren der Ausführungsform 1, 2, 3, 4, 5 und/oder 6, das ferner das Speichern der Backups als Backups und Journal-Dateien umfasst.Embodiment 7. The method of embodiment 1, 2, 3, 4, 5 and/or 6, further comprising storing the backups as backup and journal files.
Ausführungsform 8. Das Verfahren der Ausführungsform 1, 2, 3, 4, 5, 6 und/oder 7, das ferner das Festlegen einer Kadenz zum Synthetisieren der Backups umfasst, um ein RPO mit Speicherplatz auszugleichen.Embodiment 8. The method of embodiment 1, 2, 3, 4, 5, 6 and/or 7, further comprising setting a cadence for synthesizing the backups to balance an RPO with storage space.
Ausführungsform 9. Das Verfahren der Ausführungsform 1, 2, 3, 4, 5, 6, 7 und/oder 8, das ferner das Abrufen zusätzlicher Daten aus Produktionsdaten umfasst, wenn ein IO kleiner als eine Blockgröße ist.Embodiment 9. The method of embodiment 1, 2, 3, 4, 5, 6, 7 and/or 8, further comprising retrieving additional data from production data when an IO is less than a block size.
Ausführungsform 10. Das Verfahren der Ausführungsform 1, 2, 3, 4, 5, 6, 7, 8 und/oder 9, wobei der Metadatenstrom eines oder mehrere der folgenden Elemente enthält: IO-Volumen, Ortslänge, Zeitstempel, Kennzeichnung (Tagging), Benutzerinformationen, beschreibende Daten, wobei jeder Eintrag in dem Metadatenstrom einen entsprechenden Eintrag in dem Datenstrom aufweist.Embodiment 10. The method of embodiment 1, 2, 3, 4, 5, 6, 7, 8 and/or 9, wherein the metadata stream includes one or more of the following: IO volume, location length, timestamp, tagging , user information, descriptive data, each entry in the metadata stream having a corresponding entry in the data stream.
Ausführungsform 11. Das Verfahren, wie in irgendeiner Kombination der Ausführungsformen 1 bis 10 beschrieben, wobei das Verfahren von einem Datenschutzsystem, einem Splitter, einem Aggregator, einem Prozessor und/oder Sekundärspeichersystemen durchgeführt wird.Embodiment 11. The method as described in any combination of embodiments 1 to 10, wherein the method is performed by a data protection system, a splitter, an aggregator, a processor, and/or secondary storage systems.
Ausführungsform 12. Das Verfahren, wie in irgendeiner der Ausführungsformen 1 bis 11 beschrieben, wobei der Sekundärspeicher ein Deduplizierungsspeicher ist und ein anderer der Speichermedientypen ein Objektspeicher ist.Embodiment 12. The method as described in any one of embodiments 1 to 11, wherein the secondary storage is deduplication storage and another of the storage media types is object storage.
Ausführungsform 13. Verfahren zur Durchführung irgendeiner der hierin offenbarten Operationen, Verfahren oder Prozesse oder irgendeines Teils davon.Embodiment 13. Methods for performing any of the operations, methods, or processes disclosed herein, or any portion thereof.
Ausführungsform 14. Ein nicht-transitorisches Speichermedium, in dem Befehle gespeichert sind, die von einem oder mehreren Hardware-Prozessoren ausgeführt werden können, um die Operationen irgendeiner oder mehrerer der Ausführungsformen 1 von 13 oder Teile davon auszuführen.Embodiment 14. A non-transitory storage medium storing instructions executable by one or more hardware processors to perform the operations of any one or more of Embodiments 1 of 13 or portions thereof.
Die hierin offenbarten Ausführungsformen können die Verwendung eines Spezial- oder Allzweckcomputers mit verschiedenen Computerhardware- oder - softwaremodulen umfassen, wie nachstehend ausführlicher erörtert. Ein Computer kann einen Prozessor und Computerspeichermedien enthalten, die Befehle tragen, die bei Ausführung durch den Prozessor und/oder bei Veranlassung der Ausführung durch den Prozessor eines oder mehrere der hierin offenbarten Verfahren oder einen oder mehrere Teile eines der offenbarten Verfahren ausführen.The embodiments disclosed herein may involve the use of a special purpose or general purpose computer with various computer hardware or software modules, as discussed in more detail below. A computer may include a processor and computer storage media carrying instructions that, when executed by the processor and/or caused to be executed by the processor, perform one or more of the methods disclosed herein, or one or more parts of any of the methods disclosed.
Wie oben erwähnt, umfassen Ausführungsformen im Rahmen der vorliegenden Erfindung auch Computerspeichermedien, bei denen es sich um physische Medien handelt, die computerausführbare Befehle oder Datenstrukturen tragen oder darauf gespeichert haben. Solche Computerspeichermedien können alle verfügbaren physischen Medien sein, auf die ein Universal- oder Spezialcomputer zugreifen kann.As mentioned above, embodiments within the scope of the present invention also encompass computer storage media that are tangible media that carry or have computer-executable instructions or data structures stored thereon. Such computer storage media can be any available physical media that can be accessed by a general purpose or special purpose computer.
Beispielsweise und ohne darauf beschränkt zu sein können solche Computerspeichermedien Hardwarespeicher, wie zum Beispiel SSD (Solid State Disk/Device), RAM, ROM, EEPROM, CD-ROM, Flash-Speicher, PCM (Phase-Change-Memory) oder andere optische Plattenspeicher, Magnetplattenspeicher oder andere magnetische Speichervorrichtungen oder irgendwelche anderen Hardwarespeichervorrichtungen umfassen, die zum Speichern von Programmcode in Form von computerausführbaren Befehlen oder Datenstrukturen verwendet werden können, auf die ein Allzweck- oder Spezialcomputersystem zugreifen und sie ausführen kann, um die offenbarte Funktionalität der Erfindung zu implementieren. Kombinationen der oben genannten Medien sollten ebenfalls in den Bereich der Computerspeichermedien einbezogen werden. Solche Medien sind auch Beispiele für nicht-transitorische Speichermedien, und nicht-transitorische Speichermedien umfassen auch Cloud-basierte Speichersysteme und -strukturen, obwohl der Anwendungsbereich der Erfindung nicht auf diese Beispiele für nicht-transitorische Speichermedien beschränkt ist.By way of example and not limitation, such computer storage media may include hardware memory such as solid state disk/device (SSD), RAM, ROM, EEPROM, CD-ROM, flash memory, phase change memory (PCM), or other optical disk storage , magnetic disk drives or other magnetic storage devices or any other hardware storage devices that can be used to store program code in the form of computer-executable instructions or data structures that can be accessed and executed by a general purpose or special purpose computer system to implement the disclosed functionality of the invention. Combinations of the above media should also be included within the scope of computer storage media. Such media are also examples of non-transitory storage media, and non-transitory storage media also include cloud-based storage systems and structures, although the scope of the invention is not limited to these examples of non-transitory storage media.
Computerausführbare Befehle umfassen beispielsweise Befehle und Daten, die einen Allzweckcomputer, einen Spezialcomputer oder eine Spezialverarbeitungsvorrichtung veranlassen, eine bestimmte Funktion oder eine Gruppe von Funktionen auszuführen. Obwohl der Gegenstand in einer Sprache beschrieben wurde, die für strukturelle Merkmale und/oder methodische Handlungen spezifisch ist, ist der in den beigefügten Ansprüchen definierte Gegenstand nicht notwendigerweise auf die oben beschriebenen spezifischen Merkmale oder Handlungen beschränkt. Vielmehr sind die hier offenbarten spezifischen Merkmale und Handlungen als beispielhafte Formen der Implementierung der Ansprüche offenbart.Computer-executable instructions include, for example, instructions and data that cause a general purpose computer, special purpose computer, or special purpose processing device to perform a particular function or group of functions. Although the subject matter has been described in language specific to structural features and/or methodical acts, the subject matter defined in the appended claims is not necessarily limited to the specific features or acts described above. Rather, the specific features and acts disclosed herein are disclosed as example forms of implementing the claims.
Der hier verwendete Begriff „Modul“ oder „Komponente“ kann sich auf Softwareobjekte oder Routinen beziehen, die auf dem Computersystem ausgeführt werden. Die verschiedenen hier beschriebenen Komponenten, Module, Engines und Dienste können als Objekte oder Prozesse implementiert werden, die auf dem Computersystem ausgeführt werden, zum Beispiel als separate Threads. Das hier beschriebene System und die Verfahren können zwar in Software implementiert werden, doch sind auch Implementierungen in Hardware oder eine Kombination aus Software und Hardware möglich und in Betracht zu ziehen. Im Rahmen der vorliegenden Offenbarung kann eine „Recheneinheit“ oder „Rechenentität“ ein beliebiges Computersystem, wie zuvor definiert, oder ein beliebiges Modul oder eine beliebige Kombination von Modulen sein, die auf einem Computersystem laufen.As used herein, the term "module" or "component" may refer to software objects or routines that execute on the computer system. The various components, modules, engines, and services described herein may be implemented as objects or processes executing on the computer system, such as separate threads. While the system and methods described herein can be implemented in software, implementations in hardware or a combination of software and hardware are also possible and contemplated. As used herein, a “computing unit” or “computing entity” can be any computing system as defined above, or any module or combination of modules running on a computing system.
Zumindest in einigen Fällen wird ein Hardware-Prozessor bereitgestellt, der ausführbare Befehle zur Durchführung eines Verfahrens oder Prozesses, wie zum Beispiel die hier offenbarten Verfahren und Prozesse, ausführen kann. Der Hardware-Prozessor kann ein Element anderer Hardware umfassen oder auch nicht, wie z. B. die hier offenbarten Rechenvorrichtungen und -systeme.In at least some cases, a hardware processor is provided that is capable of executing executable instructions for performing a method or process, such as the methods and processes disclosed herein. The hardware processor may or may not include an element of other hardware, such as a B. the computing devices and systems disclosed herein.
Was die Computerumgebungen anbelangt, so können Ausführungsformen der Erfindung in Client-Server-Umgebungen, d. h. in Netzwerk- oder lokalen Umgebungen, oder in jeder anderen geeigneten Umgebung ausgeführt werden. Geeignete Betriebsumgebungen für zumindest einige Ausführungsformen der Erfindung umfassen Cloud-Computing-Umgebungen, in denen ein oder mehrere Clients, Server oder andere Maschinen in einer Cloud-Umgebung untergebracht sein und arbeiten können.With regard to computing environments, embodiments of the invention may be used in client-server environments, ie network or local environments, or any other suitable net environment. Suitable operating environments for at least some embodiments of the invention include cloud computing environments in which one or more clients, servers, or other machines may reside and operate in a cloud environment.
Eine oder mehrere der in den Figuren und/oder an anderer Stelle der vorliegenden Erfindung offenbarten oder implizierten Einheiten (Entitäten) können die Form einer physischen Rechenvorrichtung annehmen oder diese einschließen oder auf einer physischen Rechenvorrichtung implementiert oder von dieser gehostet werden. Wenn eines der vorgenannten Elemente eine virtuelle Maschine (VM) umfasst oder aus ihr besteht, kann diese VM eine Virtualisierung einer beliebigen Kombination der physischen Komponenten darstellen.One or more entities disclosed or implied in the figures and/or elsewhere in the present invention may take the form of or include a physical computing device, or be implemented on or hosted by a physical computing device. When any of the foregoing includes or consists of a virtual machine (VM), that VM may represent a virtualization of any combination of the physical components.
Die physische Rechenvorrichtung kann einen Speicher enthalten, der einen, einige oder alle der folgenden Elemente umfassen kann: Direktzugriffsspeicher (RAM), nichtflüchtiger Direktzugriffsspeicher (NVRAM), Festwertspeicher (ROM) und permanenter Speicher, einen oder mehrere Hardwareprozessoren, nichttransitorische Speichermedien, UI-Vorrichtung und Datenspeicher. Eine oder mehrere der Speicherkomponenten der physischen Rechenvorrichtung können die Form eines SSD-Speichers (Solid State Device) annehmen. Außerdem können eine oder mehrere Anwendungen bereitgestellt werden, die Befehle enthalten, die von einem oder mehreren Hardware-Prozessoren ausgeführt werden können, um eine der hier offenbarten Operationen oder Teile davon durchzuführen.The physical computing device may include memory, which may include one, some, or all of the following: random access memory (RAM), non-volatile random access memory (NVRAM), read-only memory (ROM) and persistent storage, one or more hardware processors, non-transitory storage media, UI device and data storage. One or more of the storage components of the physical computing device may take the form of solid state device (SSD) storage. Additionally, one or more applications may be provided that include instructions executable by one or more hardware processors to perform any of the operations disclosed herein, or portions thereof.
Solche ausführbaren Befehle können verschiedene Formen annehmen, beispielsweise Befehle, die ausgeführt werden können, um ein beliebiges hier offenbartes Verfahren oder einen Teil davon auszuführen, und/oder die von/an einem Speicherort ausgeführt werden können, sei es vor Ort (on-premise) in einem Unternehmen oder an einem Cloud-Speicherort, Client, Rechenzentrum oder Backup-Server, um irgendeine der hier offenbarten Funktionen auszuführen. Ebenso können solche Befehle ausführbar sein, um alle anderen hierin offenbarten Operationen und Verfahren und beliebige Teile davon auszuführen, einschließlich - aber nicht beschränkt auf - Datenschutzoperationen.Such executable instructions may take various forms, including, for example, instructions that are executable to perform any method disclosed herein, or part thereof, and/or that are executable from/at a location, whether on-premises at an enterprise or cloud storage location, client, data center, or backup server to perform any of the functions disclosed herein. Likewise, such instructions may be executable to perform all other operations and methods disclosed herein, and any portion thereof, including but not limited to data protection operations.
Die vorliegende Erfindung kann in anderen spezifischen Formen ausgeführt werden, ohne von ihrem Geist oder ihren wesentlichen Merkmalen abzuweichen. Die beschriebenen Ausführungsformen sind in jeder Hinsicht nur als illustrativ und nicht einschränkend zu betrachten. Der Umfang der Erfindung ergibt sich daher eher aus den beigefügten Ansprüchen als aus der vorangehenden Beschreibung. Alle Änderungen, die in den Bedeutungs- und Äquivalenzbereich der Ansprüche fallen, sind in deren Schutzbereich einzubeziehen.The present invention may be embodied in other specific forms without departing from the spirit or essential characteristics thereof. The described embodiments are to be considered in all respects only as illustrative and not restrictive. The scope of the invention is, therefore, indicated by the appended claims rather than by the foregoing description. All changes which come within the meaning and range of equivalency of the claims are to be embraced within their scope.
ZITATE ENTHALTEN IN DER BESCHREIBUNGQUOTES INCLUDED IN DESCRIPTION
Diese Liste der vom Anmelder aufgeführten Dokumente wurde automatisiert erzeugt und ist ausschließlich zur besseren Information des Lesers aufgenommen. Die Liste ist nicht Bestandteil der deutschen Patent- bzw. Gebrauchsmusteranmeldung. Das DPMA übernimmt keinerlei Haftung für etwaige Fehler oder Auslassungen.This list of documents cited by the applicant was generated automatically and is included solely for the better information of the reader. The list is not part of the German patent or utility model application. The DPMA assumes no liability for any errors or omissions.
Zitierte PatentliteraturPatent Literature Cited
- US 16785288 [0001]US16785288 [0001]
Claims (20)
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US16/785,288 US11435933B2 (en) | 2020-02-07 | 2020-02-07 | Using any-pit backups for retroactive backup compliance and hardening |
US16/785,230 | 2020-02-07 | ||
US16/785,288 | 2020-02-07 | ||
US16/785,230 US11175997B2 (en) | 2020-02-07 | 2020-02-07 | Using business continuity and disaster recovery for any point in time backup |
PCT/US2021/016395 WO2021158650A1 (en) | 2020-02-07 | 2021-02-03 | Using business continuity and disaster recovery for any point in time backup |
Publications (1)
Publication Number | Publication Date |
---|---|
DE112021000935T5 true DE112021000935T5 (en) | 2022-12-08 |
Family
ID=74798067
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE112021000935.4T Pending DE112021000935T5 (en) | 2020-02-07 | 2021-02-03 | USING BUSINESS CONTINUITY AND DISASTER RECOVERY FOR ANY POINT-IN-TIME BACKUPS |
Country Status (3)
Country | Link |
---|---|
DE (1) | DE112021000935T5 (en) |
GB (1) | GB2607471A (en) |
WO (1) | WO2021158650A1 (en) |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7685378B2 (en) * | 2007-02-15 | 2010-03-23 | Hitachi, Ltd. | Methods and apparatus for adjusting a journal area for continuous data protection |
US8321688B2 (en) * | 2009-06-12 | 2012-11-27 | Microsoft Corporation | Secure and private backup storage and processing for trusted computing and data services |
US10437783B1 (en) * | 2014-09-25 | 2019-10-08 | EMC IP Holding Company LLC | Recover storage array using remote deduplication device |
-
2021
- 2021-02-03 WO PCT/US2021/016395 patent/WO2021158650A1/en active Application Filing
- 2021-02-03 DE DE112021000935.4T patent/DE112021000935T5/en active Pending
- 2021-03-03 GB GB2211083.7A patent/GB2607471A/en active Pending
Also Published As
Publication number | Publication date |
---|---|
GB202211083D0 (en) | 2022-09-14 |
WO2021158650A1 (en) | 2021-08-12 |
GB2607471A (en) | 2022-12-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP3646195B1 (en) | Systems and methods of restoring a dataset of a database for a point in time | |
DE102013215535B4 (en) | BACKUP OR RECOVERY OF DATA USING MAIN MEMORY AND NON-VOLATILE STORAGE MEDIA | |
US11809286B2 (en) | Scaling single file snapshot performance across clustered system | |
DE112014003152T5 (en) | Systems and methods for atomic storage operations | |
DE102020120553A1 (en) | VIRTUALLY PERSISTENT VOLUMES FOR CONTAINERIZED APPLICATIONS | |
DE112014001873T5 (en) | Replication for hot standby online database | |
DE112021002894T5 (en) | ON-THE- FLY- PIT SELECTION FOR DISARTER RECOVERY IN THE CLOUD | |
DE112012003695T5 (en) | Maintain multiple destination copies | |
DE112013003340T5 (en) | Freeze instant virtual copies on multiple disks | |
DE112005003668T5 (en) | HSM control program, HSM control device and HSM control method | |
US11630597B2 (en) | Any point in time backups and tier one storage replication | |
DE112015000222T5 (en) | Merging multiple point-in-time copies into a merged point-in-time copy | |
US11580015B2 (en) | Garbage collection for a deduplicated cloud tier using functions | |
DE102022108863A1 (en) | BACKUP OF DATA FOR A NAMESPACE ASSIGNED TO A TENANT | |
DE112019005311T5 (en) | SERVERLESS SOLUTION FOR OPTIMIZING OBJECT VERSIONING | |
US11620056B2 (en) | Snapshots for any point in time replication | |
DE112019005351T5 (en) | ANY TIME REPLICATION INTO THE CLOUD | |
DE112021000935T5 (en) | USING BUSINESS CONTINUITY AND DISASTER RECOVERY FOR ANY POINT-IN-TIME BACKUPS | |
DE112010004185T5 (en) | Synchronize a database with non-database resources | |
US11175997B2 (en) | Using business continuity and disaster recovery for any point in time backup | |
US11921589B2 (en) | Any point in time backup on secondary storage for distributed consistency groups | |
DE102022113314A1 (en) | CONTINUOUS PRIVACY IN CLOUD-USED STREAM | |
DE102022113373A1 (en) | Continuous data protection in cloud-consuming streams | |
DE112021001730T5 (en) | TRUE ZERO RTO: PLANNED FAILOVER | |
DE102023116678A1 (en) | RECOVERY-FRIENDLY DATA MIGRATION IN DISTRIBUTED SYSTEMS |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
R012 | Request for examination validly filed |