Logo de Dallonses

NoSQL

Què és NoSQL?

NoSQL és una família de bases de dades que emmagatzemen dades sense l'estructura rígida de taules dels sistemes relacionals tradicionals. El nom significa "not only SQL". On una base de dades relacional força cada fila a un esquema fix, NoSQL deixa que la forma de les dades flexioni, cosa que encaixa amb aplicacions on els requisits canvien ràpid o les dades no caben amb netedat en files i columnes.

No és una sola cosa, sinó diverses. Els magatzems de documents com MongoDB guarden registres flexibles tipus JSON. Els magatzems clau-valor com Redis canvien estructura per velocitat pura. Els magatzems de columnes amples com Cassandra reparteixen conjunts de dades enormes entre moltes màquines. Les bases de dades de grafs com Neo4j modelen relacions directament. Cadascuna resol un problema diferent. Un catàleg de productes on cada article té atributs diferents és un cas net per a un magatzem de documents, ja que no et quedes embotint productes molt variats en un mateix conjunt de columnes.

L'intercanvi davant de SQL és consistència per flexibilitat i escala. Les bases de dades relacionals imposen estructura i fortes garanties transaccionals, que és el que vols per a diners i comandes. Molts sistemes NoSQL relaxen aquestes garanties per escalar horitzontalment i absorbir el canvi de manera barata. La resposta real rarament és l'una o l'altra. La majoria de productes seriosos fan servir totes dues, cadascuna on es guanya el seu lloc.

NoSQL a Dallonses

Fem servir NoSQL on la flexibilitat i l'escala importen més que l'estructura rígida. Models de contingut que canvien, catàlegs en moviment, capes de caché, qualsevol cosa que lluitaria contra un esquema fix. Triar el tipus correcte és la major part de la feina, perquè un magatzem de documents i un de clau-valor resolen problemes genuïnament diferents.

La versió honesta d'aquesta conversa és que NoSQL no és automàticament modern ni millor. Estirar-ne quan una base de dades relacional et serviria bé crea dolor real més endavant, normalment al voltant de la consistència de dades. En la nostra feina de desenvolupament web triem segons com es comporten les dades i com creixerà el producte, i després dissenyem el model perquè encaixi. Quan NoSQL encaixa, encaixa bé. Quan no, ho diem.

No saps si les teves dades volen SQL, NoSQL o totes dues? Resolguem-ho.

Parlem de dades

Serveis relacionats


Preparat per a traballar junts?

Reserva una reunió
Aymón sostenint una revista Tools davant de la seva cara
Ari treballant en un portàtil a l'aire lliure envoltada de plantes
Vista superior d'un escriptori de fusta amb teclat, ratolí i auriculars
Il·lustració dibuixada a mà d'una mà chasquejant els dits
Nico recolzat contra un dispensador d'aigua al costat d'un extintor
Primer pla d'un ordinador obert amb placa de circuit i components sobre un escriptori de fusta
Bernat i Andreu col·laborant en un escriptori amb monitors i un portàtil
Il·lustració dibuixada a mà d'una mà oberta saludant
Aymón sostenint una revista Tools davant de la seva cara
Ari treballant en un portàtil a l'aire lliure envoltada de plantes
Vista superior d'un escriptori de fusta amb teclat, ratolí i auriculars
Il·lustració dibuixada a mà d'una mà chasquejant els dits
Nico recolzat contra un dispensador d'aigua al costat d'un extintor
Primer pla d'un ordinador obert amb placa de circuit i components sobre un escriptori de fusta
Bernat i Andreu col·laborant en un escriptori amb monitors i un portàtil
Il·lustració dibuixada a mà d'una mà oberta saludant