Vantaggi e limiti dei database key-value
Concetti NoSQL
Miriam Antona
Software engineer
Vantaggi - molto semplice
- Tupla chiave-valore
- Nessuno schema/tipo definito
- Operazioni di base:
- Put
- inserisce una nuova tupla chiave-valore
- aggiorna il valore se la chiave esiste già
- Get
- restituisce il valore per una chiave data
- Delete
- rimuove una chiave e il suo valore
- Operazioni veloci
Vantaggi - flessibile
- Consente di cambiare i tipi di dato
userID:123 = 123456
userID:123 = "Miriam"
- Aggiunge attributi extra
user:457:preferences = {"language" : "en:US"}
user:457:preferences = {"language" : "en:US", "color" : "green","timezone" :"GTM-4"}
Vantaggi - informazioni in memoria
- Letture/scritture veloci
- Possibile perdita di dati
- Persistenza su disco e memoria
Vantaggi - scalabilità
- Scalabilità orizzontale
- Sharding
- distribuisce parti diverse dei dati su più server
Vantaggi - scalabilità
- Scalabilità orizzontale
- Sharding
- distribuisce parti diverse dei dati su più server
Vantaggi - scalabilità
- Scalabilità orizzontale
- Sharding
- distribuisce parti diverse dei dati su più server
Vantaggi - scalabilità
- Scalabilità orizzontale
- Sharding
- distribuisce parti diverse dei dati su più server
Limitazioni
- Ricerca solo per chiave
- Problema se non conosci la chiave
- Alcuni database key-value hanno aggiunto funzionalità
- ricerca per valore
- indici secondari
- ricerca per più chiavi insieme
- Niente query complesse
Esercitiamoci!
Concetti NoSQL
Preparing Video For Download...