Avantajele și limitările bazelor de date cheie-valoare

Concepte NoSQL

Miriam Antona

Software engineer

Avantaje - foarte simplu

  • Tuplu cheie-valoare
  • Fără schemă/tipuri definite
  • Operații de bază:
    • Put
      • inserează un nou tuplu cheie-valoare
      • actualizează valoarea dacă cheia există deja
    • Get
      • returnează valoarea pentru o cheie dată
    • Delete
      • elimină o cheie și valoarea sa
  • Operații rapide
Concepte NoSQL

Avantaje - flexibil

  • Permit modificarea tipurilor de date
    • userID:123 = 123456
    • userID:123 = "Miriam"
  • Adăugare de atribute suplimentare
    • user:457:preferences = {"language" : "en:US"}
    • user:457:preferences = {"language" : "en:US", "color" : "green","timezone" :"GTM-4"}
Concepte NoSQL

Avantaje - date stocate în memorie

  • Citiri/scrieri rapide
  • Posibilă pierdere de date
  • Combinație de persistență pe disc și în memorie
Concepte NoSQL

Avantaje - scalabilitate

  • Scalare orizontală
  • Sharding
    • distribuie datele pe mai multe servere

Explicație vizuală a sharding-ului. Datele sunt distribuite pe servere.

Concepte NoSQL

Avantaje - scalabilitate

  • Scalare orizontală
  • Sharding
    • distribuie datele pe mai multe servere

Explicație vizuală a sharding-ului. Datele sunt distribuite pe servere.

Concepte NoSQL

Avantaje - scalabilitate

  • Scalare orizontală
  • Sharding
    • distribuie datele pe mai multe servere

Explicație vizuală a sharding-ului. Datele sunt distribuite pe servere.

Concepte NoSQL

Avantaje - scalabilitate

  • Scalare orizontală
  • Sharding
    • distribuie datele pe mai multe servere

Explicație vizuală a sharding-ului. Datele sunt distribuite pe servere.

Concepte NoSQL

Limitări

  • Căutare doar după cheie
    • Problemă dacă nu cunoaștem cheia
    • Unele baze de date cheie-valoare au adăugat funcționalități
      • căutare după valoare
      • adăugare de indecși secundari
      • căutare după mai multe chei simultan
    • Fără interogări complexe
Concepte NoSQL

Să exersăm!

Concepte NoSQL

Preparing Video For Download...