Big Data Top-k / Ranking / Skyline Semantic Web: RDF Information Retrieval PageRank / HITS Map Reduce: Massiv parallele Verarbeitung Datenströme Peer to.

Slides:



Advertisements
Ähnliche Präsentationen
Ebru Iscan, Andrea Kováčová Experimente Seminar "Experimentielle Evaluierung im IR"
Advertisements

ER-Datenmodell und Abfragen in SQL
Seminar Service Aspects in ad-hoc and P2P networks Database functionality in P2P-networks von Thorsten Weiberg.
Übung Datenbanksysteme WS 2003/ Übung Datenbanksysteme Entwurf eines Bibliothekssystems
Folien 2-5, 7-8 © Prof. Dr. Manfred Rössle (FH Aalen)
Objekt – Relationales – Modell Tomasz Makowski IN
PlanetenWachHundNetz Instrumenting Infrastructure for PlanetLab.
Systemüberblick Beispiele: Microsoft Access Oracle Ingres Informix
Datenbanken I (0,*) Produkt 3 Karczewski Datenbanken I.
Lehrstuhl Informatik III: Datenbanksysteme Achim Landschoof 28. April 2009 Strukturierte P2P Systeme 1 Achim Landschoof Betreuerin: Dipl.-Inf. Jessica.
Anfragesprachen – Dipl. Ing. Ulrich Borchert / FH Merseburg1/7 Datenbanken werden als Anhäufung von Werten eines Wertebereiches aufgefasst und Datenbankabfragen.
Anfragesprachen – Dipl. Ing. Ulrich Borchert / FH Merseburg 1/7
SQL als Abfragesprache
Seminar parallele Programmierung SS 2003
Datenmodelle, Datenbanksprachen und Datenbankmanagementsysteme
SQL/XML. © Prof. T. Kudraß, HTWK Leipzig 2 2 Motivation Speicherung von XML in allen großen kommerziellen DBMS vorhanden proprietäre Lösungen für die.
Transaktionen in verteilten Datenbanken
Text-Retrieval mit Oracle Vortrag von Andreas Mück & David Diestel.
Otto-von-Guericke-Universität MagdeburgGamal Kassem Übung 7 Reports mit Datenbankzugriff.
Der letzte Schliff für Abfragen Übersicht über die Aggregatfunktionen.
Access 2000 Datenbanken.
SQL 2 Order by null Aggregatfunktionen group by Join subselect.
Was sind Histogramme? (1)
Datenmodellierung - Aufbau einer Datenbank -
Der Supermarkt: Eine beispielhafte Erklärung für die fünf untersten Schichten des Semantic Web Protocol Stack Nicola Henze.
Der Supermarkt: Eine beispielhafte Erklärung für die fünf untersten Schichten des Semantic Web Protocol Stack Nicola Henze.
1 Dienstbeschreibung mit DAML Ein graphischer Editor für DAML - Ting Zheng Betreuer: Michael Klein, Philipp Obreiter.
RDF Resource Description Framework
Datenmodelle, Datenbanksprachen und Datenbankmanagementsysteme
SEP Halgurt Mustafa Ali Can Önder Marius Morawski Matthias Seidl Themen: Integration von RDQL und OWQL innerhalb des Apache Cocoon Frameworks Semantische.
... und alles was dazugehört
Datenbankentwicklung IV-LK
Best Practices in der Datenbank-programmierung
Sesame Florian Mayrhuber
WS 2013/14 Datenbanksysteme Do 17:00 – 18:30 R Vorlesung #4 SQL (Teil 1)
WS 2013/14 Datenbanksysteme Do 17:00 – 18:30 R Vorlesung #6 SQL (Teil 3)
WS 2011/12 Datenbanksysteme Mi 15:15 – 16:45 R Vorlesung #9 Physische Datenorganisation.
Vorlesung #4 SQL (Teil 1).
WS 2011/12 Datenbanksysteme Fr 15:15 – 16:45 R Vorlesung #8 Anfragebearbeitung.
SS 2004 Datenbanken 4W Mi 13:30 – 15:00 G 2.30 Vorlesung #5 Relationale Anfragesprachen.
WS 2012/13 Datenbanksysteme Fr 15:15 – 16:45 R Vorlesung #2 Das relationale Modell (Teil 1)
WS 2013/14 Datenbanksysteme Do 17:00 – 18:30 R Vorlesung #2 Das relationale Modell (Teil 1)
WS 2013/14 Datenbanksysteme D0 15:15 – 16:45 R Vorlesung #5 SQL (Teil 2)
Allgemeines zu Datenbanken
Vorlesung Datenbanksysteme vom Physische Datenorganisation
Datenbanksysteme für hörer anderer Fachrichtungen
Speichern und Lesen von Daten im Data Warehouse
Einführung in Datenbankmodellierung und SQL
Freiwillige Feuerwehr der Stadt Perg
Vorlesung #10 Physische Datenorganisation
Trust and context using the RDF- Source related Storage System (RDF‑S3) and easy RQL (eRQL) Karsten Tolle und Fabian Wleklinski.
1 Albert-Ludwigs-Universität Freiburg Rechnernetze und Telematik Prof. Dr. Christian Schindelhauer Peer-to-Peer- Netzwerke Christian Schindelhauer Sommersemester.
Big Data Semantic Web: RDF Information Retrieval
Structured Query Language
© 2001 Sven Dammann1 Aufbau Integrierter Informationssysteme XML Bearbeitung und relationale Abbildung Sven Dammann Martin-Luther-Universität Halle-Wittenberg.
WS 2004/2005 Datenbanken II - 5W Mi 17:00 – 18:30 G 3.18 Vorlesung #3 Anfragebearbeitung (Teil 1)
Vorlesung #5 SQL (Teil 2).
Vorlesung #2 Das relationale Modell (Teil 1)
Semantic Web.
WS 2014/15 Datenbanksysteme D0 15:15 – 16:45 R Vorlesung #6 SQL (Teil 3)
1 6.4 Verwaltung semistrukturierter Daten - was ist das? Datenverwaltung für XML-Dokumente - Daten in XML-Gewand - eigentlich XML-Dokumente - Abbildung.
Datenbanken abfragen mit SQL
Programmiersprachen II Vorbesprechung Klausur Prof. Dr. Reiner Güttler Fachbereich GIS HTW.
1 StatiX: Making XML Count J.Freire, J.R.Haritsa, M.Ramanath, P.Roy, J.Siméon: StatiX: Making XML Count ACM SIGMOD, June 2002 Ann Früchtl
© 2015 TravelTainment NoSQL – Eine Alternative zu relationalen Datenbanken Dominik Schmitz.
Information Retrieval mit Oracle Text Erfahrungsbericht.
Big Data: Neue Entwicklungen im Datenbankbereich Semantic Web: RDF Datenströme Information Retrieval Graph Exploration Map Reduce: Massiv parallele Verarbeitung.
DOAG SID Data Warehouse
Vorlesung #4 Relationales Kalkül und SQL (Teil 1)
Von Wietlisbach, Lenzin und Winter
 Präsentation transkript:

Big Data Top-k / Ranking / Skyline Semantic Web: RDF Information Retrieval PageRank / HITS Map Reduce: Massiv parallele Verarbeitung Datenströme Peer to Peer Informationssysteme No SQL Systeme Multi-Tenancy/Cloud-Datenbanken

Weitere Decision-Support Anfrage- Typen  Top N-Anfragen  Ich will nur die N besten Treffer erhalten und ncht alle 5 Millionen  Muss bei der Anfrageoptimierung berücksichtigt werden  Online Aggregation  Man berechnet das Ergebnis approximativ  Je länger die Anfrage läuft, desto genauer wird das Ergebnis

Top N-Anfragen Select A.* From Angestellte A, Abteilungen abt Where A.Abteilung = abt.AbteilungsNr and abt.Ort = Passau Order by A.Gehalt Stop after 20

Top N-Anfragen auf Verteilten Datenquellen

Ranking in DB2

Ranking innerhalb von Untergruppen

Threshold-Algorithmus zur Auswertung von Top-n-Anfragen (3)

Threshold-Algorithmus zur Auswertung von Top_n-Anfragen

No-Random-Access-Algorithmus

Skyline / Pareto-Optimum

Skyline in SQL

Skyline in Standard-SQL

Online-Aggregation Select abt.Ort, avg(A.Gehalt) From Angestellte A, Abteilungen abt Where A.Abteilung = abt.AbteilungsNr Group by abt.Ort

Semantic Web: Resource Description Framework (RDF)  Triple-Datenmodell  (Subjekt, Prädikat, Objekt)  Meist graphische Visualisierung  Subjekte und Objekte sind Knoten  Prädikate sind gerichtete Kanten  Von Subjekt-Knoten nach Objekt Knoten

Beispiel-RDF-Graph

Textuelle Darstellung des Graphen

Kurzform

Namenlose Knoten

Graph mit unbenannten Knoten

SPARQL: Die RDF Anfragesprache SELECT ?Var1 ?Var2 … $VarN WHERE {Muster1. Muster2. … MusterM. } PREFIX ex: SELECT ?AutorenDesOldenbourgVerlags WHERE { ?buch ex:Autor ?a. ?a ex:NachName ?AutorenDesOldenbourgVerlags. ?buch ex:verlegtBei. }

SPARQL: Die RDF Anfragesprache PREFIX ex: SELECT ?KempersBuecherTitel WHERE { ?KempersBuecher ex:Autor ?k. ?k ex:NachName "Kemper". ?KempersBuecher ex:Titel ?KempersBuecherTitel. }

SPARQL: Die RDF Anfragesprache Union PREFIX ex: SELECT ?KempersOderEicklersBuecherTitel WHERE { { ?KempersBuecher ex:Autor ?k. ?k ex:NachName "Kemper". ?KempersBuecher ex:Titel ?KempersOderEicklersBuecherTitel. } UNION { ?EicklersBuecher ex:Autor ?k. ?k ex:NachName "Eickler". ?EicklersBuecher ex:Titel ?KempersOderEicklersBuecherTitel. }

SPARQL: Die RDF Anfragesprache optional PREFIX ex: SELECT ?KempersBuecherTitel ?KempersBuecherISBN WHERE { ?KempersBuecher ex:Autor ?k. ?k ex:NachName "Kemper". ?KempersBuecher ex:Titel ?KempersBuecherTitel. OPTIONAL { ?KempersBuecher ex:hatISBN ?KempersBuecherISBN } }

SPARQL: Die RDF Anfragesprache filter

SPARQL: Die RDF Anfragesprache count-Aggregation PREFIX ex: SELECT COUNT ?verlag WHERE { ?buch ex:verlegtBei ?verlag. } Für SQL-affine Leser ist diese Anfrage etwas gewöhnungsbedürftig, da man ja in der Tat die Bücher zählen will. Die SPARQL-Formulierung zielt aber darauf ab, die Anzahl der Vorkommnisse des Musters „?buch ex:verlegtBei ?verlag“ für jeden ?verlag zu zählen.

Implementierung einer RDF- Datenbank: RDF-3X

B-Bäume … so viele wie möglich

Kompressionstechnik: Dictionary und Präfix  Jedes Tripel $(s,p,o)$ wird also genau 6 mal repliziert abgelegt -- allerdings in permutierter Subjekt/Prädikat/Objekt- Reihenfolge, nämlich  $(p,s,o)$, $(s,p,o)$, $(p,o,s)$, $(o,s,p)$, $(s,o,p)$ und $(o,p,s)$.  Zusätzlich gibt es noch die sogenannten aggregierten Indexe, die die Anzahl der Vorkommen des jeweiligen Musters repräsentieren. Zum Beispiel bedeutet der Eintrag $(s,o,7)$, dass das Subjekt s siebenmal mit dem Objekt o in einer Beziehung steht -- mit beliebigem Prädikat.  Das Speichervolumen wird dadurch (dramatisch) reduziert, dass man in den Blättern der Bäume eine Präfix-Komprimierung durchführt. Z.B. wird in dem zweiten Eintrag des SPO-Baums das Subjekt 0 weggelassen, da es identisch zum ersten Eintrag ist. In dem vierten Eintrag kann sogar die Subjekt- und die Prädikat-Kennung weggelassen werden, da beide identisch zum dritten Eintrag sind

Kompressionstechnik: Dictionary und Präfix  Es werden aber nicht nur gleiche Präfixe weggelassen; zusätzlich wird auch anstatt des jeweiligen Codes nur die Differenz zum Code des Vorgänger-Tripels gespeichert. Der letzte Eintrag im SPO-Baum würde demnach als (-,1,1) gespeichert, da er in der ersten Komponente identisch zum Vorgänger-Tripel ist, in der zweiten und dritten Komponente ist die Differenz zum Vorgänger-Tripel jeweils 1.  Diese Kompression ist sehr effektiv, da die Tripel in den Blattknoten ja fortlaufend sortiert sind und sich deshalb immer nur geringfügig vom Vorgänger-Tripel unterscheiden.  Als Anker für diese Differenz-Kompression wird auf jeder Blatt- Seite immer nur ein vollständiges Tripel, nämlich das Erste, gespeichert.

Anfrageauswertung PREFIX ex: SELECT REDUCED ?AutorenDesOldenbourgVerlags WHERE { ?buch ex:Autor ?a. ?a ex:NachName ?AutorenDesOldenbourgVerlags. ?buch ex:verlegtBei. } SELECT REDUCED ?AutorenDesOldenbourgVerlags WHERE { ?buch 7 ?a. ?a 11 ?AutorenDesOldenbourgVerlags. ?buch 3 4. } Dict-Lookup

Merge-Joins … so weit das Auge reicht …

Datenströme

Datenbank versus Datenstrom

Beispiel-Datenstrom

Datenstrom-Definition und einfache Anfrage

Subskriptions-Anfrage

Prädikat-Index

Bereichsanfrage

R-Baum-Index

Fenster-Anfrage

Auswertung: Short Auctions

Sliding Windows

Überlappende Fenster

Hot Items-Anfrage

Auswertung: Hot Item

Information Retrieval  Informationsexplosion im Internet  Ranking von Dokumenten um relevante Information zu finden  Ähnlichkeit von Dokumenten (Dissertationen) zu erkennen

TF-IDF: Term Frequency – Inverse Document Frequency

Relevanz-Ranking am Beispiel

Invertierte Indexierung

Page Rank: Grundidee

Mathematisches Modell des PageRank

Mathematisches Modell des PageRank: unser Beispiel

Konvergenz und Dämpfung

PageRank für größeren Graph [aus Wikipedia]

HITS-Algorithmus: Hubs und Autoritäten

Relationale HITS-Modellierung

Algorithmus

Algorithmus … in SQL

Map Reduce

Join mit Map Reduce

Verbesserung nach Ullman

Map Reduce Skripsprache: PigLatin

Auswertung des HITS Algorithmus

Peer to Peer-Informationssysteme   P2P number crunching  Napster  P2P file sharing / Informationsmanagement 72

Napster-Architektur 73

Gnutella-Architektur 74

DHT: Distributed Hash Table  Basieren auf „consistent hashing“  Vollständige Dezentralisierung der Kontrolle  Dennoch zielgerichtete Suche 75

CHORD 76

CAN 77

No-SQL Datenbanken  Internet-scale Skalierbarkeit  CAP-Theorem: nur 2 von 3 Wünschen erfüllbar  Konsistenz (Consistency)  Zuverläassigkeit/Verfügbarkeit (Availability)  Partitionierungs-Toleranz  No-SQL Datenbanksysteme verteilen die Last innerhalb eines Clusters/Netzwerks  Dabei kommen oft DHT-Techniken zum Einsatz 78

Schnittstelle der No-SQL Datenbanken  Insert(k,v)  Lookup(k)  Delete(k)  Extrem einfach  effizient  Aber: wer macht denn die Joins/Selektionen/…   das Anwendungsprogramm 79

Konsistenzmodell: CAP  Relaxiertes Konsistenzmodell  Replizierte Daten haben nicht alle den neuesten Zustand  Vermeidung des (teuren) Zwei-Phasen-Commit-Protokolls  Transaktionen könnten veraltete Daten zu lesen bekommen  Eventual Consistency  Würde man das System anhalten, würden alle Kopien irgendwann (also eventually) in denselben Zustand übergehen  Read your Writes-Garantie  Tx leist auf jeden Fall ihre eigenen Änderungen  Monotonic Read-Garantie  Tx würde beim wiederholten Lesen keinen älteren Zustand als den vorher mal sichtbaren lesen 80

Systeme  MongoDB  Cassandra  Dynamo  BigTable  Hstore  SimpleDB  S3 81

Multi-Tenancy / Cloud-Datenbanken

Multi-Tenancy Datenbankarchitekturen

Shared Tables

Private Relationen

Erweiterungs-Relationen

Universal Relation

Zerlegung: Pivot-Relationen

Ballung logisch verwandter Werte: Chunk Tables

Key/Value-Store

XML-basiertes Schema