P2P DATENBANKEN

Werbung
P2P DATENBANKEN
Anwendungen 1 – WS 2009/2010
Julissa Cusi Juarez
Department Informatik
HAW H b
HAW Hamburg
02.12.2009
1
Agenda
1.
2.
3.
4.
5.
6.
Motivation
Klassische Datenbanksysteme
Verteilte Datenbanksysteme
Peer‐to‐Peer (P2P)
P2P Datenbanksysteme
Query Processing in P2P Datenbanksystemen
6.1. Beispiel: Skyframe
7. Zusammenfassung
Z
f
8. Ausblick
a. Literatur
2
1. Motivation
y Entwicklung der Endbenutzer‐Kapazitäten
Entwicklung der Endbenutzer Kapazitäten
y Hohe Rechenleistung
y Hohe Speicherkapazität
y Entwicklung der Kommunikations‐Netzwerke
y Breitbandverbindung verfügbar
y Flatrate
y Content Sharing Websysteme
y Hoher Bedarf, Information auszutauschen
Hoher Bedarf Information auszutauschen
y Hohe Anzahl von Benutzern weltweit
3
2. Klassische Datenbanksysteme
y Basierend auf Client/Server y
y
y
y
Model Zentralisiertes DBS paßt gut Zentralisiertes DBS, paßt gut zu zentralisierten Unternehmen
Zentrale Administration des Servers
Steuert relationale Datenbanken
Benutzt SQL Anfragesprache
4
3. Verteilte Datenbanksysteme
y Ein Verteiltes Datenbank‐
managementsystem ist eine Software, die eine oder mehrere logisch zusammenhängende Datenbanken über ein Netzwerk steuert.
5
3. Verteilte Datenbanksysteme
Klassifikation
y Dimension Autonomie
0: Vollständige Integration
g
g
1: Semi‐autonome System
2: Vollständige Autonomie
y Dimension Verteilung
0: Nicht verteilt (zentralisiert)
1: Client / Server System
2: Verteilung Peer‐to‐Peer
y Dimension Heterogenität
0: Homogenes System
g
y
1: Heterogenes System
6
3. Verteilte Datenbanksysteme
Fragmentierung: Verteilung der Daten auf Knoten
y Horizontal (Zeilen)
y Vertikal (Spalten)
y Hybrid
Replikation : Absichtlich redundante Speicherung der Daten auf den Knoten
y Vollständige Replikation
y Partielle Replikation
y Keine Replikation
7
4. Peer‐to‐Peer (P2P)
y Overlay Architektur
y Dezentralisiertes und selbstorganisiertes System g
y
y Das System ist dynamisch
y Peers sind gleichberechtigt und P
i d l i hb
h i d autonom
y Kein Peer hat einen Überblick über das Gesamtsystem
y Benutzt verteilte und geteilte Ressourcen
8
4. Peer‐to‐Peer (P2P)
Eigenschaften
y Skalierbarkeit bezüglich der Knotennummer
y Dezentralisiert
D
li i
i d i
in der reinsten Form von P2P Netzen, gibt es F
P P N
ib kein Konzept von „Server“
y Autonomie bezüglich Speicherung, Ausführung, Standzeit und Verbindung
y Direkter Zugriff auf Daten der verschiedenen Knoten
y Robustheit und Härtung gegen Peer‐Ausfälle
gegen Peer Ausfälle
y Einfache Entwicklung, weil die Knoten keine besondere I f
Infrastruktur brauchen
k b
h
9
4. Peer‐to‐Peer (P2P)
Unstrukturierte P2P Netze
y
y
y
y
Overlay Links beliebig etabliert
Anfragebearbeitung durch Flutung“
Anfragebearbeitung durch „Flutung
Manchmal können die Anfragen nicht beantwortet werden
Flutung erzeugt hohen Kommunikationsoverhead
g
g
Typen
Beispiel
Zentralisierte P2P‐Systeme Napster
R i P P S
Reine P2P‐Systeme G
Gnutella 0.4, Freenet
ll F
y
y
Hybride P2P‐Systeme Gnutella 0.6, Gnutella2, JXTA
,
,J
10
4. Peer‐to‐Peer (P2P)
Unstrukturierte Systeme, zentralisiertes P2P: Napster
Napster Protokoll [8]
11
4. Peer‐to‐Peer (P2P)
Unstrukturierte Systeme, reines P2P: Gnutella 0.4
Gnutella Protokoll [8]
12
4. Peer‐to‐Peer (P2P)
Strukturierte P2P Netze
y Benutzen Distributed Hash Table (DHT)
y Jeder Peer ist verantwortlich für einen bestimmten Teil des i
b i
T il d Netzwerkgehaltes
y Das Protokoll wird benutzt, um die geeigneten Peers zu finden
g g
y Höhere Erhaltungskosten
y Beispielsysteme: CAN, Chord
B i i l t
CAN Ch d
CAN
Chord
13
4. Peer‐to‐Peer (P2P)
Strukturierte Systeme : Distributed Hash Tables (DHT)
Distributed Hash Tables [7]
14
5. P2P Datenbanksysteme
y Eine Kollektion vom lokalen autonomen Datenbehältern (Peers)
y Man kombiniert die dezentralisierten Eigenschaften und die Autonomie der P2P Syteme mit der Semantik der VDBS
y Man vermeidet globale Datenbankschemata
Integrationarchitektur der Daten [1]
Daten [1]
15
5. P2P Datenbanksysteme
Vorteile
y P2P‐Vorteile bleiben erhalten, z.B. hohe Skalierbarkeit
Sk
li b k it
y Keine besondere Infrastruktur in den Knoten erforderlich
Nachteile
y Keine Garantie alle Antworten zu erhalten
y SQL typischerweise nicht unterstützt
Q yp
16
6. Query Processing in P2P DBS
y Anfragen werden durch das Overlaynetz verbreitet
y Man benutzt
benut t spezifische
spe ifische Indexes
Inde es
y Anfragesprache
f
h oft
f begrenzt
b
und
d von der
d
Art des
d
Netzwerkes abhängig
y Es g
gibt keine Garantie, alle Antworten zu erhalten
y Benutzt Replikation
Replikation‐ und Laufzeittoleranztechniken
17
6. Query Processing in P2P DBS
Abhängigkeiten vom verfügbaren Index
Typen
Beschreibung
K i I d
Kein Index
R ti d h Fl t
Routing durch Flutung (wie in Gnutella 0.4)
( i i G t ll )
Zentralisierter Index
Ein Peer hat die Information über den Inhalt von allen Knoten Bottleneck (wie in Napster)
Knoten. Bottleneck
Verteilter Index Unstrukturierten Routing Indexes, ein Peer hat Systeme
Information über den Inhalt von erreichbaren Knoten
(hängt von Overlaytopologie ab)
Strukturierten St
kt i t Systeme
JJeder Peer hat Indexinformation d P h t I d i f
ti aller Daten über die Hash Funktion
18
6. Query Processing in P2P DBS
Mögliche Datenmodelle und Anfragesprachen
Datenmodell Anfragesprache
XML
XPath, XQuery
RDF
SPARQL, Logic Language
19
6.1. Beispiel: Skyframe
Skyline Query
y
y
Beispiel von Skyline Query im zweidimensionalen Raum [6]
20
6.1. Beispiele: Skyframe
Architektur
1.
Q
Query Processing Manager: P
i M
Greedy Skyline Search (GSS) und G d Sk li S
h (GSS) d Relaxed Skyline Search (RSS)
Greedy Skyline Search [6]
Greedy Skyline Search [6]
Relaxed Search Space [6]
Relaxed Search Space [6]
21
6.1. Beispiele: Skyframe
Architektur
2.
3.
Query load‐balancing Manager
Q
y
g
g
y Query load balanced Partition
y Dynamic query load balancing
Skyframe
Skyframe [6]
22
7. Zusammenfassung
y Ein P2P DBS kombiniert die dezentralisierten Eigenschaften und die Autonomie der P2P Systeme mit der Semantik der VDBS.
y Es gibt verschiedene Query Processing Methoden je nach Overlayarchitektur.
y Es gibt verschiedene Datenmodelle und Anfragesprachen, je nach P2P Netz.
y Skyframe ist ein beispielhaftes Framework, das den y
p
,
Zeitverlauf optimiert und niedrige Netzwerk‐
kommunikationskosten erreicht.
23
8. Ausblick
y Entwicklung von einem Query‐Processing‐Verfahren Entwicklung von einem Query Processing Verfahren für ein strukturiertes P2P‐System
y Anwendung des Verfahrens in typischen Szenarien
y Vergleich des entwickelten Verfahrens mit existierenden Verfahren für das betrachtete Szenario
24
A. Literatur
[1]
A. Bonifati, P. K. Chrysanthis, A. M.Ouksel, K. Sattler. Distributed
Databases and Peer‐to‐Peer Databases: Past and Present. In ACM SIGMOD
Record, Vol.37 No.1, 2008.
[2]
A. Eyal, A.Gal. Self Organizing Semantic Topologies in P2P Data Integration
Systems. In IEEE International Conference on Data Engineering, 2009.
[3]
X. Shen, Z. Li. Implementing Database Management System in P2P
N
Networks.
k In
I International
I
i
l Seminar
S i
on Future
F
I f
Information
i Technology
T h l
and
d
Management Engineering , 2008.
[4]
M. Karnstedt,
M
Karnstedt K.
K Sattler,
Sattler M.
M Haß,
Haß M.
M Hauswirth,
Hauswirth B.
B Sapkota,
Sapkota R.
R Sachmidt.
Sachmidt
Estimating the Number of Answers with Guarantees for Structured Queries
in P2P Databases. In ACM Conference on Information and Knowledge
Management CIKM´08, 2008.
25
A. Literatur
[5]
G. Koloniari, E. Pitoura. Peer‐to‐Peer Management of XML Data: Issues and
Research Challenges. In ACM SIGMOD Record, Vol.34 No.2, 2005.
[6]
S. Wang, Q. H. Vu, B. C. Ooi, A. K. H. Tung, L. Xu. Skyframe: a framework
for skyline query processing in peer‐to‐peer systems. In VLDB Journal, Vol.18,
No.1, 2009.
[7]
http://en.wikipedia.org/wiki/Distributed_hash_table
[8]
http://www.umkc.edu/is/security/p2p_explanation.asp
26
Vielen Dank für Ihre Vi
l D k fü Ih Aufmerksamkeit !
27
Herunterladen