+ All Categories
Home > Documents > Big Data Praktikum - Abteilung Datenbanken Leipzigdbs.uni-leipzig.de/file/Intro.pdf · Big Data...

Big Data Praktikum - Abteilung Datenbanken Leipzigdbs.uni-leipzig.de/file/Intro.pdf · Big Data...

Date post: 10-Aug-2019
Category:
Upload: ngotruc
View: 214 times
Download: 0 times
Share this document with a friend
62
Big Data Praktikum Abteilung Datenbanken Sommersemester 2016
Transcript
Page 1: Big Data Praktikum - Abteilung Datenbanken Leipzigdbs.uni-leipzig.de/file/Intro.pdf · Big Data Praktikum Abteilung Datenbanken Sommersemester 2016 ... Understanding the „Foodbroker

Big Data PraktikumAbteilung Datenbanken

Sommersemester 2016

Page 2: Big Data Praktikum - Abteilung Datenbanken Leipzigdbs.uni-leipzig.de/file/Intro.pdf · Big Data Praktikum Abteilung Datenbanken Sommersemester 2016 ... Understanding the „Foodbroker

Orga

Ziel: Entwurf und Realisierung einer Anwendung / eines Algorithmus unter Verwendung existierender Big Data Frameworks

Ablauf

Anwesenheitspflicht der Gruppe zu allen Testaten

Bis Ende April Erstes Treffen mit Betreuer (Terminanfrage per Mail)

Ende Mai Testat 1: System kennenlernen / Datenimport / Lösungsskizze

Ende Juli Testat 2: Implementierung und Ergebnisse vorstellen

Anfang August (04. und 05.08.2016) Testat 3: Präsentation

15 Minuten pro Gruppe

Anwesenheitspflicht aller Praktikumsteilnehmer

Page 3: Big Data Praktikum - Abteilung Datenbanken Leipzigdbs.uni-leipzig.de/file/Intro.pdf · Big Data Praktikum Abteilung Datenbanken Sommersemester 2016 ... Understanding the „Foodbroker

Technische Details

Quellcode: GitHub Repository Gruppe => Collaborators

Werden nach Praktikum zu https://github.com/leipzig-bigdata-lab geforked

Java: Apache Maven 3 für Projekt Management

Test Driven Development erwünscht Siehe Dokumentation zu Unit Tests in jeweiligen Frameworks

Quellcode Dokumentation zwingend erforderlich!

Stabile Versionen verwenden (ggf. Rücksprache) z.B. Flink 1.0.1 statt 1.1-SNAPSHOT

Lokal lauffähige Lösungen können auf dediziertem Cluster ausgeführt werden Terminabsprache Anfang Juli mit [email protected]

Datensätze https://github.com/caesar0301/awesome-public-datasets

Page 4: Big Data Praktikum - Abteilung Datenbanken Leipzigdbs.uni-leipzig.de/file/Intro.pdf · Big Data Praktikum Abteilung Datenbanken Sommersemester 2016 ... Understanding the „Foodbroker

Recommendation & MachineLearning mit Flink

Eric Peukert

Page 5: Big Data Praktikum - Abteilung Datenbanken Leipzigdbs.uni-leipzig.de/file/Intro.pdf · Big Data Praktikum Abteilung Datenbanken Sommersemester 2016 ... Understanding the „Foodbroker

Recommendation & MachineLearning mit Flink

• Collaborative filtering with Alternating Least Squares

• Apache Flink Machine Learning Library

Rambo Star Trek Pocahontas

Alice

Bob

Peter ??

Page 6: Big Data Praktikum - Abteilung Datenbanken Leipzigdbs.uni-leipzig.de/file/Intro.pdf · Big Data Praktikum Abteilung Datenbanken Sommersemester 2016 ... Understanding the „Foodbroker

Recommendation & Machine Learning mit Flink (2)• Workflow

1. Parse data from Movielens -> http://grouplens.org/datasets/movielens/ - or IMDb(if suffient) to get Movies and ratings

2. Import into Flink

3. Train a Model with ALS within Flink

4. Apply Model

5. Small web-based application• search 3 movies from Movielens, give rating

• show rating coming from the collaborative filtering

• optional show visual graph of movies and their distances

Page 7: Big Data Praktikum - Abteilung Datenbanken Leipzigdbs.uni-leipzig.de/file/Intro.pdf · Big Data Praktikum Abteilung Datenbanken Sommersemester 2016 ... Understanding the „Foodbroker

Text-Reuse Analysis with Gradoopand Apache Flink

Eric Peukert

Page 8: Big Data Praktikum - Abteilung Datenbanken Leipzigdbs.uni-leipzig.de/file/Intro.pdf · Big Data Praktikum Abteilung Datenbanken Sommersemester 2016 ... Understanding the „Foodbroker

Text-Reuse Analysis with Gradoopand Apache Flink

• Analyze text-reuse in large text corpus (German Text Archive or Bible Corpus or EU-Legal Texts)

Page 9: Big Data Praktikum - Abteilung Datenbanken Leipzigdbs.uni-leipzig.de/file/Intro.pdf · Big Data Praktikum Abteilung Datenbanken Sommersemester 2016 ... Understanding the „Foodbroker

Text-Reuse Analysis with Gradoop and Apache Flink (2)• Workflow

• Import/Parse Data, build textfragments as nodes (Import text in graph-format)

• compute cross-wise similarity based on simple measure with gradoop

• provide a simple web-based visualization of citation graph

Page 10: Big Data Praktikum - Abteilung Datenbanken Leipzigdbs.uni-leipzig.de/file/Intro.pdf · Big Data Praktikum Abteilung Datenbanken Sommersemester 2016 ... Understanding the „Foodbroker

Big Data Image Processing withOpenCV and Apache Spark

Eric Peukert

Page 11: Big Data Praktikum - Abteilung Datenbanken Leipzigdbs.uni-leipzig.de/file/Intro.pdf · Big Data Praktikum Abteilung Datenbanken Sommersemester 2016 ... Understanding the „Foodbroker

Big Data Image Processing withOpenCV and Apache Spark

• Image Processing with OpenCV• face recognition

library

• Combination with Apache Spark

Page 12: Big Data Praktikum - Abteilung Datenbanken Leipzigdbs.uni-leipzig.de/file/Intro.pdf · Big Data Praktikum Abteilung Datenbanken Sommersemester 2016 ... Understanding the „Foodbroker

Big Data Image Processing with OpenCV and Apache Spark (2)

• Workflow1. Set up Spark with OpenCV2. Load test image/video data for image regognition

(http://pascal.inrialpes.fr/data/human/ )3. Optional – produce test data4. Implement distributed image regognition task5. Visualize results of regognition6. Optional (search by photo)

Page 13: Big Data Praktikum - Abteilung Datenbanken Leipzigdbs.uni-leipzig.de/file/Intro.pdf · Big Data Praktikum Abteilung Datenbanken Sommersemester 2016 ... Understanding the „Foodbroker

PPRL on FlinkZiad Sehili

Page 14: Big Data Praktikum - Abteilung Datenbanken Leipzigdbs.uni-leipzig.de/file/Intro.pdf · Big Data Praktikum Abteilung Datenbanken Sommersemester 2016 ... Understanding the „Foodbroker

Privacy Preserving Record Linkage

• Object matching with encrypted data to preserve privacy• Data exchange / integration of person-related data

• Many uses cases: medicine, sociology, business, …

Page 15: Big Data Praktikum - Abteilung Datenbanken Leipzigdbs.uni-leipzig.de/file/Intro.pdf · Big Data Praktikum Abteilung Datenbanken Sommersemester 2016 ... Understanding the „Foodbroker

Privacy Preserving Record Linkage

• General Protocol

Owner 1

Linkage Unit

matches

Owner 2parameters

Dataset Dataset

encoding encoding

Linkage algorithm

Pairs of IdsPairs of Ids

Page 16: Big Data Praktikum - Abteilung Datenbanken Leipzigdbs.uni-leipzig.de/file/Intro.pdf · Big Data Praktikum Abteilung Datenbanken Sommersemester 2016 ... Understanding the „Foodbroker

PPRL on Flink

• 1- Coding with Bloom Filter

select relevant fields for matching

recordGenerate

tokens

Use a family of hash functions to map each token to the same fixed-size bit vector

Bit vector/ fingerprint

first name, last name, address

set of tokens (e.g. trigrams)

(T)

(T)

(T)

each token T

0

0

0

0

0

0

0

0

0

1

1

0

1

1

0

1

r1

1

1

1

h1

h2

hn

Page 17: Big Data Praktikum - Abteilung Datenbanken Leipzigdbs.uni-leipzig.de/file/Intro.pdf · Big Data Praktikum Abteilung Datenbanken Sommersemester 2016 ... Understanding the „Foodbroker

PPRL on Flink

• 1- Using LSH for Blocking

0 1 0 1 1 1 1 1 1 1 0 0 0 0 0 0

1 0 1 0 0 1 0 0 1 1 0 0 0 0 0 0

0 0 0 1 1 1 1 1 1 1 0 0 0 0 0 0

0 1 0 1 1 1 0 1 1 1 0 0 0 0 0 1

1 0 1 0 0 1 0 0 0 1 0 0 0 0 1 0

1 0 0 1 1 0 0 1 0 1 0 0 0 0 0 0

Min-hashFunctions

key3

key1

key2

key3

key1

key4

id3

id1

id2

id6

id4

id5

Key1: id1 id4

Key3: id3 id6

Key2: id2

Key4: id2

Page 18: Big Data Praktikum - Abteilung Datenbanken Leipzigdbs.uni-leipzig.de/file/Intro.pdf · Big Data Praktikum Abteilung Datenbanken Sommersemester 2016 ... Understanding the „Foodbroker

Tweet Analyse von NewsVictor Christen

Page 19: Big Data Praktikum - Abteilung Datenbanken Leipzigdbs.uni-leipzig.de/file/Intro.pdf · Big Data Praktikum Abteilung Datenbanken Sommersemester 2016 ... Understanding the „Foodbroker

Tweet Analyse von News

„Aufsichtsratschef

Michael Müller rückt von

Geschäftsleitung ab“

„Konzept- und ahnungslos

Beschulung von

Flüchtlingskindern: Politik setzt

auf Aktionismus“

„Viertelmillion gegen TTIP “

12.10.2015 14.10.2015

Über welche Themen wird häufig berichtet?

Welche Nachrichtendienste sind sich ähnlich?

Findet ein zeitgleicher Themenwechsel von allen Diensten statt?

Page 20: Big Data Praktikum - Abteilung Datenbanken Leipzigdbs.uni-leipzig.de/file/Intro.pdf · Big Data Praktikum Abteilung Datenbanken Sommersemester 2016 ... Understanding the „Foodbroker

Aufgabenstellung

1. Speicherung der Tweets von Nachrichtendiensten für Deutschland

2. Identifikation der Topics für definierte Zeitabschnitte1. Analysegeeignete Speicherung der Topic-Vektoren

3. Evaluierung der Hypothesen mittels Clustering und Präsentation1. Identifikation der Hot- Topics2. Identifikation ähnlicher Dienste Dienste berichten über die

selben Themen3. Identifikation der Themen, die die Community interessieren

Ähnlichkeit zwischen Topic-Vektoren der Community und der Dienste

Page 21: Big Data Praktikum - Abteilung Datenbanken Leipzigdbs.uni-leipzig.de/file/Intro.pdf · Big Data Praktikum Abteilung Datenbanken Sommersemester 2016 ... Understanding the „Foodbroker

Technologien und Hinweise

• Flink

• Verwendung der Streaming API oder der Rest API von Twitter • Eingrenzung auf Deutschland

• Clustering• Erstellung der Topics mittels TF/IDF und Filterung

• Erstellung von Clustern ähnlicher Tweets basierend auf den Top-K TF/IDF Vektoren für einen Tweet• Community Detection von Flink

Page 22: Big Data Praktikum - Abteilung Datenbanken Leipzigdbs.uni-leipzig.de/file/Intro.pdf · Big Data Praktikum Abteilung Datenbanken Sommersemester 2016 ... Understanding the „Foodbroker

Entity-Resolution on FlinkVictor Christen

Page 23: Big Data Praktikum - Abteilung Datenbanken Leipzigdbs.uni-leipzig.de/file/Intro.pdf · Big Data Praktikum Abteilung Datenbanken Sommersemester 2016 ... Understanding the „Foodbroker

Entity-Resolution on Flink

• Essentieller Bestandteil für die Integration mehrerer Datenquellen

• Use Cases• Produktportale

• Publikationsanalyse

• Klinische Forschung Integration von Patientendaten

• ….

Page 24: Big Data Praktikum - Abteilung Datenbanken Leipzigdbs.uni-leipzig.de/file/Intro.pdf · Big Data Praktikum Abteilung Datenbanken Sommersemester 2016 ... Understanding the „Foodbroker

Entity-Resolution

• Identifikation einer Menge von Korrespondenzen zwischen Objekten mehrerer Datenquellen, die gleich sind.

Probleme

• Großer Suchraum

• Fehlerhafte Daten, unterschiedliche BeschreibungQualität des Object-Mappings

Ziel

• Semi -automatische Verfahren für die effektive und effiziente Identifikation eines Object-Mappingszwischen mehreren Datenquellen

Page 25: Big Data Praktikum - Abteilung Datenbanken Leipzigdbs.uni-leipzig.de/file/Intro.pdf · Big Data Praktikum Abteilung Datenbanken Sommersemester 2016 ... Understanding the „Foodbroker

Aufgabenstellung

• Implementierung eines allgemeinen Match-Workflows für Publikationsdatensätze

Workflow

Preprocessing Matching Postprocessing

• Normalisierung• Textuelle

Normalisierung• Vorberechungen

• Blocking

• Generierung eines Mappingsmittels einer Kombination mehrerer Match-Verfahren

• Aggregation und Selektion der Matchergebnisse der einzelnen Match-Verfahren

PublikationenDBLP

PublikationenACM

Page 26: Big Data Praktikum - Abteilung Datenbanken Leipzigdbs.uni-leipzig.de/file/Intro.pdf · Big Data Praktikum Abteilung Datenbanken Sommersemester 2016 ... Understanding the „Foodbroker

Technologien und Hinweise

• Umsetzung in Flink

• Einlesen • Publikationsdatensätze im CSV Format• [id, title, authors, Venue, year]• Normalisierung der Autoren

• Preprocessing• Kleinschreibung

• Blocking• Sorted Neighborhood Blocking basierend auf dem Jahr

• Matching• Jaro-Winkler, Soft-TF/IDF Realisierung

Page 27: Big Data Praktikum - Abteilung Datenbanken Leipzigdbs.uni-leipzig.de/file/Intro.pdf · Big Data Praktikum Abteilung Datenbanken Sommersemester 2016 ... Understanding the „Foodbroker

String Similarity on FlinkMarkus Nentwig

Page 28: Big Data Praktikum - Abteilung Datenbanken Leipzigdbs.uni-leipzig.de/file/Intro.pdf · Big Data Praktikum Abteilung Datenbanken Sommersemester 2016 ... Understanding the „Foodbroker

Einfacher Match WorkflowPreprocessing Matching Postprocessing

- Vergleich von Ähnlichkeiten auf Objekteigenschaften- Spezielle Metriken für String-Vergleiche, etwa Trigram + Dice:

• similiarity(‘TRUNK’, ‘TRUNCUS’)

1. Token sets

• {TRU, RUN, UNK}

• {TRU, RUN, UNC, NCU, CUS}

2. Intersect

• {TRU, RUN}

3. Dice metric

• 22 / (3+5) = 4/8 = 0.5

Page 29: Big Data Praktikum - Abteilung Datenbanken Leipzigdbs.uni-leipzig.de/file/Intro.pdf · Big Data Praktikum Abteilung Datenbanken Sommersemester 2016 ... Understanding the „Foodbroker

Mögliche Lösungen

• Naïve: vergleiche Tokens der beiden Strings über Schleife• Viele Vergleiche nötig

• “Sort-Merge” Lösung [1]: • Vermeide String-Vergleiche: Dictionary für Token Integer Werte

• Vermeide Schleifenkomplexität: Sortiere Tokens für folgenden Intersect

• Tokenization integer conversion sorting• TRUNK {TRU, RUN, UNK} {1, 2, 3}

• TRUNCUS {TRU, RUN, UNC, NCU, CUS} {1, 2, 4, 5, 6}

[1] Hartung et al. Optimizing Similarity Computations for Ontology Matching -Experiences from GOMMA

Page 30: Big Data Praktikum - Abteilung Datenbanken Leipzigdbs.uni-leipzig.de/file/Intro.pdf · Big Data Praktikum Abteilung Datenbanken Sommersemester 2016 ... Understanding the „Foodbroker

Aufgabenstellung

• Datensatz (HDFS) -> Flink• Geo Daten: Dbpedia, GeoNames, LinkedGeoData

• Vergleich 3 Ähnlichkeitsmetriken• Simmetrics (library)

• Naive Eigenimplementierung

• Optimierte „Sort-Merge“ Implementierung• Verteiltes Dictionary auf Flink, Alternative?

Page 31: Big Data Praktikum - Abteilung Datenbanken Leipzigdbs.uni-leipzig.de/file/Intro.pdf · Big Data Praktikum Abteilung Datenbanken Sommersemester 2016 ... Understanding the „Foodbroker

Large-scale Publikationsanalyse und Geodaten-Visualisierung

Anika Groß

Page 32: Big Data Praktikum - Abteilung Datenbanken Leipzigdbs.uni-leipzig.de/file/Intro.pdf · Big Data Praktikum Abteilung Datenbanken Sommersemester 2016 ... Understanding the „Foodbroker

Large-scale Publikationsanalyse und Geodaten-Visualisierung

• Visualisierung der Beziehungen zwischen Arbeitsgruppen in verschiedenen Orten (Ko-Autoren-Beziehung)

• Häufige Topics an einem Standort

• Standorte, mit häufig zitierten Publikationen …

Geographic distribution of affiliations publishing in the top database venues in the last decade

Intra- and cross-country co-operations

Quelle: Aumueller, Rahm: Affiliation analysis of database publications. ACM SIGMOD Record, Vol. 40, No. 1, pp 26-31, March 2011

Page 33: Big Data Praktikum - Abteilung Datenbanken Leipzigdbs.uni-leipzig.de/file/Intro.pdf · Big Data Praktikum Abteilung Datenbanken Sommersemester 2016 ... Understanding the „Foodbroker

Microsoft Academic Graph

• Heterogener Graph aus wissenschaftlichen Publikationen• Autoren

• Institutionen

• Journals, Conference venues

• Zitierungsbeziehungen

• Daten als csv• ~27GB (.rar)

http://research.microsoft.com/en-us/projects/mag/

Affiliations FieldsOfStudy PaperAuthorAffiliations

Affiliation ID Field of study ID Paper ID

Affiliation name Field of study name Author ID

Affiliation ID

Authors FieldOfStudyHierarchy Original affiliation name

Author ID Child field of study ID Normalized aff.name

Author name Child field of study level Author sequence nr.

Short name (abbr.) Keyword name

Full name JournalsField of study ID mapped to keyword

Journal ID

ConferenceInstances Journal name Papers

Conference series ID Paper ID

Conference instance ID PaperReferences Original paper title

Short name (abbr.) Paper ID Normalized paper title

Full name Paper reference ID Paper publish year

Location Paper publish date

Conference start date PaperUrls Normalized venue name

… Paper ID …

URL Paper rank

Page 34: Big Data Praktikum - Abteilung Datenbanken Leipzigdbs.uni-leipzig.de/file/Intro.pdf · Big Data Praktikum Abteilung Datenbanken Sommersemester 2016 ... Understanding the „Foodbroker

Open Streetmap / OpenLayers

• JavaScript API for Open Streetmap

<!DOCTYPE HTML>

<title>OpenLayers Simplest Example</title>

<div id="demoMap" style="height:250px"></div>

<script src="OpenLayers.js"></script>

<script>

map = new OpenLayers.Map("demoMap");

map.addLayer(new OpenLayers.Layer.OSM());

map.zoomToMaxExtent();

</script>

Page 35: Big Data Praktikum - Abteilung Datenbanken Leipzigdbs.uni-leipzig.de/file/Intro.pdf · Big Data Praktikum Abteilung Datenbanken Sommersemester 2016 ... Understanding the „Foodbroker

Workflow

Import• Speicherung der CSV-Dateien im HDFS• Laden in Spark

Analysen• Datenaggregation und Analysen mittels Spark,

ggf. Spark GraphX

Visualisierung • Open Street Map, Open Layers

• Material• http://research.microsoft.com/en-us/projects/mag/

• Oder Daten von mir (USB-Stick mitbringen)

• http://spark.apache.org/docs/latest/• http://www.openstreetmap.org• http://wiki.openstreetmap.org/wiki/OpenLayers

Page 36: Big Data Praktikum - Abteilung Datenbanken Leipzigdbs.uni-leipzig.de/file/Intro.pdf · Big Data Praktikum Abteilung Datenbanken Sommersemester 2016 ... Understanding the „Foodbroker

Temporale Analyse von News-Daten und Kursentwicklung

Anika Groß

Page 37: Big Data Praktikum - Abteilung Datenbanken Leipzigdbs.uni-leipzig.de/file/Intro.pdf · Big Data Praktikum Abteilung Datenbanken Sommersemester 2016 ... Understanding the „Foodbroker

Temporale Analyse von News-Daten und Kursentwicklung

Bild: https://www.quandl.com/collections/markets/bitcoin-data

https://www.google.de/trends/explore#q=Bitcoin

• Welche Auswirkungen hat die Berichterstattung auf die Kursentwicklung?

• Kann mithilfe der Historie eine Prognose erstellt werden, z.B. für aktuelle Ereignisse?

• Am Beispiel von „Bitcoin“

Daten• Google Trends Report für „Bitcoin“

• Pressemittelungen zum Suchbegriff „Bitcoin“• Cryptocoinsnews• Reuters

• Sammeln von Tweets über 4 Wochen

• Kurse• Bitcoin-USD• Bitcoin-Transaction-Number• …

Page 38: Big Data Praktikum - Abteilung Datenbanken Leipzigdbs.uni-leipzig.de/file/Intro.pdf · Big Data Praktikum Abteilung Datenbanken Sommersemester 2016 ... Understanding the „Foodbroker

Datenanalyse mit

• Discretized Streams (DStreams)

• Transformations on Dstreams• map, flatMap, filter, reduceByKey…

• Window Operationen• window,

countByWindow, reduceByWindow, …

• MLlib MachineLearning für Streaming Daten• Streaming Linear Regression, …

http://spark.apache.org/docs/latest/streaming-programming-guide.html

Page 39: Big Data Praktikum - Abteilung Datenbanken Leipzigdbs.uni-leipzig.de/file/Intro.pdf · Big Data Praktikum Abteilung Datenbanken Sommersemester 2016 ... Understanding the „Foodbroker

WorkflowImport• Speicherung der verschiedenen CSV-Dateien im HDFS• Nutzen der TwitterAPI via SparkStreaming

• Sammeln von Daten für #bitcoin

• Laden der temporalen Daten in SparkStreaming

Analysen• Datenaggregation und Analysen mittels SparkStreaming

• SlidingWindow Analysen…• Streaming Linear Regression, Korrelationsanalyse … (Mllib, SparkR)

Visualisierung • Diagramme, Plots etc.

• Material• https://www.quandl.com/collections/markets/bitcoin-data

• http://spark.apache.org/docs/latest/streaming-programming-guide.html

Page 40: Big Data Praktikum - Abteilung Datenbanken Leipzigdbs.uni-leipzig.de/file/Intro.pdf · Big Data Praktikum Abteilung Datenbanken Sommersemester 2016 ... Understanding the „Foodbroker

Graph TopicsMartin Junghanns / Andre Petermann

Page 41: Big Data Praktikum - Abteilung Datenbanken Leipzigdbs.uni-leipzig.de/file/Intro.pdf · Big Data Praktikum Abteilung Datenbanken Sommersemester 2016 ... Understanding the „Foodbroker

Extended Property Graph Model• Vertices and directed Edges

41

Page 42: Big Data Praktikum - Abteilung Datenbanken Leipzigdbs.uni-leipzig.de/file/Intro.pdf · Big Data Praktikum Abteilung Datenbanken Sommersemester 2016 ... Understanding the „Foodbroker

Extended Property Graph Model• Vertices and directed Edges

• Logical Graphs

42

Page 43: Big Data Praktikum - Abteilung Datenbanken Leipzigdbs.uni-leipzig.de/file/Intro.pdf · Big Data Praktikum Abteilung Datenbanken Sommersemester 2016 ... Understanding the „Foodbroker

Extended Property Graph Model• Vertices and directed Edges

• Logical Graphs

• Identifiers

43

1 3

4

5

21 2

3

4

5

1

2

Page 44: Big Data Praktikum - Abteilung Datenbanken Leipzigdbs.uni-leipzig.de/file/Intro.pdf · Big Data Praktikum Abteilung Datenbanken Sommersemester 2016 ... Understanding the „Foodbroker

Extended Property Graph Model• Vertices and directed Edges

• Logical Graphs

• Identifiers

• Type Labels

44

1 3

4

5

21 2

3

4

5

Person Band

Person

Person

Band

likes likes

likes

knows

likes

1|Community

2|Community

Page 45: Big Data Praktikum - Abteilung Datenbanken Leipzigdbs.uni-leipzig.de/file/Intro.pdf · Big Data Praktikum Abteilung Datenbanken Sommersemester 2016 ... Understanding the „Foodbroker

Extended Property Graph Model• Vertices and directed Edges

• Logical Graphs

• Identifiers

• Type Labels

• Properties (schema-free)

45

1 3

4

5

21 2

3

4

5

Personname : Aliceborn : 1984

Bandname : Metallicafounded : 1981

Personname : Bob

Personname : Eve

Bandname : AC/DCfounded : 1973

likessince : 2014

likessince : 2013

likessince : 2015

knows

likessince : 2014

1|Community|interest:Heavy Metal

2|Community|interest:Hard Rock

Page 46: Big Data Praktikum - Abteilung Datenbanken Leipzigdbs.uni-leipzig.de/file/Intro.pdf · Big Data Praktikum Abteilung Datenbanken Sommersemester 2016 ... Understanding the „Foodbroker

Task 1: EPGM CSV Import/Export

Goals Understanding the Extended Property Graph Model Design of a schema-flexible, distributed CSV Import/Export Implementation in Apache Flink / Gradoop Unit Testing

Requirements

Knowledge in Java / Junit / Maven

Frameworks Apache HDFS Apache Flink Gradoop

2 Students

Page 47: Big Data Praktikum - Abteilung Datenbanken Leipzigdbs.uni-leipzig.de/file/Intro.pdf · Big Data Praktikum Abteilung Datenbanken Sommersemester 2016 ... Understanding the „Foodbroker

Task 2: Distributed Graph Data Generation

Page 48: Big Data Praktikum - Abteilung Datenbanken Leipzigdbs.uni-leipzig.de/file/Intro.pdf · Big Data Praktikum Abteilung Datenbanken Sommersemester 2016 ... Understanding the „Foodbroker

Task 2: Distributed Graph Data Generation

Goals Understanding the „Foodbroker“ Graph Generator

Design of a distributed algorithm

Implementation in Apache Flink / Gradoop

Unit Testing

Requirements

Knowledge in Java / Junit / Maven

Frameworks Apache Flink

Gradoop

2 Students

Page 49: Big Data Praktikum - Abteilung Datenbanken Leipzigdbs.uni-leipzig.de/file/Intro.pdf · Big Data Praktikum Abteilung Datenbanken Sommersemester 2016 ... Understanding the „Foodbroker

Task 3: Pattern-dependent Graph Mining

Goals Understanding distributed Frequent Subgraph Mining

Extending an existing FSM kernel (gSpan) by pattern constraints Implementation in Apache Flink / Gradoop Unit Testing

Requirements

Understanding the Frequent Subgraph Mining problem

Knowledge in Java / Junit / Maven

Frameworks Apache Flink Gradoop

2 Students

Page 50: Big Data Praktikum - Abteilung Datenbanken Leipzigdbs.uni-leipzig.de/file/Intro.pdf · Big Data Praktikum Abteilung Datenbanken Sommersemester 2016 ... Understanding the „Foodbroker

Problem

Finding subgraphs supported above a given threshold

Transactional Setting

Input is a collection of graphs

Support Based Counting

A subgraph will be considered to be frequent, if a minimum number (threshold) of graphs contain it

Iterative Pattern Growth Approach

Count support of n-edge subgraphs (start n=1), filter by threshold, grow them to n+1-edge subgraphs, repeat until all frequent ones are discovered

50

Task 3: Pattern-dependent Graph Mining

Page 51: Big Data Praktikum - Abteilung Datenbanken Leipzigdbs.uni-leipzig.de/file/Intro.pdf · Big Data Praktikum Abteilung Datenbanken Sommersemester 2016 ... Understanding the „Foodbroker

51

Threshold 2/3

Task 3: Pattern-dependent Graph Mining

Page 52: Big Data Praktikum - Abteilung Datenbanken Leipzigdbs.uni-leipzig.de/file/Intro.pdf · Big Data Praktikum Abteilung Datenbanken Sommersemester 2016 ... Understanding the „Foodbroker

52

Discover 1-edge subgraphs

Task 3: Pattern-dependent Graph Mining

Page 53: Big Data Praktikum - Abteilung Datenbanken Leipzigdbs.uni-leipzig.de/file/Intro.pdf · Big Data Praktikum Abteilung Datenbanken Sommersemester 2016 ... Understanding the „Foodbroker

53

3

1

1

1

1

Count support of 1-edge subgraphs

Task 3: Pattern-dependent Graph Mining

Page 54: Big Data Praktikum - Abteilung Datenbanken Leipzigdbs.uni-leipzig.de/file/Intro.pdf · Big Data Praktikum Abteilung Datenbanken Sommersemester 2016 ... Understanding the „Foodbroker

54

3

Identify frequent 1-edge subgraphs

Task 3: Pattern-dependent Graph Mining

Page 55: Big Data Praktikum - Abteilung Datenbanken Leipzigdbs.uni-leipzig.de/file/Intro.pdf · Big Data Praktikum Abteilung Datenbanken Sommersemester 2016 ... Understanding the „Foodbroker

55

3

Filter frequent embeddings of 1-edge subgraphs

Task 3: Pattern-dependent Graph Mining

Page 56: Big Data Praktikum - Abteilung Datenbanken Leipzigdbs.uni-leipzig.de/file/Intro.pdf · Big Data Praktikum Abteilung Datenbanken Sommersemester 2016 ... Understanding the „Foodbroker

56

3

Grow frequent subgraphs by 1 edge

Task 3: Pattern-dependent Graph Mining

Page 57: Big Data Praktikum - Abteilung Datenbanken Leipzigdbs.uni-leipzig.de/file/Intro.pdf · Big Data Praktikum Abteilung Datenbanken Sommersemester 2016 ... Understanding the „Foodbroker

57

3

3

1

1

Count support of 2-edge subgraphs

Task 3: Pattern-dependent Graph Mining

Page 58: Big Data Praktikum - Abteilung Datenbanken Leipzigdbs.uni-leipzig.de/file/Intro.pdf · Big Data Praktikum Abteilung Datenbanken Sommersemester 2016 ... Understanding the „Foodbroker

58

3

3

Identify frequent 2-edge subgraphs

Task 3: Pattern-dependent Graph Mining

Page 59: Big Data Praktikum - Abteilung Datenbanken Leipzigdbs.uni-leipzig.de/file/Intro.pdf · Big Data Praktikum Abteilung Datenbanken Sommersemester 2016 ... Understanding the „Foodbroker

59

3

3

Continue growing instances until all are infrequent

Task 3: Pattern-dependent Graph Mining

Page 60: Big Data Praktikum - Abteilung Datenbanken Leipzigdbs.uni-leipzig.de/file/Intro.pdf · Big Data Praktikum Abteilung Datenbanken Sommersemester 2016 ... Understanding the „Foodbroker

60

Task 3: Pattern-dependent Graph Mining

Maximum frequent subgraph The result may only contain frequent subgraphs

which are not contained in a larger frequent subgraph

Closed frequent subgraph The result may only contain frequent subgraphs which are not

contained in a larger subgraph with the same support

Constrained pattern mining Every frequent subgraph must also satisfy given predicates

(e.g., contain a least one edge with label „knows“)

The predicate must not be applied on the result but used accelerate the mining process

Page 61: Big Data Praktikum - Abteilung Datenbanken Leipzigdbs.uni-leipzig.de/file/Intro.pdf · Big Data Praktikum Abteilung Datenbanken Sommersemester 2016 ... Understanding the „Foodbroker

Task 3: Pattern-dependent Graph Mining

Goals Understanding distributed Frequent Subgraph Mining Extending an existing FSM kernel (gSpan) by pattern constraints Implementation in Apache Flink / Gradoop Unit Testing

Requirements

Understanding the Frequent Subgraph Mining problem

Knowledge in Java / Junit / Maven

Frameworks Apache Flink Gradoop

3 Students

Page 62: Big Data Praktikum - Abteilung Datenbanken Leipzigdbs.uni-leipzig.de/file/Intro.pdf · Big Data Praktikum Abteilung Datenbanken Sommersemester 2016 ... Understanding the „Foodbroker

ThemenübersichtThema FW #Studenten Betreuer

Recommendation and ML Flink 2 Peukert

Text-Reuse Analysis Gradoop, Flink 2-3 Peukert

Face Recognition, Matching Spark, OpenCV 2-3 Peukert

Privacy Preserving Record Linkage Flink 2-3 Sehili

Entity-Resolution on Flink Flink 2 Christen

Tweet Analyse von News Flink 2 Christen

String Similarity on Flink Flink 2 Nentwig

Large-scale Publikationsanalyse und Geodaten-Visualisierung

Spark, OpenLayers, (GraphX)

2 Groß

Temporale Analyse von News-Daten und Kursentwicklung

SparkStreaming, MLlib 2 Groß

EPGM CSV Import/Export Gradoop, Flink, HDFS 2 Junghanns

Distributed Graph Data Generation Gradoop, Flink 2 Junghanns

Pattern-dependent Graph Mining Gradoop, Flink 3 Petermann


Recommended