C'era una volta il database relazionale

Dal database relazionale al database vettoriale, in che modo i database stanno attraversando la loro maggiore evoluzione nel corso degli ultimi anni.

Immagine C'era una volta il database relazionale

Il mondo dei database ha attraversato un'evoluzione significativa nel corso degli anni, passando da sistemi rigidamente strutturati a soluzioni più flessibili e semantiche. Il database relazionale, che una volta era il protagonista indiscusso, evolverà in un nuovo spazio, quello vettoriale, introducendo un nuovo modo di organizzare e accedere ai dati.

Cos’è un database relazionale

Immaginiamo di volere organizzare le informazioni su un insieme di persone e le auto da loro possedute. Consideriamo una tabella che chiamiamo “persone”, dove ogni riga rappresenta una persona diversa, caratterizzata da colonne che ne descrivono il profilo, come il nome, l'età e il modello di auto posseduta. Poiché vogliamo organizzare le caratteristiche delle auto in maniera centralizzata e “strutturata” prenderemo un’altra tabella, che chiameremo “automobili” dove ogni riga descrive (attraverso le relative colonne) le caratteristiche dell’auto e stabilisce una connessione con la riga relativa al proprietario della tabella persone. Questo "collegamento" rappresenta la “relazione” tra le due tabelle. Ecco un esempio di come funziona un database relazionale, in cui le informazioni sono organizzate in tabelle e collegate tra loro attraverso relazioni logiche predefinite.

Le connessioni logiche prefissate per un database relazionale sono in genere abbastanza complesse e dipendono dalla natura del progetto software e delle funzionalità di gestione dei dati. Esse devono essere progettate in anticipo dal team di sviluppo. Inoltre, queste relazioni, proprio perché rigorosamente strutturate, forniscono certamente un modello solido, ma spesso limitato nella gestione dei dati (quando diventano molti) e nella evoluzione di un progetto software.

Il database non strutturato

Con l'esplosione dei dati non strutturati e la necessità di gestirne in grandi quantità (Bigdata), il paradigma del database relazionale ha iniziato da tempo a mostrare le sue lacune, per dare spazio al database non strutturato.

Pensiamo a una grande scatola piena di oggetti di tutti i tipi: giocattoli, libri, vestiti, senza un ordine specifico. Questi oggetti non avranno delle proprietà comuni, definibili come colonne valide per tutte le righe di una tabella. Un database non strutturato è simile: contiene informazioni, ma non è organizzato in righe e colonne come un database tradizionale. È come se le informazioni fossero messe insieme in modo libero. Ad esempio, potremmo avere un database non strutturato di recensioni dei clienti, dove ogni recensione potrebbe avere informazioni diverse, come il testo della recensione, l’origine, la valutazione e la data, ma senza un formato rigido.

Il database vettoriale

Abbiamo visto come il database non strutturato possa essere considerato come un database la cui struttura può mutare nel tempo, progettato per accedere alle informazioni in maniera flessibile.

Richiede comunque un intervento umano per definire una struttura dei dati e l’implementazione di una logica, volta ad estrarre “significato” dai dati.

Il database vettoriale ne è la sua naturale evoluzione. Questa nuovo approccio non si basa su connessioni logiche prefissate, ma piuttosto definisce relazioni semantiche ex post, a partire da un corpus di testi destrutturati originati da diverse fonti. Questo consente di catturare le sfumature e le connessioni tra i dati in modo più naturale, riflettendo la complessità del mondo reale.

In particolare, nel database vettoriale, i dati non sono vincolati da schemi rigidi e tabelle, ma sono rappresentati come vettori in uno spazio multidimensionale. L'uso di tecniche di machine learning, come il word embedding, permette di scoprire relazioni nascoste e di riconoscere pattern che potrebbero sfuggire ai metodi tradizionali. Ciò rende possibile l'analisi dei dati in modi che prima erano impensabili.

Inoltre, il database vettoriale è altamente scalabile (caratteristiche che eredita dal database non strutturato), in grado di gestire grandi quantità di dati, contribuendo così alla creazione di sistemi informativi più completi e accurati. Questo approccio si adatta alle mutevoli esigenze dell'analisi dei dati moderna, fornendo un modo più flessibile e dinamico di gestire l'informazione.

E non è un caso che il passaggio dal database relazionale al database vettoriale passa anche attraverso la trasformazione del database non strutturato, che sta acquisendo sempre più la “capacità semantica” di similarità dello spazio vettoriale.

Conclusioni

Questa trasformazione rappresenta un importante balzo in avanti nell'evoluzione dei sistemi di gestione dei dati. Mentre il database relazionale ha dominato il panorama per decenni, il database vettoriale offre una nuova prospettiva che si allinea meglio alla complessità e alla varietà dei dati odierni, aprendo nuove opportunità per l'analisi dei dati e la scoperta di conoscenze nascoste.

Per chi fosse interessato, in questo articolo sui database vettoriali ne esploriamo le caratteristiche principali, attraverso un linguaggio semplice e alla luce del ruolo dell'elaborazione del linguaggio naturale e dell'intelligenza artificiale.