Cloud Data Management Kapitel 5: MapReduce und Datenbanken (Teil 1)

Größe: px
Ab Seite anzeigen:

Download "Cloud Data Management Kapitel 5: MapReduce und Datenbanken (Teil 1)"

Transkript

1 Cloud Data Management Kapitel 5: MapReduce und Datenbanken (Teil 1) Dr. Eric Peukert Wintersemester 2017 Universität Leipzig, Institut für Informatik

2 Inhaltsverzeichnis SQL-Anfrageformulierung mit MapReduce Joins mit MapReduce Data Warehousing mit MapReduce Hive und Pig

3 SQL-Anfrageformulierung mit MapReduce (manuelle) Umschreibung SQL MapReduce Beispiel: CouchDB Dokumenten-orientierte Datenbank kein Schema Dokumente in JSON-Format Anfragen durch View-Definitionen Definition von - und -Funktion in Javascript (und anderen Sprachen)

4 Beispieldaten id name time user camera info tags width height size Konzeptionell: Repräsentation als verschachtelte Tabelle 1 fish.jpg 17:46 bob nikon [tuna, shark] 2 trees.jpg 17:57 john canon [oak] 3 snow.png 17:56 john canon [tahoe, powder] 4 hawaii.png 17:59 john nikon [maui, tuna] 5 hawaii.gif 17:58 bob canon [maui] 6 island.gif 17:43 zztop nikon [maui] Intern: Repräsentation als Dokumentenmenge (JSON-Format) { _id : 1, "name":"fish.jpg", time": 17:46","user":"bob,"camera":"nikon", "info":{"width":100,"height":200,"size":12345,"tags":["tuna","shark"] { _id : 2, "name":"trees.jpg", time": 17:57,"user":"john,"camera":"canon", "info":{"width":30,"height":250,"size":32091,"tags":["oak"]... Quelle:

5 Selektion Selektion = Bedingung für Attributwert(e) SQL:... WHERE attr = xy MapReduce : Prüfung durch IF-Bedingung, Ausgabe der selektierten Dokumente : Id-Funktion Beispiel SQL: SELECT * FROM table WHERE user = bob id name time user camera info tags width height size 1 fish.jpg 17:46 bob nikon [tuna, shark] 5 hawaii.gif 17:58 bob canon [maui]

6 Selektion: Beispiel function (doc) { if (doc.user == bob ) emit (doc.id, doc); function (key, values) { return values; {id:1,user:bob... {id:2,user:john... {id:3,user:john... {id:4,user:john... {id:5,user:bob... {id:6,user:zztop... key value key values [{id:1...] shuffle + sort [{id:5...] Alternative emit (null, doc); key value null {id:1... null {id:5... shffl+srt key null values [{id:1..., {id:5...] [{id:1...,{id:5...]

7 Selektion: Beispiel function (doc) { if (doc.user == bob ) emit (doc.id, doc); function (key, values) { return values; {id:1,user:bob... {id:2,user:john... {id:3,user:john... {id:4,user:john... {id:5,user:bob... {id:6,user:zztop... key value 1 {id:1 {id:5. 5 shuffle + sort key values 1 [{id:1...] 5 [{id:5...] [{id:1...] [{id:5...] Alternative emit (null, doc); key value null {id:1... null {id:5... shffl+srt key null values [{id:1..., {id:5...] [{id:1...,{id:5...]

8 Projektion Projektion = Einschränkung des Ergebnisses auf Attribute SQL: SELECT Attr1, Attr2 FROM... MapReduce : Generierung eines neuen Dokuments mit entsprechenden Attributen : Id-Funktion Duplikateliminierung : Key = Attribut(kombination) : Ausgabe des ersten Values Beispiel SQL: SELECT (DISTINCT) user FROM table user bob john john john bob zztop user bob john zztop

9 Projektion: Beispiel (ohne Duplikateliminierung) function (doc) { emit(doc.id,{ user :doc.user); function (key, values) { return values; {id:1,user:bob... {id:2,user:john... {id:3,user:john... {id:4,user:john... {id:5,user:bob... {id:6,user:zztop... key value 1 {user:bob 2 {user:john 3 {user:john 4 {user:john 5 {user:bob 6 {user:zztop shuffle + sort key values 1 [{user:bob ] 2 [{user:john] 3 [{user:john] 4 [{user:john] 5 [{user:bob] 6 [{user:zztop] [{user:bob ] [{user:john] [{user:john] [{user:john] [{user:bob] [{user:zztop]

10 Projektion: Beispiel (mit Duplikateliminierung) function (doc) { emit(doc.user,{ user :doc.user); function (key, values) { return values[0]; {id:1,user:bob... {id:2,user:john... {id:3,user:john... {id:4,user:john... {id:5,user:bob... {id:6,user:zztop... key value 1 {user:bob 2 {user:john 3 {user:john 4 {user:john 5 {user:bob 6 {user:zztop shuffle + sort key values [{user:john] [{user:bob] [{user:zztop]

11 Projektion: Beispiel (mit Duplikateliminierung) function (doc) { emit(doc.user,{ user :doc.user); function (key, values) { return values[0]; {id:1,user:bob... {id:2,user:john... {id:3,user:john... {id:4,user:john... {id:5,user:bob... {id:6,user:zztop... key value 1 {user:bob 2 {user:john 3 {user:john 4 {user:john 5 {user:bob 6 {user:zztop shuffle + sort key values bob [{user:bob, {user:bob] john zztop [{user:john, {user:john, {user:john] [{user:zztop] [{user:john] [{user:bob] [{user:zztop]

12 Gruppierung und Aggregatfunktion Gruppierung Zusammenfassen von Datensätzen mit gleichen Attributwerten Bildung aggregierter Attributwerte pro Gruppe durch Aggregatfunktionen (z.b. SUM) MapReduce : Gruppierungsattribut(e) als Key : Anwendung der Aggregatfunktion Beispel SELECT camera, AVG(info.size) as avgsize FROM Table GROUP BY camera camera avgsize canon nikon 51859

13 Gruppierung und Aggregatfunktion: Beispiel function (doc) { emit(doc.camera, doc.info.size); function (key, values) { sum = 0; for (i=0; i<values.length; i++) { sum = sum + values[i]; return sum/values.length; {id:1,user:bob... {id:2,user:john... {id:3,user:john... {id:4,user:john... {id:5,user:bob... {id:6,user:zztop... key value nikon canon canon 1253 nikon canon nikon shuffle + sort key values

14 Gruppierung und Aggregatfunktion: Beispiel function (doc) { emit(doc.camera, doc.info.size); function (key, values) { sum = 0; for (i=0; i<values.length; i++) { sum = sum + values[i]; return sum/values.length; {id:1,user:bob... {id:2,user:john... {id:3,user:john... {id:4,user:john... {id:5,user:bob... {id:6,user:zztop... key value nikon canon canon 1253 nikon canon nikon shuffle + sort key values canon [32091, 1253, 49287] nikon [32091, 1253, 49287]

15 Equi-Join + Mehrwertiges Attribut Equi-Join = Verknüpfung zweier Relationen über Attributgleichheit SQL:... WHERE Tab1.Attr1 = Tab2.Attr2 Mehrwertige Attribute 1:N/N:M-Beziehung = weitere Relation(en), die durch Join verknüpft werde MapReduce : Join-Attribut als Key : Iteration über Paare Beispiel (SQL) Welche Bilder haben (mind.) ein gemeinsames Tag name1 fish.jpg hawaii.png hawaii.gif hawaii.gif name2 hawaii.png island.gif hawaii.png island.gif

16 Equi-Join + Mehrwertiges Attribut: Beispiel function (doc) { for (i=0; i<doc.tags.length; i++) { emit (doc.tags[i], doc.name); function (key, values) { var result = new Array(); for (i=0; i<values.length; i++) { for (k=0; k<values.length; k++) { if (i<k) { result.push ({ name1 :values[i], name2 :values[k]); return result;

17 Equi-Join + Mehrwertiges Attribut: Beispiel (2) {id:1,... {id:2,... {id:3,... {id:4,... {id:5,... {id:6,... key tuna shark oak tahoe powder maui value fish.jpg fish.jpg tree.jpg snow.png snow.png hawaii.png shuffle + sort key maui oak power shark tahoe tuna value [hawaii.png, hawaii.gif, island.gif] [tree.jpg] [snow.png] [fish.jpg] [snow.png] [fish.jpg, hawaii.png] [{name1:hawaii.png, name2: island.gif, {name1:hawaii.gif, name2:hawaii.png, {name1:hawaii.gif, name2:island.gif] [] [] [] tuna maui maui hawaii.png hawaii.gif island.gif [] [{name1:fish.jpg, name2:hawaii.png]

18 Inhaltsverzeichnis SQL-Anfrageformulierung mit MapReduce Joins mit MapReduce Data Warehousing mit MapReduce Hive und Pig

19 Join-Realisierung mit MapReduce Join ist wichtige und teure Datenbank-Operation verschiedene Join-Arten (Natural, Outer,...), Anzahl beteiligter Relationen Fokus im Folgenden: Natural Join zwischen R und S Häufiger Anwendungsfall für WebApps: Logfile-Auswertung Logfile User über Attribut UserId Logfile (#Klicks) meist deutlich größer als Referenztabelle (#User) Geringe Join-Selektivität (nur x% der User pro Tag auf Website) Join-Performanz u.a. abhängig von gleichmäßiger Lastbalancierung der Knoten (z.b. Entity Matching) Datenmenge, die zw. Map- und Reduce-Phase sortiert und transferiert wird (ggf. unter Berücksichtigung der Lokalität) Verschiedene Verfahren Repartition Join Broadcast Join Semi-Join Quelle diese und nächste Folien: [MRJoin]

20 Repartition Join R S a b a 1 3 a 2 3 a 3 3 a 4 2 a 5 3 a 6 2 a 7 2 a 8 2 b c 1 c 1 2 c 2 3 c 3 4 c 4 Naiver Ansatz : Key=Join-Attribut, Value=Relationsname + Nicht-Join-Attribute : Alle Paare mit unterschiedlichen Relationsnamen (3, R:a 1 ) (3, R:a 2 ) (3, R:a 3 ) (2, R:a 4 ) (3, R:a 5 ) (2, R:a 6 ) (2, R:a 7 ) (2, R:a 8 ) (1, S:c 1 ) (2, S:c 2 ) (3, S:c 3 ) (4, S:c 4 ) shuffle + sort a b c a 4 2 c 2 a 6 2 c 2 a 7 2 c 2 a 8 2 c 2 a 1 3 c 3 a 2 3 c 3 a 3 3 c 3 a 5 3 c 3

21 Repartition Join R S a b a 1 3 a 2 3 a 3 3 a 4 2 a 5 3 a 6 2 a 7 2 a 8 2 b c 1 c 1 2 c 2 3 c 3 4 c 4 Naiver Ansatz : Key=Join-Attribut, Value=Relationsname + Nicht-Join-Attribute : Alle Paare mit unterschiedlichen Relationsnamen (3, R:a 1 ) (3, R:a 2 ) (3, R:a 3 ) (2, R:a 4 ) (3, R:a 5 ) (2, R:a 6 ) (2, R:a 7 ) (2, R:a 8 ) (1, S:c 1 ) (2, S:c 2 ) (3, S:c 3 ) (4, S:c 4 ) shuffle + sort (1, [S:c 1] ) (2, [R:a4,S:c2,R:a6,R:a7,R:a8] ) (3, [R:a1, R:a2, R:a3, R:a5, S:c3]) (4, [S:c4]) a b c a 4 2 c 2 a 6 2 c 2 a 7 2 c 2 a 8 2 c 2 a 1 3 c 3 a 2 3 c 3 a 3 3 c 3 a 5 3 c 3

22 Repartition Join: Nachteile Alle Daten werden zwischen Map- und Reduce-Phase sortiert und an die Reduce Tasks geschickt Verbesserung durch Broadcast Join, Semi-Join (nächste Folien) Reducer muss alle N Datensätze pro Key puffern keine Reihenfolge bzgl. Input-Relation, da nur nach Join-Attribut sortiert Hadoop-Implementierung erlaubt nur sequentiellen Datenzugrifff

23 Repartition Join: Nachteile (2) Lösung (für puffern) Erweiterung des Map-Keys und des Values um Relationsname Sortierung: Keys der kleineren Relation (S=0) vor Keys der größeren Relation (R=1) Reduce muss nur noch Datensätze von S puffern (erkannt am Wechsel d. 2. Komponente des Values) Beispiel normal (2, R:a 4 ) (2, S:c 2 ) (2, R:a 6 ) (2, R:a 7 ) (2, R:a 8 ) erweiterter Key+Sortierung (2:0, c 2 :0) (2:1, a 4 :1) (2:1, a 6 :1) (2:1, a 7 :1) (2:1, a 8 :1) Nach Gruppierung (2, [c 2 :0, a 4 :1, a 6 :1, a 7 :1, a 8 :1])

24 Beispiel R S a b a 1 3 a 2 3 a 3 3 a 4 2 a 5 3 a 6 2 a 7 2 a 8 2 b c 1 c 1 2 c 2 3 c 3 4 c 4 (3:1, a 1 :1) (3:1, a 2 :1) (3:1, a 3 :1) (2:1, a 4 :1) (3:1, a 5 :1) (2:1, a 6 :1) (2:1, a 7 :1) (2:1, a 8 :1) (1:0, c 1 :0) (2:0, c 2 :0) (3:0, c 3 :0) (4:0, c 4 :0) Partition nach Key.a shuffle + sort Sort nach Key (1:0, c 1 :0) (2:0, c 2 :0) (2:1, a 4 :1) (2:1, a 6 :1) (2:1, a 7 :1) (2:1, a 8 :1) (3:0, c 3 :0) (3:1, a 1 :1) (3:1, a 2 :1) (3:1, a 3 :1) (3:1, a 5 :1) (4:0, c 4 :0) Gruppierung nach Key.a (1, [c1:0]) (2, [c 2 :0, a 4 :1, a 6 :1, a 7 :1, a 8 :1]) 3,[c3:0, a 1 :1, a 2 :1, a 3 :1, a 5 :1] 4, [c4:0]

25 Broadcast-Join R a b a 1 3 a 2 3 Idee a 3 3 Kleinere Relation (S) als a 4 2 zusätzlichen Input a 5 3 a Join nur in -Phase, 6 2 a kein Reduce notwendig 7 2 a 8 2 Notwendiger Datentransfer kleinere Relation muss an alle n Knoten geschickt werden n S Datensätze kein Transfer von R, da jeder -Task seine lokale -Partition bearbeitet Vergleich Repartition-Join beide Relationen werden auf alle - Tasks aufgeteilt R + S Datensätze Dynamische Entscheidung möglich, welche Relation kleiner und ob Broadcast-Join vorteilhaft ist S b c 1 c 1 2 c 2 3 c 3 4 c 4 a b c a 1 3 c 3 a 2 3 c 3 a 3 3 c 3 a 4 2 c 2 a 5 3 c 3 a 6 2 c 2 a 7 2 c 2 a 8 2 c 2

26 Semi-Join - Approach Neben Anzahl der Datensätze auch Größe der zu transferierenden Datensätze entscheidend Größe (Join-Attribut) << Größe (Datensatz) Semi-Join-Idee: R S = R ( P b (R) Realisierung durch drei Map-Reduce-Schritte S ) mit Join-Attribut b 1. R = P b (R) extrahiert Join-Attribut, 1 task entfernt Duplikate 2. S = R S 3. R S : Broadcast-Join mit kleinerer Relation R Broadcast-Join mit kleinerer Relation S

27 Semi-Join: Beispiel R a b (3, ^) (2, ^) a 1 3 (3, ^) (2, ^) a 2 3 (3, ^) (2, ^) a 3 3 (2, ^) (2, ^) a 4 2 a 5 3 (3, ^) (3, ^) (2, ^) (3, ^) a 6 2 (2, ^) (3, ^) a 7 2 (2, ^) (3, ^) a 8 2 shuffle + sort b R S b c 1 c 1 2 c 2 3 c 3 4 c 4 S b R a b a b c a 1 3 a 1 3 c 3 a 2 3 a 2 3 c 3 a 3 3 a 3 3 c 3 a 4 2 a 4 2 c 2 a 5 3 a 5 3 c 3 a 6 2 a 6 2 c 2 a 7 2 a 7 2 c 2 a 8 2 a 8 2 c 2 c

28 Semi-Join: Beispiel R a b (3, ^) (2, ^) a 1 3 (3, ^) (2, ^) a 2 3 (3, ^) (2, ^) a 3 3 (2, ^) (2, ^) a 4 2 a 5 3 (3, ^) (3, ^) (2, ^) (3, ^) a 6 2 (2, ^) (3, ^) a 7 2 (2, ^) (3, ^) a 8 2 shuffle + sort R b 2 3 S b c 1 c 1 2 c 2 3 c 3 4 c 4 S b c 2 c2 3 c3 R a b a b c a 1 3 a 1 3 c 3 a 2 3 a 2 3 c 3 a 3 3 a 3 3 c 3 a 4 2 a 4 2 c 2 a 5 3 a 5 3 c 3 a 6 2 a 6 2 c 2 a 7 2 a 7 2 c 2 a 8 2 a 8 2 c 2

29 Evaluation in [MRJoin] Tabelle: Datenmenge geschickt durch das Netzwerk geringer als Map-Output (z.t. gleicher Knoten für und -Task) #Datensätze (Relation S) Repartition (erw. Key) Broadcast 0.3 Millionen 145 GB 6 GB 10 Millionen 145 GB 195 GB 300 Millionen 151 GB 6240 GB Broadcast für kleine S Repartitioning: Nutzen des erweiterten Keys Semi-Join muss zweimal (große) Relation R einlesen

Cloud Data Management

Cloud Data Management Cloud Data Management Kapitel 6: MapReduce und Datenbanken Dr. Michael Hartung Sommersemester 2012 Universität Leipzig Institut für Informatik http://dbs.uni-leipzig.de 1 Inhaltsverzeichnis SQL-Anfrageformulierung

Mehr

Cloud Data Management

Cloud Data Management Cloud Data Management Kapitel 4: MapReduce und Datenbanken Lars Kolb Wintersemester 2013/14 Universität Leipzig Institut für Informatik http://dbs.uni-leipzig.de Inhaltsverzeichnis SQL-Anfrageformulierung

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

Mengenvergleiche: Alle Konten außer das, mit dem größten Saldo.

Mengenvergleiche: Alle Konten außer das, mit dem größten Saldo. Mengenvergleiche: Mehr Möglichkeiten als der in-operator bietet der θany und der θall-operator, also der Vergleich mit irgendeinem oder jedem Tupel der Unteranfrage. Alle Konten außer das, mit dem größten

Mehr

MySQL-Befehle. In diesem Tutorial möchte ich eine kurze Übersicht der wichtigsten Befehle von MySQL geben.

MySQL-Befehle. In diesem Tutorial möchte ich eine kurze Übersicht der wichtigsten Befehle von MySQL geben. MySQL-Befehle 1. Einleitung In diesem Tutorial möchte ich eine kurze Übersicht der wichtigsten Befehle von MySQL geben. 2. Arbeiten mit Datenbanken 2.1 Datenbank anlegen Eine Datenbank kann man wie folgt

Mehr

ACCESS SQL ACCESS SQL

ACCESS SQL ACCESS SQL ACCESS SQL Datenbankabfragen mit der Query-Language ACCESS SQL Datenbankpraxis mit Access 34 Was ist SQL Structured Query Language Bestehend aus Datendefinitionssprache (DDL) Datenmanipulationssprache

Mehr

ISU 1. Ue_08/02_Datenbanken/SQL. 08 Datenbanken. Übung. SQL Einführung. Eckbert Jankowski. www.iit.tu-cottbus.de

ISU 1. Ue_08/02_Datenbanken/SQL. 08 Datenbanken. Übung. SQL Einführung. Eckbert Jankowski. www.iit.tu-cottbus.de 08 Datenbanken Übung SQL Einführung Eckbert Jankowski www.iit.tu-cottbus.de Datenmodell (Wiederholung, Zusammenfassung) Objekte und deren Eigenschaften definieren Beziehungen zwischen den Objekten erkennen/definieren

Mehr

SQL Tutorial. SQL - Tutorial SS 06. Hubert Baumgartner. INSO - Industrial Software

SQL Tutorial. SQL - Tutorial SS 06. Hubert Baumgartner. INSO - Industrial Software SQL Tutorial SQL - Tutorial SS 06 Hubert Baumgartner INSO - Industrial Software Institut für Rechnergestützte Automation Fakultät für Informatik Technische Universität Wien Inhalt des Tutorials 1 2 3 4

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

DBS ::: SERIE 5. Join Right Semi- Join Left Semi-Join Projektion Selektion Fremdschlüssel. Kreuzprodukt

DBS ::: SERIE 5. Join Right Semi- Join Left Semi-Join Projektion Selektion Fremdschlüssel. Kreuzprodukt DBS ::: SERIE 5 Die Relation produkt enthält Hersteller, Modellnummer und Produktgattung (pc, laptop oder drucker aller Produkte. Die Modellnummer ist (der Einfachheit halber eindeutig für alle Hersteller

Mehr

Einleitung Projektion Selektion Join Mengenop. Vollst.keit. Einleitung Projektion. Selektion Join. Vollst.keit. Einleitung Projektion Selektion Join

Einleitung Projektion Selektion Join Mengenop. Vollst.keit. Einleitung Projektion. Selektion Join. Vollst.keit. Einleitung Projektion Selektion Join Parsen der Anfrage (SQL) Transformation in eine Standardform (Relationenalgebra) Logische Optimierung Transformation in alternative Zugriffspläne, Physische Optimierung Ausführung des gewählten Zugriffsplans

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

SQL: Abfragen für einzelne Tabellen

SQL: Abfragen für einzelne Tabellen Musterlösungen zu LOTS SQL: Abfragen für einzelne Tabellen Die Aufgaben lösen Sie mit dem SQL-Training-Tool LOTS der Universität Leipzig: http://lots.uni-leipzig.de:8080/sql-training/ Wir betrachten für

Mehr

Nachtrag: Farben. Farbblindheit. (Light und Bartlein 2004)

Nachtrag: Farben. Farbblindheit. (Light und Bartlein 2004) Nachtrag: Farben Farbblindheit (Light und Bartlein 2004) 1 Vorgeschlagene Farbskalen (Light and Bartlein 2004) Farbkodierung metrisch skalierter Daten Unterscheide: 1. Sequential Data (ohne Betonung der

Mehr

Datenbanksysteme 2015

Datenbanksysteme 2015 Datenbanksysteme 2015 Kapitel 09: Datenbankapplikationen Oliver Vornberger Institut für Informatik Universität Osnabrück Datenbankapplikationen ODBC MS Visio MS Access Embedded SQL JDBC Application SQLJ

Mehr

Einführung relationale Datenbanken. Themenblock: Erstellung eines Cube. Schlüssel. Relationenmodell Relationenname Attribut. Problem.

Einführung relationale Datenbanken. Themenblock: Erstellung eines Cube. Schlüssel. Relationenmodell Relationenname Attribut. Problem. Themenblock: Erstellung eines Cube Einführung relationale Datenbanken Problem Verwaltung großer Mengen von Daten Praktikum: Data Warehousing und Data Mining Idee Speicherung der Daten in Form von Tabellen

Mehr

Themenblock: Erstellung eines Cube

Themenblock: Erstellung eines Cube Themenblock: Erstellung eines Cube Praktikum: Data Warehousing und Data Mining Einführung relationale Datenbanken Problem Verwaltung großer Mengen von Daten Idee Speicherung der Daten in Form von Tabellen

Mehr

Dipl. Inf. Eric Winter. PostgreSQLals HugeData Storage Ein Erfahrungsbericht

Dipl. Inf. Eric Winter. PostgreSQLals HugeData Storage Ein Erfahrungsbericht Dipl. Inf. Eric Winter Entwicklungsleiter PTC GPS-Services GmbH PostgreSQLals HugeData Storage Ein Erfahrungsbericht Inhalt 1. Problembeschreibung 2. Partielle Indexierung 3. Partitionierung 1. Vererbung

Mehr

Anfragebearbeitung 2. Vorlesung Datenbanksysteme vom

Anfragebearbeitung 2. Vorlesung Datenbanksysteme vom Vorlesung Datenbanksysteme vom 21.11.2016 Anfragebearbeitung 2 Architektur eines DBMS Logische Optimierung Physische Optimierung Kostenmodelle + Tuning Physische Optimierung Iterator: einheitliche Schnittstelle

Mehr

Datenmanipulation in SQL. Select Anweisung

Datenmanipulation in SQL. Select Anweisung Datenmanipulation in SQL Unter Datenmanipulation wird sowohl der lesende Zugriff auf die Daten (Select Statement) als auch die Änderung von Daten (Insert, Delete, Update) subsummiert. Wir beginnen mit

Mehr

Einführung in die Informatik II

Einführung in die Informatik II Einführung in die Informatik II Die Structured Query Language SQL Prof. Dr. Nikolaus Wulff SQL Das E/R-Modell lässt sich eins zu eins auf ein Tabellenschema abbilden. Benötigt wird eine Syntax, um Tabellen

Mehr

SQL. strukturierte Datenbankabfragesprache eine Datenbanksprache zur. Structured Query Language:

SQL. strukturierte Datenbankabfragesprache eine Datenbanksprache zur. Structured Query Language: SQL Structured Query Language: strukturierte Datenbankabfragesprache eine Datenbanksprache zur Definition, Abfrage und Manipulation von Daten in relationalen Datenbanken In der SQL-Ansicht arbeiten In

Mehr

Datenbanken Unit 4: Das Relationale Modell & Datenintegrität

Datenbanken Unit 4: Das Relationale Modell & Datenintegrität Datenbanken Unit 4: Das Relationale Modell & Datenintegrität 15. III. 2016 Outline 1 Organisatorisches 2 SQL 3 Relationale Algebra Notation 4 Datenintegrität Organisatorisches Erster Zwischentest: nach

Mehr

Star Join & Kostenbasierte Optimierung. Architektur von Datenbanksystemen II

Star Join & Kostenbasierte Optimierung. Architektur von Datenbanksystemen II Star Join & Kostenbasierte Optimierung Architektur von Datenbanksystemen II Star Join Übungsaufgabe zum 09.06.2015 JOIN-ALGORITHMUS für folgendes Scenario Große Faktentabelle F mit sehr vielen Einträgen

Mehr

SQL für Trolle. mag.e. Dienstag, 10.2.2009. Qt-Seminar

SQL für Trolle. mag.e. Dienstag, 10.2.2009. Qt-Seminar Qt-Seminar Dienstag, 10.2.2009 SQL ist......die Abkürzung für Structured Query Language (früher sequel für Structured English Query Language )...ein ISO und ANSI Standard (aktuell SQL:2008)...eine Befehls-

Mehr

Views in SQL. 2 Anlegen und Verwenden von Views 2

Views in SQL. 2 Anlegen und Verwenden von Views 2 Views in SQL Holger Jakobs bibjah@bg.bib.de, holger@jakobs.com 2010-07-15 Inhaltsverzeichnis 1 Wozu dienen Views? 1 2 Anlegen und Verwenden von Views 2 3 Schreibfähigkeit von Views 3 3.1 Views schreibfähig

Mehr

Vielen Dank an Dennis Riehle für die Bereitstellung dieser Folien

Vielen Dank an Dennis Riehle für die Bereitstellung dieser Folien Vielen Dank an Dennis Riehle für die Bereitstellung dieser Folien 1.1 Definition Datenbank Ein Datenbanksystem (DBS) ist ein System zur elektronischen Datenverwaltung. Die wesentliche Aufgabe eines DBS

Mehr

ARBEITSBLATT ZUR SQL-BEFEHLEN

ARBEITSBLATT ZUR SQL-BEFEHLEN Gegeben ist die folgende Datenbank: ARBEITSBLATT ZUR SQL-BEFEHLEN In einer Firma gibt es Mitarbeiter. Jeder Mitarbeiter ist eindeutig einer Abteilung zugeordnet. Manche Mitarbeiter sind an einem Projekt

Mehr

Einführung in SQL. Sprachumfang: Indizes. Datensätzen. Zugriffsrechten

Einführung in SQL. Sprachumfang: Indizes. Datensätzen. Zugriffsrechten Einführung in SQL Die Sprache SQL (Structured Query Language) ist eine Programmiersprache für relationale Datenbanksysteme, die auf dem ANSI-SQL-Standard beruht. SQL wird heute von fast jedem Datenbanksystem

Mehr

Objektrelationale und erweiterbare Datenbanksysteme

Objektrelationale und erweiterbare Datenbanksysteme Objektrelationale und erweiterbare Datenbanksysteme Erweiterbarkeit SQL:1999 (Objekt-relationale Modellierung) In der Vorlesung werden nur die Folien 1-12 behandelt. Kapitel 14 1 Konzepte objekt-relationaler

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

Datenbankabfragen und Datenmanipulation

Datenbankabfragen und Datenmanipulation Datenbankabfragen und Datenmanipulation Datenbankabfragen auf einer Tabelle...1 SELECT Abfrage...1 Projektion...2 Wertausdrücke...3 Numerische Wertausdrücke...3 Zeichenkettenwertausdrücke...3 Datums und

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

Relationentheorie grundlegende Elemente

Relationentheorie grundlegende Elemente Relationentheorie grundlegende Elemente Symbol Bedeutung Entsprechung in SQL π AAAA Projektion SELECT σ F Selektion WHERE ρ Umbenennung RENAME; AS Natural Join NATURAL JOIN (nicht in MS SQL Server verwendbar)

Mehr

Aufgabe 1 Indexstrukturen

Aufgabe 1 Indexstrukturen 8. Übung zur Vorlesung Datenbanken im Sommersemester 2006 mit Musterlösungen Prof. Dr. Gerd Stumme, Dr. Andreas Hotho, Dipl.-Inform. Christoph Schmitz 25. Juni 2006 Aufgabe 1 Indexstrukturen Zeichnen Sie

Mehr

5.8 Bibliotheken für PostgreSQL

5.8 Bibliotheken für PostgreSQL 5.8 Bibliotheken für PostgreSQL Haskell/WASH: Modul Dbconnect PHP: pqsql-funktionen Java/JSP: JDBC Perl: DBI database interface modul Vorläufige Version 80 c 2004 Peter Thiemann, Matthias Neubauer 5.9

Mehr

Lösungen der Übungsaufgaben von Kapitel 10

Lösungen der Übungsaufgaben von Kapitel 10 Lösungen der Übungsaufgaben von Kapitel 10 1. Legen Sie mit einem SQL - Befehl eine neue Tabelle PERSON_KURZ mit den Feldern Kurz_Id, Kurz_Name an. Machen Sie das so, dass Kurz_Id der Primärschlüssel wird

Mehr

Dieser Foliensatz darf frei verwendet werden unter der Bedingung, dass diese Titelfolie nicht entfernt wird.

Dieser Foliensatz darf frei verwendet werden unter der Bedingung, dass diese Titelfolie nicht entfernt wird. Thomas Studer Relationale Datenbanken: Von den theoretischen Grundlagen zu Anwendungen mit PostgreSQL Springer, 2016 ISBN 978-3-662-46570-7 Dieser Foliensatz darf frei verwendet werden unter der Bedingung,

Mehr

SQL Tipps und Tricks Part III 08.02.2012

SQL Tipps und Tricks Part III 08.02.2012 1/40 PHP-User-Group Stuttgart 08.02.2012 Datenbank- und SQL-Performance Erkennen warum eine SQL-Abfrage langsam ist SQL Tipps und Tricks aus der Praxis 2/40 Wer Wer bin bin ich ich? Thomas Wiedmann n+1

Mehr

NoSQL mit Postgres 15. Juni 2015

NoSQL mit Postgres 15. Juni 2015 Tag der Datenbanken 15. Juni 2015 Dipl.-Wirt.-Inform. Agenda l Vorstellung l Marktübersicht l Warum PostgreSQL? l Warum NoSQL? l Beispielanwendung Seite: 2 Vorstellung Dipl.-Wirt.-Inform. [1990] Erste

Mehr

Neugestaltung der Datenbank des Chemnitzer Studentennetzes

Neugestaltung der Datenbank des Chemnitzer Studentennetzes 12.12.2012 Neugestaltung der Datenbank des Chemnitzer Studentennetzes Verteidigung Bachelorarbeit Morris Jobke Prüfer: Dr. Frank Seifert Betreuer: Dipl.-Inf. Johannes Fliege Neugestaltung der Datenbank

Mehr

Das SQL-Schlüsselwort ALL entspricht dem Allquantor der Prädikatenlogik

Das SQL-Schlüsselwort ALL entspricht dem Allquantor der Prädikatenlogik Beispielaufgaben Informationssysteme erstellt von Fabian Rump zur IS Vorlesung 2009/10 1 Multiple Choice Aussage richtig falsch Eine SQL-Abfrage beginnt immer mit dem Schlüsselwort SELECT Eine Datenbank

Mehr

FachPraktikum 1590 Erweiterbare Datenbanksysteme. Aufgaben Phase 1

FachPraktikum 1590 Erweiterbare Datenbanksysteme. Aufgaben Phase 1 FachPraktikum 1590 Erweiterbare Datenbanksysteme Aufgaben Phase 1 Wintersemester 2004/2005 Ralf Hartmut Güting, Dirk Ansorge, Thomas Behr, Markus Spiekermann Praktische Informatik IV, Fernuniversität Hagen

Mehr

DATENBANKEN SQL UND SQLITE VON MELANIE SCHLIEBENER

DATENBANKEN SQL UND SQLITE VON MELANIE SCHLIEBENER DATENBANKEN SQL UND SQLITE VON MELANIE SCHLIEBENER INHALTSVERZEICHNIS 1. Datenbanken 2. SQL 1.1 Sinn und Zweck 1.2 Definition 1.3 Modelle 1.4 Relationales Datenbankmodell 2.1 Definition 2.2 Befehle 3.

Mehr

Datenbanken SQL. Insert, Update, Delete, Drop. Krebs

Datenbanken SQL. Insert, Update, Delete, Drop. Krebs Datenbanken SQL Insert, Update, Delete, Drop Krebs Inhalt 1. Datensätze einfügen: INSERT 2. Datensätze verändern: UPDATE 3. Datensätze löschen: DROP vs. DELETE Beispiel Datenbank Schule Klasse P_Klasse

Mehr

SQL-Befehlsliste. Vereinbarung über die Schreibweise

SQL-Befehlsliste. Vereinbarung über die Schreibweise Vereinbarung über die Schreibweise Schlüsselwort [optionale Elemente] Beschreibung Befehlsworte in SQL-Anweisungen werden in Großbuchstaben geschrieben mögliche, aber nicht zwingend erforderliche Teile

Mehr

Die bisher bereits bekannten Aggregatsfunktionen MIN, MAX, SUM, AVG, COUNT, VARIANCE und STDDEV wurden um FIRST und LAST erweitert.

Die bisher bereits bekannten Aggregatsfunktionen MIN, MAX, SUM, AVG, COUNT, VARIANCE und STDDEV wurden um FIRST und LAST erweitert. Betrifft Autor FIRST, LAST Markus Jägle (markus.jaegle@trivadis.com) Art der Info Technische Background Info (April 2002) Quelle Aus dem NF9i-Kurs, NF9i-Techno-Circle der Trivadis und Oracle9i Data Warehousing

Mehr

Vorlesung Datenbankmanagementsysteme

Vorlesung Datenbankmanagementsysteme Vorlesung Datenbankmanagementsysteme SQL zur Datenanalyse & Einführung Online Analytical Processing (OLAP) (auf Basis von Oracle) Vorlesung Datenbankmanagementsysteme SQL zur Datenanalyse M. Lange, S.

Mehr

MySQL: Einfaches Rechnen. www.informatikzentrale.de

MySQL: Einfaches Rechnen. www.informatikzentrale.de MySQL: Einfaches Rechnen Vorweg: Der Merksatz Warum geht Herbert oft laufen? Vorweg: Der Merksatz Warum geht Herbert oft laufen?...... WHERE... GROUP BY... HAVING... ORDER BY... LIMIT Beispieldatenbank

Mehr

Universität Augsburg, Institut für Informatik WS 2006/2007 Dr. W.-T. Balke 27. Nov. 2006 M. Endres, A. Huhn, T. Preisinger Lösungsblatt 5

Universität Augsburg, Institut für Informatik WS 2006/2007 Dr. W.-T. Balke 27. Nov. 2006 M. Endres, A. Huhn, T. Preisinger Lösungsblatt 5 Universität Augsburg, Institut für Informatik WS 2006/2007 Dr. W.-T. Balke 27. Nov. 2006 M. Endres, A. Huhn, T. Preisinger Lösungsblatt 5 Aufgabe 1: Projektion Datenbanksysteme I π A1,...,A n (π B1,...,B

Mehr

SQL und MySQL. Kristian Köhntopp

SQL und MySQL. Kristian Köhntopp SQL und MySQL Kristian Köhntopp Wieso SQL? Datenbanken seit den frühen 1950er Jahren: Hierarchische Datenbanken Netzwerkdatenbanken Relationale Datenbanken = SQL Relational? 10 9 8 7 6 f(y) := y = x r(y)

Mehr

105.3 SQL-Datenverwaltung

105.3 SQL-Datenverwaltung LPI-Zertifizierung 105.3 SQL-Datenverwaltung Copyright ( ) 2009 by Dr. W. Kicherer. This work is licensed under the Creative Commons Attribution-Noncommercial-Share Alike 2.0 Germany License. To view a

Mehr

Cassandra Query Language (CQL)

Cassandra Query Language (CQL) Cassandra Query Language (CQL) Seminar: NoSQL Wintersemester 2013/2014 Cassandra Zwischenpräsentation 1 Gliederung Basic facts Datentypen DDL/DML ähnlich zu SQL Besonderheiten Basic facts CQL kurz für

Mehr

Einführung in die Spezialisierungsrichtungen

Einführung in die Spezialisierungsrichtungen Einführung in die Spezialisierungsrichtungen SQL Dr. Matthias Baumgart 23. November 2012 Einführung Logische Datenbankorganisation Die logische Datenbankorganisation erfolgt in drei Schritten: 1 Aufstellen

Mehr

Hochschule Karlsruhe Technik und Wirtschaft- 10.7.2013. Anhänge: Fakultät für Informatik und Wirtschaftsinformatik SS 2013 Prof. Schmidt.

Hochschule Karlsruhe Technik und Wirtschaft- 10.7.2013. Anhänge: Fakultät für Informatik und Wirtschaftsinformatik SS 2013 Prof. Schmidt. Fakultät für Informatik und Wirtschaftsinformatik SS 2013 Datenbanken und Informationssysteme II Szenario: Projektverwaltung. Es gibt Projekte, Projektleiter, Mitarbeiter und ihre Zuordnung zu Projekten.

Mehr

Aufbau Datenbanksysteme

Aufbau Datenbanksysteme Aufbau Datenbanksysteme Lehrveranstaltung Datenbanktechnologien Prof. Dr. Ingo Claßen Prof. Dr. Martin Kempa Hochschule für Technik und Wirtschaft Berlin Speichersystem c Ingo Claßen, Martin Kempa Softwarearchitektur

Mehr

Kapitel 5: Der SQL-Standard

Kapitel 5: Der SQL-Standard Kapitel 5: Der SQL-Standard 5. Der SQL-Standard 5. Ein Anfrageausdruck in SQL besteht aus einer SELECT-Klausel, gefolgt von einer FROM-Klausel, gefolgt von einer WHERE-Klausel. Grundform eines SFW-Ausdruck

Mehr

Indexstrukturen in SQL

Indexstrukturen in SQL Indestrukturen in SQL Anlegen eines Primärinde in SQL: Anlegen eines Sekundärinde in SQL: Bsp: create table Dozenten ( DNr integer primary key, Name varchar(0), Geburt date, ) create [Unique] inde indename

Mehr

Prof. Dr. Bernd Blümel Prof. Dr. Volker Klingspor. Datenbanken und SQL

Prof. Dr. Bernd Blümel Prof. Dr. Volker Klingspor. Datenbanken und SQL Prof. Dr. Bernd Blümel Prof. Dr. Volker Klingspor Falsche Datenstruktur 2 Optimierte Struktur 3 Tabellen der campusinfo-datenbank 4 Elemente einer Tabelle 5 Der Fremdschlüssel 6 Beispiele Beispiel1: Kunden

Mehr

gibt es kein Bundesland, en?"

gibt es kein Bundesland, en? Allquantoren: : ein heißes es Eisen! "Welche Flüsse fließen en durch alle Bundesländer nder?" ( ( SELECT FL1.Fluss fluss_durch_land AS AS FL1 FL1 WHERE NOT NOT EXISTS ( ( SELECT * land land AS AS L WHERE

Mehr

Einführung in die Wirtschaftsinformatik Kapitel 4: Relationale Datenbanksprachen: SQL

Einführung in die Wirtschaftsinformatik Kapitel 4: Relationale Datenbanksprachen: SQL Einführung in die Wirtschaftsinformatik Kapitel 4: Relationale Datenbanksprachen: SQL Prof. Dr. Peter Chamoni Mercator School of Management Lehrstuhl für Wirtschaftsinformatik, insb. Business Intelligence

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

Microsoft Access 2010 SQL nutzen

Microsoft Access 2010 SQL nutzen Microsoft Access 2010 SQL nutzen Welche Bestellungen hat Kunde x aufgegeben? Welche Kunden haben noch nie bestellt? Wer hat welche Bestellungen von welchen Kunden aufgenommen? S(tructured)Q(uery)L(anguage)

Mehr

Musterlösung zur Finalklausur Datenbanksysteme am

Musterlösung zur Finalklausur Datenbanksysteme am Musterlösung zur Finalklausur Datenbanksysteme am 5.2.2003 Aufgabe 1 a) Anfragen: (20 Punkte) i.suchen Sie die Stücke (Titel), die Komponist Lennon erstellt hat und von der Musikfirma EMI veröffentlicht

Mehr

Entwicklungsumgebung für die Laborübung

Entwicklungsumgebung für die Laborübung Entwicklungsumgebung für die Laborübung VU Datenbanksysteme Wolfgang Fischl Arbeitsbereich Datenbanken und Artificial Intelligence Institut für Informationssysteme Technische Universität Wien Wintersemester

Mehr

7. Datenbank-Zugriff. Vorlesung und Übung Dr. Peter Pfahler Institut für Informatik Universität Paderborn. Zum Beispiel aus PHP-Skripten: Client 7-2

7. Datenbank-Zugriff. Vorlesung und Übung Dr. Peter Pfahler Institut für Informatik Universität Paderborn. Zum Beispiel aus PHP-Skripten: Client 7-2 5 Vorlesung und Übung Dr. Peter Pfahler Institut für Informatik Universität Paderborn 7 7. Datenbank-Zugriff Zum Beispiel aus PHP-Skripten: Client 7-2 Struktur einer Datenbank 7-3 Erzeugen von Datenbanken

Mehr

Kapitel 10: Relationale Anfragebearbeitung

Kapitel 10: Relationale Anfragebearbeitung Ludwig Maimilians Universität München Institut für Informatik Lehr- und Forschungseinheit für Datenbanksysteme Skript zur Vorlesung Wintersemester 201/2016 Kapitel 10: Relationale Anfragebearbeitung Vorlesung:

Mehr

(Von der Nähe zur Distanz zum User geordnet)

(Von der Nähe zur Distanz zum User geordnet) Datebanken Was ist eigentlich eine Datenbank? Datenbanken, Datenhaltungsschicht und Datenbankensysteme (hier als Synonyme zu verstehen) finden viele unterschiedliche Anwendungsbereiche. Datenbanken kann

Mehr

PostgreSQL in großen Installationen

PostgreSQL in großen Installationen PostgreSQL in großen Installationen Cybertec Schönig & Schönig GmbH Hans-Jürgen Schönig Wieso PostgreSQL? - Die fortschrittlichste Open Source Database - Lizenzpolitik: wirkliche Freiheit - Stabilität,

Mehr

Kapitel 33. Der xml-datentyp. In diesem Kapitel: Der xml-datentyp 996 Abfragen aus xml-datentypen 1001 XML-Indizierung 1017 Zusammenfassung 1023

Kapitel 33. Der xml-datentyp. In diesem Kapitel: Der xml-datentyp 996 Abfragen aus xml-datentypen 1001 XML-Indizierung 1017 Zusammenfassung 1023 Kapitel 33 Der xml-datentyp In diesem Kapitel: Der xml-datentyp 996 Abfragen aus xml-datentypen 1001 XML-Indizierung 1017 Zusammenfassung 1023 995 996 Kapitel 33: Der xml-datentyp Eine der wichtigsten

Mehr

Labor 3 - Datenbank mit MySQL

Labor 3 - Datenbank mit MySQL Labor 3 - Datenbank mit MySQL Hinweis: Dieses Labor entstand z.t. aus Scripten von Prof. Dr. U. Bannier. 1. Starten des MySQL-Systems MySQL ist ein unter www.mysql.com kostenlos erhältliches Datenbankmanagementsystem.

Mehr

EXASOL Anwendertreffen 2012

EXASOL Anwendertreffen 2012 EXASOL Anwendertreffen 2012 EXAPowerlytics Feature-Architektur EXAPowerlytics In-Database Analytics Map / Reduce Algorithmen Skalare Fkt. Aggregats Fkt. Analytische Fkt. Hadoop Anbindung R LUA Python 2

Mehr

Software-Engineering Einführung

Software-Engineering Einführung Software-Engineering Einführung 7. Übung (04.12.2014) Dr. Gergely Varró, gergely.varro@es.tu-darmstadt.de Erhan Leblebici, erhan.leblebici@es.tu-darmstadt.de Tel.+49 6151 16 4388 ES Real-Time Systems Lab

Mehr

CouchDB & CouchApps. Strukturlose Speicherung von Daten und Anwendungen. B1 Systems GmbH. March 18, 2012. http://www.b1-systems.de

CouchDB & CouchApps. Strukturlose Speicherung von Daten und Anwendungen. B1 Systems GmbH. March 18, 2012. http://www.b1-systems.de CouchDB & CouchApps Strukturlose Speicherung von Daten und Anwendungen B1 Systems GmbH http://www.b1-systems.de March 18, 2012 c B1 Systems GmbH 2004 2012 Chapter -1, Slide 1 CouchDB Grundlagen CouchDB

Mehr

Kapitel 3: Datenbanksysteme

Kapitel 3: Datenbanksysteme LUDWIG- MAXIMILIANS- UNIVERSITY MUNICH DEPARTMENT INSTITUTE FOR INFORMATICS Skript zur Vorlesung: Einführung in die Informatik: Systeme und Anwendungen Sommersemester 2015 Kapitel 3: Datenbanksysteme Vorlesung:

Mehr

Big-Data-Technologien - Überblick - Prof. Dr. Jens Albrecht

Big-Data-Technologien - Überblick - Prof. Dr. Jens Albrecht Big-Data-Technologien - Überblick - Quelle: http://www.ingenieur.de/panorama/fussball-wm-in-brasilien/elektronischer-fussball-smartphone-app-helfen-training Big-Data-Anwendungen im Unternehmen Logistik

Mehr

Datenbanken Wintersemester 11/12. Prof. Dr. W. May

Datenbanken Wintersemester 11/12. Prof. Dr. W. May AG Datenbanken und Informationssysteme Institut für Informatik Universität Göttingen Datenbanken Wintersemester 11/12 Prof. Dr. W. May 3. Übungsblatt: SQL Besprechung voraussichtlich am 20/21.12.2011 Aufgabe

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

SQL Teil 2. SELECT Projektion Selektion Vereinigung, Schnitt, Differenz Verbund Komplexer SELECT-Ausdruck

SQL Teil 2. SELECT Projektion Selektion Vereinigung, Schnitt, Differenz Verbund Komplexer SELECT-Ausdruck SELECT Projektion Selektion Vereinigung, Schnitt, Differenz Verbund Fahren fort mit SQL Befehlen. Bilden Relationenalgebra auf SQL ab. So Umsetzung von Anfragen an die DB (bzw. Tabellen) möglich. SELECT

Mehr

Datenbanksysteme Kapitel 5: SQL Data Manipulation Language

Datenbanksysteme Kapitel 5: SQL Data Manipulation Language Datenbanksysteme Kapitel 5: SQL Data Manipulation Language Prof. Dr. Peter Chamoni Mercator School of Management Lehrstuhl für Wirtschaftsinformatik, insb. Business Intelligence Prof. Dr. Peter Chamoni

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

SQL Wiederholung. Datenbanktechnologien. Verbunde. Aggregation und Gruppierung. Unterabfragen. Hochschule für Technik und Wirtschaft Berlin

SQL Wiederholung. Datenbanktechnologien. Verbunde. Aggregation und Gruppierung. Unterabfragen. Hochschule für Technik und Wirtschaft Berlin SQL Wiederholung Datenbanktechnologien Prof. Dr. Ingo Claÿen Prof. Dr. Martin Kempa Hochschule für Technik und Wirtschaft Berlin Verbunde Aggregation und Gruppierung Unterabfragen Verbunde Inner-Join Nur

Mehr

PHP und MySQL. Integration von MySQL in PHP. Zellescher Weg 12 Willers-Bau A109 Tel. +49 351-463 - 32424. Michael Kluge (michael.kluge@tu-dresden.

PHP und MySQL. Integration von MySQL in PHP. Zellescher Weg 12 Willers-Bau A109 Tel. +49 351-463 - 32424. Michael Kluge (michael.kluge@tu-dresden. Zentrum für Informationsdienste und Hochleistungsrechnen (ZIH) PHP und MySQL Integration von MySQL in PHP Zellescher Weg 12 Willers-Bau A109 Tel. +49 351-463 - 32424 (michael.kluge@tu-dresden.de) MySQL

Mehr

Performance Tuning mit @enterprise

Performance Tuning mit @enterprise @enterprise Kunden-Forum 2005 Performance Tuning mit @enterprise Herbert Groiss Groiss Informatics GmbH, 2005 Inhalt Datenbank RMI JAVA API HTTP Konfiguration Analyse Groiss Informatics GmbH, 2005 2 Datenbank

Mehr

Aufbau des SELECT-Befehls. Im Folgenden werden zunächst Abfragen aus einer Tabelle vorgenommen.

Aufbau des SELECT-Befehls. Im Folgenden werden zunächst Abfragen aus einer Tabelle vorgenommen. Datenbankabfragen (Query) mit SQL (Structured Query Language) 1 Aufbau des SELECT-Befehls Im Folgenden werden zunächst Abfragen aus einer Tabelle vorgenommen. SQL-Syntax: SELECT spaltenliste FROM tabellenname

Mehr

Entwurf und Verarbeitung relationaler Datenbanken

Entwurf und Verarbeitung relationaler Datenbanken Entwurf und Verarbeitung relationaler Datenbanken Eine durchgängige und praxisorientierte Vorgehens weise von Prof. Dr. Nikolai Preiß Berufsakademie Stuttgart R. Oldenbourg Verlag München Wien Inhalt Abbildungsverzeichnis

Mehr

Fachbereich Informatik Praktikum 1

Fachbereich Informatik Praktikum 1 Hochschule Darmstadt DATA WAREHOUSE SS2015 Fachbereich Informatik Praktikum 1 Prof. Dr. S. Karczewski Dipl. Inf. Dipl. Math. Y. Orkunoglu Datum: 14.April.2015 1. Kurzbeschreibung In diesem Praktikum geht

Mehr

SQL. Komplexe Abfragen. SQL-Komplexe Abfragen. SQL-Komplexe Abfragen. Komplexe Abfragen verknüpfen mehrere Tabellen miteinander.

SQL. Komplexe Abfragen. SQL-Komplexe Abfragen. SQL-Komplexe Abfragen. Komplexe Abfragen verknüpfen mehrere Tabellen miteinander. SQL Komplexe Abfragen Komplexe Abfragen verknüpfen mehrere Tabellen miteinander. Voraussetzung für das Verständnis ist die Beherrschung einfacher SELECT-Abfragen Die Möglichkeit, Tabellen zu verknüpfen,

Mehr

TU München, Fakultät für Informatik Lehrstuhl III: Datenbanksysteme Prof. Alfons Kemper, Ph.D.

TU München, Fakultät für Informatik Lehrstuhl III: Datenbanksysteme Prof. Alfons Kemper, Ph.D. TU München, Fakultät für Informatik Lehrstuhl III: Datenbanksysteme Prof. Alfons Kemper, Ph.D. Blatt Nr. 7 Übung zur Vorlesung Grundlagen: Datenbanken im WS13/14 Henrik Mühe (muehe@in.tum.de) http://www-db.in.tum.de/teaching/ws1314/dbsys/exercises/

Mehr

IV. Datenbankmanagement

IV. Datenbankmanagement Wirtschaftsinformatik 2 (PWIN) IV. Datenbankmanagement Kapitel 2: Datenmanipulationssprache SQL Wirtschaftsinformatik 2 (PWIN) SS 2009, Professur für Mobile Business & Multilateral Security 1 Agenda 1.

Mehr

WS 2010/11 Datenbanksysteme Fr 15:15 16:45 R 1.008. Vorlesung #5. SQL (Teil 3)

WS 2010/11 Datenbanksysteme Fr 15:15 16:45 R 1.008. Vorlesung #5. SQL (Teil 3) Vorlesung #5 SQL (Teil 3) Fahrplan Besprechung der Übungsaufgaben Rekursion Rekursion in SQL-92 Rekursion in DBMS- Dialekten (Oracle und DB2) Views (Sichten) - gespeicherte Abfragen Gewährleistung der

Mehr

Web-Technologien. Prof. Dr. rer. nat. Nane Kratzke SQL. Praktische Informatik und betriebliche Informationssysteme

Web-Technologien. Prof. Dr. rer. nat. Nane Kratzke SQL. Praktische Informatik und betriebliche Informationssysteme Handout zur Unit Web-Technologien SQL 1 Prof. Dr. rer. nat. Nane Kratzke Praktische Informatik und betriebliche Informationssysteme Raum: 17-0.10 Tel.: 0451 300 5549 Email: nane.kratzke@fh-luebeck.de (Praktische

Mehr

Kapitel 2: Einstieg in SQL

Kapitel 2: Einstieg in SQL Kapitel 2: Einstieg in SQL 2. Einstieg in SQL 2. SQL (Structured Query Language) ist die in der Praxis am weitesten verbreitete Datenbanksprache für relationale Datenbanken. Die Historie von SQL geht zurück

Mehr

Anfragebearbeitung. Anfrage. Übersetzer. Ausführungsplan. Laufzeitsystem. Ergebnis

Anfragebearbeitung. Anfrage. Übersetzer. Ausführungsplan. Laufzeitsystem. Ergebnis Anfragebearbeitung Anfrage Übersetzer Ausführungsplan Laufzeitsystem Ergebnis Übersetzung SQL ist deklarativ, Übersetzung für Laufzeitsystem in etwas prozedurales DBMS übersetzt SQL in eine interne Darstellung

Mehr

Vorlesung Suchmaschinen Semesterklausur Wintersemester 2013/14

Vorlesung Suchmaschinen Semesterklausur Wintersemester 2013/14 Universität Augsburg, Institut für Informatik Wintersemester 2013/14 Prof. Dr. W. Kießling 10. Oktober 2013 F. Wenzel, D. Köppl Suchmaschinen Vorlesung Suchmaschinen Semesterklausur Wintersemester 2013/14

Mehr

5. Übungsblatt (Testatwoche: Mai 2010)

5. Übungsblatt (Testatwoche: Mai 2010) 5. Übungsblatt (Testatwoche: 18. - 20. Mai 2010) Einführung in Datenbanksysteme Datenbanken für die Bioinformatik Heinz Schweppe, Katharina Hahn Aufgabe 1 (Kardinalitäten von Ergebnisrelationen) 6 Punkte

Mehr

7. Datenbank-Zugriff. Vorlesung und Übung Dr. Peter Pfahler Institut für Informatik Universität Paderborn. Zum Beispiel aus PHP-Skripten: Client 7-2

7. Datenbank-Zugriff. Vorlesung und Übung Dr. Peter Pfahler Institut für Informatik Universität Paderborn. Zum Beispiel aus PHP-Skripten: Client 7-2 5 Vorlesung und Übung Dr. Peter Pfahler Institut für Informatik Universität Paderborn 7 7. Datenbank-Zugriff Zum Beispiel aus PHP-Skripten: Client 7-2 Struktur einer Datenbank 7-3 Erzeugen von Datenbanken

Mehr

Sructred Query Language

Sructred Query Language Sructred Query Language Michael Dienert 11. November 2010 Inhaltsverzeichnis 1 Ein kurzer Versionsüberblick 1 2 SQL-1 mit einigen Erweiterungen aus SQL-92 2 3 Eine Sprache zur Beschreibung anderer Sprachen

Mehr