DE112011100819B4 - Speicherplatzreservierung in einem Deduplizierungssystem - Google Patents
Speicherplatzreservierung in einem Deduplizierungssystem Download PDFInfo
- Publication number
- DE112011100819B4 DE112011100819B4 DE112011100819.8T DE112011100819T DE112011100819B4 DE 112011100819 B4 DE112011100819 B4 DE 112011100819B4 DE 112011100819 T DE112011100819 T DE 112011100819T DE 112011100819 B4 DE112011100819 B4 DE 112011100819B4
- Authority
- DE
- Germany
- Prior art keywords
- ratio
- factorization
- calculated
- data
- 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.)
- Active
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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0614—Improving the reliability of storage systems
- G06F3/0619—Improving the reliability of storage systems in relation to data integrity, e.g. data losses, bit errors
-
- 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/1448—Management of the data involved in backup or backup restore
- G06F11/1453—Management of the data involved in backup or backup restore using de-duplication of the data
-
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0638—Organizing or formatting or addressing of data
- G06F3/064—Management of blocks
- G06F3/0641—De-duplication techniques
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/067—Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]
-
- 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
Abstract
Verfahren zum Reservieren von Speicherplatz in einem Deduplizierungssystem durch einen Prozessor, wobei das Verfahren Folgendes umfasst:- Bestimmen eines berechneten Faktorisierungsverhältnisses als ein gewichtetes Verhältnis von aktuellen nominalen Daten zu physischen Daten auf der Grundlage von mindestens einem Schwellenwert der Speicherkapazität und einem verwendeten Speicherplatz, der aktuell von Sicherungs- oder Replikationsdaten physisch gebraucht wird;- Berechnen eines geschätzten maximalen nominalen Speicherplatzes in der Computerspeicherumgebung unter Verwendung des berechneten Faktorisierungsverhältnisses; und- Berechnen eines verbleibenden Speicherplatzes, der als der geschätzte maximale nominale Speicherplatz abzüglich eines aktuellen nominalen Speicherplatzes in der Computerspeicherumgebung definiert ist;- wobei, wenn der verbleibende Speicherplatz kleiner als oder gleich wie ein vom Benutzer konfigurierter Reservierungsspeicherplatz für Sicherungsoperationen ist, Datenreplikationsoperationen angenommen und in der Computerrechenumgebung gespeichert werden,- bei dem das Bestimmen des berechneten Faktorisierungsverhältnisses wie folgt durchgeführt wird:- Fberechnet = (CProzentsatz * WVerhältnis) + ((Fkonfiguriert * (1-WVerhältnis),- wobei Fberechnet das berechnete Faktorisierungsverhältnis, CProzentsatz der Prozentsatz der verwendeten Kapazität, WVerhältnis die aktuelle Verhältnisgewichtung und Fkonfiguriert ein konfiguriertes Faktorisierungsverhältnis ist, das als ein vom Benutzer konfiguriertes Systemattribut für ein erwartetes Verhältnis von nominalen Daten zu physischen Daten definiert ist, und- bei dem das Berechnen des geschätzten maximalen nominalen Speicherplatzes durch Multiplizieren eines maximalen physischen Speicherplatzes mit dem berechneten Faktorisierungsverhältnis erfolgt.
Description
- HINTERGRUND DER ERFINDUNG
- Gebiet der Erfindung
- Die vorliegende Erfindung bezieht sich allgemein auf Computer und insbesondere auf Ausführungsformen für eine Vorrichtung, ein Verfahren und ein Computerprogrammprodukt für die Reservierung von Speicherplatz in einem Deduplizierungssystem, das in einer Computerspeicherumgebung betrieben werden kann.
- Beschreibung des Stands der Technik
- Deduplizierungssysteme können verschiedene logische Datenspeicherentitäten wie beispielsweise Dateien, Datenobjekte, Sicherungsimages, Datenmomentaufnahmen oder virtuelle Bandkassetten auslagern. Oft müssen solche Datenspeicherentitäten von ihrem Ursprungsort an entfernten Standorten repliziert werden. Replizierte Datenentitäten verbessern die Fehlertoleranzfähigkeiten und die Verfügbarkeit von Daten. Eine solche Fehlertoleranz und weitgehende Verfügbarkeit werden in zunehmendem Maße gefordert. Es gibt zwar mehrere Ansätze, die zur Durchführung einer Datenreplikation und insbesondere einer Replikation von deduplizierten Datenentitäten verwendet werden können, diese Ansätze gehen jedoch mit Einschränkungen einher, die die Replikationsfähigkeit, Systemleistung und Datenkonsistenz beeinträchtigen, die zusätzlichen Aufwand benötigen oder sich durch eine Kombination von beidem auszeichnen.
- Aus
US 7 720 892 B1 ist das Abspeichern von Daten bekannt, wobei das Abspeichern nach einem Ablaufplan erfolgt, der von dem Inhalt des Abspeicherungsbefehls abhängt. - Aus
US 7 539 710 B1 sind ein System und ein Verfahren zum Deduplizieren von Daten in einer Sicherheitskopie bekannt, wobei Sicherheitskopietabellen erzeugt werden, die eine Liste von Dateien und entsprechenden Dateitypen beinhalten. - ZUSAMMENFASSUNG DER ERFINDUNG
- Aufgabe der Erfindung ist es, den benötigten Speicherplatzbedarf genauer zu ermitteln.
- Die Aufgabe wird erfindungsgemäß gelöst durch ein Verfahren zum Reservieren von Speicherplatz in einem Deduplizierungssystem durch einen Prozessor nach Anspruch 1, ein System zum Reservieren von Speicherplatz in einem Deduplizierungssystem nach Anspruch 7 und ein Computerprogrammprodukt zum Reservieren von Speicherplatz in einem Deduplizierungssystem durch einen Prozessor nach Anspruch 13. Bevorzugte Ausführungsformen der Erfindung sind Gegenstand der jeweiligen Unteransprüche.
- Datendeduplizierung bezieht sich auf die Verringerung und/oder die Entfernung von redundanten Daten. Bei einem Datendeduplizierungsverfahren werden duplizierte Kopien von Daten verringert oder entfernt, wobei eine Mindestanzahl an redundanten Kopien bzw. eine einzelne Kopie der Daten übrig bleibt. Durch die Anwendung von Deduplizierungsverfahren ergeben sich vielfältige Vorteile wie beispielsweise eine Verringerung der benötigten Speicherkapazität und eine größere Netzwerkbandbreite. Aufgrund dieser und anderer Vorteile hat sich die Deduplizierung in den vergangenen Jahren zu einem äußerst wichtigen technologischen Gebiet im Bereich Computerspeichersysteme entwickelt. Zu den Problemen im Zusammenhang mit der Bereitstellung der Deduplizierungsfunktionalität zählen Aspekte wie beispielsweise das wirksame Auffinden duplizierter Datenmuster in typischerweise großen Speicher-Repositories sowie das Speichern der Datenmuster in einer deduplizierten speichereffizienten Form.
- Bei aktuellen Replikationslösungen für die Duplizierung im Rahmen einer Konfiguration, bei der beispielsweise viele Replikationssender Daten mit einem Empfänger austauschen, der auch als Sicherungsziel fungiert, stellt sich das Problem, was höhere Priorität erhalten soll, die Sicherungsfunktionalität oder die eingehende Replikation. Dieses Problem kann derzeit zu Konkurrenzsituationen in Bezug auf den verfügbaren Speicherplatz führen, wie unten noch näher beschrieben wird. In Anbetracht des gegenwärtigen Stands der Technik besteht der Bedarf nach einem Mechanismus zum Replizieren deduplizierter Daten, der alle Anforderungen an ein leistungsfähiges Replikationsverfahren erfüllt und gleichzeitig die oben beschriebenen Beschränkungen der bestehenden Methodologien bei bestimmten Konfigurationen umgeht, um somit die bestehenden Ansätze zum Replizieren deduplizierter Daten zu verbessern.
- Daher werden verschiedene Ausführungsformen zum Verbessern der Funktionalität für die Reservierung von Speicherplatz in einem Deduplizierungssystem bereitgestellt, das in einer Computerspeicherumgebung betrieben werden kann. Bei einer solchen Ausführungsform wird lediglich beispielhaft ein berechnetes Faktorisierungsverhältnis als ein gewichtetes Verhältnis von aktuellen nominalen Daten zu physischen Daten auf der Grundlage von mindestens einem Schwellenwert der Speicherkapazität und einem verwendeten Speicherplatz ermittelt, der aktuell von Sicherungs- oder Replikationsdaten physisch gebraucht wird. Ein geschätzter maximaler nominaler Speicherplatz in der Computerspeicherumgebung wird berechnet. Ein verbleibender Speicherplatz, der als der geschätzte maximale nominale Speicherplatz abzüglich eines aktuellen nominalen Speicherplatzes in der Computerspeicherumgebung definiert ist, wird berechnet. Wenn der verbleibende Speicherplatz gleich wie oder kleiner als ein vom Benutzer konfigurierter Reservierungsspeicherplatz für Sicherungsoperationen ist, werden Datenreplikationsoperationen angenommen und in der Computerrechenumgebung gespeichert.
- Neben der oben aufgeführten beispielhaften Ausführungsform eines Verfahrens werden noch andere beispielhafte Ausführungsformen für ein System und ein Computerprodukt bereitgestellt, die damit verbundene Vorteile bieten.
- Figurenliste
- Um die Vorteile der Erfindung besser zu verstehen, wird eine genauere Beschreibung der oben kurz dargelegten Erfindung mit Bezug auf spezielle Ausführungsformen vorgestellt, die in den beigefügten Zeichnungen veranschaulicht sind, in denen:
-
1 eine beispielhafte Datenverarbeitungsumgebung veranschaulicht, in der Aspekte der vorliegenden Erfindung umgesetzt werden können; -
2 eine beispielhafte Datenreplikations- und Sicherungskonfiguration veranschaulicht; -
3 eine Reihe von Definitionen veranschaulicht, die in den folgenden Beschreibungen und dem beanspruchten Gegenstand verwendet werden; -
4 ein beispielhaftes Verfahren zum Bereitstellen einer Funktionalität für die Reservierung von Speicherplatz in Deduplizierungssystemen veranschaulicht; -
5 ein beispielhaftes Verfahren zum Berechnen eines berechneten Faktorisierungsverhältnisses nach dem in4 oben gezeigten beispielhaften Verfahren veranschaulicht; -
6 ein beispielhaftes Verfahren für einen Verfahrensfluss einer Funktionalität für die Reservierung von Speicherplatz nach dem in4 oben gezeigten beispielhaften Verfahren veranschaulicht; und -
7 eine beispielhafte Datenverarbeitungseinheit mit einer Prozessoreinheit in einer Datenverarbeitungsumgebung wie beispielweise der in1 dargestellten Datenverarbeitungsumgebung veranschaulicht. - AUSFÜHRLICHE BESCHREIBUNG DER ZEICHNUNGEN
- Mit Bezug nunmehr auf
1 ist eine beispielhafte Architektur10 von Datenspeichersystemen (z.B. virtuellen Bandsystemen) in einer Datenverarbeitungsumgebung dargestellt. Die Architektur10 stellt wie dargestellt den lokalen Hosts18 und20 Speicherdienste sowie entfernten Datenspeichersystemen Replikatdaten bereit. Ein lokaler Speichersystem-Server12 , der Daten mit einer Speichereinheit14 austauscht, ist über ein Netzwerk, das Komponenten wie beispielsweise einen Fibre-Channel-Schalter (fibre channel switch) 16 umfasst, mit den lokalen Hosts18 und20 verbunden. Der Fibre-Channel-Schalter16 kann zum Beispiel Befehle (wie beispielsweise Befehle des Small Computer System Interface, SCSI) für Bandeinheiten ausführen. Dem Fachmann ist ersichtlich, dass die Architektur10 eine Vielfalt von Speicherkomponenten umfassen kann. Die Speichereinheiten14 können zum Beispiel herkömmliche Festplattenlaufwerkeinheiten oder Festkörperlaufwerkeinheiten (solid state drive devices) umfassen. - Der lokale Speichersystem-Server
12 ist über das Netzwerk22 mit einem entfernten Speichersystem-Server24 verbunden. Der entfernte Server24 tauscht mit einer lokal verbundenen Plattenspeichereinheit26 und mit den lokal verbundenen Hosts30 und 32 über ein anderes Netzwerk und eine Netzwerkkomponente28 wie beispielsweise den Fibre-Channel-Schalter28 Daten aus. Das Netzwerk22 kann eine Vielfalt von Netzwerktopologien umfassen, beispielsweise ein Weitverkehrsnetz (wide area network, WAN), ein lokales Netz (local area network, LAN), ein Speicherbereichsnetz (storage area network, SAN) und andere Konfigurationen. Die Schalter16 und28 können ebenso andere Arten von Netzwerkeinheiten umfassen. - Die Architektur
10 stellt wie oben beschrieben den lokalen Hosts lokale Speicherdienste bereit und stellt den entfernten Datenspeichersystemen Replikatdaten bereit (durch die mit dem Pfeil34 gekennzeichnete Datenreplikationsfunktionalität). Verschiedene Ausführungsformen der vorliegenden Erfindung und der beanspruchte Gegenstand können bei Architekturen wie beispielsweise der Architektur10 umgesetzt werden, wie beschrieben werden wird. Bei einer Ausführungsform kann die Plattenspeichereinheit14 zum Beispiel Teil eines deduplizierten Speichersystems sein, das deduplizierte Datenentitäten speichert. Die deduplizierten Datenentitäten können anschließend einem Datenreplikationsverfahren34 unterzogen werden, bei dem die deduplizierten Datenentitäten auf der entfernten Plattenspeichereinheit26 repliziert werden. Diese Verfahren werden nachfolgend im Einzelnen beschriebenen. - Solche Verfahren zum Replizieren einer in einer deduplizierten Form in einem deduplizierten Speichersystem abgelegten Datenentität auf ein entferntes Deduplizierungsspeichersystem sollte in Bezug auf Verarbeitungszeit und Speicheranforderungen sowohl bei den Quell- als auch den Zielsystemen leistungsstark sein und sollte nach Möglichkeit die Eigenschaften der Deduplizierungsspeichersysteme nutzen, um diese Leistungsfähigkeiten zu verbessern.
- Die Replikation mehrerer Systeme auf ein einzelnes System für die Wiederherstellung nach einem Absturz (disaster recovery system) ist bei Organisationen mit Datenspeicherungsanforderungen üblich, zum Beispiel bei Organisationen, die bestimmte Datenspeicherungsgesetze einhalten müssen, oder Organisationen, die Datenentitätsreplikate mit unterschiedlichen Speicherungszeiten von vielen kleinen bis mittleren Standorten aufbewahren müssen. Wie oben jedoch bereits angedeutet, kann sich ein potenzielles Problem ergeben, wenn eine Vielfalt von Sendern, die Daten mit einem Empfänger austauschen, konfiguriert werden. Ein oder zwei Replikationssender sind noch leicht zu steuern, und der Empfänger kann seine Kapazität entsprechend planen, viele Replikationssender können jedoch zu Chaos am Empfängerstandort führen, wenn Replikationsoperationen gleichzeitig ausgeführt werden. Dieses Problem wird noch größer, wenn der Empfänger auch als Sicherungsziel konfiguriert ist.
- Wie oben bereits erwähnt, stellt sich dann die Frage, was höhere Priorität hat, Sicherung oder eingehende Replikation. Diese Frage nach der Priorisierung spielt in herkömmlichen Replikationsausführungen allgemein keine Rolle. Die Anwendung herkömmlicher Lösungen kann daher zu Konkurrenzsituationen im Zusammenhang mit dem verfügbaren Speicherplatz führen. In diesem Szenario haben weder Replikation noch Sicherung Priorität, und beide würden Speicherplatz je nach der entsprechenden Eingabe/Ausgabe (E/A) des Durchsatzes benötigen, den jeder Sender (einschließlich Sicherungshost) erzeugen kann.
- Mit Bezug auf
2 ist eine beispielhafte Viele-zu-eins-Replikationsumgebung 50 veranschaulicht. Hier tauscht eine Vielzahl von Sendern52 Daten mit einem Empfänger54 aus, der als ein Sicherungsziel von einem Sicherungshost58 konfiguriert ist. Der Empfänger54 tauscht auch Daten mit dem Speicher56 aus (der, wie dem Fachmann ersichtlich ist, eine oder mehrere Speichereinheiten in einer beliebigen Anzahl von Ausführungen umfassen kann). Da der Empfänger dem Sicherungshost58 eine Sicherungsfunktionalität bereitstellen muss, jedoch auch die Datenreplikation bis zum Speicher56 ermöglichen muss, wenn keine Durchsetzungsmaßnahme in Bezug auf die Speicherkapazität für den Speicher56 durchgeführt wird, befördert die Umgebung50 die Konkurrenzsituation zwischen Replikation und Sicherung und bewirkt, dass der Speicher56 keiner besonderen Funktion, weder der Sicherung noch der Replikation, den Vorzug gibt, so dass, sobald der Speicherplatz im Speicher56 vollständig durch die Replikation belegt ist, die vom Empfänger54 ermöglichten Sicherungsoperationen für den Sicherungshost 56 nicht ausgeführt werden können und fehlschlagen würden. - Um das oben beschriebene Szenario zu lösen, stellen die veranschaulichten Ausführungsformen Mechanismen zum Priorisieren der Sicherung vor der Replikation in Deduplizierungssystemen bereit, wobei dieser Aspekt der Kapazitätsverwaltung während der Ausführung von Replikation und Sicherung dynamisch durchgesetzt wird. Jedes System kann seine eigenen Speicherentitäten (z.B. Kassetten) haben, die lokale Eigner sind, sowie replizierte Entitäten, die fremde Eigner sind. Die vom lokalen System erzeugten lokalen Entitäten können sowohl für die Sicherung als auch für die Replikation auf einen entfernten Standort verwendet werden. Replizierte Entitäten am entfernten Standort, die durch die Replikation von Replikationssendersystemen erzeugt wurden, können für Replikations- und Wiederherstellungsoperationen verwendet werden.
- Ein Benutzer, beispielsweise ein Systemadministrator, kann nominalen Speicherplatz für Sicherungsoperationen reservieren. Bei einer beispielhaften Ausführungsform kann der Benutzer nominalen Speicherplatz für den Sicherungshost reservieren (z.B. 200 MB Sicherungshostdaten (nominal) / 10 (Deduplizierungsverhältnis) = 20 MB physischer Speicherplatz). Diese Operation kann online und jederzeit durchgeführt werden, nachdem das System während der Ausführung konfiguriert wurde. Die Standardeinstellung kann so konfiguriert werden, dass kein Speicherplatz für die Sicherung reserviert wird.
- Somit können beide Verbraucher (Sicherung und Replikation) verfügbaren Speicherplatz im Speicher verwenden. Wenn ein Benutzer reservierten Speicherplatz definiert (in nominaler Hinsicht), kann das System auf der Grundlage der aktuell verwendeten Speicherkapazität so angepasst werden, dass es bis zu einem konfigurierten Umfang (z.B. X Speicherplatz) Speicherplatz für Sicherungsoperationen reserviert. Bei einer Ausführungsform kann das System fünf nominale Werte anbieten, wenn der Benutzer den reservierten Speicherplatz ändern will. Zu diesen Werten können zum Beispiel (i) die maximale Speicherkapazität, (ii) der für die Replikation verwendete Speicherplatz, (iii) der für die Sicherung verwendete Speicherplatz, (iv) freier Speicherplatz im Speicher und (v) die aktuelle Reservierung für die Sicherung gehören.
- Unabhängig vom Status des Speichers kann der Benutzer den Wert der Reservierung in einen von ihm gewählten Wert ändern, auch wenn der Wert zu diesem Zeitpunkt von dem für die Sicherung verwendeten Speicherplatz überschritten wird. Wenn der neue Wert größer als die maximale Speicherkapazität ist, kann der Benutzer benachrichtigt werden und/oder die Änderung ist möglicherweise nicht erlaubt.
- In Anbetracht des Obengenannten stellt die nachfolgende Beschreibung beispielhafte Mechanismen zum Durchsetzen der Priorisierung von Sicherung vor Replikation bei der Kapazitätsverwaltung vor. Das System kann im Vorfeld als Teil der ursprünglichen Speicherplanung am Standort der Wiederherstellung nach einem Absturz konfiguriert werden, um Sicherungsoperationen Priorität vor der Replikation zu geben (da Replikationsoperationen zum Beispiel Teil der Sicherungsoperationen insgesamt sind und daher als solche nicht so wichtig sind). Der Benutzer kann eine solche Konfiguration bereitstellen. In einem folgenden Schritt kann der Benutzer einen Reservierungsspeicherplatz für die Sicherung definieren, der seine Sicherungsanforderungen erfüllt. Sobald die Konfigurationen abgeschlossen sind und das System arbeitet, kann der Benutzer diese Konfigurationen dann überwachen.
- Mit Bezug nunmehr auf
3 ist eine Reihe von beispielhafter Terminologie, die hier beschrieben wird und im nachfolgend beanspruchten Gegenstand aufgeführt ist, in Tabellenform unterteilt nach Begriff und Beschreibung dargestellt. Zuerst sollen sich „nominale Daten“ auf Daten beziehen, die von einem Sicherungshost geschrieben wurden. Der Begriff „physische Daten“ soll sich auf Daten nach Deduplizierungs- und Komprimierungsoperationen beziehen. Der Begriff „konfiguriertes Faktorisierungsverhältnis“ soll sich auf ein vom Benutzer definiertes Systemattribut für ein erwartetes Verhältnis von nominalen zu physischen Daten beziehen, wie im Folgenden noch beschrieben wird. Der Begriff „aktuelles Faktorisierungsverhältnis“ soll sich auf ein tatsächliches Verhältnis von nominalen zu physischen Daten beziehen. - Im weiteren Verlauf der dargestellten Terminologie soll sich der Begriff „berechnetes Faktorisierungsverhältnis“ auf eine Berechnung beziehen, die das System durchführt, das Gewichtungen für das erwartete und das aktuelle Verhältnis von nominalen zu physischen Daten bereitstellt, die dynamisch auf Kapazitätsschwellenwerten und verwendetem Speicherplatz beruhen. „Niedriger Kapazitätsschwellenwert“ soll sich auf einen Wert beziehen, unter dem das berechnete Faktorisierungsverhältnis definitionsgemäß dem konfigurierten Faktorisierungsverhältnis entspricht. „Hoher Kapazitätsschwellenwert“ soll sich auf einen Wert beziehen, über dem das berechnete Faktorisierungsverhältnis definitionsgemäß dem konfigurierten Faktorisierungsverhältnis entspricht. „Verwendeter Speicherplatz“ soll sich auf einen tatsächlichen Umfang eines aktuell von Sicherungs- oder Replikationsdaten physisch verwendeten Speicherplatzes in dem Speicher beziehen. Zuletzt soll sich „verwendeter Speicherplatz von replizierten Kassetten“ auf einen tatsächlichen Umfang eines Speicherplatzes beziehen, der aktuell von Replikation stammenden Datenentitäten (Kassetten in diesem Fall) verwendet wird.
- Die folgenden
4 ,5 und6 veranschaulichen eine beispielhafte Funktionalität zum Bereitstellen einer Speicherplatzreservierung in einem Deduplizierungssystem.4 veranschaulicht ein beispielhaftes Gesamtverfahren für eine Speicherplatzreservierung, während die folgende5 ein beispielhaftes Verfahren zum Berechnen eines berechneten Faktorisierungsverhältnisses veranschaulicht und die nachfolgende6 einen Verfahrensfluss für die Konfiguration und den Betrieb des Deduplizierungssystems veranschaulicht, das die in den4 und5 zuvor gezeigten beispielhaften Funktionalitäten umfasst. - Zuerst mit Bezug auf
4 beginnt ein Verfahren100 (Schritt102 ) mit der Ermittlung eines berechneten Faktorisierungsverhältnisses als ein gewichtetes Verhältnis von aktuellen nominalen Daten zu physischen Daten (Schritt104 ). Ein geschätzter maximaler nominaler Speicherplatz wird anschließend berechnet (Schritt106 ), und ein verbleibender Speicherplatz wird berechnet (Schritt108 ), der als die Menge an Speicherplatz definiert ist, die nach Abzug des für die Replikation verwendeten nominalen Speicherplatzes von dem in Schritt106 berechneten geschätzten maximalen nominalen Speicherplatz übrig bleibt. - Wenn festgestellt wird, dass der verbleibende Speicherplatz kleiner als oder gleich wie der vom Benutzer für Sicherungsoperationen konfigurierte und reservierte Speicherplatz (Schritt
110 ) ist, wird die Replikation angenommen und gespeichert (Schritt114 ). Wenn dagegen kein verbleibender Speicherplatz vorhanden ist, wird eine Meldung an den Benutzer gesendet (Schritt112 ) und die Replikation wird abgelehnt. Das Verfahren100 endet damit (Schritt116 ). - Mit Bezug auf
5 als nächstes beginnt das Verfahren150 (Schritt152 ), indem ein aktuelles Faktorisierungsverhältnis als ein tatsächliches Verhältnis von nominalen zu physischen Daten (Schritt154 ) berechnet wird. Bei einer Ausführungsform kann das aktuelle Faktorisierungsverhältnis als die verwendeten nominalen Daten, geteilt durch den verwendeten Speicherplatz, definiert werden. In einem nächsten Schritt wird ein Prozentwert der verwendeten Kapazität ermittelt (Schritt156 ). Der Prozentsatz der verwendeten Kapazität kann bei einer Ausführungsform als der verwendete Speicherplatz, geteilt durch den konfigurierten physischen Speicherplatz, oder der Prozentsatz der physischen Daten im Speicher von der konfigurierten Speichergröße definiert werden. - Wenn in Schritt
158 ermittelt wird, dass der Prozentsatz der verwendeten Kapazität kleiner als oder gleich wie der niedrige Kapazitätsschwellenwert ist, wird das konfigurierte (vom Benutzer definierte) Faktorisierungsverhältnis als das berechnete Faktorisierungsverhältnis verwendet (Schritt160 ). Wenn der Prozentsatz der verwendeten Kapazität größer als oder gleich wie der hohe Kapazitätsschwellenwert ist (Schritt162 ), wird das aktuelle Faktorisierungsverhältnis (erneut das tatsächliche Verhältnis von nominalen zu physischen Daten) als das berechnete Faktorisierungsverhältnis verwendet (Schritt164 ). - Wenn der Prozentsatz der verwendeten Kapazität nicht kleiner als oder gleich wie der niedrige Kapazitätsschwellenwert oder größer als oder gleich wie der hohe Kapazitätsschwellenwert ist, wird eine aktuelle Verhältnisgewichtung für das aktuelle Faktorisierungsverhältnis berechnet. Bei einer Ausführungsform kann diese aktuelle Verhältnisgewichtung als der Prozentsatz der verwendeten Kapazität abzüglich des niedrigen Kapazitätsschwellenwerts, geteilt durch (
1 - niedriger Kapazitätsschwellenwert), definiert werden. Diese aktuelle Verhältnisgewichtung wird anschließend verwendet, um das in Schritt168 berechnete Faktorisierungsverhältnis zu berechnen, das bei einer Ausführungsform definiert ist als Fberechnet = (CProzentsatz * WVerhältnis) + ((Fkonfiguriert * (1-WVerhältnis), wobei Fberechnet das berechnete Faktorisierungsverhältnis, CProzentsatz der Prozentsatz der verwendeten Kapazität, WVerhältnis die aktuelle Verhältnisgewichtung und Fkonfiguriert ein konfiguriertes Faktorisierungsverhältnis ist, das als das vom Benutzer konfigurierte Systemattribut für das erwartete Verhältnis von nominalen Daten zu physischen Daten definiert ist. Das Verfahren150 endet damit (Schritt170 ). - Mit Bezug nunmehr auf
6 beginnt das Verfahren180 (Schritt182 ) damit, dass der Benutzer versucht, den vom Benutzer konfigurierten Reservierungsspeicherplatz für Sicherungsoperationen zu ändern (z.B. 20 TB physischer Speicherplatz) (Schritt 184). Wenn das System feststellt, dass genügend Speicherplatz zur Verfügung steht (Schritt186 ), wird die Änderung erfolgreich durchgeführt (Schritt188 ). Wenn dies jedoch nicht der Fall ist, sondern der Benutzer weniger Speicherplatz anfordert, und das System bereits mehr Platz für die Sicherung als der angeforderte Reservierungsspeicherplatz verwendet hat (Schritt190 ), wird die Änderung erfolgreich durchgeführt, der für die Sicherung reservierte Speicherplatz ist allerdings bereits aufgebraucht (Schritt192 ). Wenn alternativ zu den Schritten186 und190 kein Speicherplatz zur Verfügung steht, wird die Änderung nicht durchgeführt und der Benutzer erhält eine oder mehrere Benachrichtigungen (Schritt194 ). Der Benutzer überwacht anschließend die vorgenommene Konfiguration (Schritt196 ). Das Verfahren180 endet damit (Schritt198 ). -
6 stellt in der Folge ein Beispiel eines Teils der in1 dargestellten Computerumgebung10 bereit, bei der die Mechanismen der vorstehenden Ausführungsformen umgesetzt werden können. Es sei jedoch darauf hingewiesen, dass6 nur ein Beispiel ist und keine Beschränkung der bestimmten Architekturen darstellen oder nahelegen soll, bei denen die beispielhaften Aspekte der verschiedenen Ausführungsformen umgesetzt werden können. Viele Änderungen der in6 dargestellten Architektur können vorgenommen werden, ohne vom Geltungsbereich und Gedanken der folgenden Beschreibung und des beanspruchten Gegenstands abzuweichen. -
6 veranschaulicht einen Teil200 einer beispielhaften Computerumgebung, die verwendet werden kann, um Ausführungsformen der vorliegenden Erfindung umzusetzen. Ein Computer202 umfasst einen Prozessor204 und einen Speicher 206, beispielsweise einen Schreib-Lese-Speicher (RAM). Bei einer Ausführungsform kann der Speichersystem-Server12 (1 ) Komponenten umfassen, die denen im Computer202 gezeigten ähneln. Der Computer202 ist funktionsmäßig mit einer Anzeige219 verbunden, die dem Benutzer Bilder, beispielsweise Fenster, auf einer grafischen Benutzerschnittstelle218 anzeigt. Der Computer202 kann mit anderen Einheiten verbunden sein, beispielsweise einer Tastatur216 , einer Mauseinheit220 , einem Drucker228 usw. Fachleuten ist selbstverständlich klar, dass eine beliebige Kombination der oben genannten Komponenten oder eine beliebige Anzahl unterschiedlicher Komponenten, Peripheriegeräte und anderer Einheiten in Verbindung mit dem Computer202 verwendet werden kann. - Der Computer
202 arbeitet allgemein unter der Kontrolle eines Betriebssystems208 (z.B. z/OS, OS/2, LINUX, UNIX, WINDOWS, MAC OS), das im Speicher206 gespeichert ist, und bildet eine Benutzerschnittstelle, um Eingaben und Befehle anzunehmen sowie Ergebnisse vorzulegen, beispielsweise durch ein grafisches Benutzerschnittstellenmodul232 . Bei einer Ausführungsform ermöglicht das Betriebssystem208 die Sicherungsmechanismen. Obgleich das grafische Benutzerschnittstellenmodul232 als ein getrenntes Modul dargestellt ist, können die Befehle, die die Funktionen der grafischen Benutzerstelle ausführen, speicherresident sein oder im Betriebssystem208 und dem Anwendungsprogramm 210 verteilt sein oder mit einem Spezialspeicher und Prozessoren umgesetzt werden. Das Betriebssystem208 umfasst ein Replikationsmodul240 , das zum Ausführen verschiedener Prozesse und Mechanismen (beispielsweise wie die zuvor genannte Reservierung von physischem Speicherplatz für Sicherungsoperationen) in den zuvor beschriebenen beispielhaften Ausführungsformen geeignet sein kann. Das Replikationsmodul240 kann in Hardware, Firmware oder einer Kombination aus Hardware und Firmware umgesetzt werden. Bei einer Ausführungsform kann das Replikationsmodul240 als eine anwendungsspezifische integrierte Schaltung (application specific integrated circuit, ASIC) ausgeführt werden. Für den Fachmann ist ersichtlich, dass die Funktionalität in Verbindung mit dem Replikationsmodul240 zusammen mit der Funktionalität in Verbindung mit dem Prozessor204 , dem Speicher206 und anderen Komponenten des Computers202 in einer speziellen ASIC, die als System-on-Chip (SoC) bekannt ist, ausgeführt werden kann. Die Funktionalität in Verbindung mit dem Replikationsmodul (oder wiederum mit anderen Komponenten des Computers202 ) kann als eine im Feld programmierbare Gatteranordnung (field programmable gate array, FPGA) umgesetzt werden. - Wie in
6 dargestellt, umfasst der Computer202 einen Compiler212 , der es ermöglicht, dass ein in einer Programmiersprache wie beispielsweise COBOL, PL/1, C, C++, JAVA, ADA, BASIC, VISUAL BASIC oder einer anderen Programmiersprache geschriebenes Anwendungsprogramm210 in Code übersetzt wird, der vom Prozessor204 gelesen werden kann. Im Anschluss daran greift das Computerprogramm210 auf die im Speicher206 des Computers202 gespeicherten Daten zu und manipuliert diese unter Verwendung der Beziehungen und der Logik, die bei der Verwendung des Compilers212 erzeugt wurden. Der Computer202 umfasst optional ebenfalls eine externe Datenübertragungseinheit230 wie beispielsweise ein Modem, eine Satellitenverbindung, eine Ethernet-Karte, eine drahtlose Verbindung oder eine andere Einheit für die Datenübertragung mit anderen Computern, z.B. über das Internet oder ein anderes Netzwerk. - Die Datenspeichereinheit
222 ist eine Direktzugriffsspeichereinheit (direct access storage device, DASD) 222, die einen oder mehrere Primärdatenträger mit einer Reihe von Datensätzen umfasst. Die DASD222 kann eine Reihe von Speichermedien umfassen, wie beispielsweise Festplattenlaufwerke, Bänder und ähnliches. Die Datenspeichereinheit236 kann ebenfalls eine Reihe von ähnlichen Speichermedien wie die Einheit222 umfassen. Die Einheit236 kann als eine Sicherungseinheit236 zum Speichern von Sicherungsversionen der Reihe von Datensätzen bestimmt werden, die primär in der Einheit222 gespeichert sind. Für einen Fachmann ist ersichtlich, dass sich die Einheiten222 und236 nicht in derselben Maschine befinden müssen. Die Einheiten222 können sich in unterschiedlichen geografischen Regionen befinden und über eine Netzwerkverbindung wie beispielsweise Ethernet verbunden sein. Die Einheiten222 und236 können einen oder mehrere Datenträger mit entsprechenden Datenträgerinhaltsverzeichnissen (volume table of contents, VTOC) für jeden Datenträger umfassen. - Bei einer Ausführungsform sind die Befehle, die das Betriebssystem
208 , das Computerprogramm210 und der Compiler212 umsetzen, physisch in einem computerlesbaren Medium enthalten, z.B. der Datenspeichereinheit220 , die eine oder mehrere feste oder entfernbare Datenspeichereinheiten224 umfassen kann, beispielsweise ein ZIP-Laufwerk, eine Diskette, ein Festplattenlaufwerk, eine DVD/CD-ROM, ein digitales Band, eine Flash-Speicherkarte, ein Festkörperlaufwerk usw., die allgemein als die Speichereinheit224 dargestellt werden. Das Betriebssystem208 und das Computerprogramm210 umfassen des Weiteren Befehle, die, wenn sie vom Computer202 gelesen und ausgeführt werden, den Computer202 veranlassen, die notwendigen Schritte durchzuführen. Das Computerprogramm210 kann zum Beispiel Befehle zum Umsetzen des oben beschriebenen Grid-Set-Managers, Grid-Managers und Repository-Managers enthalten. Die Befehle des Computerprogramms210 und/oder des Betriebssystems 208 können ebenfalls physisch im Speicher206 enthalten sein und/oder über die Datenübertragungseinheit230 übertragen werden oder die Einheit kann auf die Befehle zugreifen. Die Begriffe „Herstellungsartikel“, „Programmspeichereinheit“ und „Computerprogrammprodukt“, wie sie hier als solche verwendet werden können, sollen ein Computerprogramm beinhalten, auf das von einer beliebigen computerlesbaren Einheit oder einem solchen Medium zugegriffen werden kann und/oder das von einer solchen Einheit oder einem solchen Medium betrieben werden kann. - Ausführungsformen der vorliegenden Erfindung können ein oder mehrere dazugehörige Anwendungsprogramme
210 umfassen, die zum Beispiel Funktionen zum Verwalten eines verteilten Computersystems enthalten, das ein Netzwerk von Datenverarbeitungseinheiten, beispielsweise ein Speicherbereichsnetz (SAN), umfasst. Der Prozessor204 kann daher einen Speicherverwaltungsprozessor umfassen. Das Programm210 kann mit einem einzelnen Computer202 oder als Teil eines verteilten Computersystems betrieben werden, das ein Netzwerk von Datenverarbeitungseinheiten umfasst. Das Netzwerk kann einen oder mehrere Computer umfassen, die über ein lokales Netzwerk und/oder eine Internet-Verbindung (die öffentlich oder sicher sein kann, z.B. über eine virtuelle private Netzwerkverbindung) oder über ein Fibre-Channel-SAN oder andere bekannte Netzwerkarten verbunden sein können, wie für den Fachmann ersichtlich ist. (Ein Fibre-Channel-SAN wird typischerweise nur für Computer verwendet, um Daten mit Speichersystemen und nicht untereinander auszutauschen.)
Claims (18)
- Verfahren zum Reservieren von Speicherplatz in einem Deduplizierungssystem durch einen Prozessor, wobei das Verfahren Folgendes umfasst: - Bestimmen eines berechneten Faktorisierungsverhältnisses als ein gewichtetes Verhältnis von aktuellen nominalen Daten zu physischen Daten auf der Grundlage von mindestens einem Schwellenwert der Speicherkapazität und einem verwendeten Speicherplatz, der aktuell von Sicherungs- oder Replikationsdaten physisch gebraucht wird; - Berechnen eines geschätzten maximalen nominalen Speicherplatzes in der Computerspeicherumgebung unter Verwendung des berechneten Faktorisierungsverhältnisses; und - Berechnen eines verbleibenden Speicherplatzes, der als der geschätzte maximale nominale Speicherplatz abzüglich eines aktuellen nominalen Speicherplatzes in der Computerspeicherumgebung definiert ist; - wobei, wenn der verbleibende Speicherplatz kleiner als oder gleich wie ein vom Benutzer konfigurierter Reservierungsspeicherplatz für Sicherungsoperationen ist, Datenreplikationsoperationen angenommen und in der Computerrechenumgebung gespeichert werden, - bei dem das Bestimmen des berechneten Faktorisierungsverhältnisses wie folgt durchgeführt wird: - Fberechnet = (CProzentsatz * WVerhältnis) + ((Fkonfiguriert * (1-WVerhältnis), - wobei Fberechnet das berechnete Faktorisierungsverhältnis, CProzentsatz der Prozentsatz der verwendeten Kapazität, WVerhältnis die aktuelle Verhältnisgewichtung und Fkonfiguriert ein konfiguriertes Faktorisierungsverhältnis ist, das als ein vom Benutzer konfiguriertes Systemattribut für ein erwartetes Verhältnis von nominalen Daten zu physischen Daten definiert ist, und - bei dem das Berechnen des geschätzten maximalen nominalen Speicherplatzes durch Multiplizieren eines maximalen physischen Speicherplatzes mit dem berechneten Faktorisierungsverhältnis erfolgt.
- Verfahren nach
Anspruch 1 , bei dem das Bestimmen des berechneten Faktorisierungsverhältnisses weiterhin ein Bestimmen eines aktuellen Faktorisierungsverhältnisses als ein tatsächliches Verhältnis von nominalen zu physischen Daten umfasst. - Verfahren nach
Anspruch 2 , bei dem das Bestimmen des berechneten Faktorisierungsverhältnisses weiterhin ein Bestimmen eines Prozentsatzes der verwendeten Kapazität umfasst, der als der verwendete Speicherplatz, geteilt durch eine konfigurierte Speichergröße der Computerspeicherumgebung, definiert ist. - Verfahren nach
Anspruch 3 , bei dem, wenn der Prozentsatz der verwendeten Kapazität kleiner als oder gleich wie ein niedriger Schwellenwert der Speicherkapazität ist, das konfigurierte Faktorisierungsverhältnis als das berechnete Faktorisierungsverhältnis verwendet wird. - Verfahren nach
Anspruch 4 , bei dem, wenn der Prozentsatz der verwendeten Kapazität größer als oder gleich wie ein hoher Schwellenwert der Speicherkapazität ist, das aktuelle Faktorisierungsverhältnis als das berechnete Faktorisierungsverhältnis verwendet wird. - Verfahren nach
Anspruch 5 , bei dem, wenn der Prozentsatz der verwendeten Kapazität nicht kleiner als oder gleich wie der niedrige Schwellenwert der Speicherkapazität und nicht größer als oder gleich wie der hohe Schwellenwert der Speicherkapazität ist, eine aktuelle Verhältnisgewichtung für das aktuelle Faktorisierungsverhältnis berechnet wird. - System zum Reservieren von Speicherplatz in einem Deduplizierungssystem, wobei das System Folgendes umfasst: - mindestens eine Prozessoreinheit, die in einer Computerspeichereinheit betrieben werden kann, wobei die mindestens eine Prozessoreinheit geeignet ist für: - ein Bestimmen eines berechneten Faktorisierungsverhältnisses als ein gewichtetes Verhältnis von aktuellen nominalen Daten zu physischen Daten auf der Grundlage von mindestens einem Schwellenwert der Speicherkapazität und einem verwendeten Speicherplatz, der aktuell von Sicherungs- oder Replikationsdaten physisch gebraucht wird, - ein Berechnen eines geschätzten maximalen nominalen Speicherplatzes in der Computerspeicherumgebung unter Verwendung des berechneten Faktorisierungsverhältnisses, und - ein Berechnen eines verbleibenden Speicherplatzes, der als der geschätzte maximale nominale Speicherplatz abzüglich eines aktuellen nominalen Speicherplatzes in der Computerspeicherumgebung definiert ist; - wobei, wenn der verbleibende Speicherplatz kleiner als oder gleich wie ein vom Benutzer konfigurierter Reservierungsspeicherplatz für Sicherungsoperationen ist, Datenreplikationsoperationen angenommen und in der Computerrechenumgebung gespeichert werden, - bei dem das Bestimmen des berechneten Faktorisierungsverhältnisses wie folgt durchgeführt wird: - Fberechnet = (CProzentsatz * WVerhältnis) + ((Fkonfiguriert * (1-WVerhältnis), - wobei Fberechnet das berechnete Faktorisierungsverhältnis, CProzentsatz der Prozentsatz der verwendeten Kapazität, WVerhältnis die aktuelle Verhältnisgewichtung und Fkonfiguriert ein konfiguriertes Faktorisierungsverhältnis ist, das als ein vom Benutzer konfiguriertes Systemattribut für ein erwartetes Verhältnis von nominalen Daten zu physischen Daten definiert ist, und - bei dem das Berechnen des geschätzten maximalen nominalen Speicherplatzes durch Multiplizieren eines maximalen physischen Speicherplatzes mit dem berechneten Faktorisierungsverhältnis erfolgt.
- System nach
Anspruch 7 , bei dem mindestens eine Prozessoreinheit weiterhin geeignet ist, um nach dem Bestimmen des berechneten Faktorisierungsverhältnisses ein aktuelles Faktorisierungsverhältnis als ein tatsächliches Verhältnis von nominalen zu physischen Daten zu bestimmen. - System nach
Anspruch 8 , bei dem die mindestens eine Prozessoreinheit weiterhin geeignet ist, um nach dem Bestimmen des berechneten Faktorisierungsverhältnisses einen Prozentsatz der verwendeten Kapazität zu bestimmen, der als der verwendete Speicherplatz, geteilt durch eine konfigurierte Speichergröße der Computerspeicherumgebung, definiert ist. - System nach
Anspruch 9 , bei dem die mindestens eine Prozessoreinheit weiterhin geeignet ist, um, wenn der Prozentsatz der verwendeten Kapazität kleiner als oder gleich wie ein niedriger Schwellenwert der Speicherkapazität ist, das konfigurierte Faktorisierungsverhältnis als das berechnete Faktorisierungsverhältnis zu verwenden. - System nach
Anspruch 10 , bei dem die mindestens eine Prozessoreinheit weiterhin geeignet ist, um, wenn der Prozentsatz der verwendeten Kapazität größer als oder gleich wie ein hoher Schwellenwert der Speicherkapazität ist, das aktuelle Faktorisierungsverhältnis als das berechnete Faktorisierungsverhältnis zu verwenden. - System nach
Anspruch 11 , bei dem die mindestens eine Prozessoreinheit weiterhin angepasst ist, um, wenn der Prozentsatz der verwendeten Kapazität nicht kleiner als oder gleich wie der niedrige Schwellenwert der Speicherkapazität und nicht größer als oder gleich wie der hohe Schwellenwert der Speicherkapazität ist, eine aktuelle Verhältnisgewichtung für das aktuelle Faktorisierungsverhältnis zu berechnen. - Computerprogrammprodukt zum Reservieren von Speicherplatz in einem Deduplizierungssystem durch einen Prozessor, wobei das Computerprogrammprodukt ein computerlesbares Speichermedium umfasst, in dem computerlesbare Programmcodeteile gespeichert sind, wobei die computerlesbaren Programmcodeteile Folgendes umfassen: - einen ersten ausführbaren Teil zum Bestimmen eines berechneten Faktorisierungsverhältnisses als ein gewichtetes Verhältnis von aktuellen nominalen Daten zu physischen Daten auf der Grundlage von mindestens einem Schwellenwert der Speicherkapazität und einem verwendeten Speicherplatz, der aktuell von Sicherungs- oder Replikationsdaten physisch gebraucht wird; - einen zweiten ausführbaren Teil zum Berechnen eines geschätzten maximalen nominalen Speicherplatzes in der Computerspeicherumgebung unter Verwendung des berechneten Faktorisierungsverhältnisses; und - einen dritten ausführbaren Teil zum Berechnen eines verbleibenden Speicherplatzes, der als der geschätzte maximale nominale Speicherplatz abzüglich eines aktuellen nominalen Speicherplatzes in der Computerspeicherumgebung definiert ist; - wobei, wenn der verbleibende Speicherplatz kleiner als oder gleich wie ein vom Benutzer konfigurierter Reservierungsspeicherplatz für Sicherungsoperationen ist, Datenreplikationsoperationen angenommen und in der Computerrechenumgebung gespeichert werden, - bei dem das Bestimmen des berechneten Faktorisierungsverhältnisses wie folgt durchgeführt wird: - Fberechnet = (CProzentsatz * WVerhältnis) + ((Fkonfiguriert * (1-WVerhältnis), - wobei Fberechnet das berechnete Faktorisierungsverhältnis, CProzentsatz der Prozentsatz der verwendeten Kapazität, WVerhältnis die aktuelle Verhältnisgewichtung und Fkonfiguriert ein konfiguriertes Faktorisierungsverhältnis ist, das als ein vom Benutzer konfiguriertes Systemattribut für ein erwartetes Verhältnis von nominalen Daten zu physischen Daten definiert ist, und - bei dem das Berechnen des geschätzten maximalen nominalen Speicherplatzes durch Multiplizieren eines maximalen physischen Speicherplatzes mit dem berechneten Faktorisierungsverhältnis erfolgt.
- Computerprogrammprodukt nach
Anspruch 13 , das weiterhin einen vierten ausführbaren Teil umfasst, um nach dem Bestimmen des berechneten Faktorisierungsverhältnisses ein aktuelles Faktorisierungsverhältnis als ein tatsächliches Verhältnis von nominalen zu physischen Daten zu bestimmen. - Computerprogrammprodukt nach
Anspruch 14 , das weiterhin einen fünften ausführbaren Teil umfasst, um nach dem Bestimmen des berechneten Faktorisierungsverhältnisses einen Prozentsatz der verwendeten Kapazität zu bestimmen, der als der verwendete Speicherplatz, geteilt durch eine konfigurierte Speichergröße der Computerspeicherumgebung, definiert ist. - Computerprogrammprodukt nach
Anspruch 15 , das weiterhin einen sechsten ausführbaren Teil umfasst, um, wenn der Prozentsatz der verwendeten Kapazität kleiner als oder gleich wie ein niedriger Schwellenwert der Speicherkapazität ist, das konfigurierte Faktorisierungsverhältnis als das berechnete Faktorisierungsverhältnis zu verwenden. - Computerprogrammprodukt nach
Anspruch 16 , das weiterhin einen siebten ausführbaren Teil umfasst, um, wenn der Prozentsatz der verwendeten Kapazität größer als oder gleich wie ein hoher Schwellenwert der Speicherkapazität ist, das aktuelle Faktorisierungsverhältnis als das berechnete Faktorisierungsverhältnis zu verwenden. - Computerprogrammprodukt nach
Anspruch 17 , das weiterhin einen achten ausführbaren Teil umfasst, um, wenn der Prozentsatz der verwendeten Kapazität nicht kleiner als oder gleich wie der niedrige Schwellenwert der Speicherkapazität und nicht größer als oder gleich wie der hohe Schwellenwert der Speicherkapazität ist, eine aktuelle Verhältnisgewichtung für das aktuelle Faktorisierungsverhältnis zu berechnen.
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US12/785,277 | 2010-05-21 | ||
US12/785,277 US8423735B2 (en) | 2010-05-21 | 2010-05-21 | Space reservation in a deduplication system |
PCT/EP2011/056605 WO2011144425A1 (en) | 2010-05-21 | 2011-04-27 | Space reservation in a deduplication system |
Publications (2)
Publication Number | Publication Date |
---|---|
DE112011100819T5 DE112011100819T5 (de) | 2013-01-03 |
DE112011100819B4 true DE112011100819B4 (de) | 2018-07-26 |
Family
ID=44246986
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE112011100819.8T Active DE112011100819B4 (de) | 2010-05-21 | 2011-04-27 | Speicherplatzreservierung in einem Deduplizierungssystem |
Country Status (7)
Country | Link |
---|---|
US (4) | US8423735B2 (de) |
JP (1) | JP5767698B2 (de) |
KR (1) | KR20130026441A (de) |
CN (1) | CN102906709B (de) |
DE (1) | DE112011100819B4 (de) |
GB (1) | GB2493588B (de) |
WO (1) | WO2011144425A1 (de) |
Families Citing this family (27)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI649730B (zh) | 2009-02-20 | 2019-02-01 | 日商尼康股份有限公司 | 資訊取得系統、攜帶型終端、伺服器、以及攜帶資訊機器用程式 |
US9092151B1 (en) * | 2010-09-17 | 2015-07-28 | Permabit Technology Corporation | Managing deduplication of stored data |
US9824091B2 (en) | 2010-12-03 | 2017-11-21 | Microsoft Technology Licensing, Llc | File system backup using change journal |
US8620894B2 (en) | 2010-12-21 | 2013-12-31 | Microsoft Corporation | Searching files |
US8522068B2 (en) * | 2011-05-02 | 2013-08-27 | International Business Machines Corporation | Coordinated disaster recovery production takeover operations |
US8671308B2 (en) | 2011-05-02 | 2014-03-11 | International Business Machines Corporation | Optimizing disaster recovery systems during takeover operations |
US8751463B1 (en) * | 2011-06-30 | 2014-06-10 | Emc Corporation | Capacity forecasting for a deduplicating storage system |
US8595198B1 (en) * | 2011-06-30 | 2013-11-26 | Emc Corporation | Compression forecasting for a deduplicating storage system |
US9229818B2 (en) * | 2011-07-20 | 2016-01-05 | Microsoft Technology Licensing, Llc | Adaptive retention for backup data |
JP5923999B2 (ja) * | 2012-01-30 | 2016-05-25 | 富士通株式会社 | ストレージ管理方法およびストレージ管理装置 |
JP5561303B2 (ja) * | 2012-03-30 | 2014-07-30 | 日本電気株式会社 | データ複製システム、データ複製方法、及びそのプログラム |
US9880771B2 (en) | 2012-06-19 | 2018-01-30 | International Business Machines Corporation | Packing deduplicated data into finite-sized containers |
US9223840B2 (en) | 2012-12-31 | 2015-12-29 | Futurewei Technologies, Inc. | Fast object fingerprints |
US9501426B1 (en) | 2013-02-08 | 2016-11-22 | Workday, Inc. | Dynamic two-tier data storage utilization |
US9396131B1 (en) * | 2013-02-08 | 2016-07-19 | Workday, Inc. | Dynamic three-tier data storage utilization |
US10339112B1 (en) * | 2013-04-25 | 2019-07-02 | Veritas Technologies Llc | Restoring data in deduplicated storage |
CN103365977A (zh) * | 2013-06-28 | 2013-10-23 | 北京奇艺世纪科技有限公司 | 非易失性存储介质上数据的存储处理方法和装置 |
US9722810B2 (en) * | 2014-02-03 | 2017-08-01 | International Business Machines Corporation | Computer-based flow synchronization for efficient multicast forwarding for products and services |
WO2016060675A1 (en) * | 2014-10-17 | 2016-04-21 | Hitachi, Ltd. | Method and apparatus for managing data recovery of distributed storage system |
CN104536783B (zh) * | 2014-12-23 | 2018-02-06 | 小米科技有限责任公司 | 预留空间设置方法及装置 |
US9749409B2 (en) * | 2015-02-04 | 2017-08-29 | International Business Machines Corporation | Predictive data replication and acceleration |
US9712617B2 (en) * | 2015-07-06 | 2017-07-18 | Infinidat Ltd. | Flow control in remote replication |
EP3367243B1 (de) * | 2017-02-28 | 2020-09-30 | KYOCERA Document Solutions Inc. | Informationsverarbeitungssystem und informationsverarbeitungsverfahren |
US10795867B2 (en) * | 2017-11-06 | 2020-10-06 | International Business Machines Corporation | Determining available remote storages in a network to use to replicate a file based on a geographical requirement with respect to the file |
CN109245292A (zh) * | 2018-11-20 | 2019-01-18 | 北京千丁互联科技有限公司 | 智能对讲门口机的电源管理装置及方法 |
CN110308873B (zh) * | 2019-06-24 | 2023-04-07 | 浙江大华技术股份有限公司 | 一种数据存储方法、装置、设备及介质 |
US11978009B2 (en) * | 2021-09-27 | 2024-05-07 | 7-Eleven, Inc. | Physical space assignment based on resource data and memory resource content |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7539710B1 (en) | 2008-04-11 | 2009-05-26 | International Business Machines Corporation | Method of and system for deduplicating backed up data in a client-server environment |
US7720892B1 (en) | 2006-06-30 | 2010-05-18 | Emc Corporation | Bulk updates and tape synchronization |
Family Cites Families (29)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6862736B2 (en) | 1998-02-06 | 2005-03-01 | Microsoft Corporation | Object manager for common information model |
US6751674B1 (en) | 1999-07-26 | 2004-06-15 | Microsoft Corporation | Method and system for replication in a hybrid network |
JP3987295B2 (ja) * | 2001-03-19 | 2007-10-03 | 株式会社東芝 | 処理最適化方法、コンピュータ、及び記憶装置 |
US6775700B2 (en) | 2001-03-27 | 2004-08-10 | Intel Corporation | System and method for common information model object manager proxy interface and management |
US20020174198A1 (en) | 2001-05-16 | 2002-11-21 | Imation Corp. | Management of networked devices |
US7065744B2 (en) | 2002-01-14 | 2006-06-20 | International Business Machines Corporation | System and method for converting management models to specific console interfaces |
US20030145086A1 (en) | 2002-01-29 | 2003-07-31 | O'reilly James | Scalable network-attached storage system |
JP2003316635A (ja) | 2002-04-26 | 2003-11-07 | Hitachi Ltd | データのバックアップ方法及びそのプログラム |
US7043732B2 (en) | 2002-04-29 | 2006-05-09 | Sun Microsystems, Inc. | Method and apparatus for managing remote data replication using CIM providers in a distributed computer system |
US7155501B2 (en) | 2002-05-16 | 2006-12-26 | Sun Microsystems, Inc. | Method and apparatus for managing host-based data services using CIM providers |
US20040025142A1 (en) | 2002-08-05 | 2004-02-05 | Sun Microsystems, Inc. | Method and apparatus for managing objects in a CIM environment |
WO2004091137A2 (en) | 2003-04-04 | 2004-10-21 | Computer Associates Think, Inc. | Method and system for management and configuration of remote agents |
US7756958B2 (en) | 2003-09-20 | 2010-07-13 | International Business Machines Corporation | Intelligent discovery of network information from multiple information gathering agents |
CN100452218C (zh) * | 2005-06-10 | 2009-01-14 | 技嘉科技股份有限公司 | 硬盘数据备份方法 |
US7624116B2 (en) | 2006-03-23 | 2009-11-24 | Dell Products L.P. | System and method for managing objects according to the common information model |
US7676510B1 (en) | 2006-12-22 | 2010-03-09 | Network Appliance, Inc. | Space reservation monitoring in a fractionally reserved data storage system |
US8103698B2 (en) | 2007-02-28 | 2012-01-24 | Jianwen Yin | Methods, apparatus and media for system management of object oriented information models |
US20080243769A1 (en) * | 2007-03-30 | 2008-10-02 | Symantec Corporation | System and method for exporting data directly from deduplication storage to non-deduplication storage |
US20090019082A1 (en) | 2007-07-10 | 2009-01-15 | Dell Products L.P. | System and Method for Discovery of Common Information Model Object Managers |
JP5026213B2 (ja) * | 2007-09-28 | 2012-09-12 | 株式会社日立製作所 | ストレージ装置及びデータ重複排除方法 |
US8326897B2 (en) * | 2007-12-19 | 2012-12-04 | International Business Machines Corporation | Apparatus and method for managing data storage |
US8965843B2 (en) | 2008-01-23 | 2015-02-24 | Hewlett-Packard Development Company, L.P. | Prioritized replication paths |
US8087032B2 (en) | 2008-03-31 | 2011-12-27 | International Business Machines Corporation | Automated recovery process initiation for data consumers of a common information model (CIM) managed component |
US7966394B1 (en) | 2008-04-24 | 2011-06-21 | Hewlett-Packard Development Company, L.P. | Information model registry and brokering in virtualized environments |
WO2010019962A2 (en) * | 2008-08-15 | 2010-02-18 | Edsa Corporation | A method for predicting power usage effectiveness and data center infrastructure efficiency within a real-time monitoring system |
US8041794B2 (en) | 2008-09-29 | 2011-10-18 | Intel Corporation | Platform discovery, asset inventory, configuration, and provisioning in a pre-boot environment using web services |
JP2012505439A (ja) * | 2009-02-25 | 2012-03-01 | 株式会社日立製作所 | ストレージ装置及びその制御方法 |
CN101604268B (zh) * | 2009-07-13 | 2011-04-06 | 浪潮电子信息产业股份有限公司 | 一种监控目录变化事件过滤方法 |
JP5406363B2 (ja) * | 2009-10-27 | 2014-02-05 | 株式会社日立製作所 | プール領域の一部の領域を動的にデータ格納領域として割り当てる記憶制御装置及び記憶制御方法 |
-
2010
- 2010-05-21 US US12/785,277 patent/US8423735B2/en active Active
-
2011
- 2011-04-27 WO PCT/EP2011/056605 patent/WO2011144425A1/en active Application Filing
- 2011-04-27 KR KR1020127029409A patent/KR20130026441A/ko not_active Application Discontinuation
- 2011-04-27 GB GB1208766.4A patent/GB2493588B/en active Active
- 2011-04-27 DE DE112011100819.8T patent/DE112011100819B4/de active Active
- 2011-04-27 CN CN201180025122.0A patent/CN102906709B/zh active Active
- 2011-04-27 JP JP2013510544A patent/JP5767698B2/ja active Active
-
2012
- 2012-05-04 US US13/464,525 patent/US8341367B2/en active Active
- 2012-12-11 US US13/710,732 patent/US9201605B2/en active Active
-
2015
- 2015-11-02 US US14/930,243 patent/US9442665B2/en not_active Expired - Fee Related
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7720892B1 (en) | 2006-06-30 | 2010-05-18 | Emc Corporation | Bulk updates and tape synchronization |
US7539710B1 (en) | 2008-04-11 | 2009-05-26 | International Business Machines Corporation | Method of and system for deduplicating backed up data in a client-server environment |
Also Published As
Publication number | Publication date |
---|---|
JP5767698B2 (ja) | 2015-08-19 |
US9442665B2 (en) | 2016-09-13 |
US20110289290A1 (en) | 2011-11-24 |
US8341367B2 (en) | 2012-12-25 |
US9201605B2 (en) | 2015-12-01 |
CN102906709B (zh) | 2015-05-27 |
GB2493588A (en) | 2013-02-13 |
JP2013530453A (ja) | 2013-07-25 |
US20140006735A1 (en) | 2014-01-02 |
DE112011100819T5 (de) | 2013-01-03 |
US20120221818A1 (en) | 2012-08-30 |
GB201208766D0 (en) | 2012-07-04 |
US8423735B2 (en) | 2013-04-16 |
US20160054941A1 (en) | 2016-02-25 |
GB2493588B (en) | 2017-05-10 |
WO2011144425A1 (en) | 2011-11-24 |
KR20130026441A (ko) | 2013-03-13 |
CN102906709A (zh) | 2013-01-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE112011100819B4 (de) | Speicherplatzreservierung in einem Deduplizierungssystem | |
DE102013205069B4 (de) | Erhöhte effizienz bei inline-deduplizierungen | |
DE112012003505B4 (de) | Automatisierte Auswahl von Funktionen zum Verringern der Speicherkapazität auf der Grundlage von Leistungsanforderungen | |
DE112011103378B4 (de) | Automatische und sich selbsttätig anpassende Datensicherungsoperationen | |
DE112011104419B4 (de) | Bereichsmigration für gepaarte Speicherung | |
DE102013204186B4 (de) | Ermitteln von Prioritäten für zwischengespeicherte Objekte zum Ordnen des Übertragens von Änderungen an zwischengespeicherten Objekten beruhend auf gemessener Netzwerkbandbreite | |
DE102012216022B4 (de) | Verwaltung einer Zeitpunktkopie-Beziehung für platzsparende Datenträger | |
DE112013001905B4 (de) | Erhöhte Inline-Deduplizierungseffizienz | |
DE202012013432U1 (de) | Speichern von Daten auf Speicherknoten | |
DE112012005037T5 (de) | Verwalten von redundanten unveränderlichen Dateien unter Verwendung von Deduplizierungen in Speicher-Clouds | |
DE112010004931T5 (de) | Mehrphasige Wiederherstellung von Dateisystemen mit SelektiverBedarfsweiser Verfügbarkeit von Daten( | |
DE112012005275T5 (de) | Datenauswahl zur Sicherung von Datenspeichern | |
DE102013208930A1 (de) | Zusammenfassen von Einträgen in einem Deduplizierungs-lndex | |
DE102012215918A1 (de) | Spiegeln virtueller Maschinen von einem primären auf einen sekundären Host | |
DE202015009779U1 (de) | Implementierung semistrukturierter Daten als ein Datenbankelement erster Klasse | |
DE102016119298B4 (de) | Zeitpunktkopieren mit klonen von ketten | |
DE112012001267T5 (de) | Verfahren, Systeme und Computerprogrammprodukte zur abgestimmten Notfallwiederherstellung | |
DE102013201174A1 (de) | Online-Überprüfung einer Standby-Datenbank in physischen Replikationsumgebungen mit Protokollversand | |
DE112017005588T5 (de) | Speichern und abrufen von eingeschränkten datensätzen in und aus einem cloud-netzwerk mit nichteingeschränkten datensätzen | |
DE112011103367T5 (de) | Replizieren von Daten | |
DE102013200030B4 (de) | Hash-basiertes verwalten von speicher-ids | |
DE102022108673A1 (de) | Ressourcenzuweisung für synthetische backups | |
DE102021127254A1 (de) | Inhaltssensitives Auswählen von Knoten zum Erstellen von Containern | |
DE112018000900T5 (de) | Verarbeiten eines Befehls zum Freigeben von Speicherplatz in einem Computersystem | |
DE112018000227B4 (de) | Verfahren zum teilweisen Aktualisieren von Dateninhalten in einem verteilten Speichernetzwerk |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
R012 | Request for examination validly filed | ||
R016 | Response to examination communication | ||
R018 | Grant decision by examination section/examining division | ||
R084 | Declaration of willingness to licence | ||
R020 | Patent grant now final |