Hoppa till innehåll
denna.se

Senast uppdaterad:

NoSQL

Även känt som: Non-relational database

Samlingsnamn för databaser som inte använder SQL/relationell modell. Inkluderar dokumentdatabaser (MongoDB), key-value (Redis), kolumndatabaser (Cassandra) och grafdatabaser (Neo4j).

NoSQL är ett paraplybegrepp för databaser som inte är relationella. Istället för rader och kolumner lagras data i andra strukturer beroende på användningsområde: dokumentdatabaser (MongoDB, CouchDB) för flexibla JSON-liknande data, key-value-stores (Redis, Memcached) för cache och sessions, kolumn-orienterade (Cassandra, ScyllaDB) för storskalig analytisk data, grafdatabaser (Neo4j, ArangoDB) för sociala nätverk och kunskapsgrafer.

Namnet "NoSQL" är lite missvisande — det står för "Not only SQL" snarare än "No SQL". Många NoSQL-databaser har idag SQL-liknande query-språk för komplexa sökningar. Den verkliga skillnaden mot relationella databaser är datamodellen och konsistensgarantier (NoSQL offrar ofta strikt konsistens för bättre skalbarhet).

När ska du välja NoSQL? När datamodellen är dynamisk eller ostrukturerad (dokumentdatabas), när du behöver ultra-snabb cache (Redis), när du har hundratals miljoner rader som ska analyseras (kolumndatabas), eller när data är grafstrukturerat (sociala relationer, produktrekommendationer). För de flesta standard-webbapplikationer är PostgreSQL fortfarande bättre default — starkare datakvalitet, mer mogen teknik, och stöd för JSON-fält när du behöver flexibilitet.

Fördjupning på denna.se

Relaterade termer