Al momento in cui scriviamo sono passati circa 2 anni dalla disponibilità generale di Microsoft Fabric, la piattaforma dati end-to-end in cloud di Microsoft, presentata in anteprima a Build 2023 e resa disponibile in General Availability durante Ignite 2023 a Seattle.
Questa piattaforma, oggi un vero e proprio ecosistema, raccoglie il testimone di molteplici prodotti e servizi Microsoft, che amalgama in un unicum senza soluzione di continuità, aggiungendo strati e funzionalità, tra cui le risorse AI, oggi sempre più imprescindibili.
Prima c’erano Azure Synapse Analytics, Azure Data Factory, Power BI Premium e altre risorse autonome, ciascuna con le sue peculiarità, convenzioni, etc.
Oggi, grazie a Microsoft Fabric, la gestione di ogni fase del ciclo di vita dei dati (dall’integrazione all’ingegneria, dal data warehousing alla business intelligence e così via) viene consolidata in un’unica piattaforma SaaS (Software as a Service) unificata.
Al cuore della piattaforma troviamo OneLake, un data lake logico che permette di unificare in un unico punto i tanti dati nel perimetro dell’azienda, inglobando anche risorse esterne, ad esempio attraverso il mirroring di risorse come Oracle and Google Big Query.
I vantaggi sono davvero tanti e regolarmente ne scriviamo nel nostro blog (https://www.bifactory.it/risorse/) o sulla nostra pagina LinkedIn (https://www.linkedin.com/company/bifactory-srl/ ), dando visibilità a novità e funzionalità.
La piattaforma Microsoft Fabric è ormai il punto di riferimento per i progetti su cui Bi Factory si impegna insieme ai suoi clienti, apportando la propria expertise e un metodo consolidato, messo alla prova in decine e decine di progettualità.
Come si paga Microsoft Fabric: il concetto di “capacità”
Per inquadrare i costi vivi di gestione di una soluzione basata su Microsoft Fabric bisogna prendere confidenza con il concetto di “capacità” (capacity in inglese).
Semplificando, la Capacità di Microsoft Fabric è un pool di risorse dedicate che fornisce la potenza di calcolo necessaria per eseguire operazioni su Microsoft Fabric.
Questo pool di risorse si misura in “Unità di Capacità” (in inglese Capacity Units o CU).
Le capacità da impiegare nel progetto possono venire pagate “a consumo”, con un modello quindi “Pay-as-you-go”: questo permette di non allocare un’infrastruttura fissa, ma di usare solo quello che serve al momento in cui serve, con un minimo di consumo pari a un secondo di risorse.
Questo modello è anche il più costoso: se è vero che poter accedere liberamente a delle risorse di calcolo permette di gestire il carico di lavoro dinamicamente, è anche vero che nella maggior parte dei progetti di data analytics è possibile prevedere con una certa ragionevolezza le dinamiche di impiego delle risorse.
Microsoft Fabric incentiva questa attenzione e pianificazione permettendo di prenotare in anticipo risorse di calcolo, per periodi che partono da un anno e arrivano fino a tre anni: più è lungo il periodo della prenotazione e più è consistente lo sconto che Microsoft concede rispetto alle tariffe “Pay-as-you-go”.
Le unità di capacità vengono offerte in diversi piani commerciali (SKU in inglese, Stock Keeping Units), contraddistinte dalla lettera F e da un numero crescente, partendo dal numero 2 per arrivare a 2048.
F2 quindi corrisponde allo SKU più piccola a cui è possibile accedere e prevede la disponibilità di 2 “Unità di Capacità” (CU).
F2048 è invece la più consistente e prevede 2048 CU.
Microsoft, nel modello “Pay-as-you-go”, permette di acquistare queste risorse su base oraria o mensile.
L’accesso alla potenza di calcolo delle CU di Microsoft Fabric e a tutte le risorse incluse, oltre che con l’acquisto di SKU, può avvenire abilitando Microsoft Fabric nel contesto di licenze di Power BI Premium, con una tabella di equivalenze.
Lo SKU di Power BI Premium “EM/A1”, ad esempio, permette di accedere ad 8 CU di Microsoft Fabric e così via con altri codici di stoccaggio.
Monitoraggio e gestione dei consumi: Microsoft Fabric Capacity Metrics
La gestione tramite F SKU della potenza di calcolo e dei relativi costi da sostenere per l’accesso alla piattaforma di Microsoft Fabric presenta degli indubbi vantaggi sul fronte della gestione amministrativa.
Un unico SKU finisce in fattura con costi adeguati al consumo o alla prenotazione.
Allo stesso tempo, capire quali sono le voci e modalità di consumo all’interno dell’unità di capacità allocata diventa fondamentale per almeno due motivi: assicurare la disponibilità delle risorse necessarie per il business e ottimizzare i consumi.
Ogni soluzione software deve assolvere a compiti specifici e per poterlo fare al meglio ha bisogno di risorse adeguate.
Nel contesto di Microsoft Fabric, c’è una certa flessibilità nella gestione di richieste che eccedono la capacità allocata, definita nelle regole di “smoothing” (smussatura in italiano): la possiamo definire una “tolleranza” che permette di gestire picchi improvvisi di utilizzo a cui corrispondono periodi di inattività. Superati i limiti di questa tolleranza, sempre nel rispetto di regole orientate a rispettare il business sottostante, le risorse diventano indisponibili, con possibili conseguenze più o meno gravi per il business.
Chi gestisce le risorse di Microsoft Fabric ha un importante strumento per monitorare il consumo di risorse: l’app Microsoft Fabric Capacity Metrics (https://learn.microsoft.com/it-it/fabric/enterprise/metrics-app).
Questa app permette una visione granulare dei diversi consumi possibili, consentendo a chi ha la responsabilità della disponibilità del servizio di comprendere le dinamiche di impiego e decidere come intervenire.
Uno degli interventi possibili è l’allocazione di maggiori risorse, con i conseguenti costi.
Una strada diversa, prevista dalle buone pratiche di gestione di una soluzione basata su Microsoft Fabric, è l’ottimizzazione costante dei consumi.
Un monitoraggio regolare dei vari processi e dei loro consumi permette di avere un quadro chiaro della situazione, a cui far seguire interventi migliorativi che possono incidere sui costi, anche in maniera significativa.
Per un approfondimento su questa tematica, abbiamo predisposto una risorsa dedicata, utile per comprendere meglio questo strumento ed il suo potenziale: https://www.bifactory.it/capacity-metrics-management/
Dalla capacità allo storage: i costi di OneLake
Vengono poi previste delle tariffe specifiche per l’archiviazione aggiuntiva per la cache KQL: si tratta della cache associata alle analisi di dati in tempo reale tramite Real-Time Analytics (KQL). Questa cache occupa dello spazio di archiviazione, che ha un costo aggiuntivo calcolato in base ad un tariffario autonomo.
C’è poi la possibilità di aggiungere uno strato di archiviazione ulteriore, che si chiama “Archiviazione BCDR”: si tratta di una copia aggiuntiva dei dati finalizzata alla continuità del business e alla possibilità di recuperare dati (la sigla BCDR è un acronimo corrispondente a Business Continuity e Data Recovery).
Anche i dati eliminati da un’area di lavoro non vengono rimossi immediatamente, ma vengono archiviati in uno stato di “soft-delete”: per un periodo configurabile (da 7 a 90 giorni) è possibile recuperarli e quindi lo spazio di archiviazione occupato viene fatturato di conseguenza.
Un paragrafo a parte va dedicato ai costi per lo spazio di archiviazione specifico per attività di mirroring.
In questo caso lo spazio di archiviazione per le repliche è gratuito, con limiti corrispondenti agli F SKU acquistati: al momento in cui scriviamo chi acquista uno SKU F2 ha a disposizione fino a 2 Terabyte (TB) per le repliche, chi acquista F4 ha a disposizione 4 Terabyte (TB) e così via, fino ai 2048 Terabyte (TB) previsti per chi acquista F2048.
Il traffico dati in ingresso (ingress) e in uscita (egress): quanto si paga in Microsoft Fabric?
Oltre ai costi associati alla potenza di calcolo e all’archiviazione dei dati, c’è un’altra voce di costo che solitamente va considerata in relazione a questo tipo di piattaforma: si tratta del traffico dati in ingresso (ingress) e in uscita (egress).
Nel caso di Microsoft Fabric il traffico dati in ingresso al momento non prevede costi di alcun genere, salvo si tratti di traffico dati tra aree intracontinentali o intercontinentali, sempre nel contesto di data center Microsoft.
Diverso il discorso per il traffico in uscita: qui vengono previsti costi diversi a seconda di modalità e area, più è alto il volume di dati trasferiti e maggiori sono i costi.
A seconda del tipo di soluzione e delle modalità di impiego questi costi possono venire considerati residuali rispetto ad altre voci di costo oppure rilevanti.
Anche in questo caso, l’applicazione regolare di tecniche di ottimizzazione nel contesto di una strategia d’insieme ben impostata è una buona pratica.
Altre voci di costo: dalle licenze di Power BI ai Token di Copilot
I costi di calcolo e di archiviazione sono le principali voci di costo da considerare in relazione ad una soluzione basata su Microsoft Fabric.
Ci sono però ulteriori voci che possono incidere più o meno significativamente su determinate soluzioni.
La prima tra queste è un eventuale costo di licenze Power BI Pro e Premium Per User: se si utilizzano infatti delle SKU di capacità inferiore a F64, gli utenti che creano o consumano Power BI condivisi devono avere una di queste due tipologie di licenze, con un costo al mese per singolo utente.
Questa particolare dinamica va valutata con attenzione, soprattutto quando ad essere oggetto di esame è l’acquisto di uno SKU F32 rispetto ad uno SKU F64: l’eventuale extra costo associato alle licenze per utente va incluso nelle valutazioni da effettuare per la scelta tra i due.
Un’altra voce di costo destinata a crescere per importanza è il costo associato a funzionalità di intelligenza artificiale, che nel caso di Microsoft Fabric sono le funzionalità di Copilot.
Il costo di queste funzionalità viene calcolato in base a dei token di consumo, in ingresso e uscita: il consumo di questi token viene fatto equivalere al consumo di capacità di calcolo (CU). Al momento in cui scriviamo 1000 token in ingresso (ad esempio, un prompt con una domanda) corrispondono a equivalenze indicative fornite da Microsoft: 1000 token in ingresso ≈ 100 CU/sec, 1000 in uscita ≈ 400 CU/sec (valori soggetti a variazioni). L’equivalenza tra token e CU permette di gestire il pagamento del servizio tramite gli F SKU, semplificando l’attività amministrativa.
Ancora una volta è però importante prestare attenzione ai consumi, attraverso l’app Microsoft Fabric Capacity Metrics: la “coperta” di un singolo SKU deve permettere alla soluzione di funzionare come previsto ed eventuali consumi in eccesso su questo o quel fronte comportano rallentamenti e indisponibilità che hanno un impatto sul business.
Quanto costa Microsoft Fabric?
Arrivati a questo punto della nostra disamina, possiamo inquadrare meglio la domanda di partenza, “quanto costa Microsoft Fabric”.
Ora che abbiamo esplorato le diverse voci di costo, più che la scoperta dei singoli importi, facilmente accessibili in piena trasparenza direttamente sul sito di Microsoft, abbiamo la consapevolezza che il costo di una soluzione su Microsoft Fabric dipende principalmente da:
- Quante risorse di calcolo sono necessarie
- Quanto siamo in grado di pianificare o meno il consumo di queste risorse
- Quanto spazio di archiviazione necessitiamo e che tipo di garanzie vogliamo sul fronte della continuità del business
- Quanto facciamo ricorso a funzionalità AI
- Quanti dati in uscita (egress) genera la nostra soluzione.
I margini di intervento su queste voci di costo possono essere importanti: sprechi e disottimizzazioni sono dietro l’angolo ed è per questo che il supporto di un solution provider esperto può fare la differenza.
Quanto costa Microsoft Fabric con Bi Factory?
L’esperienza maturata da Bi Factory con le soluzioni cloud di Microsoft prima e con Microsoft Fabric più recentemente ha permesso di integrare una metodologia che tiene conto delle peculiarità di queste risorse, per intervenire sul fattore dei costi sui due fronti di maggior rilievo.
Il primo è quello della progettazione della soluzione, con il controllo del dato in tutte le sue fasi.
A livello più alto, l’impostazione di una strategia di data governance è un passaggio fondamentale su più fronti, incluso quello dell’ottimizzazione dei costi.
Ci sono poi scelte di diversa natura ed entità che hanno un impatto sui costi che si andranno a sostenere nel tempo, tra queste ritroviamo:
- scelte architetturali come quella relativa all’architettura Medallion
- la scelta di formati di file e dimensioni degli archivi
- l’ottimizzazione delle attività Spark,
- la progettazione dei dataflow,
- il momento della pipeline in cui vengono filtrati i dati
- Etc.
Queste e altre attività hanno un ruolo nei costi attesi nel contesto di una soluzione basata su Microsoft Fabric.
Il secondo fronte di particolare rilevanza per ottimizzare i costi è quello del controllo nel tempo della soluzione e del suo impiego: abbiamo già visto come, attraverso l’app Microsoft Fabric Capacity Metrics, è possibile monitorare i consumi.
Allo stesso tempo, con altre risorse, è possibile controllare altre voci di costo.
Gli interventi possono essere di diverso genere, ma è importante considerare le peculiarità della risorsa su cui ci si appoggia.
Per esempio: in una soluzione in cui il costo di archiviazione è dato da alcuni hard disk che sono stati acquistati, mantenere più a lungo del dovuto dati inutili per il business ha un costo relativo, anche se andrebbero considerati altri profili, come quello legato alla sicurezza.
In una soluzione cloud, come Microsoft Fabric, gli asset inutilizzati hanno un costo vivo che si perpetua nel tempo ed è quindi fondamentale valutare regolarmente il business ed i suoi bisogni per assicurarsi che i costi sostenuti siano funzionali alle necessità del business.
La metodologia Bi Factory prevede un controllo attento e regolare dei dati e dei processi, con un confronto costante con il cliente orientato all’ottimizzazione delle risorse impiegate e dei relativi costi.
Le strategie applicate sono finalizzate a massimizzare il valore nel tempo, con una gestione dinamica e continua delle esigenze aziendali e delle risorse impiegate.
Gli strumenti che Microsoft mette a disposizione vengono impiegati per un confronto costante con il cliente, capace di mettere in evidenza le spese sostenute dai vari team aziendali nel contesto dei diversi processi attivi.
La condivisione trasparente delle voci di costo diventa quindi anche un’occasione di responsabilizzazione finanziaria dei vari soggetti coinvolti nell’impiego delle soluzioni predisposte, un passaggio spesso trascurato ma in realtà fondamentale in un processo di ottimizzazione e massimizzazione dell’investimento che non è solo tecnico.
Dall’ottimizzazione al rightsizing
L’impegno di Bi Factory insieme ai clienti è orientato al “rightsizing”, cioè alla ricerca di quel dimensionamento adeguato per le esigenze del business, tenendo conto in maniera adeguata delle prospettive di business nel tempo.
Per comprendere la differenza, un approccio orientato alla mera ottimizzazione dei costi, potrebbe prevedere per un e-commerce un certo dimensionamento delle risorse uguale per tutto il mese di novembre.
Se però l’e-commerce attiva delle promozioni particolari per il Black Friday, è ragionevole attendersi in quel periodo una necessità di maggiori risorse a supporto del business: il rightsizing è proprio la ricerca dell’equilibrio giusto, un dimensionamento dinamico capace di supportare il business nelle sue esigenze con, allo stesso tempo, un controllo attento sui costi.
Bi Factory e Microsoft Fabric, una combinazione potente per massimizzare il valore
Massimizzare il valore generato dai dati aziendali è una sfida sempre più articolata: oggi i dati sono il cuore di processi di Business Intelligence e Decision Intelligence che possono svolgersi in tempo reale o ancora, sono essi stessi fonte di profitto grazie a dinamiche di data monetization.
Sono anche oggetto di responsabilità crescenti per le imprese, con controlli sempre più stringenti e sanzioni di non poco conto.
Averne il pieno controllo, mettendoli a frutto al meglio, è una sfida che richiede alleati su cui contare, competenti e affidabili.
Bi Factory porta con metodo ed esperienza il valore di Microsoft Fabric nelle aziende, attraverso progetti di data analytics end to end capaci di rispondere al meglio alle esigenze di business, creando i giusti presupposti per farlo crescere in sicurezza.