Semester
Dozenten
Vorlesungstermin und -ort
Donnerstag 9:15-10:45, HS19
Vorlesungsbeginn
Thursday, 04.04.2019
Anmeldung
Die Anmeldung zur Vorlesung, Übung und Klausur erfolgt über AlmaWeb.
- Achtung: Sie müssen sich für das Modul und die Veranstaltungen (Vorlesung + Übung) anmelden.
- Bei Fragen und Problemen zur Anmeldung wenden Sie sich bitte immer an das Studienbüro via einschreibung [at] math.uni-leipzig.de (einschreibung(at)math.uni-leipzig.de)
Übersicht
NoSQL-Datenbanksysteme dienen der effiziente Verwaltung von teilweise sehr großen Mengen nicht-relationaler Daten. Die Vorlesung betrachtet Unterschiede zu klassischen relationalen Datenbanksystemen und gibt einen Überblick über verschiedene Kategorien von NoSQL-Systemen.
Erwartete Vorkenntnisse: DBS1
Literatur
- L. Wiese: Advanced data management, 2015 (E-Book aus Uni-Netz zugänglich)
- L. Perkins, Redmond, E. and Wilson, J. R.: Seven Databases in Seven Weeks, 2nd edition, 2018 (E-Book über UB zugänglich)
Yelp Dataset
Yelp in Neo4j
- Installation Neo4j
- Installation APOC (manuell oder mit Docker)
- Empfohlen: Arbeit mit reduziertem Datensatz
- Snapshot aus dem Jahr 2006 (Daten im AlmaWeb)
- Import über Cypher und APOC: Beispiel
- Anpassung der Befehle um zusätzlich die Beziehungen Business-City und City-State hinzuzufügen (siehe Folie 52 in Kapitel “Graphdatenbanken”)
- Entfernen der Nutzer ohne Namen:
MATCH (n:User) WHERE n.name is null OPTIONAL MATCH (n)-[r]-() DELETE n,r;
- Optional: Import des gesamten Datensatzes
- Download der Daten
- Datenvorverarbeitung: Verwendung der Skripte
lat_long_expansion.pyundjson_to_csv.py(AlmaWeb; siehe auch Quelle der Skripte)- Evtl. müssen Sie noch einige Python-Packete installieren (z.B. reverse_geocoder)
- Die über die Skripte erstellten CSV-Dateien befinden sich im Ordner
data.
- Import der CSV-Dateien über Skript
import.sh(AlmaWeb)- Öffnen Sie das Skript
import.shund passen Sie den Pfad hinter ‘export DATA=’ an. - Führen Sie das Skript aus.
- Öffnen Sie das Skript
- Anschließend muss die Konfiguration von Neo4j (
neo4j.conf) angepasst werden:dbms.active_database=yelp.db - (Neu)Start von Neo4j
- Anmerkung: In dieser Variante werden anstatt der Beziehung City-State die Beziehungen City-Area und Area-Country eingefügt. Die Cypher-Anfragen müssen dementsprechend angepasst werden.