Een andere manier om te zorgen dat dure SAN-storage efficiënt wordt ingezet is om data niet in blokjes maar in ėėn keer op te slaan. Elke server die vervolgens toegang tot deze data wil, krijgt datzelfde blokje aan data toegewezen. Dit heet deduplicatie.
Op dit moment wordt deduplicatie vooral gebruikt in back-up-oplossingen. Dat betekent dat data eerst volledig op een storagesysteem wordt opgeslagen en pas tijdens de back-up wordt gededupliceerd op een apart systeem of een andere storagelaag.
De reden dat het niet op de actieve data wordt toegepast is dat het deduplicatieproces zeer reken-intensief is en er nog geen systeem bestaat dat snel genoeg is. Bij het deduplicatieproces wordt eerst alle data geaccepteerd. Daarna wordt het gecomprimeerd en op blokniveau gecontroleerd op aanwezigheid in de back-up. Als het al bestaat wordt er alleen naar dat blok verwezen en anders wordt het nieuwe blok opgeslagen. Deze methode kan de afmetingen van meerdere back-ups doen afnemen met 50 procent tot zelfs 90 procent.
Figuur 3: Deduplicatie. Tijdens de back-up (meest linkse blok) wordt de data gededupliceerd. De data wordt vanaf een storage-oplossing (tweede blok van links) via een virtualisatie host (derde blok) als schijf aan virtuele machines aangeboden (meest rechtse blok).
NetApp & Deduplicatie
Een onderdeel van de functionaliteit die NetApp op haar systemen biedt is data deduplicatie. Deduplicatie is een proces waarbij data, verdeeld in blokken van 4k, wordt bijgehouden in een database om dubbele blokken te herkennen. Hierbij worden de dubbele blokken slechts eenmalig fysiek op disk geschreven, om zo een ruimtebesparing te bewerkstelligen.
Dit proces werkt op flexibel volume niveau en werkt onafhankelijk van het gebruikte protocol. Er wordt een minimale belasting gevraagd van het systeem, en kan zowel primaire data als backup data en archieven op gelijke wijze dedupliceren. Door een deduplicatie schema te gebruiken dat buiten de normale kantooruren actief is kan een verdere optimalisatie van systeembelasting worden bewerkstelligd. Daarnaast is het mogelijk om automatisch (continu) te draaien in de achtergrond, of om handmatig opgestart te worden.
Elk van deze methoden wordt op dit moment alleen ondersteund via de CLI (Command Line Interface). Voor de eerste twee methoden, automatisch of via een schema, is slechts een eenmalige configuratie nodig.
Deduplicatie werkt op basis van datablokken van 4k grootte en is daarmee zeer granulair. Het werkt door middel van metadata in de vorm van vingerafdrukken van de datablokken, die wordt opgeslagen in een vingerafdruk database. Deze wordt buiten het volume met actieve data opgeslagen zodat deze metadata ook niet wordt meegenomen in snapshots die worden gemaakt van het volume waarin de actieve data staat. Elk nieuw datablok krijgt een unieke vingerafdruk die in de metadata wordt opgeslagen. De vingerafdruk van elk volgend datablok dat wordt weggeschreven wordt eerst vergeleken met de huidige vingerafdruk database. Wanneer er een gelijke vingerafdruk in de database wordt gevonden, zal een byte voor byte vergelijking van de datablokken plaats vinden. Als de datablokken een exact gelijk blijken te zijn, zal er voor het nieuwe databok slechts een verwijzing in de database worden toegevoegd. Hierdoor hoeft het nieuwe datablok niet meer volledig bewaard te worden.