DE112011100819B4 - Speicherplatzreservierung in einem Deduplizierungssystem - Google Patents

Speicherplatzreservierung in einem Deduplizierungssystem Download PDF

Info

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
Application number
DE112011100819.8T
Other languages
English (en)
Other versions
DE112011100819T5 (de
Inventor
Tzafrir Zvi Taub
Elena Drobchenko
Shay Haim Akirav
Ofer LENEMAN
Aviv CARO
Dov Nir Hepner
Asaf Kalman Ekshtein
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Publication of DE112011100819T5 publication Critical patent/DE112011100819T5/de
Application granted granted Critical
Publication of DE112011100819B4 publication Critical patent/DE112011100819B4/de
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0614Improving the reliability of storage systems
    • G06F3/0619Improving the reliability of storage systems in relation to data integrity, e.g. data losses, bit errors
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • G06F11/1448Management of the data involved in backup or backup restore
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • G06F11/1448Management of the data involved in backup or backup restore
    • G06F11/1453Management of the data involved in backup or backup restore using de-duplication of the data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • G06F11/1458Management of the backup or restore process
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0638Organizing or formatting or addressing of data
    • G06F3/064Management of blocks
    • G06F3/0641De-duplication techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/067Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error 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/2053Error 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 in 4 oben gezeigten beispielhaften Verfahren veranschaulicht;
    • 6 ein beispielhaftes Verfahren für einen Verfahrensfluss einer Funktionalität für die Reservierung von Speicherplatz nach dem in 4 oben gezeigten beispielhaften Verfahren veranschaulicht; und
    • 7 eine beispielhafte Datenverarbeitungseinheit mit einer Prozessoreinheit in einer Datenverarbeitungsumgebung wie beispielweise der in 1 dargestellten Datenverarbeitungsumgebung veranschaulicht.
  • AUSFÜHRLICHE BESCHREIBUNG DER ZEICHNUNGEN
  • Mit Bezug nunmehr auf 1 ist eine beispielhafte Architektur 10 von Datenspeichersystemen (z.B. virtuellen Bandsystemen) in einer Datenverarbeitungsumgebung dargestellt. Die Architektur 10 stellt wie dargestellt den lokalen Hosts 18 und 20 Speicherdienste sowie entfernten Datenspeichersystemen Replikatdaten bereit. Ein lokaler Speichersystem-Server 12, der Daten mit einer Speichereinheit 14 austauscht, ist über ein Netzwerk, das Komponenten wie beispielsweise einen Fibre-Channel-Schalter (fibre channel switch) 16 umfasst, mit den lokalen Hosts 18 und 20 verbunden. Der Fibre-Channel-Schalter 16 kann zum Beispiel Befehle (wie beispielsweise Befehle des Small Computer System Interface, SCSI) für Bandeinheiten ausführen. Dem Fachmann ist ersichtlich, dass die Architektur 10 eine Vielfalt von Speicherkomponenten umfassen kann. Die Speichereinheiten 14 können zum Beispiel herkömmliche Festplattenlaufwerkeinheiten oder Festkörperlaufwerkeinheiten (solid state drive devices) umfassen.
  • Der lokale Speichersystem-Server 12 ist über das Netzwerk 22 mit einem entfernten Speichersystem-Server 24 verbunden. Der entfernte Server 24 tauscht mit einer lokal verbundenen Plattenspeichereinheit 26 und mit den lokal verbundenen Hosts 30 und 32 über ein anderes Netzwerk und eine Netzwerkkomponente 28 wie beispielsweise den Fibre-Channel-Schalter 28 Daten aus. Das Netzwerk 22 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 Schalter 16 und 28 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 Pfeil 34 gekennzeichnete Datenreplikationsfunktionalität). Verschiedene Ausführungsformen der vorliegenden Erfindung und der beanspruchte Gegenstand können bei Architekturen wie beispielsweise der Architektur 10 umgesetzt werden, wie beschrieben werden wird. Bei einer Ausführungsform kann die Plattenspeichereinheit 14 zum Beispiel Teil eines deduplizierten Speichersystems sein, das deduplizierte Datenentitäten speichert. Die deduplizierten Datenentitäten können anschließend einem Datenreplikationsverfahren 34 unterzogen werden, bei dem die deduplizierten Datenentitäten auf der entfernten Plattenspeichereinheit 26 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 Sendern 52 Daten mit einem Empfänger 54 aus, der als ein Sicherungsziel von einem Sicherungshost 58 konfiguriert ist. Der Empfänger 54 tauscht auch Daten mit dem Speicher 56 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 Sicherungshost 58 eine Sicherungsfunktionalität bereitstellen muss, jedoch auch die Datenreplikation bis zum Speicher 56 ermöglichen muss, wenn keine Durchsetzungsmaßnahme in Bezug auf die Speicherkapazität für den Speicher 56 durchgeführt wird, befördert die Umgebung 50 die Konkurrenzsituation zwischen Replikation und Sicherung und bewirkt, dass der Speicher 56 keiner besonderen Funktion, weder der Sicherung noch der Replikation, den Vorzug gibt, so dass, sobald der Speicherplatz im Speicher 56 vollständig durch die Replikation belegt ist, die vom Empfänger 54 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 und 6 veranschaulichen eine beispielhafte Funktionalität zum Bereitstellen einer Speicherplatzreservierung in einem Deduplizierungssystem. 4 veranschaulicht ein beispielhaftes Gesamtverfahren für eine Speicherplatzreservierung, während die folgende 5 ein beispielhaftes Verfahren zum Berechnen eines berechneten Faktorisierungsverhältnisses veranschaulicht und die nachfolgende 6 einen Verfahrensfluss für die Konfiguration und den Betrieb des Deduplizierungssystems veranschaulicht, das die in den 4 und 5 zuvor gezeigten beispielhaften Funktionalitäten umfasst.
  • Zuerst mit Bezug auf 4 beginnt ein Verfahren 100 (Schritt 102) mit der Ermittlung eines berechneten Faktorisierungsverhältnisses als ein gewichtetes Verhältnis von aktuellen nominalen Daten zu physischen Daten (Schritt 104). Ein geschätzter maximaler nominaler Speicherplatz wird anschließend berechnet (Schritt 106), und ein verbleibender Speicherplatz wird berechnet (Schritt 108), der als die Menge an Speicherplatz definiert ist, die nach Abzug des für die Replikation verwendeten nominalen Speicherplatzes von dem in Schritt 106 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 (Schritt 114). Wenn dagegen kein verbleibender Speicherplatz vorhanden ist, wird eine Meldung an den Benutzer gesendet (Schritt 112) und die Replikation wird abgelehnt. Das Verfahren 100 endet damit (Schritt 116).
  • Mit Bezug auf 5 als nächstes beginnt das Verfahren 150 (Schritt 152), indem ein aktuelles Faktorisierungsverhältnis als ein tatsächliches Verhältnis von nominalen zu physischen Daten (Schritt 154) 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 (Schritt 156). 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 (Schritt 160). Wenn der Prozentsatz der verwendeten Kapazität größer als oder gleich wie der hohe Kapazitätsschwellenwert ist (Schritt 162), wird das aktuelle Faktorisierungsverhältnis (erneut das tatsächliche Verhältnis von nominalen zu physischen Daten) als das berechnete Faktorisierungsverhältnis verwendet (Schritt 164).
  • 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 Schritt 168 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 Verfahren 150 endet damit (Schritt 170).
  • Mit Bezug nunmehr auf 6 beginnt das Verfahren 180 (Schritt 182) 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 (Schritt 186), wird die Änderung erfolgreich durchgeführt (Schritt 188). 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 (Schritt 190), wird die Änderung erfolgreich durchgeführt, der für die Sicherung reservierte Speicherplatz ist allerdings bereits aufgebraucht (Schritt 192). Wenn alternativ zu den Schritten 186 und 190 kein Speicherplatz zur Verfügung steht, wird die Änderung nicht durchgeführt und der Benutzer erhält eine oder mehrere Benachrichtigungen (Schritt 194). Der Benutzer überwacht anschließend die vorgenommene Konfiguration (Schritt 196). Das Verfahren 180 endet damit (Schritt 198).
  • 6 stellt in der Folge ein Beispiel eines Teils der in 1 dargestellten Computerumgebung 10 bereit, bei der die Mechanismen der vorstehenden Ausführungsformen umgesetzt werden können. Es sei jedoch darauf hingewiesen, dass 6 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 in 6 dargestellten Architektur können vorgenommen werden, ohne vom Geltungsbereich und Gedanken der folgenden Beschreibung und des beanspruchten Gegenstands abzuweichen.
  • 6 veranschaulicht einen Teil 200 einer beispielhaften Computerumgebung, die verwendet werden kann, um Ausführungsformen der vorliegenden Erfindung umzusetzen. Ein Computer 202 umfasst einen Prozessor 204 und einen Speicher 206, beispielsweise einen Schreib-Lese-Speicher (RAM). Bei einer Ausführungsform kann der Speichersystem-Server 12 (1) Komponenten umfassen, die denen im Computer 202 gezeigten ähneln. Der Computer 202 ist funktionsmäßig mit einer Anzeige 219 verbunden, die dem Benutzer Bilder, beispielsweise Fenster, auf einer grafischen Benutzerschnittstelle 218 anzeigt. Der Computer 202 kann mit anderen Einheiten verbunden sein, beispielsweise einer Tastatur 216, einer Mauseinheit 220, einem Drucker 228 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 Computer 202 verwendet werden kann.
  • Der Computer 202 arbeitet allgemein unter der Kontrolle eines Betriebssystems 208 (z.B. z/OS, OS/2, LINUX, UNIX, WINDOWS, MAC OS), das im Speicher 206 gespeichert ist, und bildet eine Benutzerschnittstelle, um Eingaben und Befehle anzunehmen sowie Ergebnisse vorzulegen, beispielsweise durch ein grafisches Benutzerschnittstellenmodul 232. Bei einer Ausführungsform ermöglicht das Betriebssystem 208 die Sicherungsmechanismen. Obgleich das grafische Benutzerschnittstellenmodul 232 als ein getrenntes Modul dargestellt ist, können die Befehle, die die Funktionen der grafischen Benutzerstelle ausführen, speicherresident sein oder im Betriebssystem 208 und dem Anwendungsprogramm 210 verteilt sein oder mit einem Spezialspeicher und Prozessoren umgesetzt werden. Das Betriebssystem 208 umfasst ein Replikationsmodul 240, 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 Replikationsmodul 240 kann in Hardware, Firmware oder einer Kombination aus Hardware und Firmware umgesetzt werden. Bei einer Ausführungsform kann das Replikationsmodul 240 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 Replikationsmodul 240 zusammen mit der Funktionalität in Verbindung mit dem Prozessor 204, dem Speicher 206 und anderen Komponenten des Computers 202 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 Computers 202) kann als eine im Feld programmierbare Gatteranordnung (field programmable gate array, FPGA) umgesetzt werden.
  • Wie in 6 dargestellt, umfasst der Computer 202 einen Compiler 212, 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 Anwendungsprogramm 210 in Code übersetzt wird, der vom Prozessor 204 gelesen werden kann. Im Anschluss daran greift das Computerprogramm 210 auf die im Speicher 206 des Computers 202 gespeicherten Daten zu und manipuliert diese unter Verwendung der Beziehungen und der Logik, die bei der Verwendung des Compilers 212 erzeugt wurden. Der Computer 202 umfasst optional ebenfalls eine externe Datenübertragungseinheit 230 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 DASD 222 kann eine Reihe von Speichermedien umfassen, wie beispielsweise Festplattenlaufwerke, Bänder und ähnliches. Die Datenspeichereinheit 236 kann ebenfalls eine Reihe von ähnlichen Speichermedien wie die Einheit 222 umfassen. Die Einheit 236 kann als eine Sicherungseinheit 236 zum Speichern von Sicherungsversionen der Reihe von Datensätzen bestimmt werden, die primär in der Einheit 222 gespeichert sind. Für einen Fachmann ist ersichtlich, dass sich die Einheiten 222 und 236 nicht in derselben Maschine befinden müssen. Die Einheiten 222 können sich in unterschiedlichen geografischen Regionen befinden und über eine Netzwerkverbindung wie beispielsweise Ethernet verbunden sein. Die Einheiten 222 und 236 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 Computerprogramm 210 und der Compiler 212 umsetzen, physisch in einem computerlesbaren Medium enthalten, z.B. der Datenspeichereinheit 220, die eine oder mehrere feste oder entfernbare Datenspeichereinheiten 224 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 Speichereinheit 224 dargestellt werden. Das Betriebssystem 208 und das Computerprogramm 210 umfassen des Weiteren Befehle, die, wenn sie vom Computer 202 gelesen und ausgeführt werden, den Computer 202 veranlassen, die notwendigen Schritte durchzuführen. Das Computerprogramm 210 kann zum Beispiel Befehle zum Umsetzen des oben beschriebenen Grid-Set-Managers, Grid-Managers und Repository-Managers enthalten. Die Befehle des Computerprogramms 210 und/oder des Betriebssystems 208 können ebenfalls physisch im Speicher 206 enthalten sein und/oder über die Datenübertragungseinheit 230 ü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 Prozessor 204 kann daher einen Speicherverwaltungsprozessor umfassen. Das Programm 210 kann mit einem einzelnen Computer 202 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)

  1. 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.
  2. 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.
  3. 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.
  4. 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.
  5. 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.
  6. 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.
  7. 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.
  8. 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.
  9. 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.
  10. 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.
  11. 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.
  12. 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.
  13. 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.
  14. 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.
  15. 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.
  16. 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.
  17. 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.
  18. 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.
DE112011100819.8T 2010-05-21 2011-04-27 Speicherplatzreservierung in einem Deduplizierungssystem Active DE112011100819B4 (de)

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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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 株式会社日立製作所 プール領域の一部の領域を動的にデータ格納領域として割り当てる記憶制御装置及び記憶制御方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
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