Type to search…

Transaccions

Una transacció és una seqüència d'operacions de base de dades que només tindran èxit si totes les operacions de la transacció s'han executat correctament.

Introducció

Les transaccions han estat una característica important de les bases de dades relacionals durant molts anys, però han estat majoritàriament absents de les bases de dades orientades a documents fins fa poc.

La naturalesa de les bases de dades orientades a documents, on un únic document pot ser una estructura robusta i imbricada, que conté documents i matrius incrustats en lloc de només valors simples, racionalitza l’emmagatzematge de dades relacionades dins d’un sol document. Com a tal, modificar diversos documents com a part d’una única operació lògica sovint no és necessari, limitant la necessitat de transaccions en moltes aplicacions.

Hi ha, però, aplicacions per a les quals es requereix accedir i modificar diversos documents en una sola operació amb integritat garantida fins i tot amb bases de dades orientades a documents.

Entorn de treball

A causa de la forma en què s’implementen a MongoDB, les transaccions només es poden realitzar en instàncies de MongoDB que s’executen com a part d’un clúster més gran. Pot ser un clúster de bases de dades fragmentades o un conjunt de rèpliques.

Un conjunt de rèpliques de MongoDB és un grup d’instàncies separades interconnectades de MongoDB que funcionen conjuntament per oferir una alta disponibilitat i tolerància a errors. En un conjunt de rèpliques, s’escull un node com a principal per gestionar les operacions d’escriptura, mentre que la resta serveixen com a secundaris i reprodueixen les seves dades. En cas de fallada d’un node primari, un node secundari s’encarrega de prendre el relleu com a nou primari, garantint una alta disponibilitat.

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

ps
> connect-wsl mongodb -new

Instal.la Docker:

shell
$ install-docker

Instal.la un conjunt de rèpliques:

shell
$ git clone https://gitlab.com/xtec/data/mongo
$ cd mongodb
$ ./install.sh

You're reading a preview.

Sign in to read the full article. Any account opens 10 free articles a month; students and teachers read their course pages without limit.

Sign in