Sicher ist sicher

Backup ist nicht gleich Backup – Diese Backup-Typen halten das Geschäft am Laufen

Ralf Gebhardt

© Shutterstock / Novelo

Die korrekte Absicherung von Datenbanken ist elementar bei Betriebsausfällen und entscheidend, um etwaige Schäden zu begrenzen. in diesem Artikel stellt Ralf Gebhardt, Product Manager bei der MariaDB Corporation, fünf Varianten der Datensicherung vor.

Datenbanken werden im Zuge der digitalen Transformation immer wichtiger. Die andauernde COVID-19-Pandemie trägt zusätzlich dazu bei, dass Unternehmen ihre Datenbanken in der Cloud aufbauen oder diese jetzt dahin umziehen. Ähnlich wie bei jeder Anwendungsinfrastruktur müssen auch Datenbanken regelmäßig in Form von Backups gesichert werden. Dies ist besonders bei Betriebsausfällen von größter Bedeutung, da ein gut aufgesetztes Backup- und Recovery-System den Unterschied zwischen einem kleinen Ausfall und einem Totalschaden für ein Unternehmen ausmachen kann. Bei der Datensicherung empfiehlt sich eine Strategie, die elementare Backup-Arten miteinander kombiniert: Neben anderen können das physische, logische, differentielle, inkrementelle oder Replikations-Backups sein.

Physisches Backup

Ein physisches Backup einer Datenbank kopiert alle Daten der Datenbank vollständig und sichert sie auf einem separaten Trägermedium. Der größte Vorteil liegt hier natürlich in der Einfachheit des Vorgangs. Nachteilig dagegen ist der verhältnismäßig große Speicheraufwand, der für eine vollständige Datensicherung notwendig wird. Führt man das Backup bei laufendem Betrieb durch, ist es außerdem schon während des Sicherungsprozess nicht mehr auf dem neuesten Stand. Ein vollständiges physisches Backup ist von Zeit zu Zeit unabdingbar, aber es gibt auch Möglichkeiten nur einen bestimmten Teil der Datensätze zu sichern.

Logisches Backup

Eine Variante hierfür ist das logische Backup. Im Vergleich zum physischen Backup ist es hiermit relativ einfach, nur ausgewählte Teilmengen der Daten zu speichern. Hierbei werden Datenbankobjekte mit ihrem jeweiligen relationalen Zusammenhang gespeichert. Zudem werden im Gegensatz zu physischen Backups keine Indexdaten archiviert, sondern nur die Statements, die zum Anlegen der Indizes notwendig sind – wodurch die Backups wesentlich kleiner ausfallen. Der Nachteil? Die Wiederherstellung nimmt dafür mehr Zeit in Anspruch. Ein weiterer Vorteil logischer Backups ist hingegen, dass sie in der Regel versionsübergreifend arbeiten und sogar zum Import von Daten aus unterschiedlichen relationalen Datenbanken verwendet werden können.

Differentielles Backup

Ein differentielles Backup sichert alle seit dem letzten vollständigen Backup geänderten und hinzugekommenen Daten. Nach einer Vollsicherung können dabei mehrere differentielle Backups erfolgen, wobei die Datenmenge mit jedem Backup zunimmt. Dies ist begründet in der Tatsache, dass sich jedes differentielle Backup auf die letzte vollständige Sicherung bezieht und somit die vorgenommenen geänderten Daten abgesichert werden.

Verglichen mit einem vollständigen Backup liegt der Vorteil darin, dass die zu sichernde Datenmenge erheblich geringer ausfällt. Als Folge dessen sinken somit sowohl der Zeit- als auch der Speicherplatzaufwand für die Datensicherung. Um die Daten wieder vollständig herstellen zu können, werden das letzte vollständige Backup sowie das letzte differentielle Backup benötigt, wodurch der zeitliche Aufwand für die Datenwiederherstellung wiederum steigt. Hierbei gilt zu beachten, dass sowohl das vollständige als auch das differentielle Backup fehlerfrei und komplett vollständig sind. Da die differentielle Sicherungsmenge mit jedem neuen Backup-Durchlauf steigt, wird in regelmäßigen Abständen ein neues vollständiges Backup erstellt, um so einen neuen Zyklus an differentiellen Backups zu beginnen.

Inkrementelles Backup

Bei der Durchführung eines inkrementellen Backups werden alle Daten gesichert, die sich seit dem zuletzt durchgeführten Backup geändert haben oder neu dazu gekommen sind. Hierfür ist vorab in jedem Fall eine vollständige Sicherung aller Daten notwendig. Basierend darauf können dann ein einzelnes oder beliebig viele inkrementelle Backups erfolgen. Die Anzahl der inkrementellen Backups wird vorab von einem Administrator definiert. Nach der Durchführung der festgelegten inkrementellen Backups wird ein vollständiges Backup notwendig.

Durch die regelmäßige Durchführung eines inkrementellen Backups wird die zu sichernde Datenmenge signifikant reduziert. Ebenso sind, analog zu differentiellen Backups, der Aufwand an Zeit und Speicherplatz geringer. Um jedoch ein Recovery fehlerfrei durchführen zu können, müssen nicht nur das letzte vollständige Backup, sondern auch alle inkrementellen Sicherungen eingespielt werden. Der Nachteil? Der Zeitaufwand für die Wiederherstellung steigt. Außerdem müssen alle einzelnen Backups fehlerfrei vorliegen. Somit ist das Risiko, dass ein Teil der Sicherungskette fehlerhaft ist, höher. Um die Anzahl der benötigten Sicherungen zu reduzieren, empfiehlt sich ein wöchentlich durchgeführtes vollständiges Backup.

Replikation als Backup-Lösung

Die Replikation wird am häufigsten zur Unterstützung von Backups verwendet, da die Datensicherung erhebliche Auswirkungen auf einen Server haben kann. Hierbei wird ein Primärserver selbst auf einen Replikationsserver kopiert. Die Backups werden dann ohne Auswirkungen auf den Primärserver von der Replik ausgeführt. Ein stark genutzter Primärserver kann möglicherweise nicht angehalten oder gesperrt werden, eventuell kann er auch die zusätzliche Last eines Backups nicht bewältigen. Das Ausführen des Backups von einem Replikationsserver hat demnach den Vorteil, dass dieser ohne weitere Auswirkungen heruntergefahren oder gesperrt werden kann. Auf diese Weise ist ein Backup ohne Konsequenzen für den Primärserver möglich. Aber aufgepasst: Eine Replikation allein reicht für die Sicherung nicht aus. Sie hilft zwar beim Schutz vor Hardware-Ausfällen auf dem Primärserver, schützt jedoch nicht vor Datenverlust.

Java Whitepaper

Gratis-Dossier: Java 2020 – State of the Art

GraalVM, Spring Boot 2.2, Kubernetes, Domain-driven Design & Machine Learning sind einige der Themen, die Sie in unserem brandneuen Dossier 2020 wiederfinden werden!

Welches Backup für welche Situation?

Die verschiedenen Backup-Arten werden, wie eingangs erwähnt, häufig miteinander kombiniert. In welcher Art und Weise dies geschieht, ist von verschiedenen Faktoren wie der Häufigkeit des Backups sowie von der Menge der veränderten Daten abhängig. Bei der Planung des Backup- und Wiederherstellungsprozesses sind darüber hinaus besonders die Risikominimierung, die „Recovery Time Objective“ (kurz: RTO) und die „Recovery Point Objective“ (kurz: RPO) zu beachten.

Bei der Risikominimierung stehen letzten Endes folgende zwei Fragen im Fokus:

  • Welche Ausfallszenarien sind wahrscheinlich?
  • Welche Ausfallszenarien sind geschäftsschädigender und müssen daher priorisiert verhindert werden?

Unter RTO ist die bis zur kompletten Wiederherstellung benötigte Zeit zu verstehen. Oder ausführlicher: Die Zeitspanne, die während einer Betriebsstörung vergehen darf, bevor sie die hierfür festgelegte maximal zulässige Zeit überschreitet. Die RPO hingegen definiert die Menge an Daten, die bei einem Ausfall verloren gehen dürfen. Genauer gesagt umfasst sie somit alle anfallenden Daten seit dem letzten vollständigen Backup. Von daher muss bei der Planung berücksichtigt werden, welche expliziten Anforderungen die Daten erfüllen.

Ein Beispiel aus der Praxis: Eine interne Mitarbeiterdatenbank kann eine wesentlich längere „Recovery Time Objective“ haben als eine kundenorientierte Produktdatenbank. Der Schaden in der Personalabteilung wäre bei einem Ausfall der Mitarbeiterdatenbank von einer Stunde wesentlich niedriger zu bewerten als der Schaden in der Vertriebsabteilung, wenn Kunden über den gleichen Zeitraum keine Bestellungen aufgeben können.

Fazit

Ausfälle von Datenbanken können jederzeit auftreten und unterschiedlichste Gründe haben. Auch Global Player sind dagegen nicht immun. Egal um welchen Datenbanktypen es sich handelt, ist zu beachten, dass eine gute Planung des Backup- und Wiederherstellungsprozesses elementar für das Geschäft ist, da der entstandene Schaden somit erheblich minimiert werden kann. Alternativ bieten mittlerweile viele Anbieter Database-as-a-Service-Lösungen (DBaaS) an, darunter MariaDB mit SkySQL oder MongoDB mit Atlas. Durch die vollständige Automatisierung des Backup-Prozesses sparen Kunden solcher Lösungen enorm viel Zeit. Dadurch können sie ihre Kapazitäten auf strategisch wichtigere Themen richten. In jedem Fall gilt in Sachen Backups das Motto „viel hilft viel“. Denn lieber haben Unternehmen ein Backup zu viel gemacht, als eins zu wenig.

Geschrieben von
Ralf Gebhardt

Ralf Gebhardt ist Product Manager bei der MariaDB Corporation, einem führenden Anbieter von cloud-basierten und lokalen Datenbanklösungen. Er hat einen Abschluss als Diplom-Ingenieur in der Fachrichtung Technische Informatik von der BA Stuttgart sowie IBM Deutschland. Seit 2011 für MariaDB tätig, verfügt er aus vorherigen Stationen bei der MySQL GmbH, Sun Microsystems und Oracle über jahrelange Expertise in den Bereichen Software Entwicklung, Support, Training und Consulting mit Bezug zu Datenbanken.

Kommentare

Hinterlasse einen Kommentar

avatar
4000
  Subscribe  
Benachrichtige mich zu: