Erfahren Sie, was MongoDB, Installationsanleitung und grundlegende Bedienung sind.
MongoDB NoSQL ist mehr denn je im Trend. Haben Sie ein notwendiges Verständnis dafür?
Machen Sie sich keine Sorgen, wenn nicht, hilft Ihnen das Folgende.
Introduction
Mit der Website einen Paradigmenwechsel in Richtung dynamischer Inhaltstieg die Nachfrage nach der No-SQL-Datenbank. Dies führte zu zahlreichen No-SQL-Datenbanken wie MongoDB.
MongoDB wird als No-SQL-Datenbank klassifiziert und ist eine dokumentbasierte Datenbank, in der die Daten in Form von JSON-Dokumenten gespeichert werden, wobei für jedes Dokument eine automatische Generierung angegeben wird.
Eine No-SQL-Datenbank ist eine Datenbank, in der die Tabellenstruktur im Gegensatz zu strukturierten SQL-Datenbanken nicht festgelegt ist. MongoDB speichert die Daten in Form einer JSON-Zeichenfolge, unabhängig von der Anzahl der Attribute oder den Namen der Attribute in einer bestimmten Spalte.
Auf diese Weise können die Entwickler schnell Änderungen an den Entitäten vornehmen, ohne dass Änderungen an der Datenbankebene erforderlich sind.
Installing MongoDB
MongoDB ist wie jede andere Datenbank je nach Entwicklungsbedarf in mehreren Varianten verfügbar. Die Varianten wurden unten aufgeführt und können hier verwendet oder heruntergeladen werden Link
- MongoDB Atlas - Datenbank als Service
- Community Server - Kostenlos für die Community der Entwickler
- MongoDB Enterprise Edition - Die kommerzielle Version mit zusätzlichen Funktionen
Jedes davon ist mit jedem Betriebssystem vollständig kompatibel. Laden Sie zunächst bei der Installation eines Community-Servers die entsprechende Installationsdatei gemäß Ihrem Betriebssystem herunter.
Der Installationsprozess unterscheidet sich geringfügig für jedes Betriebssystem, und daher würden wir jede Betriebssysteminstallation separat durchführen.
Installation unter MacOS
So installieren Sie MongoDB unter MacOS. Laden Sie das .tgz-Archiv herunter, das die erforderlichen Binärdateien enthält. Wenn Sie die Archivierung der Datei aufheben, sollten Sie in der Lage sein, eine Reihe von Binärdateien in der Datei anzuzeigen Kasten Ordner.
- Verschieben Sie den Ordner bin an den gewünschten Speicherort
- Öffnen Sie ein Terminal und ändern Sie das Verzeichnis in das oben erwähnte bin-Verzeichnis
- Führen Sie den folgenden Befehl aus, um eine Datenbank am gewünschten Speicherort zu erstellen.
$ ./mongod --dbpath /path-to-desired-directory/
Ersetzen Sie im obigen Befehl den Pfad zum Verzeichnis durch den gewünschten Pfad, und der Server wird gestartet, sobald der Befehl ausgeführt wird.
Installation unter Windows
Das MongoDB Download Center bietet eine ausführbare Datei . MSI Paket zur Installation von MongoDB in Windows. Die Installation unter Windows ist recht unkompliziert und kann mit wenigen Befehlen durchgeführt werden, sobald das Setup heruntergeladen wurde.
- Führen Sie die folgenden Befehle aus, um MongoDB auf einem Windows-PC / Server zu installieren.
> cd /setup-folder/
> msiexec.exe /q /i .msi ^
INSTALLLOCATION="C:Program FilesMongoDB" ^
ADDLOCAL="MonitoringTools,ImportExportTools,MiscellaneousTools"
Mit den obigen Befehlen gelangen Sie in das entsprechende Verzeichnis und führen das Setup für die Installation am angegebenen Speicherort aus. Nach der Installation müssen Sie den Standard-Datenbankspeicherpfad für MongoDB konfigurieren.
Mit dem folgenden Befehl können Sie dasselbe konfigurieren.
> md dbdata
Der obige Befehl erstellt einen Datenbank- / Datenordner in dem Verzeichnis, auf das die Eingabeaufforderung aktuell verweist. Falls Sie die Datenbank erneut konfigurieren müssen, können Sie die Datei mongod.exe mit dem verwenden dbpath Argument wie unten gezeigt:
>"C:Program FilesMongoDBbinmongod.exe" --dbpath d:tutorialmongodbdata
Installation unter Linux
Ähnlich wie bei den MacOS-Downloads ist MongoDB für Linux-Varianten auch in Form einer archivierten Reihe von Binärdateien verfügbar. Der Prozess zum Installieren von MongoDB ist ziemlich ähnlich.
- Verschieben Sie die Binärdateien an den gewünschten Speicherort
- Öffnen Sie das Terminal im Ordner
- Führen Sie den folgenden Befehl mit dem gewünschten DB-Speicherort aus
$ ./mongod --dbpath /path-to-desired-directory/
Creating the first collection
MongoDB speichert die Daten in Form von JSON-Dokumenten. Eine Gruppe solcher Dokumentationen wird in MongoDB gemeinsam als Sammlung bezeichnet. Somit ist eine Sammlung analog zu einer Tabelle in einer relationalen Datenbank, während ein Dokument analog zu einem Datensatz ist.
Um Dokumente zu speichern, müssen wir zuerst eine Sammlung erstellen. Das Spannende an a NoSQL-Datenbank ist, dass Sie im Gegensatz zur SQL-Datenbank die Spaltennamen oder Datentypen darin nicht angeben müssen.
Der erste Schritt zum Erstellen einer Sammlung ist das Erstellen einer Datenbank. Führen Sie den folgenden Befehl im Ausgangsverzeichnis der MongoDB-Installation aus, um eine Datenbank zu erstellen und über die Befehlszeile eine Verbindung zu ihr herzustellen.
$ ./bin/mongo tutorial
Mit diesem Befehl wird die Datenbankverbindung gestartet und gleichzeitig eine Verbindung zur Lernprogrammdatenbank hergestellt. Es werden einige Zeilen im Protokoll angezeigt, um anzuzeigen, dass die Befehlszeile eine Verbindung zur MongoDB-Datenbank hergestellt hat.
Ein Beispiel für ein Befehlszeilenbild wurde unten angezeigt, um Ihnen eine bessere Vorstellung davon zu geben.
- Führen Sie den folgenden Befehl aus, um eine Sammlung zu erstellen:
$ > db.createCollection('firstCollection');
So wird eine leere Sammlung erstellt. Der nächste Schritt besteht darin, Daten einzufügen und die Datensätze über die MongoDB-Befehlszeile zu verarbeiten.
Inserting a document into the Collection
Wie oben erläutert, ist es möglich, fast jeden JSON in jede MongoDB-Sammlung einzufügen.
Beginnen wir mit dem Einfügen des ersten JSON-Dokuments in das ersteKollektion Sammlung oben erstellt.
> db.firstCollection.insertOne({name:'Abhishek',skill:'MongoDB'});
Der obige Befehl fügt ein einzelnes JSON-Dokument in das ein ersteKollektion. Das gleiche kann mit dem folgenden Befehl überprüft werden:
> db.firstCollection.find();
Der obige Befehl kann je nach Variation des Befehls mehrfach verwendet werden find()
Funktion. Wenn keine Argumente angegeben sind, wie dies beim obigen Befehl der Fall ist, werden alle verfügbaren Dokumente aus der Sammlung abgerufen.
Sie können einen weiteren Datensatz einfügen und das Gleiche versuchen. In diesem Fall ähnelt die Ausgabe des obigen Befehls der unten gezeigten:
> db.firstCollection.find (); {"_id": ObjectId ("5b043a32c29a7184535e783a"), "name": "Abhishek", "Skill": "MongoDB"} {"_id": ObjectId ("5b05b4f0c29a7184535e783b"), "name": "geekFlare", " ":" Java, MongoDB, NodeJS "}
Wie zu sehen ist, werden zwei verfügbare Datensätze angezeigt. Das find()
Die Funktion kann leicht verwendet werden, um die Dokumente anhand bestimmter Parameter zu filtern. Filtern wir das Dokument anhand des Namensattributs.
Der Filtervorgang ist einfach und kann anhand des folgenden Befehls verstanden werden:
db.firstCollection.find ({name: 'Abhishek'}); {"_id": ObjectId ("5b043a32c29a7184535e783a"), "name": "Abhishek", "Skill": "MongoDB"}
Der Filter kann auch mit mehreren Attributen im JSON verwendet werden. Obwohl es möglich ist, der Abfrage eine beliebige Anzahl von Parametern hinzuzufügen, besteht die Einschränkung dieses Ansatzes darin, dass nur der genaue Wert von Attributen übereinstimmt.
Filtering records using Regex
So führen Sie ein MongoDB-Äquivalent eines MySQL aus mögen Klausel, die MongoDB verwendet Regex. Regex ist eine Reihe von Zeichen, die ein passendes Muster bilden. Die Regex-Literale ähneln denen diejenigen, die in Javascript verwendet werden.
Für die aktuelle Sammlung werden wir versuchen, die Daten abzurufen, indem wir ein Muster für das Skill-Attribut abgleichen. Der folgende Befehl ruft die Liste der Personen mit der Fähigkeit MongoDB ab. Somit werden zwei Datensätze abgerufen, da beide die Zeichenfolge MongoDB enthalten.
> db.firstCollection.find ({Fähigkeit: /.* MongoDB. * /}); {"_id": ObjectId ("5b043a32c29a7184535e783a"), "name": "Abhishek", "Skill": "MongoDB"} {"_id": ObjectId ("5b05b4f0c29a7184535e783b"), "name": "geekFlare", " ":" Java, MongoDB, NodeJS "}> db.firstCollection.find ({Skill: /.* Java. * /}); {"_id": ObjectId ("5b05b4f0c29a7184535e783b"), "name": "GeekFlare", "Skill": "Java, MongoDB, NodeJS"}
Der obige Code zeigt das Ergebnis von zwei verschiedenen Zeichenfolgen in der Regex-Form an. Die erste Abfrage ruft die Liste eines Dokuments ab, in dem das Skill-Attribut das Schlüsselwort MongoDB enthält, während die andere Abfrage nur Personen abruft, die sich mit Java auskennen.
Die nächste Herausforderung beim Abfragen anhand von Kriterien besteht darin, mit einer ODER- oder UND-Bedingung abzufragen.
Complex queries in MongoDB
Wie aus den obigen Befehlen hervorgeht, funktioniert MongoDB where-Klauseln unter JSON. Der Prozess des Kombinierens von Bedingungen hängt auch von JSON selbst ab. MongoDB bietet Operatoren wie $ oder, $ und sowie $, um die relevanten Abfrageoperationen nicht auszuführen.
Versuchen wir, die Liste der Dokumente zu erhalten, in denen das Namensattribut Abhishek oder die Fertigkeit Java enthält.
> db.firstCollection.find ({$ oder: [{Name: 'Abhishek'}, {Fähigkeit: /.* Java. * /}]}); {"_id": ObjectId ("5b043a32c29a7184535e783a"), "name": "Abhishek", "Skill": "MongoDB"} {"_id": ObjectId ("5b05b4f0c29a7184535e783b"), "name": "geekflare", " ":" Java, MongoDB, NodeJS "}
Wie zu sehen ist, werden beide Datensätze abgerufen. Sie könnten versuchen, das Namensattribut als Geekflare zu verwenden und die Änderung zu sehen. Es wird nur das Dokument mit drei Fähigkeiten und dem Namen Geekflare angezeigt.
Ebenso ist es möglich zu verwenden $and
Operator mit einem JSON-Array von Bedingungen wie oben gezeigt.
Für die nächste Gruppe von Operatoren müssten wir eine weitere Sammlung erstellen und mit den folgenden Befehlen einige Datensätze hinzufügen.
> db.createCollection('studentmarks'); { "ok" : 1 } > db.studentmarks.insertMany([{name:'A',marks:20},{name:'B',marks:25},{name:'C',marks:22},{name:'D',marks:30}]); { "acknowledged" : true, "insertedIds" : [ ObjectId("5b06e7b5c29a7184535e783c"), ObjectId("5b06e7b5c29a7184535e783d"), ObjectId("5b06e7b5c29a7184535e783e"), ObjectId("5b06e7b5c29a7184535e783f") ] }
Die nächsten Operatoren, die wir verwenden würden, sind Vergleichsoperatoren in der Abfrage. Zum Vergleichen von Werten anhand von Kriterien wie weniger als or größer als or Nicht gleichzusetzen mitverwenden wir die relevanten Operatoren in dem Wert, den wir übergeben.
Ein Beispiel für das Abrufen einer Liste von Schülern mit Noten über 22 ist unten dargestellt.
db.studentmarks.find ({markiert: {$ gt: 22}}); {"_id": ObjectId ("5b06e7b5c29a7184535e783d"), "name": "B", "markiert": 25} {"_id": ObjectId ("5b06e7b5c29a7184535e783f"), "name": "D", "markiert": 30}
Dieses $gt
hier zeigt an größer als in den Kriterien. Somit werden die Dokumente mit mehr als 22 Markierungen angezeigt. Ebenso können andere Operatoren verwendet werden. Sie sind unten aufgeführt.
Operator | Nutzen Sie den | Beispiel |
---|---|---|
$ Gl | Überprüfen Sie, ob der Wert gleich ist | {markiert: {$ eq: 20}} |
$ lt | Überprüfen Sie, ob der Wert kleiner als ist | {markiert: {$ lt: 20}} |
$ gte | Überprüfen Sie, ob der Wert größer oder gleich ist | {markiert: {$ gte: 22}} |
$ lte | Überprüfen Sie, ob der Wert weniger danke oder gleich ist | {markiert: {$ lte: 22}} |
$ ne | Überprüfen Sie, ob der Wert ungleich ist | {markiert: {$ ne: 22}} |
$ in | Überprüfen Sie, ob der Wert einem der Werte aus dem Array entspricht | {markiert: {$ in: [20,22]}} |
$ nin | Überprüfen Sie, ob der Wert keinem Wert aus dem Array entspricht | {markiert: {$ nin: [22,25]}} |
Erfahren Sie mehr MongoDB-Befehle hier.
GUI for MongoDB
In der obigen Diskussion haben wir eine Befehlszeile verwendet, um unsere Abfragen in MongoDB auszuführen.
Die Verwendung der Befehlszeile kann bei komplexen Abfragen und einer größeren Datenmenge eine Herausforderung darstellen. Um das Anzeigen der Daten und das Ausführen der Abfragen zu vereinfachen, bietet MongoDB ein hervorragendes GUI-Tool namens MongoDB Compass.
Der MongoDB-Kompass kann einfach von der heruntergeladen werden MongoDB lädt Website herunter. Sobald Sie MongoDB Compass heruntergeladen und installiert haben, starten Sie die Anwendung, und Sie werden von einem Bildschirm begrüßt, der dem unten gezeigten Bildschirm ähnelt.
Wenn Sie den MongoDB-Server in Betrieb haben, klicken Sie auf Mit den Standarddetails verbinden. Sie sollten angemeldet sein und die Liste der verfügbaren Datenbanken anzeigen.
Klicken Sie auf die Tutorial-Datenbank, um die Liste der Sammlungen in der Tutorial-Datenbank anzuzeigen. Wie unten gezeigt, wird die Liste der verfügbaren Sammlungen in der Tutorial-Datenbank angezeigt.
Wenn Sie auf die Sammlung klicken, wird die Liste der Dokumente mit den erforderlichen Steuerelementen zum Filtern der Datensätze mithilfe eines JSON sowie die Möglichkeit zum Anzeigen der Dokumente in einem JSON- oder Tabellenformat angezeigt.
Die GUI vereinfacht auch das Hinzufügen eines Dokuments. Sie müssen lediglich auf die Schaltfläche Dokument einfügen in dem unten gezeigten Bildschirm klicken. Es öffnet sich ein kleiner Dialog, in dem Sie nach den Dokumentdetails mit einer automatisch generierten Dokument-ID gefragt werden.
Die grafische Benutzeroberfläche vereinfacht viele Vorgänge, die mithilfe der MongoDB-Befehlszeilenschnittstelle möglicherweise schwierig auszuführen sind.
Es gibt mehr NoSQL-Client Sie können erkunden.
Conclusion
Wir haben die Essenz von NoSQL anhand verschiedener Beispiele erfasst und die Installation verstanden, wie sich Dokumente von einem typischen relationalen Datenbankdatensatz unterscheiden. Sie können sich auch darauf beziehen MongoDB von Grund auf lernen Online Kurs.
Und wenn Sie ein Entwickler sind, dann könnten Sie interessiert sein dieses hier.