Vai a

Cos'è un database relazionale?

Un database relazionale è una raccolta di informazioni che organizza i dati in relazioni predefinite in cui i dati vengono archiviati in una o più tabelle (o "relazioni") di colonne e righe, semplificando la visualizzazione e la comprensione di come le diverse strutture di dati sono correlate tra loro. Le relazioni sono una connessione logica tra le diverse tabelle, stabilite sulla base dell'interazione tra queste.

Scopri come i database relazionali di Google Cloud, Cloud SQL, Cloud Spanner e AlloyDB per PostgreSQL possono aiutarti a ridurre i costi operativi e a creare applicazioni trasformative.

Iniziamo? Crea un'istanza di prova gratuita di Cloud Spanner per 90 giorni con 10 GB di spazio di archiviazione senza costi aggiuntivi.

Definizione di database relazionale

Un database relazionale (RDB) è un modo per strutturare le informazioni in tabelle, righe e colonne. Un RDB consente di stabilire collegamenti (o relazioni) tra le informazioni unendo le tabelle, il che semplifica la comprensione e l'acquisizione di insight in merito alla relazione tra i vari punti dati. 

Il modello di database relazionale

Sviluppato da EF Codd di IBM negli anni '70, il modello di database relazionale consente di collegare qualsiasi tabella a un'altra tabella utilizzando un attributo comune. Invece di utilizzare strutture gerarchiche per organizzare i dati, Codd ha proposto la transizione all'utilizzo di un modello dei dati in cui i dati sono accessibili, vengono archiviati e correlati nelle tabelle senza riorganizzare le tabelle che li contengono. 

Pensa al database relazionale come a una raccolta di file foglio di lavoro che aiutano le aziende a organizzare, gestire e correlare i dati. Nel modello di database relazionale, ogni "foglio di lavoro" è una tabella che archivia le informazioni, rappresentate come colonne (attributi) e righe (record o tuple). 

Gli attributi (colonne) specificano un tipo di dati e ogni record (o riga) contiene il valore di quel tipo di dati specifico. Tutte le tabelle in un database relazionale hanno un attributo noto come chiave primaria, che è un identificatore univoco di una riga e ogni riga può essere utilizzata per creare una relazione tra tabelle diverse utilizzando una chiave esterna: un riferimento a una chiave primaria di un'altra tabella esistente.

Diamo un'occhiata al funzionamento del modello di database relazionale: 

Supponiamo di avere una tabella Cliente e una tabella Ordine .

I database relazionali consentono di stabilire connessioni logiche tra i dati correlati.

La tabella Cliente contiene i dati relativi al cliente: 

  • ID cliente (chiave primaria)
  • Nome cliente
  • Indirizzo di fatturazione
  • Indirizzo di spedizione 

Nella tabella Cliente, l'ID cliente è una chiave primaria che identifica in modo univoco il cliente che si trova nel database relazionale. Nessun altro cliente può avere lo stesso ID cliente. 

La tabella Ordine contiene le informazioni sulle transazioni relative a un determinato ordine: 

  • ID ordine (chiave primaria)
  • ID cliente (chiave esterna)
  • Data ordine 
  • Data di spedizione
  • Stato dell'ordine

Qui la chiave primaria per identificare un ordine specifico è l'ID ordine. Puoi collegare un cliente a un ordine utilizzando una chiave esterna per collegare l'ID cliente dalla tabella Cliente

Le due tabelle sono ora correlate in base all'ID cliente condiviso, il che significa che puoi eseguire query su entrambe le tabelle per creare report formali o utilizzare i dati per altre applicazioni. Ad esempio, un manager di un settore retail potrebbe generare un report su tutti i clienti che hanno effettuato un acquisto in una data specifica o scoprire per quali clienti è stata ritardata la data di consegna dell'ordine nell'ultimo mese. 

La spiegazione precedente è pensata per essere semplice. Ma i database relazionali sono ottimi anche per mostrare relazioni molto complesse tra i dati, consentendoti di fare riferimento ai dati in più tabelle, a condizione che i dati siano conformi allo schema relazionale predefinito del database. 

Poiché i dati sono organizzati come relazioni predefinite, puoi eseguire query sui dati in modo dichiarativo. Una query dichiarativa è un modo per definire ciò che si vuole estrarre dal sistema senza esprimere in che modo il sistema deve calcolare il risultato. Questo è alla base di un sistema relazionale, diversamente da altri sistemi.

Esempi di database relazionali

Ora che hai compreso il funzionamento dei database relazionali, puoi iniziare a conoscere i numerosi sistemi di gestione di database relazionali che utilizzano il modello di database relazionale. Un sistema di gestione di database relazionali (RDBMS) è un programma utilizzato per creare, aggiornare e gestire i database relazionali. Tra i più noti RDBMS figurano MySQL, PostgreSQL, MariaDB, Microsoft SQL Server e Oracle Database. 

I database relazionali basati su cloud come Cloud SQL, Cloud Spanner e AlloyDB sono diventati sempre più popolari poiché offrono servizi gestiti per la manutenzione dei database, l'applicazione di patch, la gestione della capacità, il provisioning e il supporto all'infrastruttura. 

Iniziamo? Crea un'istanza di prova gratuita di Cloud Spanner per 90 giorni con 10 GB di spazio di archiviazione senza costi aggiuntivi.

Vantaggi dei database relazionali

Il vantaggio principale del modello di database relazionale è che offre un modo intuitivo per rappresentare i dati e consente di accedere facilmente ai punti dati correlati. Di conseguenza, i database relazionali sono più comunemente utilizzati dalle organizzazioni che devono gestire grandi quantità di dati strutturati, dal monitoraggio dell'inventario all'elaborazione dei dati transazionali fino al logging delle applicazioni. 

L'utilizzo dei database relazionali per la gestione e l'archiviazione dei dati offre numerosi vantaggi, tra cui: 

Flessibilità

È facile aggiungere, aggiornare o eliminare tabelle, relazioni e apportare altre modifiche ai dati ogni volta che ne hai bisogno, senza modificare la struttura complessiva del database o senza interferire con le applicazioni esistenti.

Conformità ACID

I database relazionali supportano le prestazioni ACID (Atomicità, Coerenza, Isolamento, Durabilità) per garantire la validità dei dati indipendentemente da errori, guasti o altri potenziali incidenti.

Facilità di utilizzo

È facile eseguire query complesse utilizzando SQL, che consente anche agli utenti non esperti di imparare a interagire con il database.

Collaborazione

Più persone possono operare e accedere ai dati contemporaneamente. Il blocco integrato impedisce l'accesso simultaneo ai dati in fase di aggiornamento. 

Sicurezza integrata

La sicurezza basata su ruoli garantisce che l'accesso ai dati sia limitato a utenti specifici.

Normalizzazione del database

I database relazionali utilizzano una tecnica di progettazione nota come normalizzazione che riduce la ridondanza dei dati e migliora l'integrità dei dati. 

Confronto tra database relazionali e non relazionali

La differenza principale tra database relazionali e non relazionali (database NoSQL) è la modalità di archiviazione e organizzazione dei dati. I database non relazionali non archiviano i dati in formato tabulare basato su regole. Archiviano invece i dati come singoli file scollegati e possono essere utilizzati per tipi di dati complessi e non strutturati, come documenti o file rich media.

A differenza dei database relazionali, i database NoSQL seguono un modello di dati flessibile, che li rende ideali per l'archiviazione di dati che cambiano spesso o per applicazioni che gestiscono diversi tipi di dati. 

Risolvi le tue sfide aziendali con Google Cloud

Crea un'istanza di prova gratuita di Cloud Spanner per 90 giorni con 10 GB di spazio di archiviazione senza costi aggiuntivi.
Inizia
Parla con un esperto del team di vendita di Google Cloud per discutere della tua sfida unica in modo più dettagliato.
Contattaci

Google Cloud offre una gamma di servizi di database relazionali completamente gestiti, pensati per soddisfare le tue esigenze aziendali, dal ritiro dei data center on-premise all'esecuzione di applicazioni SaaS, fino alla migrazione dei sistemi aziendali principali. 

Le nostre offerte di database relazionali offrono un'ampia scelta di opzioni per lo spostamento dei carichi di lavoro nel cloud mai vista prima d'ora. Offri ai tuoi sviluppatori maggiore flessibilità e libertà, in modo che abbiano più tempo per concentrarsi sulla creazione delle migliori app possibili.