Un database SQL, noto anche come database relazionale, è un sistema che archivia e organizza i dati in tabelle altamente strutturate con righe e colonne. Questi database utilizzano il linguaggio SQL (Structured Query Language) per leggere e scrivere i dati e sono classificati come sistemi di gestione di database relazionali (RDBMS).
Le istruzioni SQL vengono utilizzate per creare e aggiornare la struttura delle tabelle, leggere e scrivere dati, gestire le autorizzazioni dell'utente ed eseguire attività amministrative. Ad esempio, un'istruzione CREATE viene utilizzata per creare una tabella, un'istruzione INSERT aggiunge una nuova riga a una tabella e un'istruzione SELECT esegue una query del database. Le istruzioni che apportano modifiche strutturali o amministrative sono di solito riservate agli sviluppatori di software e agli amministratori, mentre le operazioni di lettura e scrittura sono eseguite dalle applicazioni degli utenti finali.
Un database relazionale mantiene la capacità di collegare le informazioni tra più tabelle. Questo formato consente di ottenere rapidamente approfondimenti sulle relazioni tra le varie colonne o i vari punti dati contenuti in queste tabelle. Un database relazionale può creare indici per colonne particolari e velocizzare la ricerca.
Ad esempio, una struttura sanitaria potrebbe avere una tabella contenente righe di informazioni sui pazienti, in cui ogni riga corrisponde a un paziente e le colonne contengono punti dati, come il nome del paziente, le informazioni assicurative e i dati di contatto. Potrebbe esserci una seconda tabella che memorizza le informazioni sulle visite. Un database relazionale utilizza un ID univoco per ogni riga, per mantenere le informazioni dei pazienti collegate nelle due tabelle. Questo consente di consultare rapidamente le visite di ogni paziente.
Registrati per una prova gratuita di qualsiasi database SQL di Google Cloud, tra cui AlloyDB, Cloud SQL e Spanner.
SQL (Structured Query Language) è un linguaggio di programmazione utilizzato per archiviare, recuperare e gestire i dati in un database relazionale. Le istruzioni SQL sono simili all'inglese, rendendo il linguaggio accessibile a sviluppatori di software, analisti di dati e altri professionisti.
Le aziende scelgono i database SQL perché sono:
Esistono numerosi motori di database SQL (prodotti) utilizzati per creare applicazioni software. Alcuni dei più popolari sono PostgreSQL, MySQL, SQL Server e Oracle. Alcuni motori del database sono open source, altri sono offerte commerciali.
PostgreSQL è un database relazionale open source a oggetti (ORDBMS) progettato per prestazioni a livello aziendale e apprezzato per la sua affidabilità e le sue valide funzionalità. La sua lunga storia di sviluppo e l'uso di SQL lo rendono uno dei database open source più popolari al mondo.
Il suo linguaggio procedurale predefinito è un'estensione di pgSQL (PL/pgSQL), con estensioni di linguaggi procedurali di Tcl, Perl e Python incluse nella distribuzione standard (scritte come PL/Tcl, PL/Perl e PL/Python). Molti altri linguaggi sono supportati tramite estensioni, tra cui Java, Ruby, C, C++, Delphi e JavaScript.
Per un confronto più approfondito, visita la nostra guida PostgreSQL ed SQL a confronto.
MySQL è un famoso database relazionale open source creato nel 1995 e attualmente sponsorizzato da Oracle. Supporta le query SQL e può essere amministrato tramite una Graphic User Interface (GUI) o una riga di comando.
MySQL può essere implementato manualmente su una macchina fisica o tramite un fornitore di servizi cloud. Le aziende scelgono sempre più servizi completamente gestiti per ridurre l'onere della manutenzione dei loro database.
SQL Server è un database di proprietà di Microsoft che esegue query SQL. Scopri le differenze tra PostgreSQL ed SQL Server.
Esistono molti motori del database non relazionale di uso comune, molti dei quali utilizzano un formato non tabulare per archiviare i dati. Alcuni supportano query simili a quelle di tipo SQL, il che ha dato origine al termine "NoSQL", ovvero "Non solo SQL".
Perché le organizzazioni usano database NoSQL non relazionali per alcune applicazioni ma continuano a utilizzare database SQL relazionali per altre? La scelta del database giusto spesso dipende dal caso d'uso. Ecco quando utilizzare SQL rispetto a NoSQL.
I database SQL sono ottimi per la gestione di dati strutturati e relazionali e di query complesse. I database SQL sono conformi ad ACID, il che li rende adatti per le informazioni transazionali, in cui i dati sono altamente strutturati. Ad esempio, gli ordini di vendita sono adatti a un database SQL perché tutti contengono le stesse colonne e l'integrità è fondamentale.
Al contrario, i database NoSQL utilizzano un formato non tabulare per archiviare i dati. I dati possono essere sotto forma di documenti, coppie chiave-valore, grafici e qualsiasi altro formato che non si adatta bene al modello relazionale. Ad esempio, un sito web è adatto a un database di documenti, poiché le pagine possono avere strutture diverse.
Ecco alcuni esempi di casi d'uso di SQL:
A differenza dei database SQL, i database NoSQL non devono gestire relazioni di dati complesse e indicizzazioni estese, quindi di solito sono altamente scalabili e offrono prestazioni coerenti. In genere, i database NoSQL sono implementati con architetture con scale out, in cui il database può aggiungere automaticamente nodi quando è necessaria una capacità aggiuntiva.
Queste proprietà dei database NoSQL li rendono ideali per le applicazioni che richiedono molta scalabilità e modifiche frequenti ai dati. Poiché il database non ha relazioni di dati complesse da mantenere, l'aggiunta di nodi ha un impatto minimo o nullo sul rendimento delle query.
Ecco alcuni degli utilizzi più comuni di NoSQL:
Scopri di più sui database NoSQL.
Inizia a creare su Google Cloud con 300 $ di crediti gratuiti e oltre 20 prodotti Always Free.