Hvad er MongoDB? Hvordan fungerer MongoDB?


MongoDB er et open source, moderne, dokumentbaseret distribueret databasestyringssystem til generelle formål, udviklet, distribueret og understøttet af MongoDB Inc. Det er en kraftfuld og fleksibel, agil NoSQL (ikke-relationel) dokumentdatabase, der gemmer data i dokumenter svarende til JSON-objekter (JavaScript Object Notation). MongoDB kører på Linux-, Windows- og macOS-operativsystemer.

Den leveres med en omfattende række værktøjer til nem datastyring, og den er bygget til moderne applikationsudvikling og til skyen og beregnet til brug af udviklere, dataanalytikere og dataforskere.

MongoDB tilbydes i to forskellige udgaver: MongoDB Community Server, som er den kilde-tilgængelige og gratis-til-brug-udgave af MongoDB og MongoDB Enterprise Server, der er en del af MongoDB Enterprise Advanced-abonnementet.

  • MongoDB Community Server
  • MongoDB Enterprise Server

Hvordan fungerer MongoDB?

MongoDB er struktureret på en klient-server-model, hvor en server-dæmon accepterer forbindelser fra klienter og behandler databasehandlinger fra dem. Serveren skal køre for at klienter kan oprette forbindelse og interagere med databaser.

Datalagring under MongoDB er forskellig fra traditionelle databaser. En post i MongoDB er et dokument (en datastruktur sammensat af felt- og værdipar svarende til JSON-objekter), og dokumenter gemmes i samlinger (analogt med tabeller i RDBMS).

Nøglefunktioner i MongoDB

Følgende er nøglefunktionerne i MongoDB.

  • MongoDB supports read-only views and on-demand materialized views. It also supports arrays and nested objects as values allow for flexible and dynamic schemas. Besides, it supports multiple storage engines and provides a pluggable storage engine API that you can use to develop your storage engines.
  • MongoDB is designed for high performance and data persistence. It supports embedded data models that alleviate I/O activity on the database system. Besides, its indexes allow for faster queries and importantly, they can include keys from embedded documents and arrays.
  • It comes with a rich and powerful query language (to support read and write operations), supports data aggregation, and other modern use-cases such as text search, graph search, and Geospatial queries.
  • It offers the power of relational databases by supporting full ACID transactions, joins in queries, and two types of relationships instead of one: reference and embedded.
  • MongoDB also supports high availability, using a replication facility called replica set (a group of MongoDB servers that maintain the data set thus providing automatic failover, data redundancy, and availability). There is also support for horizontal scalability where sharding distributes data across a cluster of MongoDB servers.
  • To secure a database deployment, MongoDB provides various security features, such as authentication and authorization, access control, TLS/SSL encryption, auditing, and more.
  • Also, it provides a security checklist which is a list of recommended security measures that you need to implement to protect a MongoDB deployment. Also, ensure that you have hardened security at the network and server layer.

MongoDB-klient og værktøjer

Derudover kommer MongoDB med nogle nyttige databasekommandoer og -værktøjer til at overvåge dens ydeevne, såsom mongostat, mongotop og mere, der hjælper dig med at se statistikker i realtid om tilstanden for en kørende MongoDB-forekomst på localhost.

For at integrere dine applikationer eller eksterne systemer med en MongoDB-database kan du bruge et af de mange officielle stik og biblioteker. Der er også community-understøttede biblioteker, såsom libmongo-client for C, Djongo for Django, mgo for Go, Mango for Perl og MongoEngine, MongoKit og andre til Python og meget mere.

Hvem bruger MongoDB?

Virksomheder bruger angiveligt MongoDB i deres tech-stakke, herunder Google, Facebook, EA Sports, Adobe, Uber, Cisco, Verizon og mange andre.

Her er nogle nyttige artikler om MariaDB:

  • How to Install MongoDB on Ubuntu 18.04
  • Install MongoDB Community Edition 4.0 on Linux
  • How to Install MongoDB 4 in CentOS 8
  • How to Install MongoDB 4 on Debian 10