synchronisation und verteilte...

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

Upload: others

Post on 07-Sep-2019

5 views

Category:

Documents


0 download

TRANSCRIPT

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