MapReduce. Jens Dörre. Universität Passau Projekt MAPREDUCEFOUNDATION. Funktionale Programmierung

Größe: px
Ab Seite anzeigen:

Download "MapReduce. Jens Dörre. Universität Passau Projekt MAPREDUCEFOUNDATION. Funktionale Programmierung"

Transkript

1 MapReduce Jens Dörre Universität Passau Projekt MAPREDUCEFOUNDATION Funktionale Programmierung Jens Dörre (Uni Passau) MapReduce Funktionale Programmierung 1 / 25

2 Gliederung 1 MapReduce allgemein 2 MapReduce in Haskell Jens Dörre (Uni Passau) MapReduce Funktionale Programmierung 2 / 25

3 Gliederung 1 MapReduce allgemein 2 MapReduce in Haskell Jens Dörre (Uni Passau) MapReduce Funktionale Programmierung 3 / 25

4 Parallele und verteilte Systeme Theorie Nischendasein: keine von-neumann-architektur Praxis Standard-Hardware In allen Maßstäben (unsichtbar) vorhanden CPU: Bit, Instruktion, Hardware-Thread, Multicore Verteilt: Cluster, Grid, Cloud Spezialfälle Itanium, Cell, GPUs Jens Dörre (Uni Passau) MapReduce Funktionale Programmierung 4 / 25

5 Parallele und verteilte Systeme: Probleme Niedrige Abstraktionsebene Lösung: Explizite Parallelität Schwierig zu schreiben: Synchronisationscode Oft geringer Parallelitätsgrad Geringe Portabilität geringe Skalierbarkeit Konzentration auf einfache Problemklasse: massive Datenparallelität Enter MapReduce! Jens Dörre (Uni Passau) MapReduce Funktionale Programmierung 5 / 25

6 MapReduce: Schematischer Überblick Allgemeiner Ablauf einer MapReduce-Berechnung partition1 partition2 partition3 partition4 partition5 Mapper Mapper Mapper Reducer Reducer output1 output2 output3 output4 partition6 Jens Dörre (Uni Passau) MapReduce Funktionale Programmierung 6 / 25

7 MapReduce: Schematischer Überblick (2) Verteilter Ablauf einer MapReduce-Berechnung partition1 partition2 output1 Mapper partition3 Reducer output2 Mapper partition4 Reducer output3 Mapper partition5 output4 partition6 Verteilte Ein- und Ausgabedaten Mapper- und Reducer-Tasks werden verteilt ausgeführt Möglichst lokale Ausführung des Mappers bei seinen Daten Entfernte Kommunikation zwischen jedem Mapper und jedem Reducer Jens Dörre (Uni Passau) MapReduce Funktionale Programmierung 7 / 25

8 MapReduce-Beispiel Google: Erzeugung eines invertierten Indexes ( invertierte Datei ) Eingabe: sehr viele Textdokumente Ausgabe: Index (Wort DokumentIDs) Abarbeitung in zwei Phasen 1 Map pro Dokument: Erzeuge Liste von Paaren (Wort, DokumentID) 2 Reduce pro Wort: Erzeuge Paar (Wort, sortierte Liste aller zugehörigen DokumentIDs) Jens Dörre (Uni Passau) MapReduce Funktionale Programmierung 8 / 25

9 MapReduce Was ist MapReduce? Ein Algorithmenskelett, vergleichbar mit Divide-and-Conquer, dem Tiefensuch-Vorgehen, Taskfarming und vielen anderen. Wie sieht MapReduce aus? Anwendungsspezifisches Eingabeformat Schlüssel/Wert-Paare als Ausgabe Anwender spezifiziert Algorithmus mittels zweier Funktionen Mapper erzeugt Zwischenergebnisse (Schlüssel/Wert-Paare) aus jedem Eingabedatum Reducer, angewendet auf alle Zwischenergebnisse mit demselben Schlüssel, erzeugt beliebig viele/wenige Endergebnisse Jens Dörre (Uni Passau) MapReduce Funktionale Programmierung 9 / 25

10 MapReduce: Eigenschaften Programmiermodell für massiv verteilte Ausführung (einige Tausend Rechner) Datenparallelität als Basis Durch Google (2004) populär Beispiel-Anwendung: Generierung des Indexes für die Web-Suche Tausende weitere Anwendungen im Einsatz mit einem Durchsatz von Petabytes pro Tag Clustering Häufigste Anfragen Extraktion semantischer Daten Framework mit zwei funktionalen Konzepten: map/concatmap und teilweise fold/scan Imperativer Benutzercode möglich Jens Dörre (Uni Passau) MapReduce Funktionale Programmierung 10 / 25

11 MapReduce: Vorteile Ermöglicht erst das Petascale-Computing Einfaches, aber breit anwendbares Programmiermodell Masse an Daten Notwendige Flexibilität Sequenzielle (=einfache) Sicht auf paralleles und verteiltes System Akzeptanz bei Mainstream-Programmierern Eingebaute Fehlertoleranz in vielen Frameworks Jens Dörre (Uni Passau) MapReduce Funktionale Programmierung 11 / 25

12 Implementierungen von MapReduce Google MapReduce Nicht erhältlich Verteilte C++-Implementierung Apache Hadoop MapReduce Open Source ( Entwickelt bei Yahoo Nutzbar bei Amazon als Elastic MapReduce -Service Verteilte Java-Implementierung Durch stdin/stdout Interface auch mit anderen Sprachen verwendbar Nokia Disco Open Source Verteilte Erlang+Python-Implementierung... Jens Dörre (Uni Passau) MapReduce Funktionale Programmierung 12 / 25

13 Erweiterungen von MapReduce Schlüssel werden sortiert verarbeitet Benutzerdefinierte Ein- und Ausgabeformate Benutzerdefinierte Splitter zur Partitionierung der Daten Combiner: zusätzlicher, Reduce-ähnlicher Schritt direkt im Anschluss an Mapper Fehlerhafte Daten werden mehrfach zu verarbeiten versucht, dann ignoriert Verschiedene Debugging- und Reporting-Möglichkeiten Jens Dörre (Uni Passau) MapReduce Funktionale Programmierung 13 / 25

14 Phasen bei der verteilten Abarbeitung Sequenzielle Sicht auf ein einzelnes Datum original map phase in split1 map split2 sorta combine original reduce phase send sortb reduce out Jens Dörre (Uni Passau) MapReduce Funktionale Programmierung 14 / 25

15 Gliederung 1 MapReduce allgemein 2 MapReduce in Haskell Jens Dörre (Uni Passau) MapReduce Funktionale Programmierung 15 / 25

16 Modellierung mit Haskell Vereinfachungen 1 lokaler Thread statt verteilter Cluster Daher keine Partitionierung für verschiedene Rechenknoten Keine Ein-/Ausgabe Daher Berechnung im vorhandenen Hauptspeicher Sortier-Erweiterung ist vorhanden Combiner, Splitter,... sind nicht vorhanden Jens Dörre (Uni Passau) MapReduce Funktionale Programmierung 16 / 25

17 Das Framework in Haskell Typsignatur: mapreduce :: forall k1 k2 v1 v2 v3. (Ord k2) -- Needed for grouping and sorting => (k1 -> v1 -> [(k2,v2)]) -- The * mapper * function -> (k2 -> [v2] -> [v3]) -- The * reducer * function -> [(k1,v1)] -- An input key-value mapping -> [(k2,v3)] -- An output key-value mapping Funktion höherer Ordnung Zwei benutzerdefinierte Funktionen als Parameter Jens Dörre (Uni Passau) MapReduce Funktionale Programmierung 17 / 25

18 Die Phasen in Haskell Typsignatur: mapreduce :: forall k1 k2 v1 v2 v3. (Ord k2) -- Needed for grouping and sorting => (k1 -> v1 -> [(k2,v2)]) -- The * mapper * function -> (k2 -> [v2] -> [v3]) -- The * reducer * function -> [(k1,v1)] -- An input key-value mapping -> [(k2,v3)] -- An output key-value mapping 3 Hauptphasen in dieser Implementierung Map, Group/Shuffle, Reduce mapreduce mapper reducer = reduceperkey -- C. Apply * reducer * to each group. groupbykey -- B. Group intermediate data per key. mapperkey -- A. Apply * mapper * to each key/value pair Jens Dörre (Uni Passau) MapReduce Funktionale Programmierung 18 / 25

19 Mehr Details mapreduce mapper reducer = reduceperkey -- C. Apply * reducer * to each group. groupbykey -- B. Group intermediate data per key. mapperkey -- A. Apply * mapper * to each key/value pair where reduceperkey :: [(k2,[v2])] -> [(k2,v3)] reduceperkey = concatwithkey Concatenate per-key lists. mapwithkey (uncurry reducer) Apply * reducer * per key groupbykey :: [(k2,v2)] -> [(k2,[v2])] groupbykey = unconcatwithkey Store key only once per group. groupby fsteq Group on same key. sortby fstcmp Sort on keys (*not* on values) mapperkey :: [(k1,v1)] -> [(k2,v2)] mapperkey = concat Concatenate per-key lists. map (uncurry mapper) Map * mapper * over list of pairs Jens Dörre (Uni Passau) MapReduce Funktionale Programmierung 19 / 25

20 Beispiel-Code Invertierter Index (Anfangsbeispiel): module InvertedIndex where import MapReduce import Data.List (sort) invertedindex :: (Ord a) => [(a, String)] -> [(String, [a])] invertedindex = mapreduce mapper reducer where mapper key = (map (flip (,) key). words) -- each word with its docid reducer = const (wrap. sort) -- sort each result list wrap x = [x] simpleinput :: [(String, String)] simpleinput = ins "doc2" "appreciate the unfold" $ ins "doc1" "fold the fold" $ [] where ins k v = ((k,v) : ) Jens Dörre (Uni Passau) MapReduce Funktionale Programmierung 20 / 25

21 Zusammenfassung Parallelität und Verteiltes Rechnen schwierig MapReduce-Framework ermöglicht Konzentration auf Anwendung MapReduce erweitert Ansätze wie SETI um Group und Reduce breitere Anwendbarkeit Mit Wissen aus Funktionalprogrammierung: keine Magie dahinter Algorithmen müssen für MapReduce stark angepasst werden Jens Dörre (Uni Passau) MapReduce Funktionale Programmierung 21 / 25

22 Es folgen (optionale und alternative) Folien mit noch mehr Details der Haskell-Implementierung von MapReduce. Jens Dörre (Uni Passau) MapReduce Funktionale Programmierung 22 / 25

23 Alle Details reduceperkey :: [(k2,[v2])] -> [(k2,v3)] reduceperkey = concatwithkey Concatenate per-key lists. mapwithkey (uncurry reducer) Apply * reducer * per key where mapwithkey f = let g (k,v) = (k, f (k,v)) in map g concatwithkey k_vs_s = [(k,v) (k,vs) <- k_vs_s, v <- vs] groupbykey :: [(k2,v2)] -> [(k2,[v2])] groupbykey = unconcatwithkey Store key only once per group. groupby fsteq Group on same key. sortby fstcmp Sort on keys (*not* on values) where fsteq (k,_v) (k,_v ) = k==k fstcmp (k,_v) (k,_v ) = k compare k unconcatwithkey kv_ss = [(k, vs) kv_s <- kv_ss, let k = fst $ head kv_s, let vs = map snd kv_s] mapperkey :: [(k1,v1)] -> [(k2,v2)] mapperkey = concat Concatenate per-key lists. map (uncurry mapper) Map * mapper * over list of pairs Jens Dörre (Uni Passau) MapReduce Funktionale Programmierung 23 / 25

24 Mit fehlenden Details Allgemein: {-# LANGUAGE ScopedTypeVariables #-} module MapReduce (mapreduce) where import Data.List(groupBy, sortby) Für reduceperkey und groupbykey: reduceperkey :: [(k2,[v2])] -> [(k2,v3)] reduceperkey = concatwithkey Concatenate per-key lists. mapwithkey (uncurry reducer) Apply * reducer * per key where mapwithkey f = let g (k,v) = (k, f (k,v)) in map g concatwithkey k_vs_s = [(k,v) (k,vs) <- k_vs_s, v <- vs] groupbykey :: [(k2,v2)] -> [(k2,[v2])] groupbykey = unconcatwithkey Store key only once per group. groupby fsteq Group on same key. sortby fstcmp Sort on keys (*not* on values) where fsteq (k,_v) (k,_v ) = k==k fstcmp (k,_v) (k,_v ) = k compare k unconcatwithkey kv_ss = [(k, vs) kv_s <- kv_ss, let k = fst $ head kv_s, let vs = map snd kv_s] Jens Dörre (Uni Passau) MapReduce Funktionale Programmierung 24 / 25

25 Alle Hilfsdefinitionen Allgemein: {-# LANGUAGE ScopedTypeVariables #-} module MapReduce (mapreduce) where import Data.List(groupBy, sortby) Für reduceperkey: mapwithkey f = let g (k,v) = (k, f (k,v)) in map g concatwithkey k_vs_s = [(k,v) (k,vs) <- k_vs_s, v <- vs] Für groupbykey: fsteq (k,_v) (k,_v ) = k==k fstcmp (k,_v) (k,_v ) = k compare k unconcatwithkey kv_ss = [(k, vs) kv_s <- kv_ss, let k = fst $ head kv_s, let vs = map snd kv_s] Jens Dörre (Uni Passau) MapReduce Funktionale Programmierung 25 / 25

MapReduce. www.kit.edu. Johann Volz. IPD Snelting, Lehrstuhl Programmierparadigmen

MapReduce. www.kit.edu. Johann Volz. IPD Snelting, Lehrstuhl Programmierparadigmen MapReduce Johann Volz IPD Snelting, Lehrstuhl Programmierparadigmen KIT Universität des Landes Baden-Württemberg und nationales Großforschungszentrum in der Helmholtz-Gemeinschaft www.kit.edu Wozu MapReduce?

Mehr

Neue Ansätze der Softwarequalitätssicherung

Neue Ansätze der Softwarequalitätssicherung Neue Ansätze der Softwarequalitätssicherung Googles MapReduce-Framework für verteilte Berechnungen am Beispiel von Apache Hadoop Universität Paderborn Fakultät für Elektrotechnik, Informatik und Mathematik

Mehr

MapReduce in der Praxis

MapReduce in der Praxis MapReduce in der Praxis Rolf Daniel Seminar Multicore Programmierung 09.12.2010 1 / 53 Agenda Einleitung 1 Einleitung 2 3 Disco Hadoop BOOM 4 2 / 53 1 Einleitung 2 3 Disco Hadoop BOOM 4 3 / 53 Motivation

Mehr

!! Waldemar Reger Köln,

!! Waldemar Reger Köln, Analyse und Evaluierung von Parameterabhängigkeiten anhand der Laufzeit von MapReduce-Jobs zur Konzeptionierung von Hadoop-Clustern Waldemar Reger Köln, 23.07.2014 Agenda 1. Hadoop Grundlagen 2. Cluster

Mehr

SEMT. Prof. G. Bengel. Searching as a Service (Programming Model: MapReduce)

SEMT. Prof. G. Bengel. Searching as a Service (Programming Model: MapReduce) Hochschule Mannheim Fakultät für Informatik SEMT Prof. G. Bengel Sommersemester 2009 Semester 8I Searching as a Service (Programming Model: MapReduce) Michel Schmitt (520361) 1.06.2009 Inhalt 1. Einführung...

Mehr

Hadoop. High Performance Batches in der Cloud. Hadoop. Folie 1 25. Januar 2011

Hadoop. High Performance Batches in der Cloud. Hadoop. Folie 1 25. Januar 2011 High Performance Batches in der Cloud Folie 1 Alles geht in die Cloud Image: Chris Sharp / FreeDigitalPhotos.net Cloud und Batches passen zusammen Batches Cloud Pay-per-Use Nur zeitweise genutzt Hohe Rechenkapazitäten

Mehr

Einführung in Hadoop

Einführung in Hadoop Einführung in Hadoop Inhalt / Lern-Ziele Übersicht: Basis-Architektur von Hadoop Einführung in HDFS Einführung in MapReduce Ausblick: Hadoop Ökosystem Optimierungen Versionen 10.02.2012 Prof. Dr. Christian

Mehr

Data Mining und Machine Learning

Data Mining und Machine Learning Data Mining und Machine Learning Teil 7: Verteiltes Rechnen mit Map Reduce Dr. Harald König, FHDW Hannover 30. November 2015 Inhalt 1 Verteiltes Rechnen 2 Map Reduce 3 Anwendungen 4 Map Reduce: Weiterführende

Mehr

MapReduce mit Hadoop 08.11.12 1

MapReduce mit Hadoop 08.11.12 1 MapReduce mit Hadoop 08.11.12 1 Lernziele / Inhalt Wiederholung MapReduce Map in Hadoop Reduce in Hadoop Datenfluss Erste Schritte Alte vs. neue API Combiner Functions mehr als Java 08.11.12 2 Wiederholung

Mehr

ROGER GILLIAR / MCS GMBH HASKELL FÜR JAVA PROGRAMMIERER

ROGER GILLIAR / MCS GMBH HASKELL FÜR JAVA PROGRAMMIERER ROGER GILLIAR / MCS GMBH HASKELL FÜR JAVA PROGRAMMIERER interface ImportantService { Double getmoney(); } ... sollte stets ein so genannter Kontrakt definiert werden, über den die Bedeutung der verschiedenen

Mehr

Parallele Programmiermodelle

Parallele Programmiermodelle Parallele Programmiermodelle ProSeminar: Parallele Programmierung Semester: WS 2012/2013 Dozentin: Margarita Esponda Einleitung - Kurzer Rückblick Flynn'sche Klassifikationsschemata Unterteilung nach Speicherorganissation

Mehr

Validation und Quick Fixing mit Xtend. 3. Dezember 2014

Validation und Quick Fixing mit Xtend. 3. Dezember 2014 Validation und Quick Fixing mit Xtend 3. Dezember 2014 175 Überblick Tuning der Xtext-generierten Editoren Validierung mit OCL auf der abstrakten Syntax mit Xtend auf der konkreten Syntax Quick Fixes mit

Mehr

Die wichtigsten Hadoop-Komponenten für Big Data mit SAS

Die wichtigsten Hadoop-Komponenten für Big Data mit SAS Webinar@Lunchtime Die wichtigsten Hadoop-Komponenten für Big Data mit SAS Herzlich Willkommen bei Webinar@Lunchtime Moderation Anne K. Bogner-Hamleh SAS Institute GmbH Education Consultant Xing-Profil:

Mehr

Teamprojekt & Projekt

Teamprojekt & Projekt 18. Oktober 2010 Teamprojekt & Projekt Veranstalter: Betreuer: Prof. Dr. Georg Lausen Thomas Hordnung, Alexander Schätzle, Martin Przjyaciel-Zablocki dbis Studienordnung Master: 16 ECTS 480 Semesterstunden

Mehr

Einführung in Hadoop & MapReduce. Dr. Kathrin Spreyer Big Data Engineer

Einführung in Hadoop & MapReduce. Dr. Kathrin Spreyer Big Data Engineer Einführung in Hadoop & MapReduce Dr. Kathrin Spreyer Big Data Engineer München, 19.06.2013 Agenda Einleitung 1. HDFS 2. MapReduce 3. APIs 4. Hive & Pig 5. Mahout Tools aus Hadoop-Ökosystem 6. HBase 2 Worum

Mehr

OpenCL. Programmiersprachen im Multicore-Zeitalter. Tim Wiersdörfer

OpenCL. Programmiersprachen im Multicore-Zeitalter. Tim Wiersdörfer OpenCL Programmiersprachen im Multicore-Zeitalter Tim Wiersdörfer Inhaltsverzeichnis 1. Was ist OpenCL 2. Entwicklung von OpenCL 3. OpenCL Modelle 1. Plattform-Modell 2. Ausführungs-Modell 3. Speicher-Modell

Mehr

Skalierbare Webanwendungen

Skalierbare Webanwendungen Skalierbare Webanwendungen Thomas Bachmann Lead Software Architect & CIO Mambu GmbH Twitter: @thobach Anwendungsbeispiel Hohe Nichtfunktionale Anforderungen Sicherheit Vertraulichkeit Integrität Verfügbarkeit

Mehr

Universität Karlsruhe (TH)

Universität Karlsruhe (TH) Universität Karlsruhe (TH) Forschungsuniversität gegründet 1825 Software Engineering für moderne, parallele Plattformen 10. MapReduce Dr. Victor Pankratius Agenda Motivation Der MapReduce-Ansatz Map- und

Mehr

Cloud Computing mit mathematischen Anwendungen

Cloud Computing mit mathematischen Anwendungen Cloud Computing mit mathematischen Anwendungen Vorlesung SoSe 2009 Dr. Marcel Kunze Karlsruhe Institute of Technology (KIT) Steinbuch Centre for Computing (SCC) KIT the cooperation of Forschungszentrum

Mehr

Datenbanksysteme Kapitel 6: Neue Konzepte der Datenbanktechnologie

Datenbanksysteme Kapitel 6: Neue Konzepte der Datenbanktechnologie Datenbanksysteme Kapitel 6: Neue Konzepte der Datenbanktechnologie Prof. Dr. Peter Chamoni Mercator School of Management Lehrstuhl für Wirtschaftsinformatik, insb. Business Intelligence Prof. Dr. Peter

Mehr

Hadoop in a Nutshell Einführung HDFS und MapReduce. Oracle/metafinanz Roadshow Februar 2014

Hadoop in a Nutshell Einführung HDFS und MapReduce. Oracle/metafinanz Roadshow Februar 2014 Hadoop in a Nutshell Einführung HDFS und MapReduce Oracle/metafinanz Roadshow Februar 2014 Head of Data Warehousing DWH Principal Consultant DWH Senior Consultant Wir fokussieren mit unseren Services die

Mehr

Datenbanksysteme Kapitel 6: Neue Konzepte der Datenbanktechnologie

Datenbanksysteme Kapitel 6: Neue Konzepte der Datenbanktechnologie Datenbanksysteme Kapitel 6: Neue Konzepte der Datenbanktechnologie Prof. Dr. Peter Chamoni Mercator School of Management Lehrstuhl für Wirtschaftsinformatik, insb. Business Intelligence Prof. Dr. Peter

Mehr

Erfahrungsbericht: Umstieg von RDBMS auf Big Data-Technologien

Erfahrungsbericht: Umstieg von RDBMS auf Big Data-Technologien Wir unternehmen IT. Erfahrungsbericht: Umstieg von RDBMS auf Big Data-Technologien Karlsruhe, 30.09.2015 $id thgreiner Thorsten Greiner Teamleiter Software Development ConSol* Software GmbH, Düsseldorf

Mehr

GPU-basierte Beschleunigung von MapReduce am Beispiel von OpenCL und Hadoop

GPU-basierte Beschleunigung von MapReduce am Beispiel von OpenCL und Hadoop am Beispiel von OpenCL und Masterseminar Hochschule für Technik, Wirtschaft und Kultur Leipzig Leipzig, 02.11.2011 Gliederung 1 Grundlagen 2 3 Gliederung 1 Grundlagen 2 3 Was ist? Clustersystem zur verteilten

Mehr

Oracle Big Data Technologien Ein Überblick

Oracle Big Data Technologien Ein Überblick Oracle Big Data Technologien Ein Überblick Jürgen Vester Oracle Deutschland B.V. & Co KG Um was geht es bei Big Data? Bei Big Data sprechen wir eine Klasse von Daten an, die in der

Mehr

Generalisierung von großen Datenbeständen am Beispiel der Gebäudegeneralisierung mit CHANGE

Generalisierung von großen Datenbeständen am Beispiel der Gebäudegeneralisierung mit CHANGE Institut für Kartographie und Geoinformatik Leibniz Universität Hannover Generalisierung von großen Datenbeständen am Beispiel der Gebäudegeneralisierung mit CHANGE Frank Thiemann, Thomas Globig Frank.Thiemann@ikg.uni-hannover.de

Mehr

APACHE PIG SEMINARARBEIT SSE - WS12/13 SEBASTIAN WALTHER

APACHE PIG SEMINARARBEIT SSE - WS12/13 SEBASTIAN WALTHER APACHE PIG SEMINARARBEIT SSE - WS12/13 SEBASTIAN WALTHER INHALT Das Hadoop Framework Hadoop s Distributed File System (HDFS) MapReduce Apache Pig Was ist Apache Pig & Pig Latin Anwendungsumgebungen Unterschied

Mehr

Informatik-Seminar Thema 6: Bäume

Informatik-Seminar Thema 6: Bäume Informatik-Seminar 2003 - Thema 6: Bäume Robin Brandt 14. November 2003 1 Robin Brandt Informatik-Seminar 2003 - Thema 6: Bäume Übersicht Definition Eigenschaften Operationen Idee Beispiel Datendefinition

Mehr

Big Data. Prof. Robert Jäschke Forschungszentrum L3S Leibniz Universität Hannover

Big Data. Prof. Robert Jäschke Forschungszentrum L3S Leibniz Universität Hannover Big Data Prof. Robert Jäschke Forschungszentrum L3S Leibniz Universität Hannover Agenda Was ist Big Data? Parallele Programmierung Map/Reduce Der Big Data Zoo 2 3Vs oder: Was ist Big Data? Deutsche Telekom:

Mehr

IUG DRESDEN ERSTELLUNG VON ROBUSTEN NATURAL SERVICES Software AG. All rights reserved. For internal use only

IUG DRESDEN ERSTELLUNG VON ROBUSTEN NATURAL SERVICES Software AG. All rights reserved. For internal use only IUG DRESDEN ERSTELLUNG VON ROBUSTEN NATURAL SERVICES 2016 Software AG. All rights reserved. For internal use only DIGITAL BUSINESS APPLICATIONS DRIVE THE DIGITAL BUSINESS Partner Lieferanten Kunden SaaS

Mehr

Modellgetriebene Softwareentwicklung bei der IBYKUS AG

Modellgetriebene Softwareentwicklung bei der IBYKUS AG Modellgetriebene Softwareentwicklung bei der IBYKUS AG Theorie Teil 7: Modelltransformationen Dr. Steffen Skatulla IBYKUS AG 1 Inhalt Teil 7: Modelltransformationen Wozu Modelltransformationen? Konzepte

Mehr

Map Reduce. Programmiermodell. Prof. Dr. Ingo Claÿen. Motivation. Modell. Verarbeitungsablauf. Algorithmen-Entwurf. Map-Reduce in Java

Map Reduce. Programmiermodell. Prof. Dr. Ingo Claÿen. Motivation. Modell. Verarbeitungsablauf. Algorithmen-Entwurf. Map-Reduce in Java Map Reduce Programmiermodell Prof. Dr. Ingo Claÿen Hochschule für Technik und Wirtschaft Berlin Motivation Modell Verarbeitungsablauf Algorithmen-Entwurf Map-Reduce in Java Motivation Was ist Map-Reduce

Mehr

NoSQL-Datenbanken und Hadoop im Zusammenspiel mit dem Data Warehouse

NoSQL-Datenbanken und Hadoop im Zusammenspiel mit dem Data Warehouse NoSQL-Datenbanken und Hadoop im Zusammenspiel mit dem Data Warehouse Carsten Czarski Oracle Deutschland B.V. & Co KG Big Data Betrachten von Daten die bislang nicht betrachtet wurden

Mehr

Seminar WS 2012/13. S. Chaudhuri et al, CACM, Aug. 2011. Parallel DBS vs. Open Platforms for Big Data, e.g. HaDoop Near-Realtime OLAP

Seminar WS 2012/13. S. Chaudhuri et al, CACM, Aug. 2011. Parallel DBS vs. Open Platforms for Big Data, e.g. HaDoop Near-Realtime OLAP Seminar WS 2012/13 S. Chaudhuri et al, CACM, Aug. 2011 Parallel DBS vs. Open Platforms for Big Data, e.g. HaDoop Near-Realtime OLAP 2 Vorkonfigurierte, komplette Data Warehouse-Installation Mehrere Server,

Mehr

Big Data in der Forschung

Big Data in der Forschung Big Data in der Forschung Dominik Friedrich RWTH Aachen Rechen- und Kommunikationszentrum (RZ) Gartner Hype Cycle July 2011 Folie 2 Was ist Big Data? Was wird unter Big Data verstanden Datensätze, die

Mehr

5. Programmierschnittstellen für XML

5. Programmierschnittstellen für XML 5. Programmierschnittstellen für Grundlagen Dr. E. Schön FH Erfurt Sommersemester 2015 Seite 135 Programmierschnittstelle Notwendigkeit: Zugriff auf -Daten durch Applikationen wiederverwendbare Schnittstellen

Mehr

Hadoop. Eine Open-Source-Implementierung von MapReduce und BigTable. von Philipp Kemkes

Hadoop. Eine Open-Source-Implementierung von MapReduce und BigTable. von Philipp Kemkes Hadoop Eine Open-Source-Implementierung von MapReduce und BigTable von Philipp Kemkes Hadoop Framework für skalierbare, verteilt arbeitende Software Zur Verarbeitung großer Datenmengen (Terra- bis Petabyte)

Mehr

5. Programmierschnittstellen für XML

5. Programmierschnittstellen für XML 5. Programmierschnittstellen für für Medientechnologen Dr. E. Schön Wintersemester 2015/16 Seite 146 Notwendigkeit: Programmierschnittstelle Zugriff auf -Daten durch Applikationen wiederverwendbare Schnittstellen

Mehr

Parallele und funktionale Programmierung Wintersemester 2016/ Übung Abgabe bis , 16:00 Uhr

Parallele und funktionale Programmierung Wintersemester 2016/ Übung Abgabe bis , 16:00 Uhr 4. Übung Abgabe bis 25.11.2016, 16:00 Uhr Aufgabe 4.1: Verklemmungsbedingungen a) Welche drei Bedingungen müssen gelten, damit es zu einer Verklemmung in einem parallelen System kommen kann? b) Nach welcher

Mehr

Datenbearbeitung in der Cloud anhand von Apache Hadoop Hochschule Mannheim

Datenbearbeitung in der Cloud anhand von Apache Hadoop Hochschule Mannheim Tobias Neef Cloud-Computing Seminar Hochschule Mannheim WS0910 1/23 Datenbearbeitung in der Cloud anhand von Apache Hadoop Hochschule Mannheim Tobias Neef Fakultät für Informatik Hochschule Mannheim tobnee@gmail.com

Mehr

Workshop Einführung in die Sprache Haskell

Workshop Einführung in die Sprache Haskell Workshop Einführung in die Sprache Haskell Nils Rexin, Marcellus Siegburg und Alexander Bau Fakultät für Informatik, Mathematik und Naturwissenschaften Hochschule für Technik, Wirtschaft und Kultur Leipzig

Mehr

Perzentile mit Hadoop ermitteln

Perzentile mit Hadoop ermitteln Perzentile mit Hadoop ermitteln Ausgangspunkt Ziel dieses Projektes war, einen Hadoop Job zu entwickeln, der mit Hilfe gegebener Parameter Simulationen durchführt und aus den Ergebnissen die Perzentile

Mehr

SODA. Die Datenbank als Document Store. Rainer Willems. Master Principal Sales Consultant Oracle Deutschland B.V. & Co. KG

SODA. Die Datenbank als Document Store. Rainer Willems. Master Principal Sales Consultant Oracle Deutschland B.V. & Co. KG SODA Die Datenbank als Document Store Rainer Willems Master Principal Sales Consultant Oracle Deutschland B.V. & Co. KG vs No Anforderungskonflikte Agile Entwicklung Häufige Schema-Änderungen Relationales

Mehr

Christoph Pohl M.Sc. Prof. Dr. Peter Mandl Hochschule München & Isys Software GmbH

Christoph Pohl M.Sc. Prof. Dr. Peter Mandl Hochschule München & Isys Software GmbH Christoph Pohl M.Sc. Prof. Dr. Peter Mandl Hochschule München & Isys Software GmbH Überblick Hintergrund der Arbeit Herausforderungen Beschreibung des Testmodells Vorstellung MapReduce Logdatenanalyse

Mehr

ANALYTICS, RISK MANAGEMENT & FINANCE ARCHITECTURE. NoSQL Datenbanksysteme Übersicht, Abgrenzung & Charakteristik

ANALYTICS, RISK MANAGEMENT & FINANCE ARCHITECTURE. NoSQL Datenbanksysteme Übersicht, Abgrenzung & Charakteristik ARFA ANALYTICS, RISK MANAGEMENT & FINANCE ARCHITECTURE NoSQL Datenbanksysteme Übersicht, Abgrenzung & Charakteristik Ralf Leipner Domain Architect Analytics, Risk Management & Finance 33. Berner Architekten

Mehr

2. Map/Reduce Programming Model. Architektur von Datenbanksystemen II

2. Map/Reduce Programming Model. Architektur von Datenbanksystemen II 2. Map/Reduce Programming Model Architektur von Datenbanksystemen II Motivation PROBLEMSTELLUNG Unternehmen wie Google, Yahoo, Facebook und Twitter müssen täglich Datenmengen im Bereich von TB und PB speichern

Mehr

Seminar Cloud Data Management WS09/10. Tabelle1 Tabelle2

Seminar Cloud Data Management WS09/10. Tabelle1 Tabelle2 Seminar Cloud Data Management WS09/10 Tabelle1 Tabelle2 1 Einführung DBMS in der Cloud Vergleich verschiedener DBMS Beispiele Microsoft Azure Amazon RDS Amazon EC2 Relational Databases AMIs Was gibt es

Mehr

Einstieg in die Informatik mit Java

Einstieg in die Informatik mit Java 1 / 15 Einstieg in die Informatik mit Java Collections Gerd Bohlender Institut für Angewandte und Numerische Mathematik Gliederung 2 / 15 1 Überblick Collections 2 Hierarchie von Collections 3 Verwendung

Mehr

Datenanalyse im Web. Einführung in das Thema. Prof. Dr. Ingo Claÿen. Beispiele für Daten im Web. Extraktion und Aggregation von Informationen

Datenanalyse im Web. Einführung in das Thema. Prof. Dr. Ingo Claÿen. Beispiele für Daten im Web. Extraktion und Aggregation von Informationen Datenanalyse im Web Einführung in das Thema Prof. Dr. Ingo Claÿen Hochschule für Technik und Wirtschaft Berlin Beispiele für Daten im Web Extraktion und Aggregation von Informationen Datenanalyse im Web

Mehr

VS2 Slide 1. Verteilte Systeme. Vorlesung 2 vom Dr. Sebastian Iwanowski FH Wedel

VS2 Slide 1. Verteilte Systeme. Vorlesung 2 vom Dr. Sebastian Iwanowski FH Wedel VS2 Slide 1 Verteilte Systeme Vorlesung 2 vom 15.04.2004 Dr. Sebastian Iwanowski FH Wedel VS2 Slide 2 Inhaltlicher Umfang dieser Vorlesung Inhaltliche Voraussetzungen: Programmieren, Grundkenntnisse Java

Mehr

Agenda. 1 Einleitung. 2 Binäre Bäume. 3 Binäre Suchbäume. 4 Rose Trees. 5 Zusammenfassung & Ausblick. Haskell Bäume. Einleitung.

Agenda. 1 Einleitung. 2 Binäre Bäume. 3 Binäre Suchbäume. 4 Rose Trees. 5 Zusammenfassung & Ausblick. Haskell Bäume. Einleitung. Vortrag: Bäume in Haskell Bäume in Haskell Vortrag Christoph Forster Thomas Kresalek Fachhochschule Wedel University of Applied Sciences 27. November 2009 Christoph Forster, Thomas Kresalek 1/53 Vortrag

Mehr

Programmieren in Haskell

Programmieren in Haskell Programmieren in Haskell Felder (Arrays) Programmieren in Haskell 1 Was wir heute machen Motivationsbeispiel Die Typklasse Ix Felder in Haskell Funktionstabellierung Binäre Suche Pascalsches Dreieck Ein

Mehr

Remote Method Invocation

Remote Method Invocation Remote Method Invocation Spezielle Technik aus dem Java-Umfeld Ausführung von Methoden auf einem entfernten Rechner Analogon zum RPC (Remote Procedure Call) Zweck: Objekte in verschiedenen Java-VMs Aufruf

Mehr

WS 2013/2014. Robert Giegerich. 11. Dezember 2013

WS 2013/2014. Robert Giegerich. 11. Dezember 2013 WS 2013/2014 Robert AG Praktische Informatik 11. Dezember 2013 höherer Ordnung Worum geht es heute? In Haskell gibt es, die als Argument haben oder als Ergebnis liefern. Diese nennt man höherer Ordnung.

Mehr

Oracle Big Data Technologien Ein Überblick

Oracle Big Data Technologien Ein Überblick Oracle Big Data Technologien Ein Überblick Ralf Lange Global ISV & OEM Sales NoSQL: Eine kurze Geschichte Internet-Boom: Erste Ansätze selbstgebauter "Datenbanken" Google stellt "MapReduce"

Mehr

!"#$"%&'()*$+()',!-+.'/',

!#$%&'()*$+()',!-+.'/', Soziotechnische Informationssysteme 5. Facebook, Google+ u.ä. Inhalte Historisches Relevanz Relevante Technologien Anwendungsarchitekturen 4(5,12316,7'.'0,!.80/6,9*$:'0+$.;.,&0$'0, 3, Historisches Facebook

Mehr

MapReduce. Vereinfachte Datenverarbeitung in großen Rechnerverbünden. Igor Marijanovic 794894. Fachvortrag WAR 19.12.2012

MapReduce. Vereinfachte Datenverarbeitung in großen Rechnerverbünden. Igor Marijanovic 794894. Fachvortrag WAR 19.12.2012 MapReduce Vereinfachte Datenverarbeitung in großen Rechnerverbünden Igor Marijanovic 794894 Fachvortrag WAR 19.12.2012 Beuth Hochschule für Technik Berlin Inhalt Einleitung Hauptteil Abschluss MapReduce

Mehr

BIG UNIVERSITÄTSRECHENZENTRUM

BIG UNIVERSITÄTSRECHENZENTRUM UNIVERSITÄTS RECHENZENTRUM LEIPZIG BIG DATA @ UNIVERSITÄTSRECHENZENTRUM Forschung und Entwicklung Entwicklung eines E-Science-Angebots für die Forschenden an der Universität Leipzig Stefan Kühne Axel Ngonga

Mehr

Christoph Niederseer, Michaela Mayr, Alexander Aichinger, Fabian Küppers. Wissenschaftl. Arbeitstechniken und Präsentation

Christoph Niederseer, Michaela Mayr, Alexander Aichinger, Fabian Küppers. Wissenschaftl. Arbeitstechniken und Präsentation Christoph Niederseer, Michaela Mayr, Alexander Aichinger, Fabian Küppers 1. Was ist paralleles Programmieren 2. Bitoner Sortieralgorithmus 3. Quicksort a) sequenzielles Quicksort b) paralleles Quicksort

Mehr

Funktionale Programmierung Mehr funktionale Muster

Funktionale Programmierung Mehr funktionale Muster Mehr funktionale Muster Prof. Dr. Oliver Braun Fakultät für Informatik und Mathematik Hochschule München Letzte Änderung: 07.12.2017 06:56 Inhaltsverzeichnis Pattern Matching..................................

Mehr

Hadoop aus IT-Operations Sicht Teil 1 Hadoop-Grundlagen

Hadoop aus IT-Operations Sicht Teil 1 Hadoop-Grundlagen Hadoop aus IT-Operations Sicht Teil 1 Hadoop-Grundlagen Brownbag am Freitag, den 26.07.2013 Daniel Bäurer inovex GmbH Systems Engineer Wir nutzen Technologien, um unsere Kunden glücklich zu machen. Und

Mehr

Beispiel: Hamming-Folge Erzeuge eine Folge X = x 0,x 2,... mit folgenden Eigenschaften: 1. x i+1 > x i für alle i

Beispiel: Hamming-Folge Erzeuge eine Folge X = x 0,x 2,... mit folgenden Eigenschaften: 1. x i+1 > x i für alle i Beispiel: Hamming-Folge Erzeuge eine Folge X = x 0,x 2,... mit folgenden Eigenschaften: 1. x i+1 > x i für alle i FP-8.7 2. x 0 = 1 3. Falls x in der Folge X auftritt, dann auch 2x, 3x und 5x. 4. Nur die

Mehr

Apache Hadoop. Distribute your data and your application. Bernd Fondermann freier Software Architekt bernd.fondermann@brainlounge.de berndf@apache.

Apache Hadoop. Distribute your data and your application. Bernd Fondermann freier Software Architekt bernd.fondermann@brainlounge.de berndf@apache. Apache Hadoop Distribute your data and your application Bernd Fondermann freier Software Architekt bernd.fondermann@brainlounge.de berndf@apache.org Apache The Apache Software Foundation Community und

Mehr

Funktionale Programmierung Grundlegende Datentypen

Funktionale Programmierung Grundlegende Datentypen Grundlegende Datentypen Prof. Dr. Oliver Braun Fakultät für Informatik und Mathematik Hochschule München Letzte Änderung: 06.11.2017 16:45 Inhaltsverzeichnis Typen........................................

Mehr

Intel Threading Building Blocks (TBB)

Intel Threading Building Blocks (TBB) Intel Threading Building Blocks (TBB) Julius Adorf 26.10.2009 Seminar: Semantics of C++ TU München Tejas und Jayhawk? Intel Threading Building Blocks (TBB) Parallelisierung für C++ eine Bibliothek mittlerweile

Mehr

Beratung. Results, no Excuses. Consulting. Lösungen. Grown from Experience. Ventum Consulting. SQL auf Hadoop Oliver Gehlert. 2014 Ventum Consulting

Beratung. Results, no Excuses. Consulting. Lösungen. Grown from Experience. Ventum Consulting. SQL auf Hadoop Oliver Gehlert. 2014 Ventum Consulting Beratung Results, no Excuses. Consulting Lösungen Grown from Experience. Ventum Consulting SQL auf Hadoop Oliver Gehlert 1 Ventum Consulting Daten und Fakten Results, no excuses Fachwissen Branchenkenntnis

Mehr

Die Java Stream API. Funktionale Programmierung mit der Stream API des JDK 1.8. Prof. Dr. Nikolaus Wulff

Die Java Stream API. Funktionale Programmierung mit der Stream API des JDK 1.8. Prof. Dr. Nikolaus Wulff Die Java Stream API Funktionale Programmierung mit der Stream API des JDK 1.8 Prof. Dr. Nikolaus Wulff Funktionale Programmierung Neben der Collection API mit default Methoden ist als weitere Neuerung

Mehr

Tobias Flohre / Dennis Schulte codecentric AG. Spring Batch Performance und Skalierbarkeit

Tobias Flohre / Dennis Schulte codecentric AG. Spring Batch Performance und Skalierbarkeit Tobias Flohre / Dennis Schulte Spring Batch Performance und Skalierbarkeit Dennis Schulte Düsseldorf @denschu www.github.com/denschu blog.codecentric.de/author/dsc tel +49 (0) 1515 _ 288 2395 dennis.schulte@codecentric.de

Mehr

Prof. Dr.-Ing. Rainer Schmidt 1

Prof. Dr.-Ing. Rainer Schmidt 1 Prof. Dr.-Ing. Rainer Schmidt 1 Business Analytics und Big Data sind Thema vieler Veröffentlichungen. Big Data wird immer häufiger bei Google als Suchbegriff verwendet. Prof. Dr.-Ing. Rainer Schmidt 2

Mehr

Detecting Near Duplicates for Web Crawling

Detecting Near Duplicates for Web Crawling Detecting Near Duplicates for Web Crawling Gurmeet Singh Manku et al., WWW 2007* * 16th international conference on World Wide Web Detecting Near Duplicates for Web Crawling Finde near duplicates in großen

Mehr

Funktionale Programmiersprachen

Funktionale Programmiersprachen Funktionale Programmiersprachen An den Beispielen Haskell und Erlang Übersicht Programmiersprachen λ-kalkül Syntax, Definitionen Besonderheiten von funktionalen Programmiersprache, bzw. Haskell Objektorientierte

Mehr

Cloud-Computing. 1. Definition 2. Was bietet Cloud-Computing. 3. Technische Lösungen. 4. Kritik an der Cloud. 2.1 Industrie 2.

Cloud-Computing. 1. Definition 2. Was bietet Cloud-Computing. 3. Technische Lösungen. 4. Kritik an der Cloud. 2.1 Industrie 2. Cloud Computing Frank Hallas und Alexander Butiu Universität Erlangen Nürnberg, Lehrstuhl für Hardware/Software CoDesign Multicorearchitectures and Programming Seminar, Sommersemester 2013 1. Definition

Mehr

Entwurfsmuster. Marc Monecke

Entwurfsmuster. Marc Monecke Entwurfsmuster Marc Monecke monecke@informatik.uni-siegen.de Praktische Informatik Fachbereich Elektrotechnik und Informatik Universität Siegen, D-57068 Siegen 20. Mai 2003 Inhaltsverzeichnis 1 Grundlagen

Mehr

19. STL Container Programmieren / Algorithmen und Datenstrukturen 2

19. STL Container Programmieren / Algorithmen und Datenstrukturen 2 19. STL Container Programmieren / Algorithmen und Datenstrukturen 2 Prof. Dr. Bernhard Humm FB Informatik, Hochschule Darmstadt Wintersemester 2012 / 2013 1 Agenda Kontrollfragen STL Container: Übersicht

Mehr

Funktionale Programmierung mit Haskell

Funktionale Programmierung mit Haskell Funktionale Programmierung mit Haskell Dr. Michael Savorić Hohenstaufen-Gymnasium (HSG) Kaiserslautern Version 20120622 Überblick Wichtige Eigenschaften Einführungsbeispiele Listenerzeugung und Beispiel

Mehr

Spark, Impala und Hadoop in der Kreditrisikoberechnung

Spark, Impala und Hadoop in der Kreditrisikoberechnung Spark, Impala und Hadoop in der Kreditrisikoberechnung Big Data In-Memory-Technologien für mittelgroße Datenmengen TDWI München, 22. Juni 2015 Joschka Kupilas, Data Scientist, Adastra GmbH 2 Inhalt Vorwort

Mehr

I Grundlagen der parallelen Programmierung 1

I Grundlagen der parallelen Programmierung 1 vii I Grundlagen der parallelen Programmierung 1 1 Einführung...... 3 1.1 Paradigmenwechsel in der Softwareentwicklung..... 4 1.2 Anwendungsbereiche...... 5 1.3 Parallelität in der Hardware..... 5 1.3.1

Mehr

2. Der ParaNut-Prozessor "Parallel and more than just another CPU core"

2. Der ParaNut-Prozessor Parallel and more than just another CPU core 2. Der ParaNut-Prozessor "Parallel and more than just another CPU core" Neuer, konfigurierbarer Prozessor Parallelität auf Daten- (SIMD) und Thread-Ebene Hohe Skalierbarkeit mit einer Architektur neues

Mehr

MapReduce-Konzept. Thomas Findling, Thomas König

MapReduce-Konzept. Thomas Findling, Thomas König MapReduce - Konzept 1 Inhalt 1. Motivation 2. Einführung MapReduce Google Rechenzentren Vergleich MapReduce und Relationale DBS 3. Hadoop Funktionsweise Input / Output Fehlerbehandlung 4. Praxis-Beispiel

Mehr

Assoziationsregeln & Sequenzielle Muster. A. Hinneburg, Web Data Mining MLU Halle-Wittenberg, SS 2007

Assoziationsregeln & Sequenzielle Muster. A. Hinneburg, Web Data Mining MLU Halle-Wittenberg, SS 2007 Assoziationsregeln & Sequenzielle Muster 0 Übersicht Grundlagen für Assoziationsregeln Apriori Algorithmus Verschiedene Datenformate Finden von Assoziationsregeln mit mehren unteren Schranken für Unterstützung

Mehr

BIG DATA HYPE ODER CHANCE

BIG DATA HYPE ODER CHANCE BIG DATA HYPE ODER CHANCE 1 Fuchs Dominik 16.05.2014 Fahrplan 2 Begriff Big Data Die 3 V s Fallbeispiel Google Was? Wie? Womit? Fazit & Ausblick in die Zukunft Der Begriff Big Data 3 Datenmengen, die zu

Mehr

MATCHING VON PRODUKTDATEN IN DER CLOUD

MATCHING VON PRODUKTDATEN IN DER CLOUD MATCHING VON PRODUKTDATEN IN DER CLOUD Dr. Andreas Thor Universität Leipzig 15.12.2011 Web Data Integration Workshop 2011 Cloud Computing 2 Cloud computing is using the internet to access someone else's

Mehr

Simulink: Softwareentwurf für eingebettete Systeme ROS-Arduino-Interface. von Christian Schildwächter

Simulink: Softwareentwurf für eingebettete Systeme ROS-Arduino-Interface. von Christian Schildwächter Simulink: Softwareentwurf für eingebettete Systeme ROS-Arduino-Interface von Christian Schildwächter Simulink Simulink S-Functions Softwareprojekt ROS-Arduino-Interface Simulink 3 LIVE DEMO 4 External

Mehr

Kapitel 7 des Buches, von Java-Selbstbau nach Scala-Library portiert. 2014-11-14 Christoph Knabe

Kapitel 7 des Buches, von Java-Selbstbau nach Scala-Library portiert. 2014-11-14 Christoph Knabe Anfragen für Listen Kapitel 7 des Buches, von Java-Selbstbau nach Scala-Library portiert. 2014-11-14 Christoph Knabe 1 MapReduce-Verfahren Google u.a. verwenden Map-Reduce-Verfahren zur Verarbeitung riesiger

Mehr

Textdokument-Suche auf dem Rechner Implementierungsprojekt

Textdokument-Suche auf dem Rechner Implementierungsprojekt Textdokument-Suche auf dem Rechner Implementierungsprojekt Referent: Oliver Petra Seminar: Information Retrieval Institut für Computerlinguistik Ruprecht-Karls-Universität Heidelberg 19.01.2015 Überblick

Mehr

> High-Level Programmierung heterogener paralleler Systeme

> High-Level Programmierung heterogener paralleler Systeme > High-Level Programmierung heterogener paralleler Systeme Projektseminar im SoSe 2012 Prof. Sergei Gorlatch, Michel Steuwer, Tim Humernbrum AG Parallele und Verteilte Systeme, Westfälische Wilhelms-Universität

Mehr

Programmieren in Haskell

Programmieren in Haskell Programmieren in Haskell Felder (Arrays) Programmieren in Haskell 1 Was wir heute machen Motivationsbeispiel Die Typklasse Ix Felder in Haskell Funktionstabellierung Binäre Suche Pascalsches Dreieck Hashing

Mehr

Java Concurrency Utilities

Java Concurrency Utilities Java Concurrency Utilities Java unterstützt seit Java 1.0 Multithreading Java unterstützt das Monitorkonzept mittels der Schlüsselworte synchronized und volatile sowie den java.lang.object Methoden wait(),

Mehr

10. OLAPLINE-Anwendertreffen

10. OLAPLINE-Anwendertreffen 10. OLAPLINE-Anwendertreffen 26. und 27. April 2017 Schloss Garath Düsseldorf Zwei Tage Weiterbildung und Networking integriert: Vorträge, Workshops und Erfahrungsaustausch rund um TM1 JAVA EXTENSIONS

Mehr

Wide Column Stores. Felix Bruckner Mannheim, 15.06.2012

Wide Column Stores. Felix Bruckner Mannheim, 15.06.2012 Wide Column Stores Felix Bruckner Mannheim, 15.06.2012 Agenda Einführung Motivation Grundlagen NoSQL Grundlagen Wide Column Stores Anwendungsfälle Datenmodell Technik Wide Column Stores & Cloud Computing

Mehr

VL06: Haskell (Funktionen höherer Ordnung, Currying)

VL06: Haskell (Funktionen höherer Ordnung, Currying) VL06: Haskell (Funktionen höherer Ordnung, Currying) IFM 5.3 Spezielle Methoden der Programmierung Carsten Gips, FH Bielefeld 18.05.2015 Wiederholung Wiederholung Wie können Sie die ersten n Elemente einer

Mehr

13. Funktionale Konzepte in Java

13. Funktionale Konzepte in Java Funktionale vs. Imperative Programmierung 13. Funktionale Konzepte in Java Funktionale Programmierung, Lambda Ausdrücke, Datenströme, Pipelines Imperative Konzepte Ausführen von Anweisungen Zustand (z.b.

Mehr

Data Mining in der Cloud

Data Mining in der Cloud Data Mining in der Cloud von Jan-Christoph Meier Hamburg, 21.06.2012 1 Ablauf Einführung Verwandte Arbeiten Fazit / Ausblick Literatur 2 Ablauf Einführung Verwandte Arbeiten Fazit / Ausblick Literatur

Mehr

Hadoop. Simon Prewo. Simon Prewo

Hadoop. Simon Prewo. Simon Prewo Hadoop Simon Prewo Simon Prewo 1 Warum Hadoop? SQL: DB2, Oracle Hadoop? Innerhalb der letzten zwei Jahre hat sich die Datenmenge ca. verzehnfacht Die Klassiker wie DB2, Oracle usw. sind anders konzeptioniert

Mehr

OO Programmiersprache vs relationales Model. DBIS/Dr. Karsten Tolle

OO Programmiersprache vs relationales Model. DBIS/Dr. Karsten Tolle OO Programmiersprache vs relationales Model Vorgehen bisher Erstellen eines ER-Diagramms Übersetzen in das relationale Datenmodell Zugriff auf das relationale Datenmodell aus z.b. Java ER rel. Modell OO

Mehr

Apache Lucene. Mach s wie Google! Bernd Fondermann freier Software Architekt bernd.fondermann@brainlounge.de berndf@apache.org

Apache Lucene. Mach s wie Google! Bernd Fondermann freier Software Architekt bernd.fondermann@brainlounge.de berndf@apache.org Apache Lucene Mach s wie Google! Bernd Fondermann freier Software Architekt bernd.fondermann@brainlounge.de berndf@apache.org 1 Apache Apache Software Foundation Software free of charge Apache Software

Mehr

Suchen und Sortieren

Suchen und Sortieren Ideen und Konzepte der Informatik Suchen und Sortieren [Ordnung muss sein ] Kurt Mehlhorn (viele Folien von Kostas Panagiotou) Suchen Welche Telefonnummer hat Kurt Mehlhorn? Wie schreibt man das Wort Equivalenz?

Mehr

Bernd Fondermann brainlounge. Blaue oder rote Pille: SQL oder MapReduce?

Bernd Fondermann brainlounge. Blaue oder rote Pille: SQL oder MapReduce? Bernd Fondermann brainlounge Blaue oder rote Pille: SQL oder MapReduce? TODOs pills on all pages upd source code 1 Blaue oder rote Pille - SQL oder MapReduce? Bernd Fondermann, BigDataCon/JAX 2012 2 Rote

Mehr

Entwicklung algorithmischer Skelette für CUDA am Beispiel von Affintiy Propagation

Entwicklung algorithmischer Skelette für CUDA am Beispiel von Affintiy Propagation Entwicklung algorithmischer Skelette für CUDA am Beispiel von Affintiy Propagation Christoph Winter Fakultät für Informatik und Mathematik Ostbayerische Technische Hochschule Regensburg 93049 Regensburg

Mehr