10 Petabyte und mehr

Beim CERN ergänzt MongoDB relationale Datenbanken

Seite: 2/3

Anbieter zum Thema

Warum MongoDB?

DAS CERN und viele weitere angeschlossenen Forscher sind dem Urknall auf der Spur.
DAS CERN und viele weitere angeschlossenen Forscher sind dem Urknall auf der Spur.
(Bild: CERN)
Das DAS ergänzt die existierenden Datenquellen um eine zusätzliche Datenschicht, die es den Forschern erlaubt, Daten mittels einer freitextbasierten Suche abzufragen. Dort lassen sich die Ergebnisse aus diversen Datenquellen aggregieren und in einem einheitlichen Format zur Verfügung stellen, wobei alle Auflagen in puncto Integrität, Sicherheit und Form eingehalten werden.

Valentin Kuznetsov, wissenschaftlicher Mitarbeiter der Cornell Universität und tätig am CMS, erklärt die Anforderungen des CERN an die Datenbank: „Verschiedene Gründe sprachen gegen eine relationale Datenbank. Beispielsweise benötigen wir im DAS keine persistente Speicherung von Daten und Transaktionen und somit kein vorgegebenes Datenbankschema. Darüber hinaus war das dynamische Abfragen der gespeicherten Meta-Daten-Objekte eines unserer zentralen Anliegen. Wir haben uns deshalb alternative IT-Lösungen näher angeschaut.“

Verschiedene Optionen kamen dabei in Frage, angefangen von dateibasierten und In-Memory-Datenbanken bis hin zu Key-Value-Lösungen. „Letztlich haben wir uns für eine dokumentenorientierte Datenbank entschieden, da sie unsere Anforderungen am besten abbildet. Nachdem wir einige Datenbankanwendungen gründlich auf die Probe gestellt hatten, entschieden wir uns für MongoDB“, sagt Kuznetsov. Ausschlaggebend sei dabei gewesen, dass die Lösung sowohl dynamische Abfragen, umfassende Indizierungs-Möglichkeiten und verschachtelte Objektstrukturen unterstütze, als auch eingebettete Arrays und automatische Partitionierung.

Freitext-Abfragen und Diagnostik

Alle Abfragen über das DAS können in freier Textform erfolgen, entweder über verschiedene Schlagworte oder durch Schlüsselwert-Paare, die jeweils eine Bedingung darstellen. Anwender können Abfragen auf dem System über eine einfache, SQL-ähnliche Sprache starten, die dann in die MongoDB-Syntax im Datenformat JSON überführt werden.

„Da das zugrundeliegende MongoDB Backend schemafrei ist, waren wir in der Lage, die Daten des DAS in jeder denkbaren Struktur zu speichern, egal ob es sich etwa um Dictionarys, Listen und Schlüsselwort-Paare handelt. Jedem DAS-Schlüssel haben wir demnach eine Reihe von Attributen in der entsprechenden JSON-Struktur zugeordnet“, erläutert Kuznetsov.

Ergänzendes zum Thema
Die IT-Umgebung von MongoDB
  • Das CMS DAS läuft auf einem Acht-Core-Server, der alle Abfragen verarbeitet und die aggregierten Daten zwischenspeichert
  • Das Betriebssystem: Scientific Linux
  • Die Server-Hardware-Konfiguration: 8-core CPU, 40 GB RAM, 1 TB Speicher (aber Dateivolumen meist bei rund 50-100 GB)
  • Sharding: noch nicht im Einsatz, wird jedoch in Erwägung gezogen
  • Anwendungssprache: Python
  • Andere Datenbanktechnologien: Aggregiert Informationen aus verschiedenen Datenbanken, darunter Oracle, PostGreSQL, CouchDB and MySQL

Angesichts der Vielzahl von Datenquellen, Datentypen und Ressourcen mit denen sich DAS verbindet, ist es unentbehrlich, dass das System selbst datenagnostisch ist, sprich: die Daten ohne Ansehen des Inhalts speichert. Es erlaubt, Informationen zu den Meta-Daten individuell abzufragen und zu aggregieren. Die MongoDB-Architektur lässt sich leicht mit den bestehenden Datenservices integrieren ohne dabei Zugriffsmöglichkeiten oder bestehende Sicherheitsauflagen zu beeinträchtigen beziehungsweise Entwicklungszyklen auszubremsen.

(ID:37207450)