DAM - DAW - MP 0484 Bases de Dades
Introducció a MongoDB
MongoDB és un
-
sistema de base de dades NoSQL,
-
orientat a documents,
-
de codi obert.
MongoDB desa estructures de dades BSON, en lloc de desar les dades en taules com ho farien les bases de dades relacionals.
BSON és una representació binària d'estructures de dades i mapes. El nom BSON està basat en el terme JSON i vol dir Binary JSON (JSON Binari).
BSON accelera l'accés a la informació continguda en un document. A l'hora de treballar amb la consola de MongoDB es fa servir JSON, ja que és més llegible.
Hi ha un driver encarregat de convertir la informació de BSON a l'estructura del llenguatge, JSON per exemple, i a la inversa.
La terminologia varia entre SQL i NoSQL:
| SQL | NoSQL |
|---|---|
| Base de dades | Base de dades |
| Taula | Col·lecció |
| Fila | Document |
| Columna | Camp |
| Clau principal | ObjectId / _id |
Història
-
MongoDB va ser llançat a l'agost de 2009. Aquesta primera versió 1.0 es va centrar a validar un disseny de base de dades diferent, basat en un model de dades de documents, similar a JSON.
MongoDB va passar de ser una base de dades NoSQL nínxol, a ser la primera plataforma de dades per a desenvolupadors de la indústria.
-
Amb la versió MongoDB 3.0 a inicis del 2015 es van afegir WiredTiger Storage Engine i MongoDB Ops Manager.
-
A finals de 2015, amb la versió 3.2, es va llançar MongoDB Compass, que proveeix una interfície gràfica (GUI - Graphical User Interface) pel desenvolupament i administració de MongoDB, i MongoDB Connector for BI per a l'anàlisi i visualització de les dades de MongoDB via SQL.
A part va sortir Encrypted Storage Engine, In-Memory Storage Engine i $lookup aggregation pipeline stage.
-
2016 va donar pas a MongoDB 3.4 al llançament del servei de base de dades MongoDB Atlas totalment administrat a AWS. També van aparèixer $graphLookup, fragmentació per zones i MongoDB Connector for Apache Spark.
-
El proper any la versió 3.6 va expandir MongoDB Atlas d'AWS a Azure i Google Cloud. També va variar els fluxos per crear aplicacions més resistents amb menys codi del costat de client, va millorar la integritat de dades amb validació d'esquema i va implementar un rellotge lògic global.
-
El 2018 la versió 4.0 va portar transaccions ACID (Atomicity, Consistency, Isolation, and Durability o Atomicitat, Consistència, Aïllament i Durabilitat) multidocument, MongoDB Atlas Global Clusters, controls de seguretat a MongoDB Atlas Enterprise i MongoDB Chars.
-
L'any següent la 4.2 va oferir transaccions ACID distribuïdes entre fragments per a la integritat de les dades a escala global; xifrat a nivell de camp del costat del client i vistes materialitzades sota demanda per a anàlisis ultraràpides. A més MongoDB Atlas Search, MongoDB Atlas Data Lake, MongoDB Operator for Kubernetes i MongoDB Connector for Apache Kafka.
-
La versió 4.4 va aparèixer el 2020 oferint millors agregacions amb UNION, replicació de transmissió i lectures protegides i duplicades. També van sortir MongoDB Atlas Online Archive, Realm & Sync i MongoDB Atlas multi-cloud clusters.
-
2021 i 2022 van veure la versió 5.0 amb col·leccions de sèries temporals natives optimitzades per a IoT (Internet of Things) i aplicacions financeres, MongoDB Stable API, Atlas Serverless instances i MongoDB Atlas Data API.
-
El juliol de 2022 va portar una altra nova versió, MongoDB 6.0 que inclou més característiques i optimitzacions per a col·leccions de sèries temporals; suport millorat per a arquitectures basades en esdeveniments; suport complet per a unions fragmentades i recorregut de gràfics; millores en la resiliència operativa i fragmentació; i la capacitat d'executar consultes expressives en dades xifrades completament aleatòries.
-
El 15 d'agost de 2023 apareix la versió 7.0 amb noves funcions destinades a facilitar al desenvolupadors la creació de programari. EntrE d'altres: millor el rendiment amb grans volumns de dades, permet una migració de dades molt més fluida i enforteix les capacitats de seguretat amb Queryable Encryption.
Disponibilitat general d'Atlas Serverless instances, Atles Data API, Atles CLI, Flexible Sync. Atlas Data Lake i sincronització cluster-to-cluster.
Versions
MongoDB disposa de diverses edicions com ara MongoDB Community Server, MongoDB Enterprise Server i MongoDB Atlas.
La plataforma de dades per a desenvolupadors MongoDB Atlas accelera i simplifica la manera com els desenvolupadors construeixen amb dades per a qualsevol classe d'aplicació moderna, tot accessible a través d'una API unificada.
MongoDB Atlas s'executa a AWS, Microsoft Azure i Google Cloud Platform.
MongoDB Community Server ofereix un model de dades de documents flexible juntament amb suport per a consultes ad-hoc, indexació secundària i agregacions en temps real per proporcionar maneres d'accedir i analitzar dades.
Finalment, MongoDB Enterprise Server és l'edició comercial de MongoDB, que inclou capacitats addicionals com a motor d'emmagatzematge en memòria per a alt rendiment i baixa latència, funcions de seguretat avançades com LDAP i controls d'accés de Kerberos i xifrat per a dades en repòs .