In het snelle digitale tijdperk van vandaag, is bescherming van data tegen potentiële dreigingen één van de grootste zorgen voor bedrijven over de hele wereld geworden. De toename van cyberaanvallen, het per ongeluk verwijderen van gegevens, natuurrampen en hardwarestoringen onderstrepen de kwetsbaarheid van onze digitale storage. Deze uitdagingen hebben organisaties gedwongen de ontnuchterende realiteit van gegevensverlies onder ogen te zien. Dat vertaalt zich niet alleen in financiële tegenslagen, maar ook in reputatieschade, verlies van klantvertrouwen en gevolgen voor de regelgeving.
Zelfs kleine verstoringen kunnen uitmonden in gigantische tegenslagen, waardoor activiteiten abrupt tot stilstand komen en de bedrijfsresultaten negatief worden beïnvloed. In zo’n scenario gaat het niet langer alleen om het opslaan van gegevens: het gaat om het beschermen van gegevens met een pantser van redundantie.
Wat is gegevensredundantie?
In de kern is gegevensredundantie het maken en opslaan van dubbele versies (kopieën) van gegevens, om ervoor te zorgen dat als de primaire gegevens op één of andere manier in gevaar komen, er een fallback klaar staat. Deze opzettelijke replicatie dient als vangnet, en vangt afwijkingen op voordat ze uitmonden in regelrechte catastrofes. Het komt overeen met het een reservewiel in uw auto: het hebben van een extra exemplaar zorgt ervoor dat je altijd weer de weg op kunt nadat je bent gestrand.
Gegevensredundantie is als strategie meer dan alleen het maken van een kopie: het is een combinatie van tools, technieken en infrastructuurplanning om ervoor te zorgen dat uw gegevens altijd toegankelijk en intact blijven. Redundantie kan op meerdere niveaus worden bereikt, van hardware tot software, en van lokale tot geografisch verspreide omgevingen. In deze blog zullen we de verschillende methodologieën voor het bereiken van gegevensredundantie opsommen en samenvatten, en ook de voor- en nadelen van elke aanpak analyseren.
Synchronous mirroring
Synchronous mirroring, een hoeksteen van architecturen met hoge beschikbaarheid, zorgt voor real-time beschikbaarheid van gegevens over twee (of in sommige gevallen drie) storage-systemen, meestal binnen dezelfde locatie of over metroclusters. Wanneer er een schrijfbewerking plaatsvindt, verzendt het systeem de gegevens niet alleen naar de primaire storage, maar tegelijkertijd ook naar een mirror-storage (of secundaire storage). Er is dus sprake van voortdurende gegevensredundantie, waardoor een één-op-één match van gegevens tussen beide storage-systemen is gegarandeerd.
De schrijfbewerking wordt pas als voltooid beschouwd nadat gegevens goed zijn opgeslagen in zowel de primaire als de mirror-storage. Dit zorgt voor consistente gegevens op alle apparaten, waardoor een recovery point objective (RPO) en recovery time objective (RTO) gegarandeerd zijn. Onder deze functionaliteit ligt een reeks protocollen en communicatiemethoden die voor real-time gegevensoverdracht, synchronisatiecontroles, failover- en failback-bewerkingen zorgen. Dit vereist ook gedegen netwerkinfrastructuren, die, om de latency te beperken, vaak fibre channel of high-speed ethernet gebruiken.
Asynchronous replication
Redundantie wordt bij asynchronous replication tot stand gebracht door periodiek gegevens te kopiëren van de primaire naar een secundaire locatie, meestal over lange afstanden via een WAN-verbinding. Een belangrijke toepassing hiervan is disaster recovery. Terwijl de primaire storage de schrijfbewerking eerst bevestigt, kan gegevensreplicatie naar de secundaire storage een kleine vertraging oplopen; daarom is het asynchroon. Maar na verloop van tijd wordt de secundaire storage gesynchroniseerd met de primaire, zodat er een redundante kopie beschikbaar is (zelfs als deze enigszins verouderd is in vergelijking met de primaire kopie).
Asynchronous replication maakt gebruik van een wachtrij- of buffersysteem. Zodra de primaire storage het schrijven bevestigt, worden de gegevens in de wachtrij geplaatst voor replicatie. Geavanceerde systemen kunnen algoritmen implementeren om gegevens te batchen, network chatter te minimaliseren of prioriteit te geven aan gegevensreeksen. Change logs kunnen worden gebruikt om de status met specifieke tussenpozen bij te houden, waardoor periodieke synchronisatie met secundaire storage mogelijk is. Deze aanpak komt vooral voor in geografisch verspreide architecturen voor noodherstel, waar gegevens asynchroon worden gerepliceerd naar externe locaties.
Erasure coding
Erasure coding is radicaal anders dan traditionele methoden voor gegevensredundantie. In plaats van de hele set gegevens meerdere keren te repliceren, worden gegevens door erasure coding verdeeld en worden extra parity-blokken gegenereerd. Als ze op verschillende knooppunten of apparaten worden opgeslagen, kunnen de oorspronkelijke gegevens, zelfs als sommige van deze delen verloren gaan of beschadigd raken, nog steeds worden hersteld met behulp van de resterende gegevens. Deze methode is vooral van toepassing in gedistribueerde storage-systemen, zoals object storage-platformen of gedistribueerde bestandssystemen, waar de veerkracht van gegevens over knooppunten of zelfs datacentra van het grootste belang is.
Erasure coding versus replicatie | |
Erasure coding heeft de voorkeur als: | Replicatie heeft meestal de voorkeur als: |
Efficiëntie van storage cruciaal is | Lage latency een prioriteit is |
Het aantal storage-knooppunten over het algemeen hoog is | Het aantal storage-knooppunten relatief laag is |
Er wordt verwacht dat gegevens sneller kunnen worden gelezen | De rekenkundige overhead minimaal moet zijn |
RAID
RAID staat voor Redundant Array of Independent Disks. Het is een technologie die wordt gebruikt om meerdere schijfcomponenten te combineren in één enkele logische eenheid met het oog op gegevensredundantie. Door gebruik te maken van meerdere schijven kan RAID de I/O-bewerkingen verdelen, waardoor gegevens worden gespiegeld ter bescherming tegen storingen.
Technisch gezien werkt RAID volgens de principes van striping, mirroring en parity.
- Striping (zoals in RAID 0) verspreidt gegevens over meerdere schijven, waardoor de I/O-parallelliteit toeneemt.
- Mirroring (RAID 1) repliceert daarentegen identieke gegevens op twee schijven en dient als directe backup.
- Parity (RAID 5 & 6) introduceert een methode waarbij gegevens over schijven worden verdeeld met aanvullende pariteitsinformatie. Dankzij deze pariteit kunnen gegevens worden gereconstrueerd als een schijf defect raakt.
Backup
Backups vertegenwoordigen een fundamentele benadering van gegevensredundantie. Ze zorgen ervoor dat een onafhankelijke kopie van de gegevens buiten de primaire storage wordt opgeslagen, meestal op verschillende media of zelfs op verschillende geografische locaties. Backups zijn point-in-time kopieën van gegevens waarnaar kan worden teruggekeerd in het geval van gegevensbeschadiging, verwijdering of andere catastrofale gebeurtenissen.
Een volledige backup legt de volledige aangewezen dataset vast. Volgende backups kunnen differentieel zijn, waarbij wijzigingen sinds de laatste volledige backup worden vastgelegd, of incrementeel, waarbij wijzigingen sinds de laatste backup van welke aard dan ook worden vastgelegd. Aan de basis van deze processen maken backup-systemen gebruik van algoritmen voor gegevensvergelijking, controlesommen en indexeringsmechanismen.
Differentiële versus incrementele back-up
Een differentiële back-up legt alle wijzigingen vast die in de gegevens zijn aangebracht sinds de laatste volledige backup. Met andere woorden: het omvat de verschillen tussen de laatste volledige backup en de huidige status van de gegevens. Dit betekent dat een differentiële backup groter kan zijn dan incrementele backups, maar het biedt een sneller herstelproces omdat alleen de laatste volledige backup en de nieuwste differentiële backup nodig zijn.
Incrementele backups leggen daarentegen alleen de wijzigingen vast die zijn aangebracht sinds de laatste backup van welke aard dan ook. Dat kan een volledige backup of een eerdere incrementele backup zijn. Ze zijn meestal kleiner van formaat dan differentiële, maar er zijn mogelijk meer backups nodig voor een volledig herstel, aangezien elke incrementele backup op volgorde moet worden toegepast, te beginnen bij de laatste volledige backup.
Snapshots
Snapshots bereiken redundantie door de status van gegevens op specifieke momenten te behouden. In plaats van de gehele dataset te kopiëren, legt een momentopname in eerste instantie de volledige status vast en registreert vervolgens alleen de wijzigingen ten opzichte van die status. Zelfs als de primaire gegevens talloze wijzigingen ondergaan of beschadigd raken, kan de momentopname dienen als een redundante kopie op een bepaald tijdstip, waardoor gegevens kunnen worden hersteld naar de staat waarin de momentopname werd gemaakt.
Snapshots maken gebruik van een copy-on-write- of een redirect-on-write-mechanisme.
- Als in een copy-on-write-snapshot gegevens worden gewijzigd, wordt het originele gegevensblok gekopieerd en bewaard voordat de wijziging plaatsvindt.
- Bij een redirect-on-write-snapshot worden de nieuwe gegevens naar een nieuw blok geschreven en blijft het oorspronkelijke blok onaangetast.
Net als backups kunnen snapshots ook differentieel en incrementeel zijn. Volledige snapshots leggen de volledige dataset op een specifiek moment vast en bieden uitgebreide en onafhankelijke backups, maar verbruiken meer opslagruimte. Differentiële snapshots registreren veranderingen ten opzichte van een volledige snapshot, waardoor ruimte-efficiënte backups worden geboden door alleen de wijzigingen sinds de laatste volledige snapshot vast te leggen.
Continuous data protection (CDP)
Continuous data protection biedt een gedetailleerde benadering van gegevensveiligheid. In tegenstelling tot traditionele backups en snapshots met specifieke intervallen, zorgt CDP voor redundantie door onophoudelijk elke wijziging in de gegevens vast te leggen. Deze continue monitoring betekent dat er altijd een redundant logboek van gegevenswijzigingen is. Als het nodig is om gegevens terug te draaien of te herstellen, biedt CDP een gedetailleerde terugspoelmogelijkheid (een soort knop voor ‘ongedaan maken’). Zelfs als substantiële gegevens beschadigd raken of verloren gaan in de primaire storage, kan het uitgebreide journaal van het CDP-systeem gegevens herstellen naar één van de vorige staten, waardoor redundante herstelpunten worden geboden.
- Bij block-based CDP worden wijzigingen op storage block-niveau bewaakt en geregistreerd.
- File-based CDP let, zoals de naam al doet vermoeden, op veranderingen op bestandsniveau.
- Application-based CDP richt zich op het vastleggen van gegevenswijzigingen binnen specifieke applicaties, dat consistente herstelpunten garandeert.
RPO voor CDP ligt doorgaans in de buurt van 0 (in seconden) en RTO ligt binnen een bereik van enkele minuten.
Analyse van de voor- en nadelen van de verschillende vormen van gegevensredundantie
Techniek | Voordelen | Nadelen |
Synchronous mirroring | Gegevensconsistentie: zorgt ervoor dat zowel bron- als doel-storage-systemen altijd gesynchroniseerd zijn. | Resource-intensief: heeft mogelijk een betrouwbaar netwerk en voldoende opslagcapaciteit nodig om volledig redundante kopieën te behouden en gelijktijdige schrijfbewerkingen uit te voeren, wat de kosten verhoogt. |
Maakt transparante failover mogelijk: naadloze en onmiddellijke overgang tijdens storingen. | ||
Asynchronous replication | Prestaties: de prestaties van het bronapparaat worden niet beïnvloed. | Risico op gegevensverlies: potentieel verlies tussen de replicatie-intervallen, mocht er een storing optreden. |
Geografische flexibiliteit: geschikt voor backup-locaties op afstand. | Capaciteitsintensief: heeft dezelfde hoeveelheid opslagruimte nodig, zowel op de bron- als op de doellocatie. | |
Erasure coding | Efficiënte redundantie: ruimte-efficiënter dan mirroring/replicatie. | Intensiteit van rekenkracht: overhead coderen en decoderen. |
Fouttolerantie: tolereert meerdere gelijktijdige storingen (afhankelijk van het gedefinieerde EC-schema) | Complexiteit: Implementatie kan complex zijn en vereist expertise. | |
RAID | Ingebouwde failover: tolereert fouten binnen het RAID-systeem (RAID 1, 5, 6). | Herbouwtijd: risico op lange herbouwtijden, vooral bij grote schijven. |
Hot Swapping: bij sommige RAID-configuraties kunnen defecte schijven worden vervangen zonder dat het systeem wordt uitgeschakeld of de werking wordt verstoord. | Prestatievariabiliteit: sommige RAID-niveaus (bijvoorbeeld RAID 5) bieden weliswaar fouttolerantie, maar kunnen vertragingen ervaren als gevolg van pariteitsberekeningen. | |
Prestaties: indien geïmplementeerd met een hardware RAID-controller, levert dit uitstekende prestaties. | Beperkte schaling: maakt opschaling vaak slechts tot op zekere hoogte mogelijk (bijvoorbeeld connectiviteit van hardware RAID-controller). | |
Backup | Isolatie mogelijk maken: backups kunnen air gapped worden geplaatst voor een betere beveiliging tegen ongewenste gegevenswijzigingen; als de laatste verdedigingslinie. | Hersteltijd: tijdrovend voor grote datasets; hangt ook af van het backup-medium (tape versus online storage). |
Bescherming tegen ransomware inschakelen: het hebben van een recente backup kan helpen met herstel van systemen zonder te bezwijken voor losgeld. | Storage-kosten: aanzienlijke storage-vereisten (zoals wanneer er meerdere versies zijn) verhogen de kosten. | |
Snapshot | Ruimte-efficiënt met incrementele kopieën: legt alleen wijzigingen vast; vermindert de storage-vereisten. | Geen volledige backup: snapshots vervangen geen backups. Als de onderliggende storage in gevaar komt, kunnen alle snapshots verloren gaan. |
Snelle creatie: omdat het een point-in-copy is, is het sneller in vergelijking met backups en kan het gemakkelijk worden gebruikt voor testdoeleinden. | Prestatievermindering: het verzamelen van meer snapshots kan de prestaties beïnvloeden en het beheer complex maken. | |
Continuous data protection (CDP) | Granulariteit: legt elke wijziging vast en maakt gegevensherstel tot een specifiek tijdstip mogelijk, wat zorgt voor minimaal gegevensverlies. | Resource-intensief: als er veel wijzigingen in de gegevens plaatsvinden, zijn er aanzienlijke reken- en storage-bronnen vereist. |
Verbeterde RPO en RTO: door backups en snapshots aan te vullen, realiseert CDP sneller herstel. | Beperkte herstelperiode: om overmatig gebruik van opslagruimte te voorkomen, zo doorgaans slechts een paar dagen. |
Bovenstaande maakt duidelijk dat het beschermen van gegevens niet alleen een luxe is, maar ook een noodzaak: het onverwachte kan elk moment gebeuren. Door gedegen maatregelen voor gegevensredundantie te implementeren, ben je gewapend tegen deze onvoorziene gebeurtenissen en kan je ervoor zorgen dat gegevens toegankelijk en intact blijven, zelfs als je met tegenslagen wordt geconfronteerd.
Dit is een ingezonden bijdrage van DataCore. Via deze link vind je meer informatie over de mogelijkheden van het bedrijf.