Torna all'elenco degli articoli Articoli
Tempo di lettura: 10 minuti

Il futuro di SQL

Vale la pena imparare SQL? O un linguaggio che ha più di 40 anni sarà presto superato? I database relazionali sono stati eclissati dall'avvento di altre soluzioni di database come i NoSQL? In questo articolo rispondiamo a queste domande.

Avete bisogno di aggiornare le vostre competenze informatiche? Cosa dovreste imparare per prima cosa? La scelta è scoraggiante. Se state guardando al futuro, è ovvio che volete investire il vostro tempo in qualcosa che è ancora ampiamente utilizzato e che continuerà ad esserlo negli anni a venire.

Dovreste imparare l'SQL? L'SQL è relativamente facile da padroneggiare e si dice che sia un buon punto di partenza. Ma alcuni si chiedono se sia ancora così. Ho sentito chiedere:

  • Questa tecnologia ha più di 50 anni. Non c'è qualcosa di meglio?
  • Non è forse NoSQL la tendenza del futuro?

In un mondo di tecnologie in costante evoluzione, è logico pensare che qualcosa che è stato uno standard informatico per mezzo secolo debba già avere i suoi successori. Molte soluzioni hanno cercato di minacciare il dominio di SQL, come i database XML.

Il più vicino a detronizzare SQL è stato NoSQL. Quindi perché non imparare questo invece di SQL?

Vediamo innanzitutto cosa sono SQL e NoSQL. Poi vedremo cosa usano alcune delle più grandi aziende. Infine, valuteremo se imparare l'SQL sia un passo utile per migliorare il vostro percorso professionale.

Se decidete che SQL fa per voi, LearnSQL.it è un ottimo punto di partenza. Offre corsi interattivi e pratici a tutti i livelli di competenza. Il nostro SQL per principianti insegna ai principianti come estrarre informazioni da un database e come raggrupparle e aggregarle per analizzare i dati in modi diversi. Il corso Pratica su SQL è adatto agli utenti intermedi, mentre gli utenti avanzati trarranno beneficio dalla traccia SQL avanzato traccia.

Nel frattempo, torniamo alla domanda: SQL è la cosa giusta da imparare nel 2022?

Che cos'è l'SQL?

SQL è l'acronimo di Structured Query Language. È stato sviluppato per la prima volta da IBM negli anni '70 per consentire l'accesso ai database utilizzando un linguaggio facile da imparare e simile all'inglese. È stato rapidamente adottato da altri produttori di software e presto è diventato lo standard del settore per lavorare con i database relazionali. La storia di SQL è una lettura interessante per chiunque voglia saperne di più.

L'SQL è semplice da imparare, indipendentemente dal fatto che si abbia o meno una precedente esperienza informatica. Una query di base si presenta così:

	select name, grade from employee; 

SQL è emerso in un momento cruciale della storia dei computer. In origine, i computer erano apparecchiature enormi (e molto costose) basate sulla tecnologia a valvole. Negli anni '60, grazie all'arrivo dei semiconduttori, sono diventati più piccoli e più economici. Tuttavia, solo i governi e le grandi aziende potevano permetterseli. L'hardware era molto costoso. In confronto, i programmatori che sviluppavano il software costavano poco.

 Il futuro di SQL

Poi arrivò il microchip. Improvvisamente, i prezzi dell'hardware diminuirono drasticamente e il costo dello sviluppo del software divenne la spesa principale. Ovviamente, bisognava trovare il modo di rendere il software riutilizzabile e più facile da sviluppare. L'hardware più economico significava anche che i computer erano in grado di memorizzare enormi quantità di dati.

Ciò ha comportato una rivoluzione analoga nell'industria del software e nel modo di utilizzare i dati. I database relazionali hanno reso più facile l'accesso e il controllo dei dati.

La democratizzazione dei dati - il concetto di rendere i dati disponibili direttamente agli addetti al marketing, ai manager e ai pianificatori all'interno di un'azienda - ha presto dato alle aziende che hanno adottato pratiche guidate dai dati un vantaggio, consentendo loro di utilizzare l'analisi dei dati per essere sempre un passo avanti.

SQL ha permesso agli sviluppatori e agli amministratori di database di creare, gestire e analizzare facilmente enormi quantità di dati. Inoltre, ha permesso ai responsabili delle decisioni di un'organizzazione - analisti di dati, marketer e manager - di esplorare e aggregare facilmente i dati per soddisfare le loro esigenze informative. Da quel momento in poi, potranno iniziare a prendere decisioni aziendali migliori.

Come il microchip (e, si può aggiungere, la ruota!), SQL è ancora tra noi perché fa il suo lavoro.

NoSQL - Cos'è e cosa non è

Intorno al 2009, la tendenza NoSQL ha colpito il mercato. I sostenitori dei database non relazionali sostenevano che erano più facili da usare, più facilmente scalabili e più veloci quando si lavorava con enormi insiemi di dati.

Il NoSQL, pur avendo un posto nel mercato, non ha soppiantato l'SQL. Il motivo è semplice: ogni soluzione ha uno scopo diverso.

SQL è un linguaggio per estrarre i dati. NoSQL si riferisce a un tipo di database, non a un linguaggio. Sarebbe più corretto parlare di NoSQL come di "una forma non relazionale di archiviazione di database". Ma poiché tutti i database relazionali standard utilizzano SQL per controllare e accedere ai dati, è stato coniato il termine NoSQL. I primi database NoSQL erano definiti "Non-SQL", ma la maggior parte dei fornitori di database NoSQL li definisce ora "Non solo SQL".

I database NoSQL hanno il loro posto nel settore dei dati. Sono adatti a volumi estremamente grandi di dati omogenei che devono essere facilmente scalabili e accessibili rapidamente. Un esempio potrebbe essere quello dei dettagli dei prodotti di un grande venditore online. Tutti i prodotti hanno lo stesso tipo di dettagli memorizzati: una descrizione, un prezzo e un'immagine. Tutti sono accessibili tramite ricerche predefinite simili.

Questo database di prodotti, pur consentendo un accesso molto rapido da una pagina web, non è adatto per:

  • Marketing a
  • Visualizzare le tendenze storiche.
  • Mantenere l'accuratezza e l'integrità dei dati.

In genere, questi compiti verrebbero comunque svolti utilizzando un database relazionale. In effetti, i database NoSQL sono spesso sovrapposti ai database relazionali.

E molti database NoSQL utilizzano la sintassi SQL per interrogare e manipolare i dati nel database. Amazon DynamoDB utilizza PartiQL, che si basa su SQL. Apache HBase consente di eseguire query utilizzando Drill, che utilizza la sintassi SQL.

Uno o due hanno invece linguaggi di interrogazione propri, ma in genere non sono facili da imparare o da usare e quindi non supportano la democratizzazione dei dati. A titolo di esempio, esaminiamo la stessa query in due modi. In primo luogo, useremo la sintassi SQL e in secondo luogo useremo il linguaggio di query di MongoDB.

Ecco la query in SQL:

select * from sales where country = 'United States';

Ed ecco la stessa query in MongoDB:

db.sales.find ({country : "United States" } )

Le grandi aziende usano i database SQL? Usano NoSQL?

La risposta a queste domande è spesso sì e sì. Quando facciamo un viaggio, scegliamo il tipo di trasporto che meglio si adatta alle nostre esigenze del momento. Sceglieremmo una barca per visitare un'isola, un aereo per visitare un altro continente e i nostri piedi per visitare il vicino di casa.

Allo stesso modo, una grande azienda, che ha molte esigenze diverse, sceglie il tipo di software giusto per i diversi lavori.

 Il futuro di SQL

La maggior parte delle grandi aziende utilizza un'architettura di persistenza poliglotta, ovvero utilizza diverse tecniche di archiviazione dei dati per soddisfare le diverse esigenze dell'organizzazione.

Google, ad esempio, ha un mix di database relazionali e NoSQL, ciascuno adatto a un compito diverso. Google BigTable è un database NoSQL adatto a grandi carichi. A questo si aggiunge Spanner, il loro database relazionale. BigQuery è un database SQL relazionale usato per il data warehousing, che viene utilizzato per estrarre vari tipi di dati analitici.

La filiale di Google, YouTube, utilizza MySQL (un dialetto SQL e un sistema di database molto diffuso) come struttura principale per l'archiviazione dei dati. Ma per dare scalabilità al sistema, lo gestisce utilizzando l'utility di clustering di database Vitess.

Quindi, sebbene Google utilizzi NoSQL al posto giusto, i database relazionali e SQL sono e continueranno a essere una parte essenziale della sua tecnologia.

Le esigenze diUber in termini di dati sono varie. Un gran numero di autisti e passeggeri ha bisogno di un accesso immediato ai dati per coordinare le esigenze di trasporto. Gli analisti dei dati hanno bisogno di accedere a petabyte di dati per pianificare e sincronizzare le operazioni. Gli sviluppatori hanno bisogno di accedere ai dati per migliorare ed espandere i servizi di Uber.

Uber utilizza Hadoop per consentire la scalabilità orizzontale dei suoi vasti archivi di dati. La gestione del database sottostante è fornita dai server MySQL. Le interrogazioni possono essere effettuate in diversi modi, tra cui SQL puro e Presto, che utilizza anche la sintassi SQL.

Facebook si basa sulla tecnologia MySQL attraverso il proprio motore di database MySQL chiamato MyRocksDB.

Quindi, possiamo vedere che l'SQL è parte integrante delle operazioni delle grandi aziende e probabilmente lo rimarrà anche nel prossimo futuro.

Sapevate che i dipendenti di Uber imparano su LearnSQL.it? Finora, più di 10.000 dipendenti di Uber hanno usufruito di corsi sulla piattaforma. Per saperne di più sulla nostra collaborazione, consultate lo studio di caso.

Questo ci porta a un'altra domanda:

Imparare SQL aiuterà la vostra carriera?

L'accesso ai dati per analizzarli e prendere decisioni è importante in molte carriere diverse. I dirigenti del marketing devono analizzare le tendenze passate e prevedere quelle future. I manager hanno bisogno di esaminare varie metriche di performance per poter prendere decisioni valide. Gli specialisti di molti settori (scienza, economia, agricoltura e così via) devono essere in grado di interpretare correttamente i dati del mondo reale.

E il personale IT deve rimanere al passo con la tecnologia per mantenere le proprie competenze aggiornate. Il sondaggio annuale di Stack Overflow è un buon indicatore delle competenze più utilizzate nel settore. Di seguito sono riportate le 20 competenze più richieste al momento. Si può notare che SQL è al terzo posto tra le tecnologie più richieste nel 2022:

 Il futuro di SQL

Fonte: Sondaggio sugli sviluppatori di Stack Overflow 2022

TIOBE è un'organizzazione che misura la qualità del software. L'indice TIOBE tiene traccia dell'attuale popolarità dei linguaggi di programmazione, stilando ogni mese un elenco della Top 20. Mentre altri linguaggi vanno e vengono a seconda delle mode, SQL mantiene costantemente un posto in questa lista.

Per chi ha poche o nessuna competenza informatica, SQL è un ottimo punto di partenza. Imparare le query di base è semplice e permette di entrare rapidamente nel mondo dei dati.

Per coloro che sono già esperti di informatica, è necessario migliorare le proprie competenze in SQL per includere query complesse e manipolazione dei dati. Questo vale sia che siate sviluppatori di software, analisti di dati, analisti aziendali o ingegneri dei dati.

Quali carriere sono favorite dall'apprendimento dell'SQL?

L'SQL è un importante trampolino di lancio per molte carriere, tra cui:

  • Amministrazione di database
  • Business intelligence
  • Analisi aziendale
  • Ingegneria del software
  • Analisi di mercato

Quanto ci si può aspettare di guadagnare in queste carriere? Diamo un'occhiata ad alcune statistiche tratte da Indeed - un mercato del lavoro internazionale di prim'ordine:

 Il futuro di SQL

Dati da Indeed.com

Sempre secondo Indeed, i principali datori di lavoro in queste professioni sono:

Business AnalystBusiness IntelligenceDatabase AdministratorSoftware EngineerMarket Analyst
IntuitUlineTata ConsultancyTeslaTacoma Public Utilities
Fannie MaeAcostaOracleCitiCredit Suisse
OracleUSAAVerizonAppleDISYS
GoogleTwitterEYWalmartSelby Jennings
TIAAAppleUnited AirlinesMetaApplied Materials

Dati da Indeed.com

Come iniziare a imparare l'SQL

Abbiamo visto che l'SQL è ancora una competenza estremamente importante, sia per gli sviluppatori sia per chiunque abbia bisogno di analizzare e utilizzare i dati.

LearnSQL.it La nostra azienda offre un'ampia gamma di corsi di SQL che possono portarvi dal principiante all'esperto. Al momento in cui scriviamo, offriamo 66 corsi diversi con oltre 6.000 attività interattive.

Se sapete già di voler imparare l'SQL, il nostro SQL per principianti è un'ottima introduzione. Se invece desiderate portare le vostre competenze fino al livello di esperto, la traccia è un'esperienza di apprendimento completa che vi fornirà tutto ciò di cui avete bisogno per migliorare le vostre capacità. SQL dalla A alla Z è un'esperienza di apprendimento completa che vi fornirà tutto ciò di cui avete bisogno per migliorare le vostre capacità di analisi dei dati. Oppure navigate per trovare il corso SQL più adatto alle vostre esigenze specifiche.

In conclusione: Imparate l'SQL oggi stesso: potrebbe essere la migliore mossa di carriera che abbiate mai fatto. SQL è a prova di futuro!