Die Java-basierte Graphdatenbank Neo4j. Olaf Herden Duale Hochschule BW Campus Horb

Größe: px
Ab Seite anzeigen:

Download "Die Java-basierte Graphdatenbank Neo4j. Olaf Herden Duale Hochschule BW Campus Horb"

Transkript

1 Die Java-basierte Graphdatenbank Neo4j Olaf Herden Duale Hochschule BW Campus Horb

2 Gliederung Einleitung & Motivation Neo4j Arbeiten mit Neo4j Zusammenfassung & Ausblick 2

3 Entwicklung Datenbanken (I) Speicherung in Dateien Datenbanken: Hierarchische Datenbanken (IMS/DB von IBM) Netzwerkmodell (CODASYL, Bachman) 3

4 Entwicklung Datenbanken (II) Relationale Datenbanken: Theoretische Grundlagen E.F. Codd 1970 Kommerzielle Systeme ab Ende 70er Jahre Immer weitere Verbreitung, Leistungsfähigkeit & Stabilität 1 Hotel Hotel_Nr : Integer Name : Zeichenkette(50) Adresse : Zeichenkette(50) N Zimmer Zimmer_Nr : Integer Hotel_Nr : Integer Typ : Zeichenkette(20) Preis : NUMBER(8,2) 1 N Buchung Hotel_Nr : Integer Gast_Nr : Integer Von : Datum Bis : Datum Raum_Nr : INTEGER N Schema Relationenname Attribute Person ID Name Geschlecht Wohnort Verdienst Alter Haarfarbe Gast Gast_Nr : Integer Name : Zeichenkette(50) Adresse : Zeichenkette(50) 1 Instanzen/ Objekte/ Datensätze/ Tupel 1 Heike weiblich Horb Blond 2 Ulf männlich Tübingen Schwarz 3 Olga weiblich Stuttgart Grau 4 Kati weiblich Tübingen Braun 5 Steffi weiblich Tübingen Rot 6 Otto männlich Stuttgart Grau 4

5 Entwicklung Datenbanken (III) Strömungen in 90er Jahren: OO-DB (z.b. ObjectStore, O2, POET, VERSANT, etc.) XML-DB (z.b. Tamino, BaseX, Xindice, etc.) Multidimensionale DB (z.b. Hyperion Essbase, etc.) Wurden von Relationaler Welt absorbiert One Size Fits All In den letzten Jahren: Big Data: Volume, Velocity, Variety NoSQL (Not Only SQL): Getrieben durch Entwickler-Community [Stonebraker10, Stonebraker11] 5

6 NoSQL Vielzahl von Systemen: Aktuell ca. 150 Systeme [ Wesentliche Kategorien: Key-Value-Stores Z.B. Amazon SimpleDB, Redis Wide Column Stores Z.B. Google BigTable, Apache Cassandra Document Stores Z.B. CouchDB, MongoDB Graphdatenbanken 6

7 Graphen Graphentheorie: Euler 1736 (Königsberger Brückenproblem) Erstes Lehrbuch 1936 Informatik: Verbreitete Datenstruktur Modellierung von z.b. Netzwerken, Verkehrsnetzen, Verzeichnisstrukturen, etc. Vielzahl von Algorithmen, z.b. Suchen, Färbungen, Kürzeste Wege, Spannbäume, etc. Wichtigste Elemente: Knoten Gerichtete/ungerichtete Kanten Knoten-/kantenmarkierungen 7

8 Property Graph Model Knoten und Kanten haben Properties (Schlüssel- Wert-Paar) Ähnlich (aber nicht gleich) markierten Graphen Beispiel: Autoren und Bücher Markierter Graph: Autoren und Bücher als Knoten Jeweils feste (verschiedene Attribute) Starr Property Graph: Autoren und Bücher als Knoten Jeweils verschiedene Properties Schemalos (oder zumindest lockererer Schemabegriff) 8

9 Property Graph vs. Relational Relational: Autoren (rot) und Bücher (blau) Aufgelöste N:M-Beziehung (gelb) Property Graph: Knoten mit Properties Verbindung in Relationship-Objekten 9

10 Zwischenbilanz & Motivation Graphen bedeutende (Daten-)Struktur Verwalten/Persistenz notwendig Verschiedene Wege: Dateien Relationale Datenbank Graphdatenbank Bei letzteren: Viele Produkte/Frameworks am Markt Im Java-Umfeld: Neo4j führend Weitere Vertreter: Java: HyperGraphDB, InfoGrid C: VertexDB.NET: Sones Kommerziell: InfiniteGraph, DEX 10

11 Übersicht Einleitung & Motivation Neo4j Arbeiten mit Neo4j Zusammenfassung & Ausblick 11

12 Grundlegende Eigenschaften Anbieter: Neo Technology Versionen: Start : Februar : April 2012 (aktuell stabile Version) 1.8: Aktuell GA Lizenz: Open Source: GPLv3 (Community Edition) AGPLv3 (Advanced Edition = Community Edition + Advanced Monitoring) Kommerziell: AGPLv3 (Advanced Edition + Live Backup + Hochverfügbarkeit (Master-Slave-Replikation)) Plattform: Unabhängig (JVM-basiert) Entwicklungssprache: Java 12

13 Datenmodell Gerichtete Kanten: Ja Ungerichtete Kanten: Nein Knoten-Property: Ja Kanten-Property: Ja Schema: Nein Sonstige Eigenschaften: Schlingen möglich Mehrfachkanten Maximale Größe: 32 Mrd. Knoten 32 Mrd. Relationships 64 Mrd. Properties 13

14 DB-Eigenschaften Replikation: Master-Slave mit Master-Failover Transaktionen: ACID, 2PL, XA-Transaktionen Persistenz/Storage Engine: Proprietär In-Memory: Nein, Disk-basiert Cache: Ja Architektur: Embeddable Server-Version (REST-Kommunikation) Indizierung: Mittels Lucene 14

15 Schnittstellen APIs: Java, C# Weitere: Ruby, Python, Scala, Clojure, PHP, JavaScript Traverser: Ja Protokolle: HTTP, REST Anfragesprache: Gremlin: Graph Scripting Language Cypher: Graph Query Language Pattern Matching SQL-artig 15

16 Utilities/Frameworks Utilities: Shell: Ja Administrationswerkzeug: Ja (Web Administration) IDE Integration: Ja Insbesondere Eclipse (Neoclipse) Importwerkzeug: Ja Exportwerkzeug: Ja Frameworks: Qi4j ( Jo4neo ( ogrm ( Spring Data Neo4J ( 16

17 Grenzen Keine Aktualisierungen Keine Verwaltung mehrerer Graphen (Verschmelzen, Auftrennen) Keine Zugriffsrechte (Anmeldung, Benutzer, Gruppen, Rollen, etc. fehlen) Administrationswerkzeug: Nicht mit z.b. Oracle Enterprise Manager vergleichbar Visualisierungen schwierig 17

18 Übersicht Einleitung & Motivation Neo4j Arbeiten mit Neo4j Zusammenfassung & Ausblick 18

19 Datenbank starten und beenden ( 1) public class Example{ ( 2) ( 3) private static final String DB_PATH = "Path to database"; ( 4) GraphDatabaseService graphdb; ( 5) ( 6) public static void main(string[] args){ ( 7) Example myexampledatabase = new Example(); ( 8) myexampledatabase.createdb(); ( 9) /* Work with database */ (10) myexampledatabase.shutdown(); (11) } (12) (13) void createdb(){ (14) graphdb = new GraphDatabaseFactory() (15).newEmbeddedDatabase(DB_PATH); (16) } (17) (18) void shutdown(){ (19) graphdb.shutdown(); (20) } (21) } 19

20 Knoten und Kanten anlegen Anlegen stets im Transaktions-Kontext Beispiel: Node[1] Frank KNOWS Node[2] Tanja ( 1) Transaction tx = graphdb.begintx(); ( 2) try{ ( 3) firstnode = graphdb.createnode(); ( 4) firstnode.setproperty("name","frank"); ( 5) secondnode = graphdb.createnode(); ( 6) secondnode.setproperty("name", Tanja"); ( 7) relationship = firstnode.createrelationshipto( ( 8) secondnode, RelTypes.KNOWS); ( 9) relationship.setproperty("message","..."); (10) tx.success(); (11) } (12) finally{ (13) tx.finish(); (14) } 20

21 Import (I) Knoten/Kanten einfügen über Transaktionen bei großen Datenmengen ineffizient Batch-Inserter: Erlaubt performantes Einfügen Szenario I (relativ kleine Graphen): Erzeuge Graphen mit R-MAT-Algorithmus [GSP10] Speichere diesen im TGF-Format (Trivial Graph Format) Führe Batch-Import aus 21

22 Import (II) Resultate: 22

23 Import (III) Szenario II (Größere Graphen): Erzeuge Zufallsgraph mit N Knoten Kantenzahl zwischen pro Knoten zwischen 1 und N/200 Resultate: 23

24 Index (I) Beispiel: Node[0] all Node[1] user1 Node[2] user2 Node[N] usern Index erstellen und abfragen nach einem Objekt: ( 1) graphdb = new GraphDatabaseFactory().newEmbeddedDatabase(DB_PATH) ( 2) nodeindex = graphdb.index().fornodes("nodes"); ( 3)... ( 4)... Erzeugen und Einfügen Knoten wie in Beispiel oben ( 5) Node node = graphdb.createnode(); ( 6) node.setproperty(username_key,username); ( 7) nodeindex.add(node,username_key,username); ( 8)... ( 9) int idtofind = 45; (10) Node founduser = nodeindex.get(username_key, (11) idtousername(idtofind)).getsingle(); (12) System.out.println("The username of user " + idtofind + " is " (13) + founduser.getproperty(username_key)); 24

25 Index (II) Index abfragen bei mengenwertigem Resultat: ( 1) IndexHits<Node> hits = nodeindex.get(username_key, ( 2) idtousername(idtofind)); ( 3) try{ ( 4) System.out.println("Found nodes: "); ( 5) for (Node node : hits){ ( 6) System.out.println(node.getProperty(USERNAME_KEY)); ( 7) } ( 8) } ( 9) finally{ (10) hits.close(); (11) } 25

26 Index (III): Anfragezeiten 26

27 Index (IV): Kosten 27

28 Traverser: Konzepte 28

29 Beispiel: Tiefensuche alle Pfade Traverser: (1) for (Path position : Traversal.description() (2).depthFirst() (3).relationships(RelTypes.KNOWS, (4) Direction.OUTGOING) (5).uniqueness(Uniqueness.NONE) (6).traverse(node)) (7) {output += position + "\n";} Ergebnis (Startknoten = 1): (1) (1)--[KNOWS,0]-->(2) (1)--[KNOWS,0]-->(2)--[KNOWS,3]-->(5) (1)--[KNOWS,0]-->(2)--[KNOWS,4]-->(6) (1)--[KNOWS,0]-->(2)--[KNOWS,5]-->(7) Node[5] Peter Node[2] Heinz Node[6] Frank (1)--[KNOWS,0]-->(2)--[KNOWS,5]-->(7)--[KNOWS,11]-->(6) (1)--[KNOWS,1]-->(3) (1)--[KNOWS,1]-->(3)--[KNOWS,6]-->(7) (1)--[KNOWS,1]-->(3)--[KNOWS,6]-->(7)--[KNOWS,11]-->(6) (1)--[KNOWS,1]-->(3)--[KNOWS,7]-->(8) (1)--[KNOWS,2]-->(4) (1)--[KNOWS,2]-->(4)--[KNOWS,8]-->(8) (1)--[KNOWS,2]-->(4)--[KNOWS,9]-->(9) (1)--[KNOWS,2]-->(4)--[KNOWS,9]-->(9)--[KNOWS,12]-->(8) (1)--[KNOWS,2]-->(4)--[KNOWS,10]-->(10) Node[7] Steffi Node[1] Werner Node[3] Sonja Node[8] Bettina Node[9] Julian Node[4] Lisa Node[10] Fritz 29

30 Beispiel: Breitensuche alle Pfade Traverser: (1) for (Path position : Traversal.description() (2).breadthFirst() (3).relationships(RelTypes.KNOWS, (4) Direction.OUTGOING) (5).uniqueness(Uniqueness.NONE) (6).traverse(node)) (7) {output += position + "\n";} Ergebnis (Startknoten = 1): (1) (1)--[KNOWS,0]-->(2) (1)--[KNOWS,1]-->(3) (1)--[KNOWS,2]-->(4) (1)--[KNOWS,0]-->(2)--[KNOWS,3]-->(5) (1)--[KNOWS,0]-->(2)--[KNOWS,4]-->(6) (1)--[KNOWS,0]-->(2)--[KNOWS,5]-->(7) (1)--[KNOWS,1]-->(3)--[KNOWS,6]-->(7) (1)--[KNOWS,1]-->(3)--[KNOWS,7]-->(8) (1)--[KNOWS,2]-->(4)--[KNOWS,8]-->(8) (1)--[KNOWS,2]-->(4)--[KNOWS,9]-->(9) (1)--[KNOWS,2]-->(4)--[KNOWS,10]-->(10) Node[5] Peter Node[2] Heinz Node[6] Frank (1)--[KNOWS,0]-->(2)--[KNOWS,5]-->(7)--[KNOWS,11]-->(6) (1)--[KNOWS,1]-->(3)--[KNOWS,6]-->(7)--[KNOWS,11]-->(6) (1)--[KNOWS,2]-->(4)--[KNOWS,9]-->(9)--[KNOWS,12]-->(8) Node[7] Steffi Node[1] Werner Node[3] Sonja Node[8] Bettina Node[9] Julian Node[4] Lisa Node[10] Fritz 30

31 Beispiel: Breitensuche Keine doppelten Knoten (Standard) Traverser: (1) for (Path position : Traversal.description() (2).breadthFirst() (3).relationships(RelTypes.KNOWS, (4) Direction.OUTGOING) (5).uniqueness(Uniqueness.NONE_GLOBAL) (6).traverse(node)) (7) {output += position + "\n";} Ergebnis (Startknoten = 1): (1) (1)--[KNOWS,0]-->(2) (1)--[KNOWS,1]-->(3) (1)--[KNOWS,2]-->(4) (1)--[KNOWS,0]-->(2)--[KNOWS,3]-->(5) (1)--[KNOWS,0]-->(2)--[KNOWS,4]-->(6) (1)--[KNOWS,0]-->(2)--[KNOWS,5]-->(7) (1)--[KNOWS,1]-->(3)--[KNOWS,6]-->(7) (1)--[KNOWS,1]-->(3)--[KNOWS,7]-->(8) (1)--[KNOWS,2]-->(4)--[KNOWS,8]-->(8) (1)--[KNOWS,2]-->(4)--[KNOWS,9]-->(9) (1)--[KNOWS,2]-->(4)--[KNOWS,10]-->(10) Node[5] Peter Node[2] Heinz Node[6] Frank Node[7] Steffi (1)--[KNOWS,0]-->(2)--[KNOWS,5]-->(7)--[KNOWS,11]-->(6) (1)--[KNOWS,1]-->(3)--[KNOWS,6]-->(7)--[KNOWS,11]-->(6) (1)--[KNOWS,2]-->(4)--[KNOWS,9]-->(9)--[KNOWS,12]-->(8) Node[1] Werner Node[3] Sonja Node[8] Bettina Node[9] Julian Node[4] Lisa Node[10] Fritz 31

32 Beispiel: Breitensuche beschränkt Suchtiefeeinstellung durch Evaluator Traverser: (1) for (Path position : Traversal.description() (2).breadthFirst() (3).relationships(RelTypes.KNOWS, (4) Direction.OUTGOING) (5).uniqueness(Uniqueness.NONE) (6).evaluator(Evaluators.toDepth(2)) (7).traverse(node)) (8) {output += position + "\n";} Node[5] Peter Node[2] Heinz Node[6] Frank Ergebnis (Startknoten = 1): (1) (1)--[KNOWS,0]-->(2) (1)--[KNOWS,1]-->(3) (1)--[KNOWS,2]-->(4) (1)--[KNOWS,0]-->(2)--[KNOWS,3]-->(5) (1)--[KNOWS,0]-->(2)--[KNOWS,4]-->(6) (1)--[KNOWS,0]-->(2)--[KNOWS,5]-->(7) (1)--[KNOWS,1]-->(3)--[KNOWS,6]-->(7) (1)--[KNOWS,1]-->(3)--[KNOWS,7]-->(8) (1)--[KNOWS,2]-->(4)--[KNOWS,8]-->(8) (1)--[KNOWS,2]-->(4)--[KNOWS,9]-->(9) (1)--[KNOWS,2]-->(4)--[KNOWS,10]-->(10) (1)--[KNOWS,0]-->(2)--[KNOWS,5]-->(7)--[KNOWS,11]-->(6) (1)--[KNOWS,1]-->(3)--[KNOWS,6]-->(7)--[KNOWS,11]-->(6) (1)--[KNOWS,2]-->(4)--[KNOWS,9]-->(9)--[KNOWS,12]-->(8) Node[7] Steffi Node[1] Werner Node[3] Sonja Node[8] Bettina Node[9] Julian Node[4] Lisa Node[10] Fritz 32

33 Beispiel: Relationships Traverser: (1) for ( Path position : Traversal.description() (2).depthFirst() (3).relationships( RelTypes.KNOWS ) (4).relationships( RelTypes.LIKES, (5) Direction.INCOMING) (6).evaluator(Evaluators.toDepth(5)) (7).traverse(node)) (8) { output += position + "\n";} Ergebnis (Startknoten = 7): (7) (7)<--[LIKES,6]--(4) (7)<--[LIKES,6]--(4)--[KNOWS,0]-->(1) (7)<--[LIKES,6]--(4)--[KNOWS,0]-->(1)--[KNOWS,2]-->(6) (7)<--[LIKES,6]--(4)--[KNOWS,0]-->(1)--[KNOWS,2]-->(6)--[KNOWS,3]-->(5) (7)<--[LIKES,6]--(4)--[KNOWS,0]-->(1)--[KNOWS,2]-->(6)--[KNOWS,3]-->(5)-- (7)<--[LIKES,6]--(4)--[KNOWS,0]-->(1)<--[KNOWS,1]--(3) [KNOWS,4]-->(2) 33

34 Übersicht Einleitung & Motivation Neo4j Arbeiten mit Neo4j Zusammenfassung & Ausblick 34

35 Zusammenfassung & Ausblick (I) Einleitung: Geschichte Persistenz NoSQL Motivation Neo4j: Eigenschaften in fünf Bereichen: Grundlegende Eigenschaften Datenmodell DB-Eigenschaften Schnittstellen Utilities Frameworks 35

36 Zusammenfassung & Ausblick (II) Arbeiten mit Neo4j: Datenbanken anlegen Objekte erzeugen und verwalten Index Traversierungen Ausblick: Weitere Untersuchungen Anfragesprachen: CYPHER Gremlin Performancetest: Vergleich mit anderen Graphdatenbanken Vergleich mit relationalen Lösungen 36

37 Vielen Dank für Ihre Aufmerksamkeit! Haben Sie Fragen? 37

Agenda. (1) Einleitung (2) neo4j. (3) Beispiel + Demo

Agenda. (1) Einleitung (2) neo4j. (3) Beispiel + Demo Agenda (1) Einleitung (2) neo4j (1) neo4j Embedded (2) neo4j Server (REST-Interface) (3) Cypher Query Language (4) High Availability Cluster (3) Beispiel + Demo 2 Einleitung 3 Einleitung: Geschichte 1960er:

Mehr

Java Forum Stuttgart 2013 Kai.Spichale@adesso.de twitter.com/kspichale spichale.blogspot.de

Java Forum Stuttgart 2013 Kai.Spichale@adesso.de twitter.com/kspichale spichale.blogspot.de NoSQL für Java-Entwickler Java Forum Stuttgart 2013 Kai.Spichale@adesso.de twitter.com/kspichale spichale.blogspot.de 23.06.2013 Agenda Datengröße Key-value Stores 1. Wide Column 2. Cassandra Document

Mehr

Die Java-basierte Graphdatenbank Neo4j

Die Java-basierte Graphdatenbank Neo4j Die Java-basierte Graphdatenbank Neo4j Olaf Herden Duale Hochschule Baden-Württemberg Campus Horb Schlüsselworte Graphdatenbank, Neo4j, NoSQL, Big Data. Abstract In der jüngsten Vergangenheit hat es im

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

NoSQL HANSER. Einstieg in die Web 2.0 Datenbanken. Stefan Edlich Achim Friedland Jens Hampe Benjamin Brauer Markus Brückner

NoSQL HANSER. Einstieg in die Web 2.0 Datenbanken. Stefan Edlich Achim Friedland Jens Hampe Benjamin Brauer Markus Brückner Stefan Edlich Achim Friedland Jens Hampe Benjamin Brauer Markus Brückner NoSQL Einstieg in die Web 2.0 Datenbanken 2., akutalisierte und erweiterte Auflage HANSER Geleitwort Vorwort Vorwort zur 2. Auflage

Mehr

Stefan Edlich Achim Friedland Jens Rampe Benjamin Brauer. NoSQL. Einstieg in die Welt nichtrelationaler Web 2.0 Datenbanken HANSER

Stefan Edlich Achim Friedland Jens Rampe Benjamin Brauer. NoSQL. Einstieg in die Welt nichtrelationaler Web 2.0 Datenbanken HANSER Stefan Edlich Achim Friedland Jens Rampe Benjamin Brauer NoSQL Einstieg in die Welt nichtrelationaler Web 2.0 Datenbanken HANSER Geleitwort 1 Vorwort 1 1 Einführung 1 1.1 Historie 1 1.2 Definition und

Mehr

Überblick und Vergleich von NoSQL. Datenbanksystemen

Überblick und Vergleich von NoSQL. Datenbanksystemen Fakultät Informatik Hauptseminar Technische Informationssysteme Überblick und Vergleich von NoSQL Christian Oelsner Dresden, 20. Mai 2011 1 1. Einführung 2. Historisches & Definition 3. Kategorien von

Mehr

Abstrakt zum Vortrag im Oberseminar. Graphdatenbanken. Gero Kraus HTWK Leipzig 14. Juli 2015

Abstrakt zum Vortrag im Oberseminar. Graphdatenbanken. Gero Kraus HTWK Leipzig 14. Juli 2015 Abstrakt zum Vortrag im Oberseminar Graphdatenbanken Gero Kraus HTWK Leipzig 14. Juli 2015 1 Motivation Zur Darstellung komplexer Beziehungen bzw. Graphen sind sowohl relationale als auch NoSQL-Datenbanken

Mehr

Neo4J & Sones GraphDB. Graph-Datenbanken. Von Toni Fröschke. Problemseminar NoSQL-Datenbanken (WS 2011/12)

Neo4J & Sones GraphDB. Graph-Datenbanken. Von Toni Fröschke. Problemseminar NoSQL-Datenbanken (WS 2011/12) Neo4J & Sones GraphDB Graph-Datenbanken Von Toni Fröschke Problemseminar NoSQL-Datenbanken (WS 2011/12) Gliederung Neo4J Überblick Neo4J-Komponenten Datenhaltung/ -verwaltung Verfügbarkeit & Recovery I/O

Mehr

Web Technologien NoSQL Datenbanken

Web Technologien NoSQL Datenbanken Web Technologien NoSQL Datenbanken Univ.-Prof. Dr.-Ing. Wolfgang Maass Chair in Information and Service Systems Department of Law and Economics WS 2011/2012 Wednesdays, 8:00 10:00 a.m. Room HS 021, B4

Mehr

Graphdatenbanksysteme

Graphdatenbanksysteme Graphdatenbanksysteme Ein Überblick Benjamin Gehrels benjamin@gehrels.info GitHub: @BGehrels Was ist das? WITH RECURSIVE manager ( level, managerid) AS ( SELECT 1 AS depth, employees.managerid AS managerid

Mehr

Projektgruppe. Knowledge Representation Persistence and Reasoning

Projektgruppe. Knowledge Representation Persistence and Reasoning Projektgruppe Seminarvortrag von Stefan Middeke Knowledge Representation Persistence and Reasoning 4. Juni 2010 Überblick Motivation Repräsentation der Daten Speicherung und Abfrage von Daten Folgerungen

Mehr

NoSQL & Big Data. NoSQL Databases and Big Data. NoSQL vs SQL DBs. NoSQL DBs - Überblick. Datenorientierte Systemanalyse. Gerhard Wohlgenannt

NoSQL & Big Data. NoSQL Databases and Big Data. NoSQL vs SQL DBs. NoSQL DBs - Überblick. Datenorientierte Systemanalyse. Gerhard Wohlgenannt NoSQL & Big Data Datenorientierte Systemanalyse NoSQL Databases and Big Data Gerhard Wohlgenannt Die besprochenen Systeme haben nicht den Anspruch und das Ziel DBS zu ersetzen, sondern für gewisse Anwendungsfälle

Mehr

NoSQL Databases and Big Data

NoSQL Databases and Big Data Datenorientierte Systemanalyse NoSQL Databases and Big Data Gerhard Wohlgenannt NoSQL & Big Data Die besprochenen Systeme haben nicht den Anspruch und das Ziel DBS zu ersetzen, sondern für gewisse Anwendungsfälle

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

Big Data Management Thema 14: Cassandra

Big Data Management Thema 14: Cassandra Thema 14: Cassandra Jan Kristof Nidzwetzki Thema 14: Cassandra 1 / 25 Übersicht 1 Grundlagen Überblick Geschichte Datenmodel 2 Architektur Der logische Ring Persistenz der Daten Tunable Consistency Read

Mehr

Eclipse und EclipseLink

Eclipse und EclipseLink Eclipse und EclipseLink Johannes Michler Johannes.Michler@promatis.de PROMATIS, Ettlingen Zugriff auf Oracle Datenbanken aus Eclipse RCP Anwendungen via EclipseLink 18.09.2009 1 Gliederung Eclipse als

Mehr

Soziotechnische Informationssysteme

Soziotechnische Informationssysteme Soziotechnische Informationssysteme 8. NoSQL Relationale Datenbank NoSQL Datenbank Relationale Datenbank? NoSQL Datenbank RDBM 2 Warum? Skalierbarkeit Riesige Datenmengen Performanz und Elastizität Auslastung

Mehr

NoSQL. Einblick in die Welt nicht-relationaler Datenbanken. Christoph Föhrdes. UnFUG, SS10 17.06.2010

NoSQL. Einblick in die Welt nicht-relationaler Datenbanken. Christoph Föhrdes. UnFUG, SS10 17.06.2010 NoSQL Einblick in die Welt nicht-relationaler Datenbanken Christoph Föhrdes UnFUG, SS10 17.06.2010 About me Christoph Föhrdes AIB Semester 7 IRC: cfo #unfug@irc.ghb.fh-furtwangen.de netblox GbR (http://netblox.de)

Mehr

4. Hierarchische und netzwerkartige Datenbankmodelle

4. Hierarchische und netzwerkartige Datenbankmodelle 4. Hierarchische und netzwerkartige Datenbankmodelle 4.1 Hierarchische Datenbanken Hierarchien können durch Baumgraphen beschrieben werden. Datensätze einer hierarchischen Datenbank (HDB) sind in Segmenten

Mehr

NoSQL. Was Architekten beachten sollten. Dr. Halil-Cem Gürsoy adesso AG. Architekturtag @ SEACON 2012 Hamburg

NoSQL. Was Architekten beachten sollten. Dr. Halil-Cem Gürsoy adesso AG. Architekturtag @ SEACON 2012 Hamburg NoSQL Was Architekten beachten sollten Dr. Halil-Cem Gürsoy adesso AG Architekturtag @ SEACON 2012 Hamburg 06.06.2012 Agenda Ein Blick in die Welt der RDBMS Klassifizierung von NoSQL-Datenbanken Gemeinsamkeiten

Mehr

Kein blasses Schema? NoSQL und Big Data mit Hibernate OGM

Kein blasses Schema? NoSQL und Big Data mit Hibernate OGM Kein blasses Schema? NoSQL und Big Data mit Hibernate OGM Thomas Much thomas@muchsoft.com www.muchsoft.com 1 NoSQL und Big Data Herzlich Willkommen in der NoSQL-Welt OnlySQL Not 2 NoSQL und Big Data NoSQL

Mehr

1. Einführung. Datenbanken Grundlagen

1. Einführung. Datenbanken Grundlagen 1. Einführung Datenbanken Grundlagen Wo finden wir Datenbanken? Was sind Datenbanken/ Datenbankensysteme(DBS)? A collection of related data items mit folgenden Eigenschaften: Eine Datebank repräsentiert

Mehr

Dokumentenorientierte Datenbanken - MongoDB

Dokumentenorientierte Datenbanken - MongoDB Dokumentenorientierte Datenbanken - MongoDB Jan Hentschel Ultra Tendency UG Übersicht Dokumente sind unabhängige Einheiten Bessere Performance (zusammengehörige Daten werden gemeinsam gelesen) Objektmodell

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

Persistenz von Objekten relationale Datenbank Eigene Datenstruktur XML (JAXB) Proprietäre Dateiformate (Lochkarten)

Persistenz von Objekten relationale Datenbank Eigene Datenstruktur XML (JAXB) Proprietäre Dateiformate (Lochkarten) Persistenz von Objekten relationale Datenbank Eigene Datenstruktur XML (JAXB) Proprietäre Dateiformate (Lochkarten) O/R Mapping - Objekte (Attribute) - 1:1, 1:n, n:m Beziehungen - Vererbungen (- Interfaces)

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

Spring Dynamic Modules for OSGi Service Platforms

Spring Dynamic Modules for OSGi Service Platforms Gerd Wütherich freiberuflicher Softwarearchitekt Spring Dynamic Modules for OSGi Service Platforms Server Anwendungen mit Spring und Eclipse Equinox Agenda OSGi Technologie: OSGi Technologie im Überblick

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

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

Cloud-Provider im Vergleich. Markus Knittig @mknittig

Cloud-Provider im Vergleich. Markus Knittig @mknittig Cloud-Provider im Vergleich Markus Knittig @mknittig As Amazon accumulated more and more services, the productivity levels in producing innovation and value were dropping primarily because the engineers

Mehr

Spring Dynamic Modules for OSGi Service Platforms

Spring Dynamic Modules for OSGi Service Platforms Gerd Wütherich freiberuflicher Softwarearchitekt Spring Dynamic Modules for OSGi Service Platforms Server Anwendungen mit Spring und Eclipse Equinox Agenda OSGi Technologie: OSGi Technologie im Überblick

Mehr

JDO Java Data Objects

JDO Java Data Objects JDO Java Data Objects Ralf Degner, Chief Consultant Ralf.Degner@poet.de Agenda POET Motivation Geschichte Einführung Architekturen FastObjects POET Gegründet 1993 Zwei Produktlinien esupplier Solutions:

Mehr

Agenda. Anwendungsfälle. Integration in Java

Agenda. Anwendungsfälle. Integration in Java Florian Hopf @fhopf Agenda Anwendungsfälle Integration in Java Agenda Vorbereitung Installation # download archive wget https://download.elastic.co/ elasticsearch/elasticsearch/elasticsearch-1.7.1.zip

Mehr

NoSQL-Databases. Präsentation für Advanced Seminar "Computer Engineering", Matthias Hauck, matthias.hauck@stud.uni-heidelberg.de

NoSQL-Databases. Präsentation für Advanced Seminar Computer Engineering, Matthias Hauck, matthias.hauck@stud.uni-heidelberg.de NoSQL-Databases Präsentation für Advanced Seminar "Computer Engineering", Matthias Hauck, matthias.hauck@stud.uni-heidelberg.de Klassische SQL-Datenbanken Anwendungsgebiet: Geschäftsanwendungen Behördenanwendungen

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

Caching. Hintergründe, Patterns &" Best Practices" für Business Anwendungen

Caching. Hintergründe, Patterns & Best Practices für Business Anwendungen Caching Hintergründe, Patterns &" Best Practices" für Business Anwendungen Michael Plöd" Senacor Technologies AG @bitboss Business-Anwendung!= Twitter / Facebook & co. " / kæʃ /" bezeichnet in der EDV

Mehr

Jakarta Lucene. Eine Java-Bibliothek zur Suchindex-Erstellung. Seminararbeit Tilman Schneider

Jakarta Lucene. Eine Java-Bibliothek zur Suchindex-Erstellung. Seminararbeit Tilman Schneider Jakarta Lucene Eine Java-Bibliothek zur Suchindex-Erstellung Seminararbeit Tilman Schneider 2004 Tilman Schneider Seminararbeit: Jakarta Lucene Folie 1 Agenda Definition: Suchmaschine Vorstellung von Jakarta

Mehr

Treffpunkt Semicolon. NoSQL. mit JPA und Hibernate OGM. Thomas Much 09.09.2014

Treffpunkt Semicolon. NoSQL. mit JPA und Hibernate OGM. Thomas Much 09.09.2014 Treffpunkt Semicolon NoSQL mit JPA und Hibernate OGM Thomas Much 09.09.2014 Über... Thomas Much Dipl.-Inform. (Universität Karlsruhe (TH)) Berater, Architekt, Entwickler, Coach (seit 1990) Trainer für

Mehr

Fakultät für Informatik & Wirtschaftsinformatik DB & IS II SS 2015. NoSQL. http://www.w3resource.com/mongodb/nosql.php. Dr. Christian Senger.

Fakultät für Informatik & Wirtschaftsinformatik DB & IS II SS 2015. NoSQL. http://www.w3resource.com/mongodb/nosql.php. Dr. Christian Senger. NoSQL http://www.w3resource.com/mongodb/nosql.php NoSQL 1 Short History of Databases 1960s - Navigational DBs CODEASYL (COBOL) IMS (IBM) 1980s to 1990s - Object Oriented DBs Object DB's Object-Relational-

Mehr

Oracle BI&W Referenz Architektur Big Data und High Performance Analytics

Oracle BI&W Referenz Architektur Big Data und High Performance Analytics DATA WAREHOUSE Oracle BI&W Referenz Architektur Big Data und High Performance Analytics Alfred Schlaucher, Oracle Scale up Unternehmensdaten zusammenfassen Noch mehr Informationen

Mehr

DATENBANK LÖSUNGEN. mit Azure. Peter Schneider Trainer und Consultant. Lernen und Entwickeln. www.egos.co.at

DATENBANK LÖSUNGEN. mit Azure. Peter Schneider Trainer und Consultant. Lernen und Entwickeln. www.egos.co.at DATENBANK LÖSUNGEN mit Azure Peter Schneider Trainer und Consultant Agenda Cloud Services, Data Platform, Azure Portal Datenbanken in Virtuelle Maschinen Azure SQL Datenbanken und Elastic Database Pools

Mehr

Algorithmen. Consistent Hashing Bloom Filter MapReduce. Distributed Hash Tables. Einführung 1

Algorithmen. Consistent Hashing Bloom Filter MapReduce. Distributed Hash Tables. Einführung 1 Algorithmen Consistent Hashing Bloom Filter MapReduce Distributed Hash Tables Einführung 1 Consistent Hashing Problem: Wie finde ich den Speicherort für ein Objekt in einem verteilten System mit n Knoten?

Mehr

SimpleVOC-Yetanother. Bausteine für eine Key/Value- Datenbank

SimpleVOC-Yetanother. Bausteine für eine Key/Value- Datenbank SimpleVOC-Yetanother Memcached? Bausteine für eine Key/Value- Datenbank SimpleVOC Yet another memcached? Bausteine für eine Key/Value Datenbank. Theorie (Martin Schönert) Praxis (Frank Celler) Eine Weisheit

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

IDS Lizenzierung für IDS und HDR. Primärserver IDS Lizenz HDR Lizenz

IDS Lizenzierung für IDS und HDR. Primärserver IDS Lizenz HDR Lizenz IDS Lizenzierung für IDS und HDR Primärserver IDS Lizenz HDR Lizenz Workgroup V7.3x oder V9.x Required Not Available Primärserver Express V10.0 Workgroup V10.0 Enterprise V7.3x, V9.x or V10.0 IDS Lizenz

Mehr

Eine Einführung in Apache CouchDB. Java-Forum Stuttgart 2011

Eine Einführung in Apache CouchDB. Java-Forum Stuttgart 2011 Eine Einführung in Apache CouchDB Java-Forum Stuttgart 2011 Johannes Schneider, cedarsoft GmbH js@cedarsoft.com http://blog.cedarsoft.com http://cedarsoft.com Vielen Dank CouchDB The VERY Basics Vorerfahrung?

Mehr

SQL structured query language

SQL structured query language Umfangreiche Datenmengen werden üblicherweise in relationalen Datenbank-Systemen (RDBMS) gespeichert Logische Struktur der Datenbank wird mittels Entity/Realtionship-Diagrammen dargestellt structured query

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

Open Source Graphdatenbanken. Konzepte und Klassifikation

Open Source Graphdatenbanken. Konzepte und Klassifikation Open Source Graphdatenbanken Konzepte und Klassifikation Olaf Herden, Kevin Redenz Fakultät Technik Studiengang Informatik Duale Hochschule Baden-Württemberg Campus Horb Florianstr. 15 72160 Horb o.herden@hb.dhbw-stuttgart.de

Mehr

Analyse und praktischer Vergleich von neuen Access- Layer-Technologien in modernen Webanwendungen unter Java. Oliver Kalz

Analyse und praktischer Vergleich von neuen Access- Layer-Technologien in modernen Webanwendungen unter Java. Oliver Kalz Analyse und praktischer Vergleich von neuen Access- Layer-Technologien in modernen Webanwendungen unter Java Oliver Kalz Agenda Grundlagen Objektpersistenz Objektrelationales Mapping Performance Fazit

Mehr

Einführung in CouchDB

Einführung in CouchDB Einführung in CouchDB Zurücklehnen und entspannen! http://slog.io Thomas Schrader (@slogmen) 12/2010 Übersicht Bestandsaufnahme Ansatz Geschichte Technologien Features Skalierbarkeit Kurz & Gut Fazit Relationale

Mehr

Java Database Connectivity (JDBC) 14.07.2009 Walther Rathenau Gewerbeschule 1

Java Database Connectivity (JDBC) 14.07.2009 Walther Rathenau Gewerbeschule 1 Java Database Connectivity (JDBC) 14.07.2009 Walther Rathenau Gewerbeschule 1 Was ist JDBC? Hauptsächlich eine Sammlung von Java Klassen und Schnittstellen für eine einfache Verbindung von Java Programmen

Mehr

Programmieren II. Beispiele für RDBMS. Relationale Datenbanken. Datenbanken SQL. Dr. Klaus Höppner JDBC. Hochschule Darmstadt SS 2008

Programmieren II. Beispiele für RDBMS. Relationale Datenbanken. Datenbanken SQL. Dr. Klaus Höppner JDBC. Hochschule Darmstadt SS 2008 Programmieren II Datenbanken Dr. Klaus Höppner SQL Hochschule Darmstadt SS 2008 JDBC 1 / 20 2 / 20 Relationale Datenbanken Beispiele für RDBMS Ein Datenbanksystem ist ein System zur Speicherung von (großen)

Mehr

Relationale Datenbanken Kursziele

Relationale Datenbanken Kursziele Relationale Datenbanken Kursziele DB Grundlagen Daten-Modellierung Relationales Modell und DB => Praxis: Mit SQL als Anfragesprache Mit MySQL als DB RDB 1-1 Kursinhalt (Tage) 1. DB Einleitung / Entity-Relationship

Mehr

NoSQL-Datenbanken. Kapitel 1: Einführung. Lars Kolb Sommersemester 2014. Universität Leipzig http://dbs.uni-leipzig.de 1-1

NoSQL-Datenbanken. Kapitel 1: Einführung. Lars Kolb Sommersemester 2014. Universität Leipzig http://dbs.uni-leipzig.de 1-1 NoSQL-Datenbanken Kapitel 1: Einführung Lars Kolb Sommersemester 2014 Universität Leipzig http://dbs.uni-leipzig.de 1-1 Inhaltsverzeichnis NoSQL-Datenbanken Motivation und Definition Kategorisierung, Eigenschaften

Mehr

Development auf der Plattform SAP HANA

Development auf der Plattform SAP HANA Development auf der Plattform SAP HANA SAP HANA Architektur SAP HANA Studio Modellierung auf SAP HANA Web basierte Data Access Role und Berechtigung SAP HANA Plattform SAP HANA als Appliance SAP HANA in

Mehr

Was ist Amazon RDS? Datenbank Typen DB Instanzen Features. Live Demo Fazit. Amazon RDS - Till Ganzert 15.06.2012 2

Was ist Amazon RDS? Datenbank Typen DB Instanzen Features. Live Demo Fazit. Amazon RDS - Till Ganzert 15.06.2012 2 Was ist Amazon RDS? Datenbank Typen DB Instanzen Features Kosten Live Demo Fazit 15.06.2012 2 Web-Service von Amazon Erlaubt mieten von Datenbanken Einrichtung, Betrieb und Skalierung übernimmt Anbieter

Mehr

Smartphone Entwicklung mit Android und Java

Smartphone Entwicklung mit Android und Java Smartphone Entwicklung mit Android und Java predic8 GmbH Moltkestr. 40 53173 Bonn Tel: (0228)5552576-0 www.predic8.de info@predic8.de Was ist Android Offene Plattform für mobile Geräte Software Kompletter

Mehr

ISTEC.MIP Messdaten-Integrations-Plattform

ISTEC.MIP Messdaten-Integrations-Plattform ISTEC.MIP Messdaten-Integrations-Plattform Dr.-Ing. Carsten Folie 1 ISTEC Firmenprofil unabhängiges Software- und Systemhaus seit 1982 erfolgreich am Markt ca. 60 festangestellte Mitarbeiter (Informatiker,

Mehr

Charakteristika und Vergleich von SQL- und NoSQL- Datenbanken

Charakteristika und Vergleich von SQL- und NoSQL- Datenbanken Universität Leipzig Fakultät für Mathematik und Informatik Abteilung Datenbanken Dozent: Prof. Dr. Erhard Rahm Betreuer: Stefan Endrullis Problemseminar NoSQL-Datenbanken Semester: WS 11/12 Charakteristika

Mehr

Mobile Backend in der

Mobile Backend in der Mobile Backend in der Cloud Azure Mobile Services / Websites / Active Directory / Kontext Auth Back-Office Mobile Users Push Data Website DevOps Social Networks Logic Others TFS online Windows Azure Mobile

Mehr

Polyglotte Persistenz & Multi-Model Datenbanken

Polyglotte Persistenz & Multi-Model Datenbanken Polyglotte Persistenz & Multi-Model Datenbanken 192. Datenbankstammtisch 29.10.2014 Michael Hackstein @mchacki www.arangodb.com Michael Hackstein ArangoDB Kern Entwickler Web Frontend Graphen Visualisierung

Mehr

Webentwicklung mit Vaadin 7. Theoretische und praktische Einführung in Vaadin 7. Christian Dresen, Michael Gerdes, Sergej Schumilo

Webentwicklung mit Vaadin 7. Theoretische und praktische Einführung in Vaadin 7. Christian Dresen, Michael Gerdes, Sergej Schumilo Webentwicklung mit Vaadin 7 Theoretische und praktische Einführung in Vaadin 7 Christian Dresen, Michael Gerdes, Sergej Schumilo Agenda Allgemeines Architektur Client-Side Server-Side Vaadin UI Components

Mehr

STOFF- IDENT. System DAIOS. Workshop: STOFF-IDENT & openmasp 18. / 19.04.2013 Freising. marco.luthardt@hswt.de

STOFF- IDENT. System DAIOS. Workshop: STOFF-IDENT & openmasp 18. / 19.04.2013 Freising. marco.luthardt@hswt.de STOFF- IDENT System DAIOS Workshop: STOFF-IDENT & openmasp 18. / 19.04.2013 Freising marco.luthardt@hswt.de Überblick 1. Plattform - Vorschau 2. openmasp (OM) 3. STOFF-IDENT(SI) 4. Plattform - Fazit Folie

Mehr

Web Technologien Klassische Datenbanken am Beispiel von MySQL

Web Technologien Klassische Datenbanken am Beispiel von MySQL Web Technologien Klassische Datenbanken am Beispiel von MySQL Univ.-Prof. Dr.-Ing. Wolfgang Maass Chair in Information and Service Systems Department of Law and Economics WS 2011/2012 Wednesdays, 8:00

Mehr

SQL, MySQL und FileMaker

SQL, MySQL und FileMaker SQL, MySQL und FileMaker Eine kurze Einführung in SQL Vorstellung von MySQL & phpmyadmin Datenimport von MySQL in FileMaker Autor: Hans Peter Schläpfer Was ist SQL? «Structured Query Language» Sprache

Mehr

Seminar in der Seminarreihe Business Intelligence 1. OLAP und Datawarehousing

Seminar in der Seminarreihe Business Intelligence 1. OLAP und Datawarehousing Seminar in der Seminarreihe Business Intelligence 1 OLAP und Datawarehousing OLAP & Warehousing Die wichtigsten Produkte Die Gliederung Produkt Bewertung & Vergleiche Die Marktentwicklung Der aktuelle

Mehr

NoSQL Datenbanken PI Datenorientierte Systemanalyse, WS 2014/15. LV Datenorientierte Systemanalyse, WS 2014/15

NoSQL Datenbanken PI Datenorientierte Systemanalyse, WS 2014/15. LV Datenorientierte Systemanalyse, WS 2014/15 NoSQL Datenbanken LV Datenorientierte Systemanalyse, WS 2014/15 Dr. Walter Ebner, Institut für Informationswirtschaft Wirtschaftsuniversität Wien Überblick Abgrenzung zu relationalen

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

XAMPP-Systeme. Teil 3: My SQL. PGP II/05 MySQL

XAMPP-Systeme. Teil 3: My SQL. PGP II/05 MySQL XAMPP-Systeme Teil 3: My SQL Daten Eine Wesenseigenschaft von Menschen ist es, Informationen, in welcher Form sie auch immer auftreten, zu ordnen, zu klassifizieren und in strukturierter Form abzulegen.

Mehr

Dehnbarer Begriff Verteiltes Suchen mit Elasticsearch

Dehnbarer Begriff Verteiltes Suchen mit Elasticsearch Dehnbarer Begriff Verteiltes Suchen mit Elasticsearch Dr. Halil-Cem Gürsoy halil-cem.guersoy@adesso.de www.adesso.de ...über mich 15 Jahre Entwicklung und Beratung 'Software Architect' bei adesso AG, Dortmund

Mehr

BigTable. 11.12.2012 Else

BigTable. 11.12.2012 Else BigTable 11.12.2012 Else Einführung Distributed Storage System im Einsatz bei Google (2006) speichert strukturierte Daten petabyte-scale, > 1000 Nodes nicht relational, NoSQL setzt auf GFS auf 11.12.2012

Mehr

EHCache und Terracotta. Jochen Wiedmann, Software AG

EHCache und Terracotta. Jochen Wiedmann, Software AG EH und Terracotta Jochen Wiedmann, Software AG Autor Perl-Contributor DBD::mySQL 2, DBI::Proxy, DBI::Shell, DBD::CSV, Net::Daemon, RPC::Pl(Client Server) (Autor) DBI (Developer) ASF-Member (Apache Software

Mehr

Datenbanken (WS 2015/2016)

Datenbanken (WS 2015/2016) Datenbanken (WS 2015/2016) Klaus Berberich (klaus.berberich@htwsaar.de) Wolfgang Braun (wolfgang.braun@htwsaar.de) 0. Organisatorisches Dozenten Klaus Berberich (klaus.berberich@htwsaar.de) Sprechstunde

Mehr

Breiten- und Tiefensuche in Graphen

Breiten- und Tiefensuche in Graphen Breiten- und Tiefensuche in Graphen Inhalt Theorie. Graphen. Die Breitensuche in der Theorie am Beispiel eines ungerichteten Graphen. Die Tiefensuche in der Theorie am Beispiel eines gerichteten Graphen

Mehr

Elasticsearch und die Oracle Datenbank

Elasticsearch und die Oracle Datenbank Elasticsearch und die Oracle Datenbank Die komfortable Suchmaschine in der Praxis 1. Einleitung 2. Installation 3. Daten aus der Oracle Datenbank 4. praktische Beispiele 5. Fragen & Anregungen Was ist

Mehr

Java für C++ Programmierer

Java für C++ Programmierer Java für C++ Programmierer Alexander Bernauer bernauer@inf.ethz.ch Einführung in die Übungen zu Informatik II (D ITET) FS2010 ETH Zürich Ziel Allgemeiner Überblick Kennenlernen der Suchbegriffe Warum Java?

Mehr

E-Commerce: IT-Werkzeuge. Web-Programmierung. Kapitel 6: Datenbankabfragen mit SQL und PHP. Stand: 24.11.2014. Übung WS 2014/2015

E-Commerce: IT-Werkzeuge. Web-Programmierung. Kapitel 6: Datenbankabfragen mit SQL und PHP. Stand: 24.11.2014. Übung WS 2014/2015 Übung WS 2014/2015 E-Commerce: IT-Werkzeuge Web-Programmierung Kapitel 6: Datenbankabfragen mit SQL und PHP Stand: 24.11.2014 Benedikt Schumm M.Sc. Lehrstuhl für ABWL und Wirtschaftsinformatik Katholische

Mehr

Grundlagen der Informatik 2

Grundlagen der Informatik 2 Grundlagen der Informatik 2 Dipl.-Inf., Dipl.-Ing. (FH) Michael Wilhelm Hochschule Harz FB Automatisierung und Informatik mwilhelm@hs-harz.de Raum 2.202 Tel. 03943 / 659 338 1 Gliederung 1. Einführung

Mehr

Oracle 10g und SQL Server 2005 ein Vergleich. Thomas Wächtler 39221

Oracle 10g und SQL Server 2005 ein Vergleich. Thomas Wächtler 39221 Oracle 10g und SQL Server 2005 ein Vergleich Thomas Wächtler 39221 Inhalt 1. Einführung 2. Architektur SQL Server 2005 1. SQLOS 2. Relational Engine 3. Protocol Layer 3. Services 1. Replication 2. Reporting

Mehr

Open Source Data Center Virtualisierung mit OpenNebula. 05.03.2013 CeBIT 2013. Bernd Erk www.netways.de

Open Source Data Center Virtualisierung mit OpenNebula. 05.03.2013 CeBIT 2013. Bernd Erk www.netways.de Open Source Data Center Virtualisierung mit OpenNebula 05.03.2013 CeBIT 2013 Bernd Erk VORSTELLUNG NETWAYS NETWAYS! Firmengründung 1995! GmbH seit 2001! Open Source seit 1997! 35 Mitarbeiter! Spezialisierung

Mehr

Echtzeiterkennung von Cyber-Angriffen auf IT-Infrastrukturen. Frank Irnich SAP Deutschland

Echtzeiterkennung von Cyber-Angriffen auf IT-Infrastrukturen. Frank Irnich SAP Deutschland Echtzeiterkennung von Cyber-Angriffen auf IT-Infrastrukturen Frank Irnich SAP Deutschland SAP ist ein globales Unternehmen... unser Fokusgebiet... IT Security für... 1 globales Netzwerk > 70 Länder, >

Mehr

It's time to rethink Datenbank-Design in der schönen neuen Welt

It's time to rethink Datenbank-Design in der schönen neuen Welt It's time to rethink Datenbank-Design in der schönen neuen Welt Java User Group Hessen 2015 Version: 1.1 Orientation in Objects GmbH Weinheimer Str. 68 68309 Mannheim www.oio.de info@oio.de Ihr Sprecher

Mehr

Suchen und Finden mit Lucene und Solr. Florian Hopf 04.07.2012

Suchen und Finden mit Lucene und Solr. Florian Hopf 04.07.2012 Suchen und Finden mit Lucene und Solr Florian Hopf 04.07.2012 http://techcrunch.com/2010/08/04/schmidt-data/ Suche Go Suche Go Ergebnis 1 In Ergebnis 1 taucht der Suchbegriff auf... Ergebnis 2 In Ergebnis

Mehr

Industrie 4.0 und Smart Data

Industrie 4.0 und Smart Data Industrie 4.0 und Smart Data Herausforderungen für die IT-Infrastruktur bei der Auswertung großer heterogener Datenmengen Richard Göbel Inhalt Industrie 4.0 - Was ist das? Was ist neu? Herausforderungen

Mehr

fbi h_da Datenbanken Kapitel 1: Einführung Schestag Datenbanken (Bachelor) Kapitel 1-1

fbi h_da Datenbanken Kapitel 1: Einführung Schestag Datenbanken (Bachelor) Kapitel 1-1 Datenbanken Kapitel 1: Einführung Schestag Datenbanken (Bachelor) Kapitel 1-1 Einführung Inhalte des Kapitels Einsatzgebiete von Datenbanken Datenbank Datenbanksystem Datenbankmanagementsystem Historische

Mehr

Oracle Data Warehouse Mit Big Data neue Horizonte für das Data Warehouse ermöglichen

Oracle Data Warehouse Mit Big Data neue Horizonte für das Data Warehouse ermöglichen DATA WAREHOUSE Oracle Data Warehouse Mit Big Data neue Horizonte für das Data Warehouse ermöglichen Alfred Schlaucher, Detlef Schroeder DATA WAREHOUSE Themen Big Data Buzz Word oder eine neue Dimension

Mehr

Softwareentwicklung mit Enterprise JAVA Beans

Softwareentwicklung mit Enterprise JAVA Beans Softwareentwicklung mit Enterprise JAVA Beans JPA - JAVA Persistence API Problem In JAVA-programmen arbeitet man mit Hauptspeicherobjekten. Nach Beendigung des Programmes sind diese nicht mehr vorhanden.

Mehr

Alles außer Java! JVM-Sprachen sagen Happy Birthday

Alles außer Java! JVM-Sprachen sagen Happy Birthday JUGS 20 Jahre Java Alles außer Java! JVM-Sprachen sagen Happy Birthday Jan-Paul Buchwald BeOne Stuttgart GmbH 15 Jahre JVM Sprachen Jython Rhino 2001: JRuby Groovy Scala 2007: Clojure 1992 2002 2012 1992:

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

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

Erstellung eines Frameworks für Shop Systeme im Internet auf Basis von Java

Erstellung eines Frameworks für Shop Systeme im Internet auf Basis von Java Erstellung eines Frameworks für Shop Systeme im Internet auf Basis von Java Präsentation zur Diplomarbeit von Übersicht Java 2 Enterprise Edition Java Servlets JavaServer Pages Enterprise JavaBeans Framework

Mehr

Javakurs 2013 Objektorientierung

Javakurs 2013 Objektorientierung Javakurs 2013 Objektorientierung Objektorientierte Programmierung I Armelle Vérité 7 März 2013 Technische Universität Berlin This work is licensed under the Creative Commons Attribution-ShareAlike 3.0

Mehr

Apache HBase. A BigTable Column Store on top of Hadoop

Apache HBase. A BigTable Column Store on top of Hadoop Apache HBase A BigTable Column Store on top of Hadoop Ich bin... Mitch Köhler Selbstständig seit 2010 Tätig als Softwareentwickler Softwarearchitekt Student an der OVGU seit Oktober 2011 Schwerpunkte Client/Server,

Mehr

DATA WAREHOUSE. Big Data Alfred Schlaucher, Oracle

DATA WAREHOUSE. Big Data Alfred Schlaucher, Oracle DATA WAREHOUSE Big Data Alfred Schlaucher, Oracle Scale up Unternehmensdaten zusammenfassen Noch mehr Informationen aus Unternehmens- Daten ziehen! Datenmengen, Performance und Kosten Daten als Geschäftsmodell

Mehr

SINT Rest App Documentation

SINT Rest App Documentation SINT Rest App Documentation Release 1.0 Florian Sachs September 04, 2015 Contents 1 Applikation 3 2 Rest Service 5 3 SOAP Service 7 4 Technologiestack 9 5 Deployment 11 6 Aufgabe 1: Google Webservice

Mehr

Wide column-stores für Architekten

Wide column-stores für Architekten Wide column-stores für Architekten Andreas Buckenhofer Daimler TSS GmbH Ulm Schlüsselworte Big Data, Hadoop, HBase, Cassandra, Use Cases, Row Key, Hash Table NoSQL Datenbanken In den letzten Jahren 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