MongoDB NoSQL-Datenbank
Dieses Seminar führen wir im Moment nicht durch.
MongoDB ist eine hochperformante, schemafreie, dokumentenorientierte Open-Source-Datenbank und der wohl erfolgreichste Vertreter der NoSQL-Bewegung. Durch Lockerung der starren Regeln von SQL-Datenbanken, vereinfachte eine NoSQL-Datenbank Datenmodelle und Administration. Das MongoDB-Seminar gibt einen umgangreichen Einblick in die neuen Konzepte und Denkweisen der “humongous” (gigantischen) Datenbank. Neben administrativen Funktionen, wie Installation, Konfiguration, Monitoring und Backup, liegt der Fokus vor allem auf der Vermittlung von Datenstrukturen, Indexierung, schreibenden und lesenden Zugriffen, komplexen Abfragen sowie Anbindung an Programme. Am Ende der Weiterbildung ist jeder Teilnehmer in der Lage eine eigene Instanz von MongoDB einzurichten, zu betreiben, Datenmodelle zu erstellen und zu nutzen.
Inhalte des Seminars
Einstieg in MongoDB
- Einführung in die NoSQL-Bewegung
- Motivation für den Einsatz von NoSQL
- Abgrenzung zu relationalen und anderen NoSQL-Datenbanken
- Entstehungsgeschichte von MongoDB
- Lizenz, Support
- Anwendungsbeispiele
- Konsistenz, Transaktionen und ACID
- JSON als Datenformat
- CAP Theorem
MongoDB-Grundlagen
- Zugriff mit interaktiver Shell
- Dokumente und Dokumentensammlungen
- Datenformat und -typen in BSON
- Indexstrukturen: Hintergründe und Regeln
- Storage Engines
- Gemeinsamkeiten und Unterschiede von Memory Mapped Files und WiredTiger
Datenmodell und Indexierung
- Vor- und Nachteile von schemafreien Modellen
- MongoDBs Query-Sprache
- Das
_id
Feld - Index korrekt einsetzen und überprüfen
- Anlegen, lesen, aktualisieren und löschen von Dokumenten
- Punktnotation, aussparen von Feldern, atomare Operationen,
upsert
- Fallbeispiele und Übungen
Fortgeschrittene Abfragen
- Filtern und Sortieren
- Aggregation mit Map-Reduce
- Zusammenhang von Index und Abfrage
- Erstellung und Optimierung von Indizes
- Meta-Abfrageoperatoren:
comment
,maxScan
, etc.
Aggregation-Framework
- Aggregationen programmieren vs. deklarieren
- Pipeline-Konzept,
aggregate
-Kommando - Pipeline-Operatoren:
match
,limit
,unwind
,group
,project
,sort
- Gruppen-Aggregations-Funktionen
- Computed Fields und generierte Dateien
Programmanbindung an MongoDB
- Übersicht der Programmtreiber
- Vorstellung der Java-Anbindung
- Unterschiede zu SQL-Anbindungen
- Datenbankmigrationen
Installation und Administration
- Satus von mongod oder mongos mit
mongostat
prüfen - Speicherverbrauch von Verbindungen berechnen, überwachen, limitieren
- MongoDBs Datenbankdateien: Aufbau und Funktionsweise
- Journaling und Log-Dateien
- Administrationswerkzeuge
- Sicherheit und Authentifizierung
- Import / Export und Backup-Strategien
Performanz
- Abfrageanalyse via
explain
- Optimierungsstrategien
- Abfragespezialisierung via
hint
- Größenbeschränkte Dokumentensammlungen: Capped Collections und Tailable Cursor
- Time-To-Live (TTL) Collections
- Analyse mit MongoDBs Profiler
Skalierung
- Master-Slave-Replikation
- Replica-Sets
- Automatische horizontalen Fragmentierung (Sharding)
- Aggregation-Framework und Sharding
Weiterführende Themen
- Erfahrungen aus der Praxis
- Volltextsuche
- Zukünftige Entwicklungen
- Arbeiten mit Geoinformationen
- Verteiltes Dateisystem: GridFS
- Abgrenzung zu anderen Dokumenten-Datenbanken wie CouchDB, CouchBase, ElasticSearch
Termine / Kontakt
Jedes Seminar führt tutego als kundenangepasstes Inhouse-Seminar durch.
Alle unsere Seminare können zudem als Live-Online-Seminar besucht werden.
Wir helfen Ihnen gerne bei der Anmeldung und einen passenden Termin zu finden. Kontaktieren Sie uns per E-Mail oder unter 0800/tutegos (kostenlos aus allen Netzen).
Die Fakten
- Empfohlene Schulungsdauer: 3 Tage, insgesamt 24 Unterrichtsstunden à 45 Minuten
- Zielgruppe: Datenbankadministratoren, Software-Entwickler
- Vorkenntnisse: Erfahrungen mit einer SQL-Datenbank sind von Vorteil, aber nicht zwingend erforderlich.
- Seminar-Software: Standardmäßig basiert der Kurs auf der letzten Version von MongoDB, zurzeit MongoDB 7.0.