Azure Synapse: caratteristiche, funzionamento e pricing

Azure Synapse è una piattaforma di analisi integrata messa a disposizione da Microsoft, progettata per gestire e analizzare grandi volumi di dati che combina l'elaborazione dei big data con strumenti avanzati di business intelligence, permettendo alle organizzazioni di ottenere insight rapidi e significativi dalle informazioni raccolte. Synapse mette a disposizione degli utenti un vasto numero di funzionalità, tra cui l'integrazione nativa con Apache Spark, SQL on-demand e strumenti di orchestrazione allo stato dell’arte. In questo articolo, vedremo meglio cos’è Azure Synapse e esploreremo le sue caratteristiche principali per scoprire come può aiutare il proprio business a trarre il massimo dai propri dati.

Cosa troverai in questo articolo

  • Cos’è Azure Synapse?
  • L’architettura di Azure Synapse
  • Azure Synapse: vantaggi d’uso principali
  • Azure Synapse vs. Data Factory
  • Azure Synapse Pricing: costi e ottimizzazione
Azure Synapse: caratteristiche, funzionamento e pricing

Cos’è Azure Synapse?

Dovrebbe essere ormai chiaro a chiunque che, nel panorama enterprise contemporaneo, la corretta gestione e analisi dei dati è ormai ben più di una semplice “buona prassi”. Il volume di dati generato da individui e organizzazioni sta crescendo a un ritmo fenomenale. Questi dati alimentano le aziende e altre organizzazioni fornendo una base per soluzioni analitiche descrittive, diagnostiche, predittive e prescrittive che supportano il processo decisionale e i sistemi autonomi, offrendo approfondimenti in tempo reale sui modelli consolidati ed emergenti.

È diventato fondamentale, per tutte quelle compagnie che vogliono rimanere in testa ai loro competitor, saper manipolare ed estrarre informazioni rilevanti che possono aiutarle nella crescita del proprio business. E con la mole incredibile di dati raccolti ogni giorno, ingegneri e analisti dati hanno bisogno di strumenti che gli permettano di svolgere le loro mansioni in maniera rapida ed efficiente.

Ed è qui che entra in gioco Azure Synapse, il servizio di data warehousing e analisi fornito tramite la piattaforma cloud Microsoft Azure. Synapse offre un'interfaccia semplificata per l'acquisizione di enormi quantità di dati provenienti da diversi archivi di dati in un data lake integrato e data warehouse personalizzati, dove gli utenti possono eseguire query analitiche altamente ottimizzate sui dati che possono integrarsi con strumenti di machine learning e business intelligence (BI).

La piattaforma, originariamente conosciuta come Azure SQL Data Warehouse, è stata evoluta e ampliata per includere molte più funzionalità, portando al rilancio del servizio sotto il nome di Azure Synapse. Questo cambiamento ha segnato un ampliamento delle capacità del servizio per includere non solo data warehousing, ma anche l'integrazione dei dati e il supporto per big data, diventando uno strumento estremamente utile per tutte quelle aziende che desiderano trarre il massimo della conoscenza e del profitto dai propri dati.

Ma come funziona nello specifico? Diamogli un’occhiata più da vicino e scopriamolo.

Sai che aiutiamo i nostri clienti nella gestione dei loro tenant Azure?

Abbiamo creato il team Infra&Security, verticale sul cloud Azure, per rispondere alle esigenze dei clienti che ci coinvolgono nelle decisioni tecniche e strategiche. Oltre a configurare e gestire il loro tenant, ci occupiamo di:

  • ottimizzare i costi delle risorse
  • implementare procedure di scaling e high availability
  • creare deployment applicativi tramite le pipeline di DevOps
  • monitoring
  • e soprattutto security!

Con Dev4Side, hai un partner affidabile in grado di supportarti sull'intero ecosistema applicativo di Microsoft.

L’architettura di Azure Synapse

Synapse di Microsoft Azure è una piattaforma che si inserisce nel panorama delle applicazioni di Online Analytical Processing (OLAP), generalmente utilizzate per archiviare e processare grandi volumi di dati raccolti da varie fonti, che possono essere trasformati e/o modellati nel repository OLAP. Successivamente, i grandi dataset vengono aggregati per report ad hoc e casi d'uso analitici.

Come già accennato nell’introduzione, Synapse è un'evoluzione di Azure SQL Data Warehouse, un database relazionale basato su cloud, con Massively Parallel Processing (o MPP, una forma di elaborazione dei dati che coinvolge l'uso di molteplici processori per eseguire compiti computazionali in parallelo) e scalabilità orizzontale, progettato per elaborare e memorizzare grandi volumi di dati all'interno della piattaforma cloud Microsoft Azure.

La piattaforma supporta diversi linguaggi come SQL, Python, .NET, Java, Scala e R e supporta due tipi di runtime analitici, SQL e Spark, che possono elaborare dati in modalità batch, streaming e interattiva ed è inoltre integrata con numerosi altri servizi di dati di Azure, ad esempio Azure Data Catalog, Azure Lake Storage, Azure Databricks, Azure HDInsight, Azure Machine Learning e Power BI.

Per comprendere meglio la sua architettura andiamo a vedere i suoi pilastri fondamentali un po’ più nel dettaglio.

Azure Synapse Studio

Synapse Studio è un tool SaaS basato sul web che permette agli sviluppatori di lavorare con ogni aspetto della piattaforma da una singola console. Si tratta in buona sostanza della nostra plancia di comando.

Nel ciclo di sviluppo di una soluzione analitica utilizzando Synapse, si inizia generalmente creando uno spazio di lavoro e lanciando questo tool che fornisce accesso alle diverse funzionalità di Synapse come l'importazione dei dati tramite meccanismi di importazione o pipeline dati, la creazione di flussi dati, l'esplorazione dei dati tramite notebook, l'analisi dei dati con job Spark o script SQL, e infine la visualizzazione dei dati per scopi di reporting e creazione di dashboard.

Questo strumento fornisce anche funzionalità per la creazione di artefatti, il debug del codice, l'ottimizzazione delle performance mediante l'analisi di metriche, l'integrazione con strumenti CI/CD e molto altro ancora.

Panoramica di Azure Synapse Studio

Strumenti per l’integrazione dati

Ci sono diversi strumenti che possono essere utilizzati per caricare i dati in Synapse. Tuttavia, avere un motore di orchestrazione integrato aiuta a ridurre la dipendenza e la gestione di istanze di strumenti separati e di pipeline dati.

Synapse include un motore di orchestrazione integrato identico a quello di Azure Data Factory per creare pipeline dati e ricche capacità di trasformazione dei dati direttamente nello spazio di lavoro di Synapse stesso.

Le principali caratteristiche includono il supporto di oltre 90 origini dati, tra cui quasi 15 origini dati basate su Azure, 26 data warehouse e database open-source e cross-cloud, 6 origini dati basate su file, 3 origini dati basate su NoSQL, 28 servizi e app che possono fungere da fornitori di dati, nonché 4 protocolli generici, tra cui ODBC e REST. Le pipeline possono essere create utilizzando modelli integrati da Synapse Studio per integrare dati da varie fonti.

Synapse SQL Pools

Synapse SQL è il motore di analisi basato su T-SQL di Azure Synapse, progettato per la manipolazione ad alte prestazioni dei dati strutturati. Questa funzionalità fornisce le stesse caratteristiche di data warehousing che erano disponibili nelle versioni precedenti di questo servizio, dove viene allocata una capacità fissa di unità DWU (Data Warehouse Units, unità di calcolo che determinano la potenza e la capacità di elaborazione dei dati) all'istanza del servizio per l'elaborazione dei dati.

La novità in Synapse è che ora questo motore è disponibile sia nella tradizionale modalità Provisioned che nella nuova modalità On-demand.

Synapse ha introdotto una serie di miglioramenti nei pool SQL a partire dalle capacità di gestione dei workload, che consentono agli utenti di perfezionare l'allocazione delle risorse tra questi ultimi. C'è anche la funzionalità COPY ad alte prestazioni per il caricamento dei dati da account di storage esterni. Infine, miglioramenti come la clausola PREDICT integrano l'AI e il machine learning permettendo la valutazione nativa dei modelli direttamente all'interno di Transact-SQL.

SQL on-demand è un’aggiunta degna di nota perché affronta un problema che, in passato, era un compromesso intrinseco nel design dei sistemi di dati aziendali. La realtà degli ecosistemi dati è che i modelli di domanda variano sensibilmente per tutta una serie di ragioni ed è necessario prendere decisioni architetturali difficili basate su quanta capacità di calcolo è necessario allocare per eseguire analisi e gestire compiti ausiliari e dove posizionare i dati all’interno dell'architettura. Questo può portare a situazioni in cui la spesa per la gestione può diventare eccessiva se si calcola male per eccesso e malfunzionamenti o comportamenti erratici del sistema se lo si fa per difetto. Tutti scenari in cui nessuno vorrebbe ritrovarsi.

Il calcolo on-demand affronta questi carichi di lavoro imprevedibili e fornisce un altro set di strumenti all'interno dell'architettura dei dati. Esplorare il Data Lake, che sia memorizzato come Parquet, Orc o CSV, è adesso facile come un clic destro.

SQL On-demand include anche nuovi miglioramenti per i compiti ELT/Extract, Transform, Load, con funzionalità come parser di testo delimitato ottimizzati per le prestazioni. La potenza grezza e la familiarità di SQL Server possono essere sfruttate quando si prototipano query o si svolgono altri compiti ad hoc senza dover stimare il carico anticipato sul calcolo primario.

Componenti dell'architettura di Azure Synapse SQL

Apache Spark per Azure Synapse

I pool di Apache Spark completano l'elenco delle opzioni di calcolo di Azure Synapse con un potente motore MPP progettato per l'elaborazione in memoria dei Big Data, ideale per carichi di lavoro semi-strutturati o non strutturati, tipici dei casi d'uso dell'Internet delle cose (IoT) e del machine learning.

L'implementazione di Synapse è nativamente disponibile dall'hub Develop, dove è possibile creare direttamente Notebook utilizzando un editor avanzato. Anche i servizi cognitivi e il machine learning sono integrati nativamente. Con un clic destro nell'hub Data, popolato da wizard configurati intelligentemente dai Linked Services e da altri artefatti di configurazione, è possibile creare Notebook iniziali che utilizzano questi servizi.

Microsoft ha messo molta attenzione su come aumentare la produttività, indipendentemente dal fatto che l'utente finale sia un data scientist, un data engineer o un semplice utente business. Synapse facilita l'esplorazione dei dati di base attraverso la creazione di grafici e aggregazioni integrate. IntelliSense è integrato in tutti gli editor e si possono utilizzare più linguaggi all'interno dello stesso Notebook, tra cui Python (PySpark), C#, Scala o Spark SQL.

Analisi dei Big Data con Azure Synapse

Azure Synapse: vantaggi d’uso principali

La flessibilità di Azure Synapse può aiutare organizzazioni di tutte le tipologie e dimensioni a costruire un moderno panorama dei dati che consenta approfondimenti basati sui dati provenienti da tutte le fonti e può essere scalato e personalizzato per una moltitudine di settori differenti.

Vediamo quindi quali sono i vantaggi principali che il servizio può offrire a chi decide di sfruttarne l’enorme potenziale per l’analisi e la gestione dei dati:

  • Sfruttare al massimo i propri dati: sia che si tratti di un Data Warehouse on-premises o di un sistema Big Data nel cloud, puoi utilizzare Azure Synapse per integrare, connettere e analizzare dati strutturati e non strutturati da una vasta gamma di fonti. Synapse permette di usare modelli di machine learning per previsioni aziendali affidabili e ottenere nuovi approfondimenti dai dati di streaming e IoT in tempo reale, permettendo di poter fare sempre affidamento su una base di dati coerente e aggiornata per rispondere al meglio alle richieste aziendali.
  • Ambiente low code e UI intuitiva per la gestione delle pipeline dati: la disponibilità di funzionalità di data flow, un motore di orchestrazione integrato e la connettività con oltre 90 fonti di dati, sono tra i moltissimi elementi che lavorano insieme per abilitare lo sviluppo di pipeline di dati e trasformazioni dei dati tramite un ambiente low code e un'interfaccia visiva accessibile, permettendo di tenere sempre sotto controllo i propri processi basati sui dati e sviluppare nuove soluzioni analitiche "end-to-end" più rapidamente.
  • Controllo degli accessi e sicurezza migliorati: Microsoft ha integrato una suite completa di disposizioni per la sicurezza e la privacy in Azure Synapse e la piattaforma aderisce a quasi 30 standard di conformità certificati per quanto riguarda la sicurezza e il trattamento dei dati. Le aziende hanno accesso a funzionalità come la crittografia dei dati sempre attiva, l'autenticazione tramite Azure Active Directory, il rilevamento automatico delle minacce e il collegamento privato. Inoltre, con opzioni di sicurezza capillari a livello di colonna e di riga, il mascheramento dinamico per la protezione dei dati in tempo reale, la scoperta e la classificazione dei dati sensibili, ecc., consente lo scambio di dati aziendali con informazioni sensibili garantendo sempre il massimo della protezione.

Azure Synapse vs. Data Factory

La presenza di numerosi servizi dedicati alla gestione e all’analisi dei dati all’interno dell’offerta di Microsoft Azure può generare un po’ di confusione negli utenti che si stanno avvicinando per la prima volta alla piattaforma di cloud computing della casa di Redmond.

Vediamo quindi di cominciare a fare un po’ di chiarezza andando a delineare le differenze tra Synapse e un altro dei servizi più utilizzati all’interno della piattaforma Azure, ovvero Data Factory e cerchiamo di capire in quale contesto è meglio utilizzare uno dei due.

Azure Synapse e Azure Data Factory sono entrambi componenti essenziali delle offerte di integrazione e analisi dei dati di Microsoft, ma servono scopi diversi e si rivolgono a casi d'uso distinti.

Synapse è un servizio di analisi completo che combina big data e data warehousing. Offre ampie capacità di elaborazione dei dati, supporta vari linguaggi di programmazione (come SQL, Python e Spark) e si integra profondamente con strumenti di machine learning e piattaforme di business intelligence come Power BI. Questo lo rende adatto per analisi avanzate, trasformazioni dei dati in tempo reale e necessità di data warehousing su larga scala​.

Azure Data Factory è invece un servizio di integrazione dei dati focalizzato sui processi ETL (estrazione, trasformazione, caricamento). Consente la creazione di pipeline di dati attraverso un'interfaccia grafica, supportando varie fonti e destinazioni di dati. Si concentra principalmente su soluzioni senza codice per la trasformazione e l'integrazione delle informazioni; tuttavia, non offre la stessa ampiezza di capacità analitiche o flessibilità di programmazione di Azure Synapse.

Entrambi i servizi facilitano l'integrazione e la trasformazione dei dati ma Azure Synapse fornisce una piattaforma più robusta per l'analisi completa e il data warehousing, sfruttando vari ambienti di programmazione e un'integrazione più profonda con il machine learning mentre Azure Data Factory, invece, è progettato per l'orchestrazione delle pipeline di dati e operazioni ETL semplici e scalabili.

Se si desidera solo connettere e trasformare i dati senza scrivere codice, si dovrebbe optare per Azure Data Factory. Tuttavia, non consente di personalizzare le pipeline di dati oltre le sue capacità senza codice. Nel caso in cui si stesse invece cercando una maggiore flessibilità e controllo, Azure Synapse è la scelta migliore.

Architettura BI automatizzata basata su Azure Synapse e Azure Data Factory

Azure Synapse Pricing: costi e ottimizzazione

Azure Synapse offre diversi modelli di pricing per adattarsi alle diverse esigenze delle aziende.

Il modello "Pay-as-you-go" è ideale per aziende con carichi di lavoro variabili o imprevedibili. Con questo modello, le aziende pagano solo per le risorse effettivamente utilizzate, senza impegni a lungo termine. Questo approccio permette di adattare dinamicamente la potenza di calcolo e lo storage in base alle necessità reali, riducendo così gli sprechi di risorse e i costi inutili.

Il modello "Serverless" è invece progettato per carichi di lavoro sporadici o imprevedibili, dove non è necessario mantenere un'infrastruttura costantemente attiva. Con il modello serverless, le aziende pagano solo per le query eseguite, basandosi sulla quantità di dati elaborati. Questo approccio è particolarmente vantaggioso per scenari di analisi ad hoc, dove le richieste di calcolo possono variare significativamente.

Infine, il modello "Reserved Capacity" è pensato per aziende con carichi di lavoro prevedibili e costanti che necessitano di analisi regolari. Sottoscrivendo una capacità riservata per un periodo di uno o tre anni, le aziende possono beneficiare di sconti significativi rispetto al modello "Pay-as-you-go". Questo modello offre una gestione dei costi più prevedibile e consente di pianificare meglio il budget IT.

Per quanto riguarda le variabili, ci sono diversi fattori da tenere in considerazione che possono influire in maniera sostanziale sul costo del servizio, come lo storage, il trasferimento dei dati, i backup e il monitoraggio.

Il calcolo (in sostanza la potenza di elaborazione), è addebitato in base alle DWU. Più alta è la quantità di DWU allocata, maggiore sarà la potenza di calcolo e, di conseguenza, i costi. Il calcolo viene addebitato su base oraria, il che significa che si paga solo per le ore in cui il data warehouse è attivo.

Per quanto riguarda lo storage, i costi sono legati al volume dei dati memorizzati e alla loro replicazione. Azure Synapse addebita lo storage in base al volume totale dei dati, arrotondato al terabyte più vicino. Questo include non solo i dati primari ma anche sette giorni di snapshot incrementali. Ad esempio, se un data warehouse contiene 1.5 TB di dati e ha 100 GB di snapshot, i costi di storage saranno calcolati su 2 TB.

Il trasferimento dei dati comporta costi sia per l'ingresso (ingress) che per l'uscita (egress). I costi di ingresso sono generalmente gratuiti, ma l'uscita, specialmente se tra regioni diverse, può diventare costosa. Se, ad esempio, volessimo trasferire dati da un data center di Azure in Europa a uno negli Stati Uniti questo comporterebbe costi aggiuntivi che possono aumentare rapidamente se i volumi di dati sono elevati.

Le operazioni di backup e ripristino hanno costi variabili in base alla frequenza e alla durata dei backup che si decide di effettuare. Maggiore è la frequenza e più lungo è il periodo di conservazione dei backup, maggiori saranno i costi associati.

Per informazioni più dettagliate sui prezzi Microsoft mette a disposizione un comodo strumento di calcolo (disponibile qui), che permette di calcolare le opzioni di pricing in base a regione geografica, valuta, tipologia di servizio e tempo di impiego (calcolabile in ore o mesi).

Ottimizzare i costi di Azure Synapse

Vista la quantità di variabili che possono influire sul prezzo, è importante per le aziende adottare strategie per ottimizzare l’utilizzo delle risorse messe a disposizione dal servizio e ridurre la spesa per le proprie operazioni. Diamo un’occchiata quindi alle best practice che le organizzazioni possono usare per trarre il massimo vantaggio dalla potenza e dalla flessibilità di Azure Synapse tenendo comunque un occhio al portafogli.

Una delle tecniche più efficaci è utilizzare le funzionalità di pausa e ripresa, che consentono di interrompere temporaneamente l'attività del data warehouse quando non è in uso, risparmiando sui costi di calcolo. Si può impostare uno schedule automatico che metta in pausa il data warehouse durante le ore non lavorative e lo riattivi durante gli orari di picco, garantendo che si paghi solo per il tempo effettivo di utilizzo.

Ridimensionare le risorse in base ai carichi di lavoro è un'altra tecnica estremamente utile, aumentando la capacità di calcolo durante i periodi di elevata attività e ridurla durante i periodi di bassa attività. Azure Synapse consente di scalare le Data Warehouse Units (DWU) in modo dinamico, permettendo di adattare le risorse alle necessità del momento e ottimizzare i costi.

Anche l’utilizzo di tecniche di compressione dei dati avanzate è un ulteriore metodo di ottimizzazione delle risorse che può ridurre significativamente lo spazio necessario per archiviare i dati e, di conseguenza, far risparmiare notevoli quantità di denaro.

Infine, strumenti integrati come Azure Synapse Studio e Azure Cost Management and Billing forniscono una panoramica dettagliata delle prestazioni delle query e dei costi associati e il loro utilizzo può seriamente fare la differenza per il proprio budget.

Il primo offre funzionalità di monitoraggio in tempo reale che permettono di osservare l'uso delle risorse e le prestazioni delle query, fornendo insights dettagliati per ottimizzare l'infrastruttura. Il secondo, invece, consente di monitorare e gestire le spese, identificando aree di overspending e fornendo raccomandazioni per migliorare il rapporto costo/efficienza.

Conclusioni

Con la capacità di integrare dati provenienti da diverse fonti e di eseguire analisi sofisticate in tempo reale, Synapse si posiziona come un pilastro fondamentale nell'ecosistema di Azure e rappresenta una solida soluzione per le aziende alla ricerca di una piattaforma integrata e scalabile per l'analisi dei dati.

Synapse rappresenta un importante asset per le organizzazioni relativamente nuove al cloud perché può semplificare il processo di adozione del cloud e ridurre gran parte della complessità associata all'approccio tradizionale con applicazioni in silos.

Anche per le organizzazioni in una fase intermedia e avanzata che hanno già investito in Data Lakes, costruito SQL Data Warehouses o possiedono asset significativi in Power BI il passaggio a Synapse potrebbe essere un investimento degno di considerazione. In generale, il percorso di migrazione è diretto e la sua integrazione con le capacità più convincenti di Azure, inclusi machine learning e servizi cognitivi, lo rende un investimento dal grande potenziale per l’ampliamento delle funzionalità delle proprie infrastrutture digitali.

FAQ su Azure Synapse

Cos'è Azure Synapse?

Azure Synapse è un servizio integrato di analisi dei dati su Microsoft Azure, che combina integrazione dei dati, data warehousing e analisi di big data, offrendo strumenti come SQL, Spark e integrazione con il machine learning.

Quali sono le principali caratteristiche di Azure Synapse?

Azure Synapse offre funzionalità come Synapse Studio per la gestione unificata, strumenti di integrazione dei dati, pool SQL per l'analisi di dati strutturati e Apache Spark per l'elaborazione di big data.

Come si confronta Azure Synapse con Azure Data Factory?

Azure Synapse è una piattaforma analitica completa per l'elaborazione avanzata dei dati e l'analisi di big data, mentre Azure Data Factory si concentra sui processi ETL e la creazione di pipeline di dati.

Qual è il modello di prezzo di Azure Synapse?

Azure Synapse offre modelli di prezzo flessibili come Pay-as-You-Go, Serverless e Reserved Capacity, con costi basati su potenza di calcolo, archiviazione e trasferimento dati.

Come può Azure Synapse aiutare a ottimizzare i costi?

Azure Synapse consente di ottimizzare i costi attraverso funzionalità come pausa e ripresa, scalabilità delle risorse in base ai carichi di lavoro e compressione avanzata dei dati. Strumenti come Synapse Studio aiutano a monitorare e ottimizzare le prestazioni delle query e le spese.

Scopri perché scegliere il team

Infra & Sec

Il team Infra & Security è verticale sulla gestione ed evoluzione dei tenant Microsoft Azure dei nostri clienti. Oltre a configurare e gestire il tenant, si occupa della creazione dei deployment applicativi tramite le pipelines di DevOps, monitora e gestisce tutti gli aspetti di sicurezza del tenant, supportando i Security Operations Centers (SOC).