Escriu per cercar…

Document

MongoDB desa les dades com a documents, i un document és un JSON que es descriu a si mateix.

S'ensenya a
Bases de dadesDocumentDAMDAWDAW-BIOLlenguatges de marques i sistemes de gestió d’informacióDades documentalsASIXDAMDAWDAW-BIO

Introducció

Un document és una estructura de dades formada per parelles de camp i valor.

El valor d’un camp pot ser un tipus simple, com un text o un número, o un tipus més complex, com una llista o un altre document.

A sota tens un document JSON que descriu l’empleada Laura:

json
{
    "_id": "laura",
    "firstName": "Laura",
    "lastName": "Codina",
    "email": "laura@acme.com",
    "department": "Finance"
}

Els documents es descriuen a si mateixos: contenen els valors i, alhora, el nom i el tipus de cada dada que guarden.

Aquest és el document d’una altra empleada, que treballa en més d’un departament:

json
{
    "_id": "roser",
    "firstName": "Roser",
    "lastName": "Vilalta",
    "email": "roser@acme.com",
    "salary": 70000,
    "department": ["Finance", "Accounting"]
}

Fixa’t en les diferències amb el primer.

En una base de dades documental:

  • L’esquema és dinàmic: no l’has de definir abans de començar a desar dades.
  • Els camps poden ser diferents entre documents de la mateixa col·lecció, i pots afegir-ne o treure’n quan vulguis.
  • Els documents es poden imbricar: el valor d’un camp pot ser un altre document.
json
{
    "_id": "david",
    "firstName": "David",
    "lastName": "de Mingo",
    "email": "david@acme.com",
    "department": ["Finance", "Accounting"],
    "socialMediaAccounts": [
        {
            "type": "facebook",
            "username": "david_de_mingo"
        },
        {
            "type": "twitter",
            "username": "@ddemingo"
        }
    ]
}

Una taula d’una base de dades relacional no pot fer res d’això: totes les files tenen les mateixes columnes, i una columna guarda un valor simple.

Entorn de treball

Crea una màquina Ubuntu amb Windows Subsystem for Linux (WSL):

ps
wslx connect mongodb --new

Estàs llegint una vista prèvia.

Inicia sessió amb Google per llegir la pàgina completa.

Inicia sessió amb Google

Amb qualsevol compte de Google. Només et demanarem que acceptis les condicions del servei.