Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Modelle und Speicherungsstrukturen für Kontextinformationen

Ähnliche Präsentationen


Präsentation zum Thema: "Modelle und Speicherungsstrukturen für Kontextinformationen"—  Präsentation transkript:

1 Modelle und Speicherungsstrukturen für Kontextinformationen
Seminar „Mobile und Kontextbewusste Datenbanktechnologien und anwendungen“ Ansgar Lamersdorf

2 Agenda Motivation Kontextmodelle Indexstrukturen Anwendung: Nexus
Kontext-bewusste Anwendungen Ort als Kontext Kontextmodelle Indexstrukturen Nexus Seminar: Mobile und Kontextbewusste Datenbanktechnologien und -anwendungen

3 Motivation Eigenschaften kontextbewusster Anwendungen:
Kontext registrieren (Sensoren) Kontextdaten speichern Kontextdaten abrufen Auf Kontext reagieren Verhalten abhängig von aktuellen und gespeicherten Kontextinformationen Aktuelle Kontextdaten müssen mit gespeicherten Daten verglichen werden können Objekte werden abhängig von Kontextdaten gesucht Motivation Kontext-bewusste Anwendungen Ort als Kontext Kontextmodelle Indexstrukturen Nexus Seminar: Mobile und Kontextbewusste Datenbanktechnologien und -anwendungen

4 Beispiel Beispiel einer mobilen kontextbewussten Anwendung: Tourist Guide Angezeigte Informationen variieren nach Kontext (hier: Ort) Motivation Kontext-bewusste Anwendungen Ort als Kontext Kontextmodelle Indexstrukturen Nexus Das 1670 erbaute Hauptschloss wurde errichtet von… Die im Jahre 1720 angebaute Kirche galt zunächst… Seminar: Mobile und Kontextbewusste Datenbanktechnologien und -anwendungen

5 Anforderungen an kontextbewusste Anwendungen
Kontextdaten Speichern Erkennen Abrufen Vergleichen ... Verknüpfung von Objekten mit Kontextdaten Objekt an Kontext speichern Objekte nach ihrem Kontext suchen Kontextbeziehungen zwischen Objekten erkennen Motivation Kontext-bewusste Anwendungen Ort als Kontext Kontextmodelle Indexstrukturen Nexus Seminar: Mobile und Kontextbewusste Datenbanktechnologien und -anwendungen

6 Arten von Kontextdaten
Viele verschiedene Informationen können als Kontextdaten relevant sein Ort Zeit Temperatur Helligkeit Interessen des Nutzers Zustand des Nutzers (Hunger, Müdigkeit…) Unterschiedliche Datentypen Dimensionalität Komplexität Änderungsrate Hier: Fokussierung auf Ort als Kontext Motivation Kontext-bewusste Anwendungen Ort als Kontext Kontextmodelle Indexstrukturen Nexus Seminar: Mobile und Kontextbewusste Datenbanktechnologien und -anwendungen

7 Ort als Kontext Gründe für Festlegung auf Ort:
Am weitesten verbreitete Art von Kontextdaten Besonders wichtig bei mobilen Systemen Gut zu modellierendes Merkmal (etwa im Vergleich zu ‚Interessen‘) Mehrdimensionale Daten (2 oder 3), erfordern spezielle Zugriffsarten Motivation Kontext-bewusste Anwendungen Ort als Kontext Kontextmodelle Indexstrukturen Nexus Konkret: Objekte mit Ort als Kontext Speichere Objekt ‚Drucker‘ in Raum 220 Welche Objekte liegen an den Koordinaten 200/300/50? Welche Objekte vom Typ ‚Drucker‘ befinden sich in 20 m Entfernung von Objekt ‚Hans‘? Was ist die Entfernung zwischen ‚Hans‘ und ‚Heinz‘? Wdh: Verknüpfung von Objekten mit Kontextdaten Objekt an Kontext speichern Objekte nach ihrem Kontext suchen Kontextbeziehungen zwischen Objekten erkennen Seminar: Mobile und Kontextbewusste Datenbanktechnologien und -anwendungen

8 Notwendige Elemente kontextbewusster Anwendungen
Kontextmodell Welche Eigenschaften des Kontexts (Ortes) werden gespeichert? – Welche Abfragen sind möglich? Speicherungsstrukturen Wie kann der Kontext (Ort) effizient gespeichert werden? Wie kann schnell (logarithmisch) nach dem Kontext gesucht werden? Motivation Kontext-bewusste Anwendungen Ort als Kontext Kontextmodelle Indexstrukturen Nexus Seminar: Mobile und Kontextbewusste Datenbanktechnologien und -anwendungen

9 Kontextmodelle Legen fest, welche Eigenschaften des Kontexts betrachtet werden können Zu speichernde Attribute Informationen, die später verwendet werden können Bestimmen wie Kontextdaten gespeichert und abgerufen werden können Verknüpfungen von Daten mit Objekten Verknüpfungen von Daten untereinander Räumliche Modelle legen fest Über welche Attribute wird der Ort gespeichert? Wie präzise wird der Ort gespeichert? Wie wird ein Objekt einem Ort zugeordnet? Zwei grundsätzliche Arten von Kontextmodellen Geometrisch Hierarchisch (symbolisch, topologisch) Motivation Kontextmodelle Geometrisch vs. Hierarchisch Semantic Spaces Hu&Lee Aura Indexstrukturen Nexus Seminar: Mobile und Kontextbewusste Datenbanktechnologien und -anwendungen

10 Geometrische Modelle Beispiel: Geographische Koordinaten (z.B. GPS)
Längengrad Breitengrad Höhe über NN Ort eindeutig durch (2 / 3) Koordinaten beschrieben Einfache geometrische Berechnungen Beziehungen zwischen Orten (z.B. Pythagoras für Entfernung) Umrechnungen zwischen verschiedenen Systemen Motivation Kontextmodelle Geometrisch vs. Hierarchisch Semantic Spaces Hu&Lee Aura Indexstrukturen Nexus Seminar: Mobile und Kontextbewusste Datenbanktechnologien und -anwendungen

11 Hierarchische Modelle
Beispiel Adresse Land – Postleitzahl – Stadt – Straße – Nummer Hierarchische Anordnung von Räumen Jedes Objekt in einem Raum gleichzeitig in allen übergeordneten Räumen Unterschiedliche Arten: Jedes Objekt in nur einem direkt übergeordneten Raum Baum Objekte können in mehreren direkt übergeordneten Räumen liegen Gerichteter Azyklischer Graph Beziehungen zwischen Objekten durch gemeinsame übergeordnete Räume TU KL Motivation Kontextmodelle Geometrisch vs. Hierarchisch Semantic Spaces Hu&Lee Aura Indexstrukturen Nexus Gebäude 32 Gebäude 36 Gebäude 48 1. Stock 2. Stock 3. Stock 4. Stock Raum 36/330 Raum 36/332 Seminar: Mobile und Kontextbewusste Datenbanktechnologien und -anwendungen

12 Geometrisch vs. Hierarchisch
+ einfache geometrische Berechnungen möglich + Enthaltens- und Nachbarschaftsbeziehungen sehr schnell berechenbar + leichte Integration verschiedener Datenquellen + Geringe Datenmengen + einfache Attribute - Viele Berechnungen (z.B. Entfernung) nicht möglich - Sehr schnell große Datenmengen - Verschiedene Modelle nur schwer integrierbar Motivation Kontextmodelle Geometrisch vs. Hierarchisch Semantic Spaces Hu&Lee Aura Indexstrukturen Nexus Auch Mischformen zwischen beiden Modellen möglich Seminar: Mobile und Kontextbewusste Datenbanktechnologien und -anwendungen

13 Semantic Spaces Beispiel für ein hierarchisches Kontextmodell
Barry Brumitt & Steven Shafer (Microsoft Research) Zwei Arten von Orten: Space Ausdehnung Kann weitere Orte enthalten Typ (z.B. Zimmer, Gebäude) Atom Ohne weitere Ausdehnung Nicht weiter unterteilbar Ort eines einzelnen Objektes (Person, Gegenstand…) Beziehungen zwischen Orten: Containment: Space x Space Raum ist in anderem Raum vollständig enthalten (keine Überlappung) Presence: Atom x Space Objekt liegt in Raum Ort kann mehreren Orten direkt untergeordnet sein Keine baumartige Hierarchie Motivation Kontextmodelle Geometrisch vs. Hierarchisch Semantic Spaces Hu&Lee Aura Indexstrukturen Nexus Seminar: Mobile und Kontextbewusste Datenbanktechnologien und -anwendungen

14 Semantic Spaces Realisiert als Datenbankschema
Motivation Kontextmodelle Geometrisch vs. Hierarchisch Semantic Spaces Hu&Lee Aura Indexstrukturen Nexus Ort beweglicher Objekte einfach feststellbar Computer, an dem Person eingeloggt ist Netzwerkknoten, mit dem PDA verbunden ist Schnelle Suche nach nächstliegenden Objekten (z.B. Drucker) Objekte im selben Space Rekursiv in übergeordneten Spaces Aber: Wenig Informationen Aussagen über Lage von Objekten im Space Entfernungsangaben Seminar: Mobile und Kontextbewusste Datenbanktechnologien und -anwendungen

15 Semantic Spaces Darstellung im Editor (zur Administration)
Angelehnt an Windows Explorer Problem: Baum-darstellung, obwohl keine Baumstruktur Motivation Kontextmodelle Geometrisch vs. Hierarchisch Semantic Spaces Hu&Lee Aura Indexstrukturen Nexus Seminar: Mobile und Kontextbewusste Datenbanktechnologien und -anwendungen

16 Hybride Kontextmodelle
Hybride Modelle: Vorteile beider Typen Hierarchisch: einfach und schnell Geometrisch: genaue Berechungen Hierarchische Anordnung Koordinaten oder Entfernungsangaben Beispiel: zwei hybride Modelle Anreicherung eines hierarchischen Modells mit Entfernungen Hierarchische Koordinatensysteme Motivation Kontextmodelle Geometrisch vs. Hierarchisch Semantic Spaces Hu&Lee Aura Indexstrukturen Nexus Seminar: Mobile und Kontextbewusste Datenbanktechnologien und -anwendungen

17 Hu&Lee Kontextmodell Reichert hierarchisches Kontextmodell mit Entfernungsangaben an Grundelemente Ort Exit Zwischen zwei Orten Aus dem Modell heraus Beispiel: Orte: Zimmer, Flur Exit: Tür zwischen Zimmer und Flur Hierarchie zwischen Exits: Exits aus dem Modell heraus Untergeordnete Exits sind Weiter entfernt vom „Haupt-Ausgang“ durch nur einen Ort erreichbar Orts-Hierarchie analog Motivation Kontextmodelle Geometrisch vs. Hierarchisch Semantic Spaces Hu&Lee Aura Indexstrukturen Nexus Seminar: Mobile und Kontextbewusste Datenbanktechnologien und -anwendungen

18 Hu&Lee Kontextmodell Beispiel:
Motivation Kontextmodelle Geometrisch vs. Hierarchisch Semantic Spaces Hu&Lee Aura Indexstrukturen Nexus i e c b j d a f h g Entlang der Exit-Hierarchie werden zusätzlich Entfernungen gespeichert Entfernungen zwischen zwei beliebigen Exits berechenbar Kürzester Weg kann herausgefunden werden Seminar: Mobile und Kontextbewusste Datenbanktechnologien und -anwendungen

19 Aura-Kontexmodell Aura-Projekt an der Carnegie Mellon University
Ordnet verschiedene Koordinatensysteme hierarchisch untereinander an Grundelemente Raum (z.B. Zimmer) Gebiet (z.B. W-LAN Empfangsbereich) Punkt Jeder Raum verfügt über eigenes Koordinatensystem Ursprung und Drehung des Koordinatensystems in Koordinaten des übergeordneten Raumes Koordinatensysteme ineinander überführbar Entfernungen zwischen beliebigen Punkten berechenbar Motivation Kontextmodelle Geometrisch vs. Hierarchisch Semantic Spaces Hu&Lee Aura Indexstrukturen Nexus The Aura Project at Carnegie Mellon University is a ubiquitous computing project that focuses on minimizing the distractions to users Seminar: Mobile und Kontextbewusste Datenbanktechnologien und -anwendungen

20 Aura-Kontexmodell Motivation Kontextmodelle Geometrisch vs. Hierarchisch Semantic Spaces Hu&Lee Aura Indexstrukturen Nexus Identifikation von Elementen durch Aura Location Identifier (ALI) Raum: „ali://TU-KL/36/3/330“ Punkt: „ali://TUi-KL/36/3/330#(1,4,5)“ Gebiet: „ali://TU-KL/36/3/330#{(0,0),(1,0),(2,3)-(2,3)}“ Verschiedene Operationen auf ALIs definiert (hierarchisch & geometrisch) Seminar: Mobile und Kontextbewusste Datenbanktechnologien und -anwendungen

21 Indexstrukturen Bieten schnellen (≈logarithmischen) Zugriff auf Objekte über Kontextinformationen Räumliche Zugriffe: Welche Objekte liegen am Ort XY? Welche Objekte liegen in 50 m Entfernung von Z? Spezielle Zugriffspfade notwendig B(*)-Bäume nicht anwendbar, da mehrdimensional (Koordinaten) Vor allem wichtig für geometrische Modelle, bei hierarchischen Modellen oft nicht nötig Herkömmliche Strukturen (Semantic Spaces) Eigene Zugriffspfade (ALI) Motivation Kontextmodelle Indexstrukturen UB-Tree Quad-Tree R-Tree Nexus Seminar: Mobile und Kontextbewusste Datenbanktechnologien und -anwendungen

22 UB-Tree Grundprinzip: Umrechnung der Koordinaten mit Z-Verfahren
Mehrdimensionale Koordinaten werden auf eindimensionale umgerechnet Eindimensionale Koordinaten werden mit B*-Baum indiziert Umrechnung der Koordinaten mit Z-Verfahren Bitweise Verschränkung der einzelnen Koordinaten zu einer einzigen Zahl Suchen, Einfügen, Löschen genau wie in Datenbanken mit B*-Bäumen Motivation Kontextmodelle Indexstrukturen UB-Tree Quad-Tree R-Tree Nexus Seminar: Mobile und Kontextbewusste Datenbanktechnologien und -anwendungen

23 Z-Verfahren Bitweise Verschränkung: Abwechselnd Bits der einzelnen Koordinaten Beispiel: (10010,11101) → ( ) Motivation Kontextmodelle Indexstrukturen UB-Tree Quad-Tree R-Tree Nexus 1 2 3 4 5 6 7 16 17 20 21 18 19 22 23 8 9 12 13 24 25 28 29 10 11 14 15 26 27 30 31 32 33 36 37 48 49 52 53 34 35 38 39 50 51 54 55 40 41 44 45 56 57 60 61 42 43 46 47 58 59 62 63 Analog dreidimensionale Koordinaten Problem: Benachbarte Koordinaten oft keine benachbarten Zahlen Bereichssuche aufwändig Seminar: Mobile und Kontextbewusste Datenbanktechnologien und -anwendungen

24 Quad-Tree Grundprinzip: Binärer Suchbaum: Quad-Tree: 1 2 3 4 1 2 3 4
Abwandlung binärer Suchbäume Zwei Dimensionen statt einer Binärer Suchbaum: Jeder Knoten hat maximal 2 Kinder Links alle kleineren Werte, rechts alle größeren Quad-Tree: Jeder Knoten hat maximal 4 Kinder Nordosten, Nordwesten, Südwesten, Südosten Motivation Kontextmodelle Indexstrukturen UB-Tree Quad-Tree R-Tree Nexus 1 2 3 4 1 2 3 4 Seminar: Mobile und Kontextbewusste Datenbanktechnologien und -anwendungen

25 Quad-Tree Einfügen, Suchen: Rekursives Absteigen im Baum
Motivation Kontextmodelle Indexstrukturen UB-Tree Quad-Tree R-Tree Nexus D F Einfügen, Suchen: Rekursives Absteigen im Baum Balancierung notwendig, um logarithmische Zugriffe sicherzustellen Drei Dimensionen: Oct-Tree Seminar: Mobile und Kontextbewusste Datenbanktechnologien und -anwendungen

26 R-Tree Grundprinzip: Nicht nur Punkte sondern auch ausgedehnte Objekte
B*-Baum mit Rechtecken statt Zahlenbereichen Nicht nur Punkte sondern auch ausgedehnte Objekte Aufbau: Objekte in Blättern Minimal umschließendes Rechteck Übergeordnete Knoten: alle untergeordneten Rechtecke umschließend Rechtecke können sich überlappen Motivation Kontextmodelle Indexstrukturen UB-Tree Quad-Tree R-Tree Nexus Seminar: Mobile und Kontextbewusste Datenbanktechnologien und -anwendungen

27 R-Tree Beispiel: R1 R2 R3 R4 R5 23 24 21 G1 13 14 11 G2 G3 G4 12 22 R6
Motivation Kontextmodelle Indexstrukturen UB-Tree Quad-Tree R-Tree Nexus R8 R9 R1 R3 R2 R4 R5 21 22 23 24 R8 R9 11 12 13 14 R6 R7 G1 G2 G3 G4 Seminar: Mobile und Kontextbewusste Datenbanktechnologien und -anwendungen

28 R-Tree Suchen logarithmisch Einfügen und Löschen aufwändig
Rekursiv in den Rechtecken, die den gesuchten Bereich überschneiden Suche in mehreren Unterbäumen (Überlappung) Einfügen und Löschen aufwändig Einfügen: Übergeordnete Rechtecke vergrößern Löschen: Übergeordnete Rechtecke verkleinern Knoten entsprechend Füllgraden angepasste werden (wie B*-Baum) Erweiterung auf drei Dimensionen möglich Quader statt Rechtecke Motivation Kontextmodelle Indexstrukturen UB-Tree Quad-Tree R-Tree Nexus Seminar: Mobile und Kontextbewusste Datenbanktechnologien und -anwendungen

29 Vergleich der verschiedenen Strukuren
Motivation Kontextmodelle Indexstrukturen UB-Tree Quad-Tree R-Tree Nexus Mächtigkeit Komplexität der Zugriffe UB-Tree Nach Umrechnung sehr schnelle Operationen Nur Punktsuche effizient möglich Quad-Tree Tiefere Bäume Einfügen und Löschen komplexer durch Balancieren Auch begrenzt effiziente Bereichssuche R-Tree Ausgedehnte Objekte Bereichssuche Suchen z.T. in mehreren Zweigen Einfügen, Löschen sehr komplex Seminar: Mobile und Kontextbewusste Datenbanktechnologien und -anwendungen

30 Anwendung eines Kontextmodells
Nexus-Projekt Sonderforschungsbereich Universität Stuttgart Ziel: gemeinsames Weltmodell für ortsbasierte Anwendungen Allgemeines offenes Kontextmodell Lokale Modelle einzelner Anwendungen können integriert werden Gemeinsames XML-Schema Geometrisches Kontextmodell Objekte durch Koordinaten gespeichert „Augmented World Model“: Modell erweitert durch virtuelle Objekte (z.B. Litfasssäule) Motivation Kontextmodelle Indexstrukturen Nexus Seminar: Mobile und Kontextbewusste Datenbanktechnologien und -anwendungen

31 Architektur von Nexus Daten verteilt auf verschiedenen Kontext Servern
Motivation Kontextmodelle Indexstrukturen Nexus Daten verteilt auf verschiedenen Kontext Servern Föderationsschicht Registriert Kontext Server und integriert Daten Leitet Anfragen an zuständige Server weiter Konsistenz der Daten Seminar: Mobile und Kontextbewusste Datenbanktechnologien und -anwendungen

32 Klassifikation von Kontextdaten
Viele Arten von Kontextdaten unterstützt Klassifizierung nach Update Rate Zugriffshäufigkeit Motivation Kontextmodelle Indexstrukturen Nexus Unterschiedliche Kontext Server nach Klasse Sensoren Datenbanken Indexstrukturen Kontextserver als Wrapper Festgelegtes XML-Austauschformat Seminar: Mobile und Kontextbewusste Datenbanktechnologien und -anwendungen

33 Vielen Dank! Zusammenfassung Kontextmodelle Indexstrukturen
Legen fest, welche Attribute gespeichert werden Hierarchische vs. Geometrische Hybride Modelle Indexstrukturen UB-Tree, Quad-Tree, R-Tree Mächtigkeit vs. Komplexität Anwendung: Nexus Integration verschiedener Modelle Klassifikation von Kontextdaten Motivation Kontextmodelle Indexstrukturen Nexus Vielen Dank! Seminar: Mobile und Kontextbewusste Datenbanktechnologien und -anwendungen


Herunterladen ppt "Modelle und Speicherungsstrukturen für Kontextinformationen"

Ähnliche Präsentationen


Google-Anzeigen