Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Methoden zur Erkennung von Datenredundanz und zur Deduplikation Guido Skoda 23.01.2012.

Ähnliche Präsentationen


Präsentation zum Thema: "Methoden zur Erkennung von Datenredundanz und zur Deduplikation Guido Skoda 23.01.2012."—  Präsentation transkript:

1 Methoden zur Erkennung von Datenredundanz und zur Deduplikation Guido Skoda 23.01.2012

2 Lehrstuhl und Institut für Allgemeine Konstruktionstechnik des Maschinenbaus RWTH Aachen – Univ.-Prof. Dr.-Ing. Jörg Feldhusen 1.Methoden zur Ermittlung der Duplizität 2.Existierende Tools zum Abbau von Redundanzen 3.Fazit und Ausblick Inhalt 2

3 Lehrstuhl und Institut für Allgemeine Konstruktionstechnik des Maschinenbaus RWTH Aachen – Univ.-Prof. Dr.-Ing. Jörg Feldhusen Auffinden und Reduzierung des Vorkommens redundanter Daten (in Form mehrfach vorkommender Dateien) dient mehreren Zwecken: Kostenersparnis Sucheffizienz Datenkonsistenz  Beseitigung von Redundanzen: Deduplizierung Motivation 3

4 Lehrstuhl und Institut für Allgemeine Konstruktionstechnik des Maschinenbaus RWTH Aachen – Univ.-Prof. Dr.-Ing. Jörg Feldhusen Indizierung Verifizierung Entscheidung Modularisierung 4

5 Lehrstuhl und Institut für Allgemeine Konstruktionstechnik des Maschinenbaus RWTH Aachen – Univ.-Prof. Dr.-Ing. Jörg Feldhusen Indizierung 5

6 Lehrstuhl und Institut für Allgemeine Konstruktionstechnik des Maschinenbaus RWTH Aachen – Univ.-Prof. Dr.-Ing. Jörg Feldhusen Hashing: Vorgehen, mit Hilfe einer mathematischen Funktion aus einem beliebig langen Datum („Nachricht“) einen kurzen Extrakt zu generieren (Pieprzyk) Methode zur Indizierung 6

7 Lehrstuhl und Institut für Allgemeine Konstruktionstechnik des Maschinenbaus RWTH Aachen – Univ.-Prof. Dr.-Ing. Jörg Feldhusen Hashkollisionen 7

8 Lehrstuhl und Institut für Allgemeine Konstruktionstechnik des Maschinenbaus RWTH Aachen – Univ.-Prof. Dr.-Ing. Jörg Feldhusen kryptographisches Hashing dient ursprünglich der Verifizierung von Nachrichteninhalten erfordert Findung kollisionsresistenter anstatt „kollisionsverteilender“ Funktionen Exkurs: kryptographische Hashfunktion 8

9 Lehrstuhl und Institut für Allgemeine Konstruktionstechnik des Maschinenbaus RWTH Aachen – Univ.-Prof. Dr.-Ing. Jörg Feldhusen Kollisionsresistenz 9 Quelle: Pieprzyk

10 Lehrstuhl und Institut für Allgemeine Konstruktionstechnik des Maschinenbaus RWTH Aachen – Univ.-Prof. Dr.-Ing. Jörg Feldhusen Kollisionsresistente bzw. noch als verwendbar geltende Hashalgorithmen bieten sich zur Indizierung der Dateien an Kollisionen nicht problematisch, da lediglich Kandidaten gesucht werden – solange Kollisionen nicht zu häufig auftreten Indizierung durch Hashing 10

11 Lehrstuhl und Institut für Allgemeine Konstruktionstechnik des Maschinenbaus RWTH Aachen – Univ.-Prof. Dr.-Ing. Jörg Feldhusen Zwei bedeutende „Familien“: MD (Message Digest) MD2 MD4 MD5 SHA (Secure Hash Algorithm) SHA-1 SHA-2-Familie (SHA-224/-256/-384/-512) Hashalgorithmen aus der Kryptographie 11

12 Lehrstuhl und Institut für Allgemeine Konstruktionstechnik des Maschinenbaus RWTH Aachen – Univ.-Prof. Dr.-Ing. Jörg Feldhusen Hash- funktion Länge Hashwert (Bit) max. Länge Nachricht (Bit) kollisions- resistent gilt noch als benutzbar Geschwindig- keit (MiB/s)* MD2128–nein keine Angabe MD41282⁶⁴-1nein keine Angabe MD51282⁶⁴-1neinja335 SHA-11602⁶⁴-1neinja192 SHA-2242242⁶⁴-1ja 139 SHA-2562562⁶⁴-1ja 139 SHA-3843842¹²⁸-1ja 154 SHA-5125122¹²⁸-1ja 154 Vergleich Hashfunktionen 12 * Quelle: http://www.cryptopp.com/benchmarks.htmlhttp://www.cryptopp.com/benchmarks.html Geschwindigkeitswerte auf AMD Opteron 8354 2,2 GHz unter Linux

13 Lehrstuhl und Institut für Allgemeine Konstruktionstechnik des Maschinenbaus RWTH Aachen – Univ.-Prof. Dr.-Ing. Jörg Feldhusen Kandidaten müssen auf Gleichheit überprüft werden paarweiser Dateivergleich Inhalte bitweise vergleichen gleichzeitiger Vergleich mehrerer Bits (Byte-Ebene) blockweiser Vergleich: nur garantiert bei gleicher Blockgröße Verifizierung 13

14 Lehrstuhl und Institut für Allgemeine Konstruktionstechnik des Maschinenbaus RWTH Aachen – Univ.-Prof. Dr.-Ing. Jörg Feldhusen Sollen Redundanzen überhaupt beseitigt werden? bei gewissen Dateien Redundanz nötig/gewollt Bei Beseitigung zwei grundsätzliche Vorgehensweisen ersatzlose Löschung der Dateiduplikate Ersetzung durch Zeiger oder Dateilinks Bei Deduplizierung auf Sub-Datei-Ebene nur Ersetzung durch Zeiger möglich (Löschung von Blocks oder Bytes macht Dateien unbrauchbar) Entscheidung 14

15 Lehrstuhl und Institut für Allgemeine Konstruktionstechnik des Maschinenbaus RWTH Aachen – Univ.-Prof. Dr.-Ing. Jörg Feldhusen 1.Methoden zur Ermittlung der Duplizität 2.Existierende Tools zum Abbau von Redundanzen 3.Fazit und Ausblick Inhalt 15

16 Lehrstuhl und Institut für Allgemeine Konstruktionstechnik des Maschinenbaus RWTH Aachen – Univ.-Prof. Dr.-Ing. Jörg Feldhusen HashingBitweiser VergleichAusschluss von Links Löschung von Duplikaten fdupesMD5ja duffSHA-1Nur einige Bytes (dateiweise optional) nein dupeditneinparallel bei gleich großen Dateien nein dupseekneinVergleich immer größer werdender Abschnitte neinja fdfSHA-1Nur kleiner Ausschnittnein rdfindMD5Dateianfang, Dateiende neinoptional (Ersetzung durch Links möglich) litenMD5nein optional liten2SHA-1Nur erste 8 MBneinoptional Freeware 16

17 Lehrstuhl und Institut für Allgemeine Konstruktionstechnik des Maschinenbaus RWTH Aachen – Univ.-Prof. Dr.-Ing. Jörg Feldhusen Eintrag von Dublettenkandidaten in SQLite-Datenbank vier Laufmodi Indizierungsmodus Entscheidungs-/Löschmodus Dry-run-Modus Statistik-Modus Modularisierung gegeben Nachteil: Keine Verifizierung der Dublettenkandidaten  bietet sich als Grundlage eines neuen Tools an Besonderheiten von liten2 17

18 Lehrstuhl und Institut für Allgemeine Konstruktionstechnik des Maschinenbaus RWTH Aachen – Univ.-Prof. Dr.-Ing. Jörg Feldhusen Deduplizierung auf 4-Byte-Blockebene arbeitet auf proprietärem Betriebssystem Bestandteil des proprietären Dateisystems WAFL Hashes der Blöcke werden in Datenbank abgelegt Veränderungen an Daten werden in Logdatei gespeichert NetApp A-SIS 18

19 Lehrstuhl und Institut für Allgemeine Konstruktionstechnik des Maschinenbaus RWTH Aachen – Univ.-Prof. Dr.-Ing. Jörg Feldhusen Bei Start der Deduplizierung: Logdatei nach Hashes der geänderten Daten sortieren und mit Datenbank vergleichen bei Gleichheit von Hashes in beiden Listen: byteweiser Blockvergleich bei Gleichheit der Blöcke: einen Block durch Verweis auf den anderen ersetzen und Speicherplatz freigeben NetApp A-SIS 19 Quelle: Lewis (NetApp)

20 Lehrstuhl und Institut für Allgemeine Konstruktionstechnik des Maschinenbaus RWTH Aachen – Univ.-Prof. Dr.-Ing. Jörg Feldhusen Inline-Deduplizierung von Backup-Datenströmen für VTLs erfolgt über Index auf vorgelagerter Gateway-Maschine Maschine enthält HyperFactor Deduplication Engine Index des Datenstroms wird gescannt und indiziert Bei Ähnlichkeit von Daten der beiden Indizes werden die entsprechenden Datensätze byteweise verglichen Bei Datengleichheit wird Referenz auf dem Backupmedium abgelegt IBM ProtecTier 20

21 Lehrstuhl und Institut für Allgemeine Konstruktionstechnik des Maschinenbaus RWTH Aachen – Univ.-Prof. Dr.-Ing. Jörg Feldhusen 1.Methoden zur Ermittlung der Duplizität 2.Existierende Tools zum Abbau von Redundanzen 3.Fazit und Ausblick Inhalt 21

22 Lehrstuhl und Institut für Allgemeine Konstruktionstechnik des Maschinenbaus RWTH Aachen – Univ.-Prof. Dr.-Ing. Jörg Feldhusen Erkennung und Beseitigung/Vermeidung von Redundanzen aktuelles Feld in Datenverarbeitung Kostenersparnis Sucheffizienz Datenkonsistenz Duplikate können mittels geeigneter Verfahren und Techniken beseitigt bzw. verringert werden Fazit 22

23 Lehrstuhl und Institut für Allgemeine Konstruktionstechnik des Maschinenbaus RWTH Aachen – Univ.-Prof. Dr.-Ing. Jörg Feldhusen existierende Freeware-Werkzeuge weisen gute Lösungsansätze auf für große Datenmengen keine zufriedenstellende Lösung kommerzielle Werkzeuge an bestimmte Hardware/Betriebssysteme gebunden teilweise nur Deduplizierung von Backups Fazit 23 IndizierungVerifizierungEntscheidung

24 Lehrstuhl und Institut für Allgemeine Konstruktionstechnik des Maschinenbaus RWTH Aachen – Univ.-Prof. Dr.-Ing. Jörg Feldhusen Redundanzvermeidung und Deduplizierung werden an Bedeutung gewinnen Entwicklung kostengünstiger, einfach zu bedienender und effektiver Deduplizierungswerkzeuge Zuverlässigkeit Vermeidung von Datenverlusten Arbeit auf Primärspeicher Modularisierung Vorgehensregeln professionelle und private Nutzung Ausblick 24

25 Lehrstuhl und Institut für Allgemeine Konstruktionstechnik des Maschinenbaus RWTH Aachen – Univ.-Prof. Dr.-Ing. Jörg Feldhusen Ende der Bildschirmpräsentation 25

26 Lehrstuhl und Institut für Allgemeine Konstruktionstechnik des Maschinenbaus RWTH Aachen – Univ.-Prof. Dr.-Ing. Jörg Feldhusen Sparsamer Umgang mit Speicherressourcen besitzt hohe Relevanz hohe Kosten für Beschaffung und Pflege von Datenspeicher (Backup 20 € je TB und Monat; Archivierung 40 € je TB und Monat) Überflüssiger Verbrauch von Speicherplatz durch mehrfaches Dateivorkommen auf Mehrbenutzersystemen Speicherverbrauch 26

27 Lehrstuhl und Institut für Allgemeine Konstruktionstechnik des Maschinenbaus RWTH Aachen – Univ.-Prof. Dr.-Ing. Jörg Feldhusen Suche nach Dateien erfolgt über Filetabelle zusätzliche Einträge in Filetabelle erhöhen Suchaufwand Unnötige Erhöhung bei vermeidbaren Dateidubletten bei Dubletten mit gleichem Namen und gleichen Metadaten zur Weiterverwendung gedachtes Exemplar nicht ersichtlich Suche nach Inhalten erfolgt durch Indizierung Mehrfaches Vorhandensein von Dateien führt zu Mehrfachindizierung gleicher Inhalte Sucheffizienz 27

28 Lehrstuhl und Institut für Allgemeine Konstruktionstechnik des Maschinenbaus RWTH Aachen – Univ.-Prof. Dr.-Ing. Jörg Feldhusen  Sucheffizienz bei größerer Anzahl von Dateidubletten beeinträchtigt Sucheffizienz 28

29 Lehrstuhl und Institut für Allgemeine Konstruktionstechnik des Maschinenbaus RWTH Aachen – Univ.-Prof. Dr.-Ing. Jörg Feldhusen mangelhafte Ablagestrukturen Datenablage nicht logisch, sondern intuitiv andere Nutzer finden Daten nicht sofort Gefahr: Arbeit mit falschen oder veralteten Dateiversionen Erstellung von Ablagerichtlinien (Herausforderung: Kompaktheit ↔ Detailliertheit ) Einhaltung durch Benutzer schwer kontrollierbar Faktor Mensch 29

30 Lehrstuhl und Institut für Allgemeine Konstruktionstechnik des Maschinenbaus RWTH Aachen – Univ.-Prof. Dr.-Ing. Jörg Feldhusen Datenredundanz in Mehrbenutzersystemen häufig problematisch bei Datenänderung (Aktualisierung an mehreren Stellen) manuelle konsistente Datenaktualisierung durch Benutzer/Administratoren kaum durchführbar Faktor Mensch 30

31 Lehrstuhl und Institut für Allgemeine Konstruktionstechnik des Maschinenbaus RWTH Aachen – Univ.-Prof. Dr.-Ing. Jörg Feldhusen 1.Motivation 2.Bedarfsermittlung 3.Methoden zur Ermittlung der Duplizität 4.Existierende Tools zum Abbau von Redundanzen 5.Fazit und Ausblick Methoden zur Erkennung von Datenredundanz und zur Deduplikation 31

32 Lehrstuhl und Institut für Allgemeine Konstruktionstechnik des Maschinenbaus RWTH Aachen – Univ.-Prof. Dr.-Ing. Jörg Feldhusen Produktentwicklung im Maschinenbau rechnerunterstützte Konstruktion und Entwicklung Einsatz von Produktdatenmanagementsystemen (PDMS) Server für Projekt ProVerStand (PVS) in Zusammenarbeit mit dem RZ der RWTH Windchill für alle Hochschulen in NRW 45.000 Anwender (2000 gleichzeitig) zwei zentrale Dateiserver Benutzerprofile, Vorlagen, Verwaltungsdaten, Forschungs- und Lehrunterlagen Beispielszenario: ikt 32

33 Lehrstuhl und Institut für Allgemeine Konstruktionstechnik des Maschinenbaus RWTH Aachen – Univ.-Prof. Dr.-Ing. Jörg Feldhusen Datenspeicher gesamt Datenspeicher belegt Datenspeicher verfügbar Nutzung 1. Zentraler Dateiserver 14,8 TB10,4 TB3,5 TB70 % 2. Zentraler Dateiserver 8,3 TB6,6 TB1,3 TB80 % je Windchill- Server (insgesamt 4) 4,0 TB2,9 TB1,1 TB73 % Beispielszenario: ikt (2) 33

34 Lehrstuhl und Institut für Allgemeine Konstruktionstechnik des Maschinenbaus RWTH Aachen – Univ.-Prof. Dr.-Ing. Jörg Feldhusen DateitypVorkommen 1. zentraler Dateiserver Vorkommen 2. zentraler Dateiserver alle8660207681763.txt159252200248.doc/.docx382207508625.prt12721554877.xls/.xlsx2967617443.pdf12560684960.ppt/.pptx3757421587.jpg/.gif682230683759.bmp2347151088.tar/.zip148870175516.iso1773132161.accdb/.mdb407712878 Beispielszenario: ikt (3) 34

35 Lehrstuhl und Institut für Allgemeine Konstruktionstechnik des Maschinenbaus RWTH Aachen – Univ.-Prof. Dr.-Ing. Jörg Feldhusen 31,5 % Speicherersparnis durch Deduplizierung des Windchill-Backups (auf einzelnen Laufwerken bis zu 72 %) Bedarf zur Redundanzvermeidung und –beseitigung besteht Beispielszenario: ikt (4) 35

36 Lehrstuhl und Institut für Allgemeine Konstruktionstechnik des Maschinenbaus RWTH Aachen – Univ.-Prof. Dr.-Ing. Jörg Feldhusen 1.Motivation 2.Bedarfsermittlung 3.Methoden zur Ermittlung der Duplizität 4.Existierende Tools zum Abbau von Redundanzen 5.Fazit und Ausblick Methoden zur Erkennung von Datenredundanz und zur Deduplikation 36

37 Lehrstuhl und Institut für Allgemeine Konstruktionstechnik des Maschinenbaus RWTH Aachen – Univ.-Prof. Dr.-Ing. Jörg Feldhusen erzeugt aus einer Nachricht beliebiger Länge einen Hashwert mit 128 Bits Länge Nachricht auf ein Vielfaches von 16 Bytes verlängern Prüfsumme berechnen und anhängen 48 Byte großen Buffer erstellen Nachricht 16-Byte-blockweise mit Buffer verarbeiten die ersten 16 Bytes des Buffers nach Verarbeitung sind der Hashwert nicht kollisionsresistent gilt als nicht mehr verwendbar MD2 37

38 Lehrstuhl und Institut für Allgemeine Konstruktionstechnik des Maschinenbaus RWTH Aachen – Univ.-Prof. Dr.-Ing. Jörg Feldhusen MD4/MD5 38

39 Lehrstuhl und Institut für Allgemeine Konstruktionstechnik des Maschinenbaus RWTH Aachen – Univ.-Prof. Dr.-Ing. Jörg Feldhusen SHA-1 39

40 Lehrstuhl und Institut für Allgemeine Konstruktionstechnik des Maschinenbaus RWTH Aachen – Univ.-Prof. Dr.-Ing. Jörg Feldhusen SHA-2 40

41 Lehrstuhl und Institut für Allgemeine Konstruktionstechnik des Maschinenbaus RWTH Aachen – Univ.-Prof. Dr.-Ing. Jörg Feldhusen Hash- funktion Blocklänge (Wörter)/ Wortlänge (Bit) Länge Hashwert (Bit) max. Länge Nachricht (Bit) Verarbei- tungs- runden kollisions- resistent MD216/812818nein MD416/321282⁶⁴-148nein MD516/321282⁶⁴-164nein SHA-116/321602⁶⁴-180nein SHA-22416/322242⁶⁴-164ja SHA-25616/322562⁶⁴-164ja SHA-38416/643842¹²⁸-180ja SHA-51216/645122¹²⁸-180ja Vergleich Hashfunktionen 41

42 Lehrstuhl und Institut für Allgemeine Konstruktionstechnik des Maschinenbaus RWTH Aachen – Univ.-Prof. Dr.-Ing. Jörg Feldhusen fdupes verbreitetstes Werkzeug in C geschrieben Dateigröße → MD5-Hashes → bitweiser Vergleich Ausschluss von Hardlinks aus dem Löschvorgang duff erstellt lediglich Kandidatenlisten in C geschrieben Dateigröße → einige Bytes → SHA-1-Hashes bitweiser Vergleich nur per Eingabeparameter Freeware (1) 42

43 Lehrstuhl und Institut für Allgemeine Konstruktionstechnik des Maschinenbaus RWTH Aachen – Univ.-Prof. Dr.-Ing. Jörg Feldhusen dupedit erstellt lediglich Kandidatenlisten in C entwickelt False Copies (Links und Mehrfachmounts) ausschließen Dateigröße → paralleler byteweiser Vergleich bei einzigartigem Bytemuster sofortiger Ausschluss aus Kandidatenliste dupseek in Perl entwickelt Gruppierung nach Dateigröße Verfeinerung durch Vergleichen immer größerer Abschnitte Freeware (2) 43

44 Lehrstuhl und Institut für Allgemeine Konstruktionstechnik des Maschinenbaus RWTH Aachen – Univ.-Prof. Dr.-Ing. Jörg Feldhusen fdf erstellt lediglich Kandidatenlisten in Perl geschrieben Dateigröße → bitweiser Vergleich eines kleinen Ausschnitts → SHA1-Hash kein dateiweise-bitweiser Vergleich rdfind in C++ geschrieben Dateigröße → Dateianfang → Dateiende → MD5-Hash per Eingabeparameter: Kandidatenliste, Löschung/Entlinkung oder Ersetzung durch Soft-/Hardlink Freeware (3) 44

45 Lehrstuhl und Institut für Allgemeine Konstruktionstechnik des Maschinenbaus RWTH Aachen – Univ.-Prof. Dr.-Ing. Jörg Feldhusen liten in Python geschrieben Mindestgröße angebbar (1 MB) Dateigröße → MD5-Hash Suche auch per Pattern nach bestimmten Dateinamen möglich per Eingabeparameter: Löschung oder Erstellung einer csv-Datei liten2 in Python aus liten entwickelt Dateigröße → SHA-1-Hash der ersten 8 kB Eintrag in SQLite-Datenbank Alternativ: Löschsitzung, dry-run, Statistik Freeware (4) 45

46 Lehrstuhl und Institut für Allgemeine Konstruktionstechnik des Maschinenbaus RWTH Aachen – Univ.-Prof. Dr.-Ing. Jörg Feldhusen diente zur Deduplizierung von Backup-Datenströmen auf Virtual Tape Libraries Vier Schritte Anchor Generation (Inline oder post-processing) Grow-by-Compare Überspringfilter Hardware-Komprimierung NetApp VTL Deduplizierung 46 Quelle: Brown (NetApp)


Herunterladen ppt "Methoden zur Erkennung von Datenredundanz und zur Deduplikation Guido Skoda 23.01.2012."

Ähnliche Präsentationen


Google-Anzeigen