26
Motivation Synchronisation Dateisysteme Datenbanken Synchronisation und verteilte Dateisysteme Sven Gärner Studiendepartment Informatik Hochschule für Angewandte Wissenschaften Hamburg 08. Januar 2008 Sven Gärner Synchronisation und verteilte Dateisysteme

Synchronisation und verteilte Dateisystemeubicomp/projekte/master07-08-aw/gaerner/...MotivationSynchronisationDateisystemeDatenbankenFazitLiteratur Inhalt 1 Motivation 2 manuelle Synchronisation

  • Upload
    others

  • View
    5

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Synchronisation und verteilte Dateisystemeubicomp/projekte/master07-08-aw/gaerner/...MotivationSynchronisationDateisystemeDatenbankenFazitLiteratur Inhalt 1 Motivation 2 manuelle Synchronisation

Motivation Synchronisation Dateisysteme Datenbanken Fazit Literatur

Synchronisation und verteilteDateisysteme

Sven Gärner

Studiendepartment InformatikHochschule für Angewandte Wissenschaften Hamburg

08. Januar 2008

Sven Gärner Synchronisation und verteilte Dateisysteme

Page 2: Synchronisation und verteilte Dateisystemeubicomp/projekte/master07-08-aw/gaerner/...MotivationSynchronisationDateisystemeDatenbankenFazitLiteratur Inhalt 1 Motivation 2 manuelle Synchronisation

Motivation Synchronisation Dateisysteme Datenbanken Fazit Literatur

Inhalt

1 Motivation

2 manuelle SynchronisationrsyncUnison

3 verteilte DateisystemeFicus und RumorOceanStoreThe Free Network ProjectThe Fast Secure File SystemSSHFS

4 Datenbanken

5 Fazit

Sven Gärner Synchronisation und verteilte Dateisysteme

Page 3: Synchronisation und verteilte Dateisystemeubicomp/projekte/master07-08-aw/gaerner/...MotivationSynchronisationDateisystemeDatenbankenFazitLiteratur Inhalt 1 Motivation 2 manuelle Synchronisation

Motivation Synchronisation Dateisysteme Datenbanken Fazit Literatur

Inhalt

1 Motivation

2 manuelle SynchronisationrsyncUnison

3 verteilte DateisystemeFicus und RumorOceanStoreThe Free Network ProjectThe Fast Secure File SystemSSHFS

4 Datenbanken

5 Fazit

Sven Gärner Synchronisation und verteilte Dateisysteme

Page 4: Synchronisation und verteilte Dateisystemeubicomp/projekte/master07-08-aw/gaerner/...MotivationSynchronisationDateisystemeDatenbankenFazitLiteratur Inhalt 1 Motivation 2 manuelle Synchronisation

Motivation Synchronisation Dateisysteme Datenbanken Fazit Literatur

Synchronisation von Verzeichnissen

automatischeSynchronisation vonVerzeichnissenlokal oder auf andereRechneralle Teilnehmer sindbekanntalle Teilnehmer sindgleichberechtigtAnzahl der Teilnehmerleicht veränderbar

Abbildung: Synchronisationvon s/downloads

Sven Gärner Synchronisation und verteilte Dateisysteme

Page 5: Synchronisation und verteilte Dateisystemeubicomp/projekte/master07-08-aw/gaerner/...MotivationSynchronisationDateisystemeDatenbankenFazitLiteratur Inhalt 1 Motivation 2 manuelle Synchronisation

Motivation Synchronisation Dateisysteme Datenbanken Fazit Literaturrsync Unison

Inhalt

1 Motivation

2 manuelle SynchronisationrsyncUnison

3 verteilte DateisystemeFicus und RumorOceanStoreThe Free Network ProjectThe Fast Secure File SystemSSHFS

4 Datenbanken

5 Fazit

Sven Gärner Synchronisation und verteilte Dateisysteme

Page 6: Synchronisation und verteilte Dateisystemeubicomp/projekte/master07-08-aw/gaerner/...MotivationSynchronisationDateisystemeDatenbankenFazitLiteratur Inhalt 1 Motivation 2 manuelle Synchronisation

Motivation Synchronisation Dateisysteme Datenbanken Fazit Literaturrsync Unison

rsync [6]

„rsync is an open source utility that provides fastincremental file transfer.“ (rsync Website, [6])

unidirektionale Replikationmöglichst nur unterschiedliche Daten übertragen

Berechnung von Checksummen für einzelne Blöckenur unterschiedliche Blöcke übertragenBlockgröße hängt von Dateigröße ab

zustandslos (keine Speicherung von Meta-Daten)auch als Server einsetzbar

Sven Gärner Synchronisation und verteilte Dateisysteme

Page 7: Synchronisation und verteilte Dateisystemeubicomp/projekte/master07-08-aw/gaerner/...MotivationSynchronisationDateisystemeDatenbankenFazitLiteratur Inhalt 1 Motivation 2 manuelle Synchronisation

Motivation Synchronisation Dateisysteme Datenbanken Fazit Literaturrsync Unison

Unison [14]

Datei-Synchronisation zweier Replikateerlaubt unabhängige Änderungen an beidenReplikatenimplementiert Funktionalitäten von

Version Control Programmen (CVS [3], Subversion[9], . . . )verteilten Dateisystemen (Coda [5], . . . )rsync. . .

benötigt Profile und speichert Meta-DatenVerhalten komplett spezifiziert

Sven Gärner Synchronisation und verteilte Dateisysteme

Page 8: Synchronisation und verteilte Dateisystemeubicomp/projekte/master07-08-aw/gaerner/...MotivationSynchronisationDateisystemeDatenbankenFazitLiteratur Inhalt 1 Motivation 2 manuelle Synchronisation

Motivation Synchronisation Dateisysteme Datenbanken Fazit LiteraturFicus OceanStore freenet FSFS SSHFS

Inhalt

1 Motivation

2 manuelle SynchronisationrsyncUnison

3 verteilte DateisystemeFicus und RumorOceanStoreThe Free Network ProjectThe Fast Secure File SystemSSHFS

4 Datenbanken

5 Fazit

Sven Gärner Synchronisation und verteilte Dateisysteme

Page 9: Synchronisation und verteilte Dateisystemeubicomp/projekte/master07-08-aw/gaerner/...MotivationSynchronisationDateisystemeDatenbankenFazitLiteratur Inhalt 1 Motivation 2 manuelle Synchronisation

Motivation Synchronisation Dateisysteme Datenbanken Fazit LiteraturFicus OceanStore freenet FSFS SSHFS

Ficus und Rumor I [8]

Ficus:entwickelt an derUniversity of California,Los Angeles(1991–1996)implementiert alsKernel-Treiber fürSunOSverwendetoptimistischeReplikation Abbildung: Ficus und Rumor

Sven Gärner Synchronisation und verteilte Dateisysteme

Page 10: Synchronisation und verteilte Dateisystemeubicomp/projekte/master07-08-aw/gaerner/...MotivationSynchronisationDateisystemeDatenbankenFazitLiteratur Inhalt 1 Motivation 2 manuelle Synchronisation

Motivation Synchronisation Dateisysteme Datenbanken Fazit LiteraturFicus OceanStore freenet FSFS SSHFS

Ficus und Rumor II

Ficus:Netzwerk-Zugriff für Clients bisher nur via NFS [10]Replikation erfordert keine permanente Verbindungder Server untereinander

Rumor:verwendet für Ficus entwickelte Algorithmenimplementiert als Benutzerprozess, keinDateisystemReplikation in einer Peer-to-Peer Umgebung

Sven Gärner Synchronisation und verteilte Dateisysteme

Page 11: Synchronisation und verteilte Dateisystemeubicomp/projekte/master07-08-aw/gaerner/...MotivationSynchronisationDateisystemeDatenbankenFazitLiteratur Inhalt 1 Motivation 2 manuelle Synchronisation

Motivation Synchronisation Dateisysteme Datenbanken Fazit LiteraturFicus OceanStore freenet FSFS SSHFS

OceanStore I [13]

globaler Datenspeicherauf nichtvertrauenswürdigenServernServer dürfen jedesbeliebige Datenobjektcachen

Reduzierung vonNetzwerk-Trafficgeringere Latenzbeim ZugriffErhöhung derAusfallsicherheit

Abbildung: OceanStore Logo

Sven Gärner Synchronisation und verteilte Dateisysteme

Page 12: Synchronisation und verteilte Dateisystemeubicomp/projekte/master07-08-aw/gaerner/...MotivationSynchronisationDateisystemeDatenbankenFazitLiteratur Inhalt 1 Motivation 2 manuelle Synchronisation

Motivation Synchronisation Dateisysteme Datenbanken Fazit LiteraturFicus OceanStore freenet FSFS SSHFS

OceanStore II

Server können ausfallen oder anderweitigbeeinträchtigt werdenintegrierte Archivfunktion

jede Version einer Datei wird gespeichertVerwendung von Erasure-Codes1

→ es müssten sehr viele Server ausfallen, um dasarchivierte Objekt zu löschen

Verwendung von Tapestry (siehe [13]) zurObjekt-Lokalisierung

1Wikipedia: http://en.wikipedia.org/wiki/Erasure_codeSven Gärner Synchronisation und verteilte Dateisysteme

Page 13: Synchronisation und verteilte Dateisystemeubicomp/projekte/master07-08-aw/gaerner/...MotivationSynchronisationDateisystemeDatenbankenFazitLiteratur Inhalt 1 Motivation 2 manuelle Synchronisation

Motivation Synchronisation Dateisysteme Datenbanken Fazit LiteraturFicus OceanStore freenet FSFS SSHFS

The Free Network Project I [1]

jeder soll publizieren könnenZugriff via HTTP-ProxyImplementation als Peer-to-Peer Netzwerkjeder Teilnehmer stellt Speicherplatz als LRU-Cachezur Verfügungjeder Knoten cached verschlüsselt Dateien

entweder selbst nachgefragte Dateienoder weitergeleitete Dateien

Sven Gärner Synchronisation und verteilte Dateisysteme

Page 14: Synchronisation und verteilte Dateisystemeubicomp/projekte/master07-08-aw/gaerner/...MotivationSynchronisationDateisystemeDatenbankenFazitLiteratur Inhalt 1 Motivation 2 manuelle Synchronisation

Motivation Synchronisation Dateisysteme Datenbanken Fazit LiteraturFicus OceanStore freenet FSFS SSHFS

The Free Network Project II

ein Teilnehmer kennt den Inhalt seines CachesnichtErweiterungen erlauben

das Versenden/Empfangen von EMailsFilesharingzukünftig den Zugriff via Dateisystem mit Hilfe vonFUSE [4]

aktuelle Version beruht auf dem Prinzip des smallworld networks

jeder kontaktiert einen oder mehrere Vertrautevermutlich erreicht man damit alle Knoten imNetzwerk

Sven Gärner Synchronisation und verteilte Dateisysteme

Page 15: Synchronisation und verteilte Dateisystemeubicomp/projekte/master07-08-aw/gaerner/...MotivationSynchronisationDateisystemeDatenbankenFazitLiteratur Inhalt 1 Motivation 2 manuelle Synchronisation

Motivation Synchronisation Dateisysteme Datenbanken Fazit LiteraturFicus OceanStore freenet FSFS SSHFS

The Fast Secure File System [2]verteiltes DateisystemKommunikation erfolgt verschlüsselt mittelsOpenSSL [12]jede Datei wird auf dem Client verschlüsseltServer verwaltet nur verschlüsselte DateienClient cached bisher nur Datei- undVerzeichnisnamenimplementiert als User-Dateisystem mit FUSE [4]

Abbildung: The Fast Secure File System

Sven Gärner Synchronisation und verteilte Dateisysteme

Page 16: Synchronisation und verteilte Dateisystemeubicomp/projekte/master07-08-aw/gaerner/...MotivationSynchronisationDateisystemeDatenbankenFazitLiteratur Inhalt 1 Motivation 2 manuelle Synchronisation

Motivation Synchronisation Dateisysteme Datenbanken Fazit LiteraturFicus OceanStore freenet FSFS SSHFS

SSHFS [11]User-Dateisystem unter Verwendung von FUSEDateisystem-Zugriff auf fremden Rechner via SSH[7]Verbindung verschlüsselt und authentifiziertnur Meta-Daten werden im Cache vorgehaltenlokale Dateisysteme auf entferntem Rechnermounten

Abbildung: SSHFS / OpenSSH

Sven Gärner Synchronisation und verteilte Dateisysteme

Page 17: Synchronisation und verteilte Dateisystemeubicomp/projekte/master07-08-aw/gaerner/...MotivationSynchronisationDateisystemeDatenbankenFazitLiteratur Inhalt 1 Motivation 2 manuelle Synchronisation

Motivation Synchronisation Dateisysteme Datenbanken Fazit Literatur

Inhalt

1 Motivation

2 manuelle SynchronisationrsyncUnison

3 verteilte DateisystemeFicus und RumorOceanStoreThe Free Network ProjectThe Fast Secure File SystemSSHFS

4 Datenbanken

5 Fazit

Sven Gärner Synchronisation und verteilte Dateisysteme

Page 18: Synchronisation und verteilte Dateisystemeubicomp/projekte/master07-08-aw/gaerner/...MotivationSynchronisationDateisystemeDatenbankenFazitLiteratur Inhalt 1 Motivation 2 manuelle Synchronisation

Motivation Synchronisation Dateisysteme Datenbanken Fazit Literatur

Datenbanken IVorteile

Daten sehr stark strukturiertgute Synchronisationsmöglichkeiteninzwischen auch „offline“ Operation möglichgute Abfragemöglichkeitenfein konfigurierbare Berechtigungsprofile

Sven Gärner Synchronisation und verteilte Dateisysteme

Page 19: Synchronisation und verteilte Dateisystemeubicomp/projekte/master07-08-aw/gaerner/...MotivationSynchronisationDateisystemeDatenbankenFazitLiteratur Inhalt 1 Motivation 2 manuelle Synchronisation

Motivation Synchronisation Dateisysteme Datenbanken Fazit Literatur

Datenbanken IINachteile

Dateien sind unstrukturiert aus Dateisystem-Sichtimmer Client-Server Architekturkeine Dateisystem-Schnittstellenicht von jeder Anwendung nutzbar

Sven Gärner Synchronisation und verteilte Dateisysteme

Page 20: Synchronisation und verteilte Dateisystemeubicomp/projekte/master07-08-aw/gaerner/...MotivationSynchronisationDateisystemeDatenbankenFazitLiteratur Inhalt 1 Motivation 2 manuelle Synchronisation

Motivation Synchronisation Dateisysteme Datenbanken Fazit Literatur

Inhalt

1 Motivation

2 manuelle SynchronisationrsyncUnison

3 verteilte DateisystemeFicus und RumorOceanStoreThe Free Network ProjectThe Fast Secure File SystemSSHFS

4 Datenbanken

5 Fazit

Sven Gärner Synchronisation und verteilte Dateisysteme

Page 21: Synchronisation und verteilte Dateisystemeubicomp/projekte/master07-08-aw/gaerner/...MotivationSynchronisationDateisystemeDatenbankenFazitLiteratur Inhalt 1 Motivation 2 manuelle Synchronisation

Motivation Synchronisation Dateisysteme Datenbanken Fazit Literatur

Fazit I

rsynceffizient und flexibel beim Übertragen ganzerDateien

unisonoptimiert auf Synchronisation vieler Verzeichnisse

Ficus und RumorReplikation auf Dateisystem- undBenutzerprozess-Ebene

OceanStoreReplikation und VersionierungArchivierung mit Hilfe von Erasure Codes

Sven Gärner Synchronisation und verteilte Dateisysteme

Page 22: Synchronisation und verteilte Dateisystemeubicomp/projekte/master07-08-aw/gaerner/...MotivationSynchronisationDateisystemeDatenbankenFazitLiteratur Inhalt 1 Motivation 2 manuelle Synchronisation

Motivation Synchronisation Dateisysteme Datenbanken Fazit Literatur

Fazit II

The Free Network ProjectCachingPeer-to-Peer System

The Fast Secure File SystemVerschlüsselung von DateienZugriff auf entferntes Dateisystem

SSHFSverschlüsselter und authentifizierter Zugriff via SSH

DatenbankenReplikation und SynchronisationVersionierung

Sven Gärner Synchronisation und verteilte Dateisysteme

Page 23: Synchronisation und verteilte Dateisystemeubicomp/projekte/master07-08-aw/gaerner/...MotivationSynchronisationDateisystemeDatenbankenFazitLiteratur Inhalt 1 Motivation 2 manuelle Synchronisation

Motivation Synchronisation Dateisysteme Datenbanken Fazit Literatur

Literatur I

I. Clarke, M. Toseland, O. Sandberg, et al.The Free Network Project.[letzter Zugriff: 29. Dezember 2007].

N. Cocchiaro.Fast Secure File System.[letzter Zugriff: 29. Dezember 2007].

Free Software Foundation.Concurrent Versioning System.[letzter Zugriff: 27. Juli 2007].

FUSE Developers.FUSE - Filesystem in Userspace.[letzter Zugriff: 27. Juli 2007].

Sven Gärner Synchronisation und verteilte Dateisysteme

Page 24: Synchronisation und verteilte Dateisystemeubicomp/projekte/master07-08-aw/gaerner/...MotivationSynchronisationDateisystemeDatenbankenFazitLiteratur Inhalt 1 Motivation 2 manuelle Synchronisation

Motivation Synchronisation Dateisysteme Datenbanken Fazit Literatur

Literatur II

M. Satyanarayanan and Carnegie Mellon UniversityStudents.Coda.[letzter Zugriff: 27. Juli 2007].

P. Mackeras, A. Tridgell, and W. Davison.rsync.[letzter Zugriff: 27. Juli 2007].

OpenBSD.OpenSSH.[letzter Zugriff: 27. Juli 2007].

D. G. Popek, D. P. Reiher, et al.Ficus and Rumor.[letzter Zugriff: 29. Dezember 2007].

Sven Gärner Synchronisation und verteilte Dateisysteme

Page 25: Synchronisation und verteilte Dateisystemeubicomp/projekte/master07-08-aw/gaerner/...MotivationSynchronisationDateisystemeDatenbankenFazitLiteratur Inhalt 1 Motivation 2 manuelle Synchronisation

Motivation Synchronisation Dateisysteme Datenbanken Fazit Literatur

Literatur III

Subversion Development Team.Subversion.[letzter Zugriff: 27. Juli 2007].

Sun Microsystems.Network File System.[letzter Zugriff: 27. Juli 2007].

M. Szeredi.SSHFS.[letzter Zugriff: 27. November 2007].

The OpenSSL Project.OpenSSL.[letzter Zugriff: 06. Januar 2008].

Sven Gärner Synchronisation und verteilte Dateisysteme

Page 26: Synchronisation und verteilte Dateisystemeubicomp/projekte/master07-08-aw/gaerner/...MotivationSynchronisationDateisystemeDatenbankenFazitLiteratur Inhalt 1 Motivation 2 manuelle Synchronisation

Motivation Synchronisation Dateisysteme Datenbanken Fazit Literatur

Literatur IV

UC Berkeley Computer Science Division.Ocean Store.[letzter Zugriff: 29. Dezember 2007].

unison Development Team.unison.[letzter Zugriff: 27. Juli 2007].

Sven Gärner Synchronisation und verteilte Dateisysteme