Oracle Database API for MongoDB jetzt allgemein verfügbar

Artikel auf LinkedIn, Twitter, XING und Facebookgerne liken und teilen !


Oracle Database API for MongoDB
Oracle Database API for MongoDB

Am 10. Februar 2022 wurde die all­gemeine Verfüg­barkeit (General Avail­ability) der Oracle Database API for MongoDB verkündet.

Durch dieses besonders interessante Feature ist es möglich, bestehende Applikationen und Tools, die MongoDB nutzen, quasi ohne Änderung die Oracle Autonomous Database und die damit verbundenen Vorteile nutzen zu können (siehe unten, da gibt’s auch ein Hands-On-Video).


Dokumentenorientierte NoSQL-Datenbanken

Es gibt nicht nur relationale Datenbanken, die i.d.R. mit SQL abgefragt und manipuliert werden. Für manche Anwendungsfälle haben sich sog. NoSQL-Datenbanken etabliert (Not only SQL, andere Datenbank-Arten als typische SQL-Datenbanken). Beispiele hierfür sind Graphdatenbanken, Key-Value-Datenbanken oder dokumentorientierte Datenbanken.

Im Bereich der dokumentorientierten Datenbanken, bei denen Daten bzw. Dokumente oftmals im beliebten JSON-Format (JavaScript Object Notation) gespeichert werden, ist laut DB-Engines das System MongoDB hinsichtlich der Popularität deutlich vorne und hat auch seinen Platz in Standard-Architekturen, wie z.B. dem MEAN-Stack (MongoDB, Express, Angular, and Node). MongoDB als Unternehmen ist übrigens börsennotiert und hat eine Marktkapitalisierung von aktuell rund 28 Mrd. USD.

In MongoDB werden die Daten in Collections gespeichert (entspricht in der relationalen Welt den Tabellen), die wiederum eine Menge von JSON-Dokumenten enthalten (entspricht in der relationalen Welt den Zeilen). Der wesentliche Unterschied zur relationalen Welt ist, dass die einzelnen Dokumente (aka Zeilen in der relationalen Welt) nicht die gleiche Menge von Attributen (aka Spalten in der relationalen Welt) enthalten müssen, was eine gewisse Flexibilität schafft.

Die Oracle Database API for MongoDB

Aufgrund der Beliebtheit des dokumentenorientierten Ansatzes bietet Oracle schon seit Oracle 12c die Möglichkeit, mit speziellen SQL/JSON-Funktionen auf JSON-Dokumente zuzugreifen, diese zu indizieren und zu ändern u.v.m. Seit der Version 21c der Oracle Database gibt es sogar einen speziellen JSON Datentyp in einem optimierten nativ binären Speicherformat für mehr Abfrage- und Änderungs-Performance.

Seit dem 10. Februar 2022 ist nun zusätzlich auch die Oracle Database API for MongoDB allgemein verfügbar. Diese Schnittstelle ermöglicht es, mit der identischen Schnittstelle auf die Oracle Datenbank zuzugreifen, wie man auch auf eine MongoDB zugreift. Somit können Applikationen und Tools für MongoDB i.d.R. unverändert für den Zugriff auf die Oracle Datenbank genutzt werden (siehe auch Video unten).

Oracle Database API for MongoDB
Oracle Database API for MongoDB

Vorteile der Nutzung der Oracle Database API for MongoDB

Der wesentliche Vorteil der Speicherung der JSON-Daten in Oracle unter Nutzung der MongoDB API ist, dass man seine Unternehmensdaten nicht in mehreren Datenbank-Produkten verteilt hat.

Außerdem kann man alle Möglichkeiten und Features nutzen, die die Oracle Database bietet, die laut DB-Engines das weltweit führende DBMS ist:

  • Abfragen über SQL sowie Analytics- und Reporting-Funktionalitäten
  • Verknüpfung mit relationalen Daten, geobasierten Daten (Spatial Data) und Graphdaten
  • Nutzung der AI/ML-Features (Künstliche Intelligenz und Machine Learning)
  • Nutzung der Sicherheits-, Verfügbarkeits- und Backup-Features
  • uvm.

Damit wird auch das Konzept einer zentralen, sicheren und flexiblen Multi-Modell-Datenplattform im Unternehmen unterstützt – im Gegensatz zu der Idee, dass für jede Art von Daten eine eigene separate Datenhaltung betrieben wird.

Der Multi-Modell-Ansatz von Oracle
Der Multi-Modell-Ansatz von Oracle

Ein kleiner Hands-On-Test mit Video

Natürlich wollte ich die API auch mal selbst testen … da 2 Instanzen der Oracle Autonomous Database in den Always Free Services der Oracle Cloud enthalten sind, ist das kostenfrei möglich.

Um ein einigermaßen realistisches Szenario zu haben, habe ich als Grundlage für den Test einfach mal ein fertiges Programm genommen. Es handelt sich um einen kleinen Demo-Web-Shop auf Node-Basis, der zuerst mit MongoDB Atlas und dann mit der Oracle Autonomous Database als Datenquelle gestartet wird.

Im Video unten werden basierend darauf folgende Schritte gezeigt:

  1. Import der Grunddaten mit einem Node.js-Tool in MongoDB Atlas (Cloud-Version von MongoDB)
  2. Start des Webshops mit Zugriff auf MongoDB Atlas
  3. Bearbeitung der Daten mit Compass (DB-Tool von MongoDB)
  4. Änderung des Connection-String von MongoDB Atlas auf die Oracle DB in der Oracle Cloud
  5. Import der Grunddaten mit dem gleichen Tool wie in 1 in die Oracle DB
  6. Bearbeitung der Daten in der Oracle DB mit Compass (DB-Tool von MongoDB)
  7. Bearbeitung der Daten in der Oracle DB mit Oracle Database Actions (JSON)
  8. Bearbeitung der Daten in der Oracle DB mit Oracle Database Actions (SQL)

Die API ist ein cooles Feature und hat in diesem einfachen Szenario reibungslos funktioniertin komplexeren Szenarios muss man natürlich den ein oder anderen kleineren Punkt beachten.

Weitere Informationen gibt es in den o.g. Links, im Video unten, im Hintergrund-Interview mit Gerald Venzl, im umfangreichen Demo-Video zur Preview-Version oder in diesem Blogbeitrag zur Oracle Database API for MongoDB

Oliver Höß

P.S.: Die MongoDB API ist auch ein Thema auf der Oracle Database World 2022.


Um keine News mehr zu verpassen, am Besten dem Blog per Mail folgen (siehe unten) oder den Newsletter abonnieren.




Blog via E-Mail abonnieren

Gib deine E-Mail-Adresse an, um diesen Blog zu abonnieren und Benachrichtigungen über neue Beiträge via E-Mail zu erhalten.

Kommentar verfassen

Diese Website verwendet Akismet, um Spam zu reduzieren. Erfahre mehr darüber, wie deine Kommentardaten verarbeitet werden.