Upload
hrolf-schiferl
View
106
Download
1
Tags:
Embed Size (px)
Citation preview
Sebastian Trapp11.12.2006
Seminar - Informationsverwaltung in SensornetzwerkenApproximative Aggregatberechnung
1 Informationsverwaltung in Sensornetzwerken
Seminarvortrag
Approximative Aggregatberechnung
Sebastian Trapp
Wintersemester 2006/2007
Universität Karlsruhe
IPD Böhm
Sebastian Trapp11.12.2006
Seminar - Informationsverwaltung in SensornetzwerkenApproximative Aggregatberechnung
2 Überblick
• Ziel• Verfahren zur Erstellung Duplikat-sensitiver Aggregate unter
Berücksichtigung der Widrigkeiten eines Sensornetzwerkes- minimale Datenübertragung- in-Network Verarbeitung mit minimalem Rechenaufwand im Knoten- funktionsfähig mit jedem best-effort Routing Protokoll
• Vorgehensweise• Motivation• Einführung FM Sketche• Anwendung der Sketche auf SUM Aggregate• Evaluation
Sebastian Trapp11.12.2006
Seminar - Informationsverwaltung in SensornetzwerkenApproximative Aggregatberechnung
3 Warum ein neuer Ansatz?
• Die herkömmlichen Anfragesysteme für Sensornetzwerke funktionieren schnell und energieeffizient
• Beispiel: TAG• Anfrage wird im Netz geflutet• Antwort erfolgt über einen Spannbaum• sehr gut für MIN, MAX, COUNT, AVG, SUM, ...
4
1
6
13
7S
5
38
Sebastian Trapp11.12.2006
Seminar - Informationsverwaltung in SensornetzwerkenApproximative Aggregatberechnung
4 Nachteile von TAG
• Knoten und Verbindungen in Sensornetzwerken sind nicht sehr zuverlässig• Knoten versagen aus Energiemangel• Drahtlose Kommunikation nicht zuverlässig
- Objekte zwischen Knoten stören Verbindung- Umwelteinflüsse stellen große Ausfallgefahr dar
• Ausfall eines Knotens oder einer Verbindung führt zum Verlust eines gesamten Teilbaumes
4
1
6
13
7S
5
38
Sebastian Trapp11.12.2006
Seminar - Informationsverwaltung in SensornetzwerkenApproximative Aggregatberechnung
5 Alternative zum Spannbaum
• Multi-Path Routing• Knoten verschickt Daten an alle Eltern (=Knoten einer höheren
Ebene)• Daten werden über verschiedene Pfade zum Ziel geleitet• Funktioniert für MIN, MAX, ...• Funktioniert nicht ohne weiteres für COUNT, AVG, SUM, ...
- Werte fließen mehrfach in das Aggregat ein
4
1
6
13
7S
5
38
8
8
8
88
8
8
83
5
3
55
5
MAXSUM
8
8
11
1230
35
11
173
5
3
512
12
Sebastian Trapp11.12.2006
Seminar - Informationsverwaltung in SensornetzwerkenApproximative Aggregatberechnung
6 Duplikat-insensitiv mit Multi-Path
• Jeder Knoten sendet an alle seine Eltern folgende Daten:• Seine gemessenen Daten, verknüpft mit seiner ID• erhaltene Daten seiner Kinder
• Anfragesteller am Sink wertet die Daten aus• durch Multi-Path Routing sehr zuverlässig• Duplikat insensitiv
• Nachteile:• großer Sendeaufwand• keine In-Network Verarbeitung• minimale Datenübertragung
-Ziel in Sensornetzen- verfehlt
4
1
6
13
7S
5
38
<8, ID1>
<8, ID1><3, ID2>
<8, ID1><3, ID2><1, ID3>
<8, ID1><1, ID4><6, ID5>
<8, ID1>
<8, ID1><1, ID4>
Sebastian Trapp11.12.2006
Seminar - Informationsverwaltung in SensornetzwerkenApproximative Aggregatberechnung
7 Anforderungen
• Anfragesystem soll folgende Bedingungen erfüllen:• In-Network Processing
- nur Aggregat wird gesendet- kleine Datenmenge
• Duplikat-insentitive Verarbeitung- Multi-Path Routing nutzen
• Wir betrachten nun das Duplikat sensitive Aggregat COUNT
Sebastian Trapp11.12.2006
Seminar - Informationsverwaltung in SensornetzwerkenApproximative Aggregatberechnung
8 Distinct Counting Problem
• Ein kleiner Ausflug• Erfassen der Anzahl der unterschiedlichen Messwerte
• Definition• Finde die Anzahl n der unterschiedlichen Elemente in einer
Mehrfachmenge M = x1, x2, ...
• Aufwand:• Exakte Lösung:
- Ω (n)
• Approximierte Lösung (FM Sketch) (log n)
[Flajolet, Martin, 1984]
Sebastian Trapp11.12.2006
Seminar - Informationsverwaltung in SensornetzwerkenApproximative Aggregatberechnung
9 FM Sketche
• Ein FM Sketch ist ein binäres Bitmap• Bezeichnung üblicherweise S(M)• Länge k im Anwendungsfall 16 bzw. 32 Bit
• Repräsentiert die Anzahl der verschiedenen eingefügten Werte
• Algorithmus zum Einfügen eines Wertes• Wert wird durch eine Hash-Funktion umgewandelt• im Hash-Wert wird Position i des ersten 1-bits ermittelt• das i-te Bit von S(M) wird auf 1 gesetzt
Sebastian Trapp11.12.2006
Seminar - Informationsverwaltung in SensornetzwerkenApproximative Aggregatberechnung
10 FM Sketch Beispiel
Einfügen eines Wertes- Wert wird durch eine Hash-Funktion umgewandelt- im Hash-Wert wird Position i des ersten 1-bits ermittelt- das i-te Bit von S(M) wird auf 1 gesetzt
Menge 40,17,12,17hash(x) = x2 (Binärdarstellung)
S(M) =
00010100
00000000
hash(40) =
00010000
10001000hash(17) =
10010000
00110000hash(12) =
10110000
Sebastian Trapp11.12.2006
Seminar - Informationsverwaltung in SensornetzwerkenApproximative Aggregatberechnung
11 Eigenschaften der FM Sketche
• Vereinigung von zwei Mehrfachmengen ist ein bitweises OR ihrer FM Sketche• keine teure Berechnung• konstanter Speicherbedarf
• S(M) - der Sketch - ist eindeutig bestimmt durch die verschiedenen Elemente von M• Duplikate oder Reihenfolge haben keinen Einfluss
• Eine Einfügeoperation ist in O(1) Zeit realisierbar
Sebastian Trapp11.12.2006
Seminar - Informationsverwaltung in SensornetzwerkenApproximative Aggregatberechnung
12 Beispiel
• Vereinigung zweier Mengen
40, 17 U 12, 17 = 40, 17, 12, 17
• Reihenfolge und Duplikate spielen keine Rolle
40, 17 = 17, 40, 17
101100001010000010010000 OR =>
10010000 10010000
Sebastian Trapp11.12.2006
Seminar - Informationsverwaltung in SensornetzwerkenApproximative Aggregatberechnung
13 Aussage des Sketches
• Hashfunktion optimalerweise zufällig verteilt
• Wahrscheinlichkeit, dass Bit z bei einer Einfügung gesetzt wird• p(z) = 2-z
• Wahrscheinlichkeit, dass Bit z gesetzt ist, nach n Einfügungen• p(z) = n * 2-z
• Theoretisch:• nach 27 = 128 Einfügungen
• Position der ersten 0 (Rn) ist 7
• Rn lässt Schluss zu auf Anzahl der eingefügten Werte n
=> Rn = log2n
1111111000000000
0 7 15
Rn
Sebastian Trapp11.12.2006
Seminar - Informationsverwaltung in SensornetzwerkenApproximative Aggregatberechnung
14 Sketch Eigenschaften
• Ein FM Sketch enthält also:• Präfix aus 1en• Postfix aus 0en• eine zufällige Verteilung „in der Mitte“
• Abschätzungen
1111111011000000
0 15
Präfix Rn Postfix
€
log2 n −2* log2 log2 n
€
Wahrscheinlichkeit =1−O ne− log22 n
( )
€
32 log2 n + δ
€
δ ≥0 und Wahrscheinlichkeit =1−O 2−δ
n( )
€
E Rn( ) ≈ log2 ϕn( ) mit ϕ ≈ 0,775351
Sebastian Trapp11.12.2006
Seminar - Informationsverwaltung in SensornetzwerkenApproximative Aggregatberechnung
15 Sketch zu COUNT
• Approximation des Aggregatwertes n• Anzahl der verschiedenen „gezählten“ Elemente
• finde Position Rn des ersten 0-bits im Sketch
• Erwartungswert
• Rn = 8
1111111101100000
0 8 15
€
E Rn( ) ≈ log2 ϕn( )
€
⇒ 8 = log2 0,775351* n( )
⇒ 8 = log2 0,775351* 310( )
⇒ n ≈ 310
Sebastian Trapp11.12.2006
Seminar - Informationsverwaltung in SensornetzwerkenApproximative Aggregatberechnung
16 Sketch Beispiel COUNT
1
16
S
38
000100100100
100100
• COUNT
hash(8) = 000100
hash(1) = 100000hash(6) = 011000
hash(1) = 100000
hash(3) = 110000
000100
100100
100100
110100 110100
Sebastian Trapp11.12.2006
Seminar - Informationsverwaltung in SensornetzwerkenApproximative Aggregatberechnung
17 Sketch Beispiel SUM
• SUM
1
16
S
38
11101000 11101000
11101000
for i = 1 to 8 insert (random_number)11101000
10000000 01110000
0100000010100000
1110100011101000
11101000
11111000 11111000
Sebastian Trapp11.12.2006
Seminar - Informationsverwaltung in SensornetzwerkenApproximative Aggregatberechnung
18 Summen Sketche
• COUNT - zählen der unterschiedlichen Elemente
• SUM - summieren der Werte ci jedes Elementes
• SUM mit COUNT realisieren- „Zählen“ von ci verschiedenen Elementen
- also ci Einfügeoperationen in den Sketch pro Element
- Anzahl der unterschiedlichen, „gezählten“ Werte im Sketch ist gesuchte Summe
• Gleiche Genauigkeit wie COUNT bei O(ci) Aufwand für INSERT
• Schlechte Skalierbarkeit• linearer Aufwand• bei großen Zahlen nicht hinnehmbar
Sebastian Trapp11.12.2006
Seminar - Informationsverwaltung in SensornetzwerkenApproximative Aggregatberechnung
19 Effiziente Summen Sketche I
• Erinnerung• mit einer sehr großen Wahrscheinlichkeit enthält ein Sketch
- Präfix der Länge aus Einsen- Postfix aus Nullen beginnend an Stelle k
• Wir wollen ci „verschiedene“ Elemente einfügen
• Setzen der ersten Bits auf 1- Anzahl der Bits die mit sehr großer Wahrscheinlichkeit 1 sind
• Setzen der Bits ab k auf 0- danach folgen mit großer Wahrscheinlichkeit nur Nullen- k als Länge des Bitmaps ausreichend
€
δi
€
δi
111...111 000...000
0
€
δi k
€
k −δi Bits noch nicht gesetzt
Sebastian Trapp11.12.2006
Seminar - Informationsverwaltung in SensornetzwerkenApproximative Aggregatberechnung
20 Effiziente Summen Sketche II
• Wahrscheinlichkeit, dass Bits größer als gesetzt werden ist binomial verteilt
• Daher• Nehme einen zufälligen Wert m aus der Binomialverteilung
- man geht davon aus, dass m Elemente die Grenze erreicht hätten
• Füge m Elemente ein- betrachte jedoch erst die Bits ab Position
€
δi
€
δi
111....111 0100 000...000
0
€
δi k
€
k −δi
€
δi
hash(x)= 010....110 0100010...111
Sebastian Trapp11.12.2006
Seminar - Informationsverwaltung in SensornetzwerkenApproximative Aggregatberechnung
21 Laufzeitabschätzung
• Einfügen eines Wertes mit Quantität braucht Zeit
• Ermittlung der Binomialverteilung ist aufwändig• Fließkomma Operationen oder• Platz für vorberechnete Tabellen• beides nicht vorhanden auf Sensorknoten
• Verwendung von Approximativem Algorithmus- Wert aus der Binomialverteilung benötigt
- Zeit
- Platz [Li, Kollios, Byers]
• Erwartungswert und Varianz entsprechend COUNT• Varianz groß: Abweichungen von Faktor 2 möglich
=> Varianz verbessern
€
c i
€
O log2 c i( )
€
B n, p( )
O np( )
O 1p( )
Sebastian Trapp11.12.2006
Seminar - Informationsverwaltung in SensornetzwerkenApproximative Aggregatberechnung
22 Varianz verbessern
• Modifikation des FM Sketches• PCSA - Probabilistic Counting with Stochastic Averaging
• Wert wird in m verschiedene Bitmaps eingetragen- diese m Bitmaps sind das zu versendende Paket
• Zerlegung: ci = qim + ri
• qi werden zu jedem Bitmap hinzugefügt
• ri zu einem zufälligen
• Vorteil: Verbesserte Varianz• Nachteil: pro INSERT Zeit
€
O m log2( cim )( )
Sebastian Trapp11.12.2006
Seminar - Informationsverwaltung in SensornetzwerkenApproximative Aggregatberechnung
23 Analyse - TAG vs Sketch
• Szenario mit 10% Link Verlust Rate und COUNT Anfrage
• TAG• Platzbedarf
- 2 Byte
• Baum- nur 36,9 % der Knoten werden gezählt
• Sketch• Platzbedarf
- 16 Bit Sketch: 2 Byte- PCSA: z.B.: 20*2 Byte
• Multi-Path Routing- 99% der Knoten werden gezählt
Sebastian Trapp11.12.2006
Seminar - Informationsverwaltung in SensornetzwerkenApproximative Aggregatberechnung
24 Platzbedarf
• TAG• 2 Byte Daten
• FM Sketch• 16 bit Sketch
- 2 Byte
• Mit PCSA- 20 * 2 Byte
• Komprimierung auf 30% (ca. 20 Byte)
Sebastian Trapp11.12.2006
Seminar - Informationsverwaltung in SensornetzwerkenApproximative Aggregatberechnung
25 Experimentelle Evaluation
• TAG vs Sketch
• Link Verlust Rate 5 %• 30 x 30 Gitter
• Grafik aus dem Paper...
Sebastian Trapp11.12.2006
Seminar - Informationsverwaltung in SensornetzwerkenApproximative Aggregatberechnung
26 Zusammenfassung
• Standardverfahren (TAG, ...)• Effizient bei geringen Fehlerraten• Multi-Path nur für Duplikat-insensitive Aggregate
• FM Sketche • Multi-Path-Routing für Duplikat-sensitive Anfragen• robust bei moderatem Verbindungsverlust• hohe Effizienz und Zuverlässigkeit in der Anwendung
• Quellen:- „Approximate Aggregation Techniques for Sensor Databases“ von Considine, Li,
Kollios and Byers
- „Probabilistic Counting Algorithms for Data Base Applications“ von Philippe Flajolet und G. Nigel Martin, 1985