
Es spricht viel dafür, eine MongoDB-Datenbank in der Cloud zu betreiben. Sie können Server-Cluster schnell online stellen, und das gesamte Netzwerk wird verwaltet und ist sicher. Alle Ihre Benutzer können mit der Datenbank verbunden werden, und es gibt automatische Backups. Ein Dienst wie Atlas ist für diese Art von Aufgaben hervorragend geeignet. Aber es gibt Zeiten, in denen Sie Ihre eigene lokale MongoDB installieren möchten, und es gibt einige gute Gründe, dies zu tun. Hier sind also fünf davon:
1: Frei und ohne Grenzen
Viele Cloud-Datenbanken bieten Ihnen eine kostenlose Version an. Das kostenlose Tier ist in der Regel mit einigen Einschränkungen verbunden. Bei MongoDB Atlas zum Beispiel beginnen die Einschränkungen mit einer maximalen Speicherkapazität von 512 MB und umfassen eine Reihe von Einschränkungen, da die Datenbank auf einer gemeinsam genutzten Plattform läuft. Wenn Sie Ihre eigene MongoDB lokal installieren, sind Ihre einzigen Beschränkungen, wie viel Festplattenspeicher und RAM Sie für den Betrieb Ihrer Datenbank erübrigen können.
2: Sie müssen nicht online sein
Es mag offensichtlich erscheinen, aber eine Cloud-Datenbank bedeutet, dass Sie mit dem Internet verbunden sein müssen, um eine Verbindung herstellen zu können. Wenn Sie unterwegs sind oder an einem Ort mit eingeschränkter Internetverbindung arbeiten, kann dies ein Problem darstellen. Noch schlimmer ist es, wenn diese Verbindung auf einer Pay-as-you-go-Basis erfolgt und der Tarif hoch ist. Jede Abfrage und jedes Ergebnis wird Sie Geld kosten.
3: Keine Verzögerung
Wenn Sie mit einer Cloud-Datenbank arbeiten, spielt auch die Latenz des Internets eine Rolle, d. h. zusätzliche Millisekunden bei jeder einzelnen Abfrage, die Sie von einer Anwendung aus vornehmen. Während es schwer ist, diese Verzögerung in einer benutzergesteuerten GUI-Anwendung wie Studio 3T zu erkennen, wird diese Verzögerung immer vorhanden sein (es sei denn, 5G funktioniert so, wie sie es versprochen haben... nein, halten Sie nicht den Atem an).
4: So schnell wie Ihr lokaler Rechner
Die lokale Ausführung Ihrer Datenbank bedeutet, dass Ihre gesamte lokale CPU-Leistung für rechenintensive Aufgaben zur Verfügung steht. Gemeinsam genutzte Cloud-Datenbanken müssen von vornherein gute Nachbarn für andere Datenbanken sein, die auf denselben Hosts laufen. Es wird also vernünftige Grenzen geben. Oder Sie werden feststellen, dass die Leistung hin und wieder einbricht, wenn jemand anderes eine rechenintensive Aufgabe ausführt. Wenn Sie lokal arbeiten, konkurrieren nur Sie selbst um die Ressourcen.
5: Replikation frei
Sofern Sie nicht etwas wie Docker verwenden und lokal einen Mini-Cluster konfigurieren, wird Ihre lokale MongoDB eine einzelne Instanz von MongoDB sein. Das bedeutet, dass die Daten nicht auf eine andere Instanz von MongoDB repliziert werden müssen, um sie hochverfügbar zu machen. Und das wiederum bedeutet mehr Ressourcen, die Sie für Ihre Anwendungen nutzen können.
Für wen ist diese lokale MongoDB also gut?
- Alle Entwickler, die keine Verbindung zu den Produktionssystemen benötigen. (Studio 3T kann ihnen durch den Einsatz von Data Masking auch echte Testdaten zur Verfügung stellen)
- Jeder, der Daten auswerten möchte, die normalerweise produktionskritisch sind, ohne den Produktionsprozess zu beeinträchtigen. Studio 3T kann dabei helfen, diese Daten mithilfe seiner Exportfunktionen in die lokale Datenbank zu exportieren)
- oder wer eine Datenbank braucht, aber nicht im Internet ist
- und auch alle, die eine effektive kostenlose lokale Datenbank benötigen
Aber... die Argumente gegen lokale MongoDB
Natürlich gibt es auch hier Einschränkungen.
- Produktion - MongoDB wird immer ein Cluster von drei oder mehr Maschinen sein, auf denen MongoDB läuft. Der Betrieb einer eigenständigen lokalen MongoDB ist gut für die Leistung, aber das ist auch schon alles.
- Replikation, Latenz und andere Personen - wenn Sie auf einer eigenständigen MongoDB-Plattform entwickeln, sollten Sie nicht dieselbe Leistung erwarten, wenn Sie Ihre Anwendung in die Cloud verlagern. Der Produktionscluster wird eine Replikation durchführen, er wird entfernt sein und es wird Latenz geben, und wenn Sie auf einer gemeinsam genutzten Plattform in Produktion gehen, wird es andere Leute geben, die um Ressourcen konkurrieren. Das ist kein Grund, nicht lokal zu entwickeln, sondern eher ein Grund, um sicherzustellen, dass Sie in der Cloud testen, um zu gewährleisten, dass Sie nicht zu sehr auf die Leistungstaste gedrückt haben.
- Keine Sicherungskopien - Wenn Sie nicht gut organisiert sind und von Ihrem Laptop oder Desktop eine Sicherungskopie erstellen, gibt es wahrscheinlich keine Sicherungskopie für Ihre Datenbank. Wenn Sie Ihre Daten versehentlich beschädigen oder löschen, müssen Sie diese Daten wiederherstellen.
- Keine Funktionen wie Verschlüsselung im Ruhezustand und andere Unternehmensoptionen - Wenn Sie sich für die Community-Edition von MongoDB entscheiden, können Sie die verschiedenen Unternehmensfunktionen nicht nutzen, aber die meisten davon sind Betriebs- und Bereitstellungsfunktionen für große Bereitstellungen.
- Sicherheit - Sie sind für die Sicherheit auf Ihrem lokalen Rechner verantwortlich. Wenn Sie MongoDB jetzt installieren, bindet es sich nur an den localhost, aber Vorsicht! Wenn Sie sich an eine IP-Adresse binden, um anderen den Zugriff auf Ihre MongoDB zu ermöglichen, haben Sie ein Wespennest aufgerissen - Sie müssen sicherstellen, dass Sie Benutzer und Authentifizierung eingerichtet haben, um eingehende Verbindungen zu verwalten.
Endlich
Wenn Sie sich für ein lokales System entschieden haben, finden Sie in den folgenden Artikeln alle Einzelheiten zur Einrichtung des Systems:
- Wie man eine lokale MongoDB auf macOS installiert und mit Studio 3T verbindet
- Windows 11: So installieren Sie MongoDB mit Studio 3T
Dann sind Sie bereit, Daten zu importieren und mit Studio 3T MongoDB abzufragen, zu aggregieren und mehr daraus zu machen.
Dieser Artikel wurde ursprünglich von Dj Walker-Morgan geschrieben und im Blog von Studio 3T veröffentlicht.