AnkündigungWir stellen MongoDB 8.0 vor, das schnellste MongoDB aller Zeiten! Mehr erfahren >
AnkündigungVoyage AI und MongoDB unterstützen ab sofort gemeinsam genauere und vertrauenswürdigere KI-Anwendungen auf Atlas. Mehr erfahren >

C++ und MongoDB

C++ gilt als robuste, leistungsstarke Programmiersprache, die für ihre Effizienz, Vielseitigkeit und weit verbreitete Verwendung bekannt ist. Angesichts der Beliebtheit von MongoDB und C++ ist es nicht verwunderlich, dass sie gut zusammenarbeiten. Ganz gleich, ob Sie auf einer lokalen oder On-Premise-MongoDB-Installation entwickeln oder mit MongoDB Atlas Cloud-first gehen, der MongoDB C++-Treiber macht es zum Kinderspiel, MongoDB in Ihren Entwicklungsprozess zu integrieren.

Sie möchten wissen, welche Datenbank Sie für die von Ihnen entwickelte C++-Anwendung verwenden sollen? Lesen Sie diesen Leitfaden, um die nahtlose Integration von C++ mit MongoDB zu erkunden und die Stärken von C++ sowie die Flexibilität und Skalierbarkeit des Datenbanksystems von MongoDB zu nutzen.

Inhaltsverzeichnis

Warum MongoDB mit C++ verwenden?

MongoDB ist die beliebteste NoSQL-Datenbanktechnologie. Es handelt sich um eine Dokumentendatenbank, die zum Erstellen hochverfügbarer und skalierbarer Anwendungen verwendet wird. MongoDB wurde 2007 gegründet und erfreut sich in der Entwickler-Community weltweit großer Beliebtheit. MongoDB hat sich seit jeher darauf konzentriert, Entwicklern ein hervorragendes Benutzererlebnis zu bieten, was MongoDB, zusätzlich zu allen anderen Funktionen, zu einem Favoriten bei Entwicklern auf der ganzen Welt gemacht hat. C++-Entwickler können aus mehreren Gründen erheblich von der Verwendung von MongoDB profitieren:

  • Flexibles Schema: Im Gegensatz zu SQL ermöglicht das Dokumentmodell von MongoDB, dass verschiedene Dokumente in einer Collection unterschiedlich strukturierte Daten haben. Diese Flexibilität passt gut zur dynamischen Natur von C++ und kann die Produktivität steigern, indem Änderungen im Datenlayout ermöglicht werden, ohne das gesamte Datenmodell ändern zu müssen.
  • Leistung: MongoDB unterstützt für Sharding und Replikation und bietet so hohe Verfügbarkeit, horizontale Skalierung und geografische Verteilung. Dies macht es zur idealen Wahl für C++-Anwendungen, die Robustheit und hohe Leistung erfordern.
  • Skalierbarkeit: MongoDB ist für eine einfache horizontale Skalierung konzipiert, was auch das Hinzufügen weiterer Server zu Ihrer Anwendung ermöglicht. Im Gegensatz dazu sind SQL-Datenbanken in der Regel auf eine vertikale Skalierung (leistungsstärkeere Hardware) angewiesen, was zu Einschränkungen führen kann.
  • Benutzerfreundlichkeit: MongoDB bietet eine sehr einfache und intuitive API für CRUD-Operationen, die problemlos mit dem MongoDB C++-Treiber verwendet werden kann. JSON-ähnliche Dokumente, die in MongoDB verwendet werden, werden direkt auf Datentypen in C++ abgebildet, was eine natürliche Umgebung für die Datenbearbeitung bietet.

Wenn Sie etwas Neues aufbauen und eine Datenbank benötigen, sollten Sie von Anfang an in Erwägung ziehen, MongoDB Atlas zu nutzen. Atlas bietet Ihnen einen vollständig verwalteten, cloudnativen Datenbankdienst mit einer Reihe von Funktionen, darunter Volltextsuche, Vektorsuche, Diagramme, Partnerintegrationen und vieles mehr.

Wissenswertes: Die MongoDB -Datenbank ist in C++ geschrieben!

Erste Schritte mit MongoDB und C++

Um MongoDB mit Ihrer C++-Anwendung verwenden zu können, müssen Sie den MongoDB C++-Treiber installieren, der als Schnittstelle zwischen MongoDB und Ihrer C++-Anwendung fungiert. Der Treiber ist auch als mongocxx oder mongo-cxx-driver bekannt.

Für die Installation des MongoDB C++-Treibers stehen verschiedene Optionen zur Verfügung:

Weitere Informationen zu den oben genannten Methoden finden Sie in der ausführlichen Dokumentation auf der Installationsseite. Eine Schritt-für-Schritt-Anleitung zum Erstellen und Installieren von Quellcode unter Windows ist ebenfalls verfügbar. Wir haben auch ein 10-minütiges Videotutorial, das Ihnen den Einstieg erleichtert.

Sie können den MongoDB C++-Treiber mit der IDE Ihrer Wahl einrichten, z. B. Visual Studio, Visual Studio Code oder CLion. Die Installation des C++-Treibers enthält auch ein CMake-Konfigurationsdateipaket. Sie können also den Befehl find_package von CMake verwenden, um das CMake-Ziel des C++-Treibers zu importieren und einen Link zum C++-Treiber (als Shared Bibliothek) zu erstellen.

Erstellen Ihres ersten Atlas-Clusters

Sobald der C++-Treiber eingerichtet ist, benötigen Sie eine Datenbank.

Sie können ein Konto erstellen und einen kostenlosen Cluster auf MongoDB Atlas erstellen, indem Sie diesen Anleitungen folgen. Es zeigt Ihnen auch, wie Sie Beispieldaten einfügen.

Wir stellen eine Verbindung zu Ihrem Atlas Cluster her

Nach dem vorigen Abschnitt sollten Sie einen neuen MongoDB-Cluster in Atlas bereitgestellt, einen neuen Datenbankbenutzer und ein neues Passwort sowie einige Beispieldatensätze in Ihren Cluster geladen haben.

Jetzt ist es an der Zeit, mithilfe Ihres Treibers eine Verbindung zu einer Datenbank herzustellen. Um eine Datenbankverbindung herzustellen, benötigt Ihr Treiber Anweisungen zur Verbindung. Diese Anweisungen werden als Verbindungsstring bezeichnet. Sie können Ihre Verbindungszeichenfolge für den Cluster und den Benutzernamen, die Sie im vorherigen Schritt erstellt haben, abrufen, indem Sie in Ihrem Atlas-Konto zum Abschnitt „Datenbank“ navigieren und auf „Verbinden“ klicken.

Es wird ein Kontextfenster angezeigt, in dem Sie aufgefordert werden, Ihren Treiber und Ihre Version auszuwählen. Nachdem Sie beide Dropdown-Menüs ausgefüllt haben, können Sie den resultierenden Datenbankverbindungsstring (er beginnt mit mongdb+srv:// ) verwenden, um eine Verbindung zu Ihrem Cluster herzustellen. Beachten Sie, dass Sie die Werte für Ihren eigenen Benutzernamen und Ihr eigenes Passwort austauschen müssen!

Sie können diese MongoDB string verwenden, um Abfragen in Ihrem MongoDB cluster von Ihrer Anwendung aus auszuführen. Eine ausführlichere Anleitung zum Abrufen der Verbindungszeichenfolge finden Sie hier. Nachfolgend finden Sie Beispielcode zur Verbindung zum MongoDB Atlas-Cluster und zum Ausführen eines Ping -Befehls:

 

C++

 

Dokumente und Sammlungen

Anders als SQL-Datenbanken speichert MongoDB Informationen in Dokumenten und Sammlungen.

Dokumente

MongoDB speichert Datensätze als BSON-Dokumente. BSON ist eine binäre Darstellung von JSON-Dokumenten, enthält jedoch mehr Datentypen als JSON. Dokumente setzen sich aus Feld-Werte-Paaren zusammen, die folgende Struktur haben:

 

Python

 

Die mit Feldern verknüpften Werte können jeden BSON-Datentyp sein, einschließlich anderer Dokumente, Arrays und sogar Arrays von Dokumenten. Feldnamen selbst sind Strings.

Dokumente sind viel flexibler als Standardzeilen in relationalen Datenbanken, da sie Ihnen ein dynamisches Schema statt eines erzwungenen Schema zur Verfügung stellen (allerdings können Sie eine Schemavalidierung mit MongoDB durchführen, wenn Sie möchten).

Collections

MongoDB speichert Dokumente in Sammlungen. Eine Collection ist wie eine Tabelle in einer relationalen Datenbank. Weitere Informationen zum Erstellen einer Collection und andere Informationen zu Collections finden Sie in der Dokumentation hier.

CRUD-Operationen

CRUD-Operationen (Create, Read, Update und Delete) sind die vier grundlegenden Operationen, die Sie mit einer Datenbank durchführen sollten. Bei MongoDB können Sie CRUD-Operationen verwenden, um Dokumente einzufügen, Abfragen für passende Dokumente zu schreiben, Dokumente zu aktualisieren und Dokumente zu löschen. Sie können dies mit MQL, der MongoDB Abfragesprache, tun. Im Gegensatz zu SQL-Anweisungen verwendet MQL dieselbe Syntax wie Dokumente, was sie intuitiv und einfach zu bedienen auch für fortgeschrittene Abfragen macht.

Ein vollständiges Tutorial zu C++-Datenbanken sowie Beispielcode für jede der vier CRUD-Operationen unter Verwendung des C++-Treibers finden Sie im MongoDB Developer Center und in der Dokumentation.

Wie Sie Hilfe erhalten

Das Beste an der Nutzung von MongoDB ist die lebendige Community, zu der Benutzer aller Erfahrungsstufen mit dem C++-Treiber gehören. Der beste Weg, Unterstützung bei allgemeinen Fragen zu erhalten, ist die Nutzung der MongoDB Community Foren.

Wenn Sie einen unerwarteten Fehler erhalten, Sie glauben, einen Fehler im C++-Treiber gefunden zu haben oder eine Funktionsanfrage zu haben, öffnen Sie bitte ein JRA-Ticket im CXX-Projekt.

Tickets, die in JRA sowohl für den C++-Treiber als auch für den Core Server erstellt wurden, sind standardmäßig öffentlich.

Sie können Funktionsanfragen auch über MongoDB Feedback äußern und Unterstützung erhalten, indem Sie für die Idee „upstimmen“.

Ressourcen

FAQ

Erste Schritte mit MongoDB Atlas

Kostenlos testen