MongoDB
 sql >> Datenbank >  >> NoSQL >> MongoDB

MongoDB-Tutorial für Anfänger (vollständiger Leitfaden) – Lernen Sie MongoDB in 15 Minuten

Eine aufsteigende Technologie, die den Fokus von Entwicklern auf sich zieht, nämlich MongoDB. MongoDB ist eine dokumentenorientierte Open-Source-Datenbank, die Daten in Form von Dokumenten speichert.

In diesem MongoDB-Tutorial für Anfänger lernen wir alles darüber, was MongoDB ist und wie es funktioniert, Voraussetzungen, Anwendungen, Vorteile, Einschränkungen usw., um MongoDB wie ein Experte zu lernen.

Freust du dich also auf das MongoDB-Tutorial für Anfänger?

Was ist MongoDB und wie funktioniert es?

MongoDB ist eine NoSQL-Datenbank (Not only Structured Query Language) Programm, das plattformübergreifend dokumentenorientiert ist. Es ist ein Open-Source-Datenbankverwaltungssystem, das verschiedene Datenformen unterstützt.

Es wurde Mitte der 2000er Jahre wegen seiner Verwendung in Big Data populär Anwendungen und auch für die Verarbeitung unstrukturierter Daten.

Die MongoDB-Architektur besteht aus Sammlungen und Dokumente. Es verwendet das BSON-Format für die Dokumentenspeicherung, das eine binäre Form von JSON-Dokumenten ist. Sein Server hat keine Ausfallzeit, wenn Sie die Schemas dynamisch ändern.

Das bedeutet, dass der Benutzer mehr Zeit hat, intensiver an den Daten zu arbeiten, anstatt Zeit mit der Vorbereitung der Daten für die Datenbank zu verschwenden.

Voraussetzungen für das Erlernen von MongoDB

Dieses MongoDB-Tutorial für Anfänger behandelt die Voraussetzungen, die Sie kennen sollten, bevor Sie mit dem Erlernen von MongoDB beginnen .

  • Kenntnisse einer beliebigen Programmiersprache.
  • Kenntnisse von JavaScript
  • Es ist hilfreich, JSON zu kennen
  • Einige Kenntnisse von RDBMS
  • Kenntnis eines Texteditors

MongoDB-Tutorial für Anfänger – Einführung

Einführung in die NoSQL-Datenbank

Viele von Ihnen haben vielleicht schon von NoSQL gehört, es ist eine Art Datenbank, die verwendet wird, um unstrukturierte Daten zu verwalten, d. h. die von verschiedenen Orten wie sozialen Medien, Banken, Aktienmärkten usw. stammen. Es enthält im Grunde keine Zeilen oder Spalten.

NoSQL spielt eine wichtige Rolle bei der Handhabung dieser riesigen Datenmenge, die sich sehr schnell ändert und wächst. Eine relationale Datenbank ist für den Umgang mit dieser Art von Daten, die sich ständig ändern, nicht geeignet.

Daher wird die NoSQL-Datenbank so konzipiert, dass sie alle Nachteile einer relationalen Datenbank im Kontext der heutigen Welt überwindet.

MongoDB vs. RDBMS

Im Folgenden sind einige der Punkte aufgeführt, die uns den Unterschied zwischen MongoDB und RDBMS aufzeigen .

  • RDBMS hat eine relationale Datenbank, aber MongoDB hat eine nicht-relationale Datenbank.
  • In RDBMS müssen wir die Tabelle entwerfen, dann können wir nur mit dem Codieren beginnen, aber in MongoDB können wir direkt mit dem Codieren beginnen.
  • RDBMS unterstützt die SQL-Sprache und MongoDB unterstützt sowohl SQL als auch die JSON-Abfragesprache.
  • RDBMS ist tabellenbasiert, während MongoDB schlüsselwertbasiert ist.
  • MongoDB ist dokumentenbasiert, während RDBMS zeilenbasiert ist.
  • RDBMS ist spaltenbasiert, während MongoDB feldbasiert ist.
  • RDBMS ist nicht so einfach einzurichten, aber MongoDB ist vergleichsweise einfach einzurichten.
  • MongoDB ist horizontal skalierbar, RDBMS hingegen ist vertikal skalierbar.
  • RDBMS verarbeitet die Daten sehr langsam im Vergleich zu den unstrukturierten Daten von MongoDB.
  • RDBMS betont die ACID-Eigenschaften (Atomizität, Konsistenz, Isolierung, Haltbarkeit). Andererseits betont MongoDB das CAP-Theorem (Consistency, Availability, Partition Tolerance).

MongoDB-Tutorial für Anfänger – MongoDB VS RDBMS

Warum wird MongoDB verwendet?

MongoDB hat viele Funktionen mit sich selbst, da es mit NoSQL-Daten umgeht, die heutzutage in TBs innerhalb von Sekundenbruchteilen generiert werden. Um diese große Datenmenge zu bewältigen und auch einige nützliche Informationen daraus zu gewinnen, verwenden wir MongoDB.

  • Abfragen
  • Indizierung
  • Lastungleichgewicht
  • Umgang mit mehreren Servern
  • Dateispeichersystem
  • Aggregation
  • Hochleistung

i. Abfragen

Es unterstützt Bereichsabfragen, reguläre Ausdrücke und viele weitere Suchtypen für Abfragen. MongoDB unterstützt Ad-hoc- und dokumentbasierte Abfragen.

Abfragen enthalten benutzerdefinierte JavaScript-Funktionen und können auch bestimmte Arten von Daten aus dem Dokument zurückgeben. Es kann auch eine zufällige Stichprobe von Daten einer bestimmten angegebenen Größe zurückgeben.

ii. Indizierung

Felder im Dokument können indiziert werden entweder als primär oder sekundär. MongoDB ist auch in der Lage, die Replikation in Daten zu handhaben und zu handhaben. Wie wir wissen, enthalten Replikatsätze dieselben Daten mit mehr als einer Kopie von sich selbst.

Jedes Replikat versucht, sich entweder in den primären oder den sekundären Index einzufügen. Im Allgemeinen erfolgt die gesamte Lese- und Schreibverarbeitung der Daten mithilfe des Primärindexes, aber manchmal kann es vorkommen, dass der Primärindex des Replikats aus irgendeinem Grund fehlschlägt.

Zu diesem Zeitpunkt geht der Replikatsatz also in einen Wahlprozess dahingehend, welcher Sekundärindex des Replikats ausgewählt werden sollte, um für die weitere Verarbeitung durch entweder Lese- oder Schreiboperationen zu gehen. Meistens wird der sekundäre für einen Schreibvorgang und selten für einen Lesevorgang verwendet.

iii. Lastungleichgewicht

Mithilfe von Sharding skaliert MongoDB horizontal. Der Benutzer hat die Möglichkeit, einen gemeinsamen Schlüssel zu wählen, mit dessen Hilfe er bestimmen kann, wie die Daten in einer Sammlung verteilt werden.

Hier werden die Daten basierend auf dem Shard-Schlüssel in Bereiche aufgeteilt und dann auf mehrere Shards verteilt. Hier fungiert der Shard als Master mit einem oder mehreren Slaves mit sich selbst. Dies kann auch mit Hilfe von Hashing erfolgen, was zu einer gleichmäßigen Verteilung der Daten führt.

iv. Umgang mit mehreren Servern

MongoDB kann auf mehreren Servern gleichzeitig ausgeführt werden, während es die doppelten Daten verarbeitet und auch eine Datenlast ausgleicht, selbst in Fällen, in denen die Möglichkeit eines Hardwareausfalls besteht.

v. Dateispeichersystem

Dieser Mechanismus, bei dem die Daten gespeichert werden, während die Last gehandhabt wird, und auch auf Replikation derselben Daten an mehreren Standorten geprüft wird, wird als GridFS (Grid File System) bezeichnet . Diese Funktion wird mit den MongoDB-Treibern hinzugefügt.

Auf GridFS kann mit Hilfe des Mongofiles-Dienstprogramms oder verschiedener Arten von Plugins zugegriffen werden. GridFS zerlegt die Datei in kleinere Teile und speichert jeden Teil als separates Dokument.

vi. Aggregation

Es gibt drei verschiedene Möglichkeiten, eine Aggregation durchzuführen, und zwar wie folgt:

  • Aggregationspipeline
  • Map-Reduce-Funktion
  • Einzelzweck-Aggregationsmethoden.

In der Aggregationspipeline verwenden sie Pipelining, damit der Prozessor keinen idealen Zustand hat und außerdem jeder Prozess mit der Ausgabe des früheren Prozesses in der Pipeline in Beziehung steht.

Map-Reduce kann auch zur Stapelverarbeitung von Daten und Aggregationsvorgängen verwendet werden. Dies kann aber mit Hilfe der Aggregation Pipeline gut gehandhabt werden.

vii. Hohe Leistung

Hier benötigen die Ein-/Ausgabeoperationen im Vergleich zur relationalen Datenbank weniger Zeit zur Ausführung. Auch Abfragen werden im Vergleich zur relationalen Datenbank schnell ausgeführt.

Vorteile von MongoDB

Hier sind einige der Vorteile von MongoDB:

  • Sehr einfach zu installieren und einzurichten MongoDB.
  • Es ist eine schemalose Datenbank.
  • Sehr einfach zu skalieren.
  • Da es sich um eine NoSQL-Datenbank handelt, ist sie vor jeder Art von SQL-Injection geschützt.
  • Keine Notwendigkeit, Anwendungsobjekte Datenobjekten zuzuordnen.
  • Es kann als Dateispeichersystem verwendet werden.
  • Es unterstützt auch die Suche nach Regex und Feldern.
  • Ableitbare Dokumentation ist verfügbar.

Nachteile von MongoDB

Wie wir alle wissen, hat eine Münze zwei Seiten. Bei so erstaunlichen Vorteilen gibt es bei MongoDB einige Nachteile. Sie lauten wie folgt:

  • Die Transaktion wird nicht unterstützt
  • MongoDB unterstützt keine Joins.
  • RAM-Beschränkung.

In MongoDB verwendete allgemeine Terminologien

Dieses MongoDB-Tutorial für Anfänger deckt fast alle Themen ab, die zum Lernen von Anfängern beitragen. Hier werden wir einige der am häufigsten verwendeten Terminologien in MongoDB besprechen.

MongoDB-Tutorial für Anfänger – Terminologien

i. Dokument

Dies ist die grundlegende Einheit zum Speichern von Informationen hier drüben. Es ist eine geordnete Menge eines Schlüssel-Wert-Paares, wobei für jeden Schlüssel ein zugehöriger Wert existiert.

z.B. {„Erster“:„Hallo, Welt!“}

Wo das Erste der Schlüssel ist und Hallo, die Welt der Wert ist.

ii. Sammlung

Es ist eine Gruppe von Dokumenten. In Bezug auf RDBMS ist es eine Tabelle, die Zeilen enthält.

iii. Datumsoperator

Wir können es verwenden, um das Datum zu sehen. Der Befehl, den wir zum Schreiben des Datums verwenden, lautet wie folgt:

  • Datum() – gibt das aktuelle Datum als String zurück.
  • Neues Datum() – gibt das aktuelle Datum als Datenobjekt zurück.

iv. Befehl löschen

Wir können damit alles aus MongoDB löschen. Ein Befehl dafür lautet wie folgt:

  • collection.remove() – Löscht ein einzelnes Dokument, das einem Filter entspricht.
  • db.collection.deletemany() – Löscht alle angegebenen Dokumente, die dem Filter entsprechen.

MongoDB-Editionen

MongoDB hat zwei Arten von Editionen und sie sind wie folgt:

  • Community-Server – ist völlig kostenlos und wir können es auch für Windows, Linux und OS X verwenden.
  • Enterprise-Server ist die kommerzielle Edition von MongoDB, die mit dem MongoDB Enterprise Advanced-Abonnement verfügbar ist.

Wo und wer verwendet MongoDB?

Wir können MongoDB für große Projekte verwenden, bei denen sich Daten dynamisch ändern. Alle modernen Anwendungen erfordern Big-Data-Verarbeitung, schnelle Funktionsentwicklung, einfachen Zugriff und viele weitere Funktionen, die von MongoDB bereitgestellt werden. Hier sind einige Bereiche, in denen MongoDB unübertroffen ist:

  • Große Daten
  • Daten-Hub
  • Mobile und soziale Infrastruktur
  • Benutzerdatenverwaltung

Es gibt viele große Organisationen, die die MongoDB-Datenbank für ihre Geschäftsanwendungen verwenden, und sie sind wie folgt:

  • Adobe
  • LinkedIn
  • SAP
  • eBay
  • McAfee usw.

Zukünftiger Umfang von MongoDB

Die Zukunft von MongoDB ist sehr rosig. Wir sollten MongoDB nicht zu einem Data Warehouse werden lassen, sondern wir sollten es stärken, indem wir die betrieblichen Apps erweitern, die nativ auf der Plattform zur weiteren Verwendung verbleiben würden.

Es kann auch für Hadoop und Big Data verwendet werden Zweck der sehr schnellen Verarbeitung der Daten. Dies wird uns helfen, nützliche Informationen in sehr kurzer Zeit zu erhalten. Dies wird dazu führen, dass viele weitere Anwendungen entstehen, die den Menschen helfen, Zeit und Geld zu sparen.

Hier drehte sich also alles um das MongoDB-Tutorial für Anfänger. Ich hoffe, Ihnen gefällt unsere Erklärung.

Zusammenfassung des MongoDB-Tutorials für Anfänger

Daher in dieser MongoDB Tutorial für Anfänger haben wir erfahren, wofür MongoDB verwendet wird, einige damit verbundene Funktionen, Vor- und Nachteile von MongoDB und die verschiedenen Editionen von MongoDB, die Benutzer verwenden können. Fangen Sie also an, MongoDB zu lernen, und geben Sie Ihrer Karriere einen Kickstart.

Darüber hinaus können Sie sich bei Fragen oder Zweifeln gerne an uns wenden!