Il compute serverless rappresenta l'ultima evoluzione dell'infrastruttura computazionale. In passato, le organizzazioni avevano bisogno di server fisici per eseguire applicazioni web. L'avvento del cloud computing ha reso possibile creare server virtuali, ma la loro gestione richiedeva comunque tempo e risorse. Oggi, con il modello serverless, è il provider di servizi cloud a occuparsi della gestione dell’infrastruttura, consentendo agli sviluppatori aziendali di concentrarsi esclusivamente sulla creazione e distribuzione delle applicazioni.
Il compute serverless aiuta le organizzazioni ad accelerare lo sviluppo, ridurre i costi operativi e concentrarsi sulla logica di business piuttosto che sulla gestione dell'infrastruttura. Questo approccio migliora la sicurezza, accelera il rilascio dei prodotti e ottimizza le risorse, creando nuove opportunità per l'innovazione.
Il compute serverless è un modello di sviluppo applicativo che consente agli sviluppatori di creare, distribuire ed eseguire applicazioni senza doversi occupare della gestione dei server o dell'infrastruttura back-end. "Serverless" non significa che non vengano utilizzati server, ma che questi sono interamente gestiti da un provider o fornitore di servizi cloud, eliminando la necessità per gli sviluppatori di interagire direttamente con essi. Il provider si occupa di allocare le risorse cloud necessarie per eseguire il codice, di scalare l'infrastruttura in base alle esigenze e di gestire altre operazioni sull'infrastruttura. Questo permette agli sviluppatori di concentrarsi esclusivamente sulla scrittura del codice, sull'integrazione delle applicazioni e sulla gestione dei dati, appoggiandosi a un'infrastruttura efficiente, scalabile e completamente gestita.
Il compute serverless aiuta le organizzazioni a risolvere diverse criticità legate ai modelli di calcolo server convenzionali, tra cui:
Gestione dispendiosa in termini di tempo: la configurazione e la gestione delle risorse di calcolo, in particolare la scelta del tipo di compute corretto per un carico di lavoro specifico, rappresentano da sempre una sfida per le aziende, in quanto sottraggono tempo prezioso agli obiettivi di business principali.
Tempi di inattività costosi: l'elaborazione su server convenzionale genera costi aggiuntivi perché le aziende non pagano solo per il tempo effettivo necessario per elaborare i carichi di lavoro, ma anche per processi come l'inizializzazione e l'espansione delle risorse di calcolo, i cosiddetti "tempi di inattività".
Inefficienza: la gestione manuale dell'infrastruttura è spesso inefficiente. Ad esempio, i team che utilizzano metodi manuali potrebbero sovradimensionare le risorse di calcolo, finendo per pagare per una capacità di cui non hanno bisogno o che non utilizzano.
Lentezza nell'elaborazione: le risorse di calcolo non sono sempre pronte all'uso, il che costringe i team a sopportare tempi di avvio lenti o ad attendere prima di poter eseguire query.
Incapacità di scalare: senza un autoscaling avanzato, la capacità dell'infrastruttura non si allinea automaticamente alla domanda. Gli sviluppatori non possono concentrarsi solo sulla scrittura del codice, ma devono anche tenere conto dell'utilizzo delle risorse.
Interruzioni del servizio: i tempi di inattività non pianificati spesso causano disservizi, il che rende necessario progettare sistemi con elevata affidabilità e meccanismi di fallback in caso di guasti ai server.
Il modello serverless offre alle organizzazioni diversi vantaggi. Rispetto ai modelli di calcolo convenzionali basati su server, il modello serverless è:
Il serverless consente alle organizzazioni di concentrarsi su lavori ad alto valore aggiunto, come rispondere al feedback dei clienti e rilasciare rapidamente modifiche al codice, anziché doversi occupare della gestione dell'infrastruttura. Questo permette alle aziende di accelerare il time-to-market e mantenere un vantaggio competitivo.
Nell'architettura serverless, una piattaforma serverless monitora le risorse cloud necessarie per l'esecuzione di un carico di lavoro e le alloca dinamicamente in base alle esigenze, riducendo l'infrastruttura quando la domanda diminuisce. Questo approccio rende più facile scalare, aggiornare e distribuire separatamente i vari componenti di un sistema. Inoltre, permette agli sviluppatori di implementare codice back-end all'interno dell'infrastruttura del provider cloud senza dover gestire o mantenere direttamente l'infrastruttura.
Databricks è una piattaforma completamente abilitata al serverless, che offre compute serverless per carichi di lavoro di estrazione, trasformazione e caricamento (ETL) inclusi Jobs, Notebooks e Delta Live Tables (DLT), nonché Databricks SQL e Databricks Model Serving su AWS e Azure.
Con il compute serverless sulla Databricks Data Intelligence Platform, Databricks assicura avvio rapido dei carichi di lavoro, scalabilità automatica dell'infrastruttura, prestazioni ottimizzate e aggiornamenti senza interruzioni delle versioni di Databricks Runtime. I vantaggi del compute serverless su Databricks includono:
Il compute serverless su Databricks offre un servizio veloce, semplice e affidabile, permettendo alle organizzazioni di muoversi alla velocità del business e di concentrarsi sulla fornitura di valore piuttosto che sulla gestione dell'infrastruttura.
