Välkommen!

NoSQL-koncept

Miriam Antona

Software engineer

Kursinnehåll

  • Kapitel 1: NoSQL vs relationsdatabaser / nyckel-värde-databaser
  • Kapitel 2: Dokumentdatabaser
  • Kapitel 3: Kolumnfamiljedatabaser
  • Kapitel 4: Grafdatabaser
NoSQL-koncept

Om kursen

  • Konceptuell kurs (ingen kodning krävs)

Datazy-logotyp

NoSQL-koncept

NoSQL vs relationsdatabaser

Relationsdatabaser

  • Använder tabeller/rader/kolumner
  • Kräver ett fördefinierat schema/svårt att ändra
  • Långsamma frågor vid joins mellan flera tabeller
  • Vertikal skalbarhet
    • skalning genom att lägga till mer kapacitet (t.ex. CPU, RAM...)
    • dyrare
  • Garanterar ACID-transaktioner
  • Vanligtvis sluten källkod

NoSQL

  • Ursprungligen non-SQL/icke-relationsbaserat
  • Not only SQL
  • Icke-relationsdatabaser
  • Använder inte tabeller/rader/kolumner
  • Schemalöst/enkelt att ändra
  • Snabba frågor
  • Horisontell skalbarhet/billigare
  • De flesta saknar stöd för ACID-transaktioner
  • Öppen källkod
NoSQL-koncept

NoSQL vs relationsdatabaser

  • Kompletterar varandra
  • Kan användas tillsammans
NoSQL-koncept

Typer av NoSQL-databaser

  • Nyckel-värde-databaser
  • Dokumentdatabaser
  • Kolumnfamiljedatabaser
  • Grafdatabaser
NoSQL-koncept

Nyckel-värde-databaser

  • Enklaste typen av NoSQL-databaser
  • Hämta/lagra värden med tillhörande nyckel

Ett visuellt exempel på två nyckel-värde-par. Den första nyckeln är K1 och det första värdet är Hello. Den andra nyckeln är K2 och det andra värdet är Goodbye.

NoSQL-koncept

Nyckel

  • Exempel:
    • DataCampCourse:123:name
    • Client456
    • 123456789
    • [email protected]
    • C09113276F59B26EF3394D90CD31BAA90AA7B4BE
  • Valfri binär sekvens
  • Unik
  • Kan genereras av algoritmer
  • Inga långa nycklar
NoSQL-koncept

Värde

  • Kopplat till en nyckel
  • Hämta, lagra eller ta bort ett värde via nyckel
  • Tal, strängar, JSON, bilder...
  • Storleksbegränsningar
NoSQL-koncept

Värde

  • Kopplat till en nyckel
  • Hämta, lagra eller ta bort ett värde via nyckel
  • Tal, strängar, JSON, bilder...
  • Storleksbegränsningar

$$

key value
dataCampCourses:123:name Cleaning data in a SQL Server database
dataCampCourses:123:softLaunchDate 10/01/2020
user:12:address ('123 Sesame Street', 'NY')
user:125:address {"street" : "123 Sesame Street" , "city" : "NY"}
NoSQL-koncept

Datazy-exempel

Användarinställningar

key value
user:457:preferences {"language" : "en_US" , "color" : "green" , "timezone" : "GTM-4"}
user:458:preferences {"language" : "es_US" , "color" : "blue" , "timezone" : "GTM+2"}

 

  • Konvention (:)
    • user:id:preferences
NoSQL-koncept

Populära nyckel-värde-databaser

Logotyper för några populära nyckel-värde-databaser.

NoSQL-koncept

Nu kör vi en övning!

NoSQL-koncept

Preparing Video For Download...