Introduktion till NoSQL

Introduktion till NoSQL

Jake Roach

AI Engineer

Traditionella relationsdatabaser (RDBMS)

  • Organiserar data i tabeller med kolumner och rader
  • Använder SQL för att hantera och fråga data
  • Säkerställer integritet via begränsningar på databaser och tabeller

Bild med logotyperna för MS SQL Server, MySQL och PostgreSQL.

Introduktion till NoSQL

Vad är NoSQL?

Definition: NoSQL står för "not only SQL" och är en samling verktyg och tekniker för datalagring som stöder strukturerad, semistrukturerad och ostrukturerad data.

Egenskaper:

  • Stöder en stor variation av datatyper
  • Mindre strikt schema
  • Bättre skalbarhet och prestanda
Introduktion till NoSQL

NoSQL-datalager

Tabellformat

$$

Tabellen Books i en Snowflake-databas.

  • "Rektangulärt"
  • Kolumner och rader

Icke-tabellformat

{
  "title": "Python for Data Analysis",
  "price": 53.99,
  ...
}
"weather": "sunny"
  • Semistrukturerat format
  • Mer flexibelt schema
Introduktion till NoSQL

NoSQL-datalager

Kolumnorienterade databaser

Ett NoSQL-datalager som lagrar data per kolumn i stället för per rad, och kan frågas med SQL-liknande syntax. Möjliggör snabbare frågor, särskilt vid analytiska arbetsflöden.

Användningsfall: big data, analytiska arbetsflöden

Snowflake-logotyp.

Dokumentdatabaser

NoSQL-verktyg för att lagra semistrukturerade "dokument"

  • JSON-format
  • Mindre strikt schema

Användningsfall: användargenererad data (recensioner) och realtidsanalys

Postgres JSON-logotyp.

Introduktion till NoSQL

Fler NoSQL-datalager

Nyckel-värde

Ett NoSQL-datalager som lagrar data som en samling nyckel-värde-par:

  • Enkel data som läses och skrivs med hög frekvens

Användningsfall: IoT-data (Internet of Things), mobilappar

Redis-logotyp.

Graf

Ett NoSQL-datalager som sparar data i ett nätverk av noder och kanter.

  • Noder representerar entiteter
  • Kanter representerar relationer mellan entiteter

Användningsfall: sociala nätverk

Introduktion till NoSQL

Nu kör vi en övning!

Introduktion till NoSQL

Preparing Video For Download...