Video: Cosa c'è dietro lo sviluppo di un'app: UI/UX, Linguaggi lato Server e Database 2024
I database NoSQL non sono limitati a un approccio di righe e colonne. Sono progettati per gestire una grande varietà di dati, compresi i dati la cui struttura cambia nel tempo e le cui interrelazioni non sono ancora note.
I database NoSQL sono disponibili in quattro tipi principali: uno per ogni tipo di dati che il database deve gestire:
-
Colonna: Estensione alle strutture di tabella tradizionali. Supporta set di colonne variabili (famiglie di colonne) ed è ottimizzato per operazioni a livello di colonna (come conteggio, somma e media media).
-
Valore-chiave: Una struttura molto semplice. Set di chiavi con nome e relativo valore (s), in genere una parte non elaborata di dati. A volte questo semplice valore può essere in realtà un documento JSON o binario.
-
Triplo: Un singolo fatto rappresentato da tre elementi:
-
L'oggetto che stai descrivendo
-
Il nome della sua proprietà o relazione con un altro soggetto
-
Il valore - o un valore intrinseco (tale come numero intero) o l'ID univoco di un altro soggetto (se si tratta di una relazione)
Ad esempio, ad Adam piace Cheese. Adam è il soggetto, likes è il predicato e Cheese è l'oggetto.
-
-
Documento: BLOB XML, JSON, di testo o binario. Qualsiasi struttura simile a un albero può essere rappresentata come un documento XML o JSON, inclusi elementi come un ordine che include un indirizzo di consegna, i dettagli di fatturazione e un elenco di prodotti e quantità.
Alcuni documenti database NoSQL supportano l'archiviazione di un elenco separato (o documento) di proprietà relative al documento.
La maggior parte dei problemi relativi ai dati può essere descritta in termini di strutture di dati precedenti. Infatti, quasi tutti i programmi per computer mai scritti rientrano in queste categorie. È quindi importante capire come è possibile archiviare, recuperare e interrogare meglio tali dati.
La buona notizia è che ora esiste un set di database per gestire correttamente ogni diverso tipo di dati, quindi non è necessario distruggere i dati in uno schema relazionale fisso (shred significa convertire strutture dati complesse in semplici eccellenze come le strutture di tabelle con le relazioni, che è sempre sembrata la cosa sbagliata da fare).
Oltre ai precedenti tipi di dati NoSQL, ecco altri due sviluppi degni di nota:
-
Motori di ricerca: Se stai memorizzando informazioni che hanno una struttura variabile o un testo copioso, hai bisogno di un modo comune per strutture per trovare informazioni rilevanti, fornite dai motori di ricerca.
-
Database NoSQL ibridi: Questi database forniscono una combinazione delle funzionalità principali di più tipi di database NoSQL, ad esempio valore-chiave, documento e negozi tripli, tutto nello stesso prodotto.
Diversi motori di ricerca e database ibridi applicano temi generali presenti nei prodotti NoSQL, ovvero, consentendo tipi di dati variabili ed essendo scalabili orizzontalmente su hardware di base. I progetti interni dei motori di ricerca e dei database ibridi NoSQL sono simili e complementari.