Fördelar och begränsningar med nyckel-värde-databaser

NoSQL-koncept

Miriam Antona

Software engineer

Fördelar – mycket enkelt

  • Nyckel-värde-par
  • Inget definierat schema/typer
  • Grundläggande operationer:
    • Put
      • lägger till ett nytt nyckel-värde-par
      • uppdaterar ett värde om nyckeln redan finns
    • Get
      • returnerar värdet för en given nyckel
    • Delete
      • tar bort en nyckel och dess värde
  • Snabba operationer
NoSQL-koncept

Fördelar – flexibelt

  • Tillåter ändringar av datatyper
    • userID:123 = 123456
    • userID:123 = "Miriam"
  • Lägg till ytterligare attribut
    • user:457:preferences = {"language" : "en:US"}
    • user:457:preferences = {"language" : "en:US", "color" : "green","timezone" :"GTM-4"}
NoSQL-koncept

Fördelar – data lagras i minnet

  • Snabba läsningar/skrivningar
  • Risk för dataförlust
  • Kombination av disk- och minnespersistens
NoSQL-koncept

Fördelar – skalbarhet

  • Kan skalas horisontellt
  • Sharding
    • distribuerar olika delar av data över flera servrar

Visuell förklaring av sharding. Data distribueras över servrarna.

NoSQL-koncept

Fördelar – skalbarhet

  • Kan skalas horisontellt
  • Sharding
    • distribuerar olika delar av data över flera servrar

Visuell förklaring av sharding. Data distribueras över servrarna.

NoSQL-koncept

Fördelar – skalbarhet

  • Kan skalas horisontellt
  • Sharding
    • distribuerar olika delar av data över flera servrar

Visuell förklaring av sharding. Data distribueras över servrarna.

NoSQL-koncept

Fördelar – skalbarhet

  • Kan skalas horisontellt
  • Sharding
    • distribuerar olika delar av data över flera servrar

Visuell förklaring av sharding. Data distribueras över servrarna.

NoSQL-koncept

Begränsningar

  • Sökning endast via nyckel
    • Problem om nyckeln är okänd
    • Vissa nyckel-värde-databaser har utökad funktionalitet
      • sökning på värde
      • lägga till sekundärindex
      • sökning på flera nycklar samtidigt
    • Inga komplexa frågor
NoSQL-koncept

Nu kör vi en övning!

NoSQL-koncept

Preparing Video For Download...