andreas-hubel.de   /     Datenbankstrukturen

Description

Datenbankstrukturen

Subtitle
Duration
00:55:50
Publishing date
2017-07-02 20:39
Link
https://andreas-hubel.de/datenbankstrukturen/
Deep link
https://andreas-hubel.de/datenbankstrukturen/#
Contributors
  Thomas
contributor  
  Andreas Hubel
author  
  Andi
contributor  
Enclosures
https://andreas-hubel.de/podlove/file/33/s/feed/c/mp3/datenbankstrukturen.mp3
audio/mpeg

Shownotes

In Mikrowelle 51 wurde fälschlicherweise behauptet “unter Wikidata liegt RDF” – was folgenden Tweet meinerseits auslöste:

@thomersch Ich glaube du hast das mit dem Semantic Web noch nicht so ganz [richtig] verstanden… Podcast-Idee: Wir unterhalten uns über das Thema.

Auf der FOSSGIS 2017 haben wir das Thema wieder aufgegriffen: Dabei wir zum Schluss gekommen sind, dass wir eigentlich noch ein paar Stufen vorher anfangen müssen, bevor sich erklären lässt was an dieser Aussage genau falsch ist.

TL;DR: Wikidata ist eine Sammlung aus versionierten JSON-Dokumenten, aus denen dann Graphen (RDF) in verschiedenen Geschmacksrichtungen generiert werden. Die JSON Dokumente liegen in Maria DB, die Graphen liegen als RDF in blazegraph und können dort mit der standardisierten Abfragesprache SparQL abgerufen werden.

Wer jetzt nur Bahnhof versteht, dem hilft unser Gespräch vielleicht weiter. Wir haben uns implizit dafür entschieden das Thema wie folgt anzugehen:

  • Relationale Datenbanken [00:07:45]
    • Tabellen: SQLite, MySQL bzw. MariaDB, Postgres
  • NoSQL [00:13:41]
    • Dokumente: Mongo DB, Couch DB
    • Spalten: Cassandra, DynamoDB
  • Mischformen bei Postgres: hstore, jsonb [00:25:02]
  • Graphen-Datenbanken: Neo4J, blazegraph [00:27:22]
  • Wikidata-Datenmodell [00:34:03]
  • RDF, SPARQL [00:40:04]
Andi
Thomas

Beispiele aus der Folge:

Abfragesprachen

  • SQL: SELECT m.*, h.* FROM modelle m, hersteller h WHERE m.sitzhoehe > 90
  • SPARQL (bei Wikidata): SELECT * WHERE { ?item wdt:P31 wd:Q146 . }

Mit RDF lassen sich Graphen aus Knoten und gerichteten Kanten abbilden. Eine solche Verbindung zwischen Start-Knoten, Kante und Ziel-Knoten wird als Triple bezeichnet. Oft bezeichnet man den Start-Knoten auch Subjekt, die Kante als Prädikat und den Ziel-Knoten als Objekt. RDF selbst definiert dabei noch nicht wie diese Informationen als Datei gespeichert werden – Das ist ein bisschen so wie das Verhältnis zwischen Unicode und UTF8 oder UTF16: Ersteres definiert einfach nur das Konzept und weißt jedem Zeichen eine Zahl zu, UTF8 definiert dann eine Darstellung dieser Zahl mit Standard-Länge 8bit, UTF16 eine Darstellung mit Standard-Länge 16bit. So gibt es bei RDF eine Darstellung in Text, XML, JSON oder welches Format sonst grade in Mode ist.

 

https://commons.wikimedia.org/wiki/File:Datamodel_in_Wikidata.svg

 

https://de.wikipedia.org/wiki/Datei:Ontschichten.gif

 

Links

Deeplinks to Chapters

00:00:00.000 Anfang
255
00:02:16.305 Use Case Beschreibung
255
00:07:45.954 Relationale Datenbanken/SQL
255
00:13:41.424 NoSQL Datenbanken
255
00:25:02.890 Mischformen: Postgres
255
00:27:22.319 Graphendatenbanken
255
255
00:34:03.646 Wikidata ist wie Openstreetmap: Es gibt nicht eine Datenbank auf der alles l¤Ãuft
255
00:40:04.597 RDF ist aber auch wie Unicode
255
00:41:06.170 Zusammenfassung
255
00:41:25.022 SparQL Endpoints
255
00:44:46.328 Ontologien
255
00:46:39.113 Zur¼Ãck zur Motorraddatenbank ;-)
255