JL Staud – Datenbanken und Datenbanksysteme Datenmodellierung, Datenbankeinrichtung, Datenbanktheorie, Datenbankpraxis

17/09/2018

WIF7

Filed under: - HAW LH WS18/19 DBS,Themen — admin @ 08:01

Prof. Dr. Josef L. Staud, WS18/19

Seminar WIF7 – „Neue Entwicklungen im Datenbankgeschehen – NoSQL usw.“

Dieser Text enthät eine Themenliste mit Erläuterungen zum Seminar WIF7 – „Neue Entwicklungen im Datenbankgeschehen – NoSQL usw.“

1      Einführung

1.1      Um was geht’s?

Die Datenbankpraxis und mit ihr die Datenbanktheorie haben in den letzten 20 Jahren eine gewaltige Entwicklung genommen. Die klassischen Theorien (relational, objektorientiert) sind ergänzt worden um weitere, die der Vielfalt, Dynamik und Größe der Datenbestände, die inzwischen anfallen (im Internet und anderswo), gewachsen sind.

In diesem Seminar arbeiten wir uns in die Thematik ein, indem wir

  • die methodischen Grundlagen und
  • die verschiedenen Typen von Datenbanken / Datenbanksystemen

dieser neuen Datenbank- und Datenbanksystemtypen kennenlernen.

Konkret wird in jedem Vortrag ein Datenbanksystem vorgestellt.

In Kapitel 3 von:

Staud, Josef L.: Relationale Datenbanken. Grundlagen, Modellierung, Speicherung, Alternativen. Vilshofen 2015.

findet sich eine (sehr) kurze Beschreibung der NoSQL-Thematik. Siehe auch: www.staud.info/dbs/index.htm.

1.2      Zu bearbeitende Fragen

Für alle betrachteten Datenbanken/Datenbanksysteme sollen folgende Fragen beantwortet werden:

  • Welche Datentypen/Datenstrukturen werden unterstützt?
  • Gibt es ein Datenmodell? Falls ja: wie sieht es aus? Schemafreiheit?
  • Anwendungsgebiete, typisches Einsatzszenario
  • Wie werden sie aufgesetzt und skaliert?
  • Replikation und Skalierung?
  • Vor- und Nachteile
  • „Verteilt oder nicht“?
  • Wie werden die CRUD-Operationen (Create, Read, Update, Delete) realisiert? Welche Abfragesprachen liegen vor/werden empfohlen?
  • Liegt Skalierbarkeit vor? Falls ja: vertikal? horizontal?

Insgesamt: Durch welche Strukturen und Anforderungen in den Datenbeständen wurde das jeweilige Datenbanksystem motiviert?

Bei InMemory- und XML-Datenbanken wurde der Fragenkatalog spezifiziert (vgl. unten).

1.3      Theoretische Grundlagen

Die Welt der „Neuen Datenbanktechnologien“ benötigt „neue“ theoretische Grundlagen, die v.a. aus der Notwendigkeit herrühren, Datenbanken in weltweit vernetzten Systemen zu realisieren:

  • Map/Reduce
  • CAP-Theorem
  • Consistent hashing
  • MVCC-Protokoll
  • Vector Clocks
  • Paxos
  • REST, REST-API
  • Spaltenorientierte Datenbanken

Falls eines dieser Themen bei dem von Ihnen gewählten Thema eine Rolle spielt, erläutern Sie es bitte. Es macht auch nichts, wenn ein Thema in mehreren Vorträgen, evtl. mit anderen Beispielen, vorkommt.

Diese theoretischen Grundlagen sind ausführlich und anschaulich dargestellt in [Edlich, Friedland, Hampe u.a. 2011], teilweise und kurz gefasst in [Perkins, Redmond und Wilson 2018a] und auch in den Büchern zu den einzelnen Systemen.

2      NoSQL Datenbanken / Datenbanksysteme

Die folgenden Datenbanken/Datenbanksysteme können in den Vorträgen vorgestellt werden. Die angegebenen Literaturhinweise stellen Einstiegspunkte dar. Ein Literaturverzeichnis findet sich in Kapitel 3.

2.1      HBase

Wide Column Store Wide Column Store

Angesiedelt im „Hadoop ecosystem“, wie es [Perkins, Redmond und Wilson 2018a, S. 55] formulieren.

Ausgangspunkt: [Edlich, Friedland, Hampe u.a. 2011], [Perkins, Redmond und Wilson 2018a], [Wolff, Hunger, Spichale und George 2013]

2.2      MongoDB

Dokumentendatenbank mit BSON

Ausgangspunkt: [Edlich, Friedland, Hampe u.a. 2011], [Perkins, Redmond und Wilson 2018a], [Wolff, Nitschinger und Trelle 2014]

2.3      Neo4J

(Eingebettete) Graphdatenbank

Ausgangspunkt: [Edlich, Friedland, Hampe u.a. 2011], [Perkins, Redmond und Wilson 2018a], [Wolff, Hunger, Spichale und George 2013]

2.4      CouchDB

Dokumentendatenbank mit JSON

Ausgangspunkt: [Edlich, Friedland, Hampe u.a. 2011], [Perkins, Redmond und Wilson 2018a]

2.5      DynamoDB

Ausgangspunkt: [Perkins, Redmond und Wilson 2018a]

2.6      DEX

Graphdatenbank

Ausgangspunkt: [Edlich, Friedland, Hampe u.a. 2011]

2.7      Cassandra

Wide Column Store

Ausgangspunkt: [Edlich, Friedland, Hampe u.a. 2011], [Wolff, Hunger, Spichale und George 2013]

2.8      Chordless

Key/Value-System

Ausgangspunkt: [Edlich, Friedland, Hampe u.a. 2011]

2.9      Riak

Key/Value-Systeme „mit starken Document-store-Eigenschaften (JSON)“ [Edlich, Friedland, Hampe u.a. 2011, S. 179]

Ausgangspunkt: [Edlich, Friedland, Hampe u.a. 2011], [Wolff, Nitschinger und Trelle 2014]

2.10   Membase

Key/Value-System

Ausgangspunkt: [Edlich, Friedland, Hampe u.a. 2011]

2.11   AllegroGraph

Graphatenbank

Ausgangspunkt: [Edlich, Friedland, Hampe u.a. 2011]

2.12   HyperGraphDB

Gaphdatenbank

Ausgangspunkt: [Edlich, Friedland, Hampe u.a. 2011]

2.13   OrientDB

Multimodel-Datenbank

Ausgangspunkt: [Edlich, Friedland, Hampe u.a. 2011]

2.14   AmazonSimpleDB

Wide Column Store e

Ausgangspunkt: [Edlich, Friedland, Hampe u.a. 2011]

2.15   Redis

Key/Value-System ep

Ausgangspunkt: [Edlich, Friedland, Hampe u.a. 2011], [Perkins, Redmond und Wilson 2018a]

2.16   InMemory-Datenbanken

Einige der in 1.2 angeführten Fragen haben hier keine Bedeutung, da es sich hier um (typischerweise) relationale Datenbanken handelt (evtl. aber spaöltenorientiert). Hier können aber betrachtet werden:

  • Bedeutung der Spaltenorientierung?
  • Anwendungsgebiete, typisches Einsatzszenario. Notwendigkeit?
  • Technische Realisierung?
  • Vor- und Nachteile

Insgesamt: Durch welche Strukturen und Anforderungen in den Datenbeständen wurde dieser Datenbankansatz und seine prktische Umsetzung motiviert?

Ausgangspunkt: [Plattner und Zeier 2011]. [Plattner 2013]

2.17   XML und Datenbanken

XML ist mit Sicherheit im Studium thematisiert worden. Hier geht es darum, den Zusammenhang zwischen XML und Datenbanktechniken vorzustellen. Folgende Themen können betrachtet werden:

  • Warum XML
  • Warum XML-Datenbanken und -Datenbanksysteme
  • Was ist ein XML-Dokument? Verwaltete Informationen? Datenstruktur? XML-Schema?
  • Abfrage? Auswertung? (Xpath/Xquery)
  • XML-Datenbanken? Beispiel? Evtl. BaseX [Gruppe 2018, Position 9490]

Ausgangspunkt: [Schöning 2003] [Grupe 2018]

3      Literatur

Die besonders wichtigen und umfassenden Buchtitel wurden fett gesetzt.

Edlich, Friedland, Hampe u.a. 2011
Edlich, Stefan; Friedland, Achim; Hampe, Jens; Brauer, Benjamin und Brückner, Markus: NoSQL. Einstieg in die Welt nichtrelationaler Web 2.0 Datenbanken (2. Auflage). München 2011 (Hanser)

Fondermann, Spichale und George 2012
Fondermann, Bernd; Spichale, Kai und George, Lars: BigData. Apache Hadoop. E-Book 2014 (entwickler.press)

Gull 2012
Gull, Clemens: Web-Applikationen entwickeln mit NoSQL. Haar 2012 (Franzis)

Grupe 2018
Grupe, Wilfried: XML: Grundlagen, Technologien, Validierung, Auswertung. Frechen 2018

Gumm und Sommer 2011
Gumm, Heinz-Peter; Sommer, Manfred: Einführung in die Informatik (9. Auflage). München und Wien 2011

Harrison 2015
Harrison, Guy: Next Generation Databases. NoSQL, NewSQL, and BigData, New York 2016 (E-Book)

Kastens und Büning 2008
Kastens, Uwe und Büning, Hans Kleine Büning: Modellierung. Grundlagen und formale Methoden (2. Auflage). Bonn 2008 (Hanser)

Kurowski 2012
Kurowski, Oliver: NoSQL Einführung. CouchDB, MongoDB und Redis. E-Book 2012 (entwickler.press)

Mennerich und Arrasz 2015
Mennerich, Christian und Arrasz, Joachim: Eine Reise durch die Welt von NoSQL. E-Book 2015 (entwickler.press)

O’Reilly 2012
O’Reilly: Big Data Now. 2012 Edition

Perkins, Redmond und Wilson 2018a
Perkins, Luc; Redmond, Eric; Wilson, Jim R.: Seven Databases in Seven Weeks. A Guide to Modern Databases and the NoSQL Movement (2. Auflage). Raleigh 2018

Perkins, Redmond und Wilson 2018b
Perkins, Luc; Redmond, Eric; Wilson, Jim R.: Seven Databases in Seven Weeks. A Guide to Modern Databases and the NoSQL Movement (2. Auflage). Raleigh 2018 (E-Book)

Plattner und Zeier 2011
Plattner, Hasso und Zeier, Alexander: In-Memory Data Management. An Inflection Point for Enterprise Applications. Berlin, Heidelberg 2011

Plattner 2013
Plattner, Hasso: Lehrbuch In-Memory Data Management. Wiesbaden 2013

Schöning 2003
Schöning, Harald: XML und Datenbanken. Konzepte und Systeme.München und Wien 2003

Schrempp 2012
Schremp, Mirko (Hrsg.): BigData – Technologiegrundlagen. E-Book 2012 (entwickler.press)

Trelle 2014
Trelle, Tobias: MongoDB. Der praktische Einstieg. Heidelberg 2014

Wartala 2012
Wartala, Ramon: Hadoop. Zuverlässige, verteilte und skalierbare Big-Data-Anwendungen. München 2012 (Open Source Press)

Welkenbach und Schmutz 2012
Welkenbach, Peter und Schmutz, Guido: Relationale, NoSQL- und NewSQL-Datenbanken. In [Schrempp 2012 (E-Book)]

Wolff, Hunger, Spichale und George 2013
Wolff, Eberhard; Hunger, Michael; Sichale, Kai und George, Lars : NoSQL-Überblick. Neo4j, Apache Cassandra und HBase. E-Book 2013 (entwickler.press) <<Gut zu lesen – prima für den Einstieg>>

Wolff, Nitschinger und Trelle 2014
Wolff, Eberhard; Nitschinger, Michael und Trelle, Tobias: NoSQL-Überblick. Couchbase, Riak, MongoDB. E-Book 2014 (entwickler.press)

 

[1]    Wolf-Rüdiger Hansen, Geschäftsführer des Verbandes Automatische Identifikation, Datenerfassung und Mobile Kommunikation e.V. (AIMD), zitiert nach [Lange 2013, S. 109].

Powered by WordPress