Home
topics
Carico di lavoro
Un workload, nel senso più generale, è la quantità di tempo e di risorse di calcolo che un sistema o una rete impiega per completare un'attività o generare un particolare output. Si riferisce alla domanda totale di sistema di tutti gli utenti e i processi in un momento specifico.
In ambito IT, il termine si è continuamente evoluto e caricato di significato, in particolare con l'ascesa del cloud computing. In generale, il termine workload si riferisce a un'attività o a un processo computazionale e alle risorse di calcolo, archiviazione, memoria e rete che l'attività richiede.
In un contesto di cloud computing, il workload si riferisce a qualsiasi servizio, applicazione o capacità che consuma risorse basate sul cloud. In questo contesto cloud, macchine virtuali, database, applicazioni, microservizi, nodi e altro sono tutti considerati workload.
I workload possono variare da semplici attività, come l'esecuzione di una singola applicazione o di un singolo calcolo, a operazioni complesse, come l'elaborazione di analisi di dati su larga scala o l'esecuzione di una suite di applicazioni interconnesse. La gestione dei workload è un aspetto fondamentale dell'ottimizzazione delle risorse IT, che influisce direttamente sulle prestazioni del sistema, sui costi, sulla stabilità e, in ultima analisi, sul successo delle operazioni aziendali.
Con la proliferazione del cloud computing e della virtualizzazione, la gestione dei workload è diventata sempre più complessa1. L'uso di cloud ibrido, multicloud e risorse di cloud pubblico implica che i workload possono includere piattaforme e posizioni, ognuna con caratteristiche e requisiti di gestione unici.
Per affrontare le complessità della gestione dei workload in ambienti informatici e workflow, le organizzazioni si rivolgono a strumenti avanzati come le API di backend, il software di workload automation, le piattaforme di analisi predittiva basate sull'AI e le piattaforme di cloud management (ad es. Amazon Web Services (AWS), Google Cloud Platform, IBM Cloud e Microsoft Azure).
Le aziende stanno inoltre adottando strategie come il posizionamento dei workload, in cui determinano la posizione migliore per ciascun workload in base a fattori quali costi, prestazioni, ciclo di vita, conformità e requisiti aziendali. Ciò garantisce che ciascun workload venga eseguito in un ambiente perfettamente adatto alle sue esigenze specifiche.
Inizia il tuo viaggio verso prestazioni continue delle applicazioni riducendo i costi in modo sicuro.
Il termine “workload” è spesso usato in modo intercambiabile con “applicazione”. Anche se sia i workload che le applicazioni sono componenti interconnessi e integrali di qualsiasi infrastruttura IT (e le applicazioni possono essere considerate workload), hanno scopi piuttosto diversi.
Le applicazioni sono programmi, o gruppi di programmi, progettati per aiutare gli utenti finali a eseguire attività specifiche e soddisfare determinate esigenze aziendali. I workload si riferiscono alle esigenze di elaborazione di tali attività. In altre parole, i workload alimentano le applicazioni (o le relative parti). È importante notare, tuttavia, che un workload non è necessariamente esclusivo di una singola app. Molti workload eseguono attività tra le applicazioni.
Inoltre, i cicli di vita delle applicazioni tendono a cambiare quando le esigenze cambiano o quando emergono tecnologie più avanzate. I workload, invece, cambiano in base ai fattori infrastrutturali, come le prestazioni del sistema, il traffico degli utenti, l'allocazione delle risorse e le esigenze di elaborazione.
Come affermato, l'utilizzo dei workload può essere semplice come eseguire una singola app o sofisticato come eseguire un ecosistema di app connesse, con molte variazioni nel mezzo. Pertanto, una corretta implementazione del workload può richiedere l'uso di più tipi di workload.
Alcuni tipi di workload chiave includono:
I workload transazionali comportano l'interazione dell'utente in tempo reale, tipicamente sotto forma di numerose e brevi transazioni online. L'implementazione di workload transazionali richiede sistemi in grado di gestire più utenti simultanei e di fornire risposte rapide e coerenti, quindi sono comunemente utilizzati per i siti di e-commerce per gestire acquisti, pagamenti, ricerche di prodotti e altro ancora.
I workload batch sono processi non interattivi che vengono elaborati in blocco, spesso in sequenza. Poiché richiedono una notevole potenza di elaborazione, i workload batch sono comuni in ambienti che elaborano elevati volumi di dati (ad esempio, buste paga, fatturazione, modelli meteorologici, ecc.) e spesso vengono eseguiti durante le ore non di punta per evitare interferenze con workload interattivi o transazionali. Questi workload tendono inoltre a richiedere l'elaborazione parallela, dove le attività vengono suddivise in attività secondarie più piccole e eseguite contemporaneamente su più server e processori.
I workload analitici sono caratterizzati da query complesse eseguite su grandi set di dati. A differenza dei workload transazionali, che implicano piccole e semplici transazioni, questi workload conducono analisi approfondite dei dati, spesso sfruttando l'intelligenza artificiale e l'apprendimento automatico, per identificare tendenze, relazioni e intuizioni. A causa dell'elevata velocità di trasmissione dei dati, i workload analitici vengono comunemente utilizzati per il data warehousing e l'analytics dei big data.
La maggior parte delle applicazioni aziendali si affida a database fondamentali per funzionare. Se un database funziona male, creerà colli di bottiglia per le app che lo utilizzano. I workload del database aiutano a risolvere questi problemi. I workload del database sono ottimizzati per accelerare e ottimizzare le funzionalità di ricerca per le altre app che dipendono da un database. Inoltre, consentono ai team di analizzare metriche come l'utilizzo di memoria/CPU, il throughput di input (I/O) e i tassi di esecuzione delle query.
I workload HPC eseguono simulazioni complesse e/o calcoli matematici che richiedono una potenza di calcolo significativa. Ad esempio, un team di ricerca meteorologica potrebbe eseguire una simulazione dei modelli climatici correlati a El Niño. Come i workload batch, i workload HPC tendono ad avere alti livelli di parallelismo.
Quando i team sono impegnati nel processo di sviluppo e test del software, spesso si affidano a workload di test/dev, che gestiscono attività come la compilazione del codice, l'esecuzione di test unitari e l'esecuzione di test di carico. Come il processo di sviluppo stesso, anche i workload di test/dev possono essere imprevedibili e possono richiedere agli sviluppatori di fornire e disinstallare rapidamente le risorse al variare delle esigenze.
Questi workload sono spesso fondamentali negli ambienti IT che richiedono un'elaborazione dei dati in tempo reale e alla velocità della luce per fornire risultati immediati, come le app di trading azionario, i servizi di video streaming e le piattaforme di scommesse sportive.
Gli ambienti IT sono diventati sempre più complessi e richiedono strumenti e risorse in grado di gestire una vasta gamma di attività, spesso contemporaneamente. È qui che i workload ibridi, che combinano elementi di diversi tipi di workload, diventano una vera risorsa.
Un esempio di workload ibrido è un'applicazione di analisi in tempo reale che elabora i dati in arrivo con workload transazionali, esegue query complesse sui dati con workload analitici e genera report utilizzando workload in batch.
L'emergere del cloud computing nell'ultimo decennio ha spinto lo sviluppo di nuovi tipi di workload, tra cui le applicazioni software-as-a-service (SaaS), containerized e microservices-based , le macchine virtuali (VM) e serverless computing. Le aziende stanno persino esplorando casi d’uso per workload di intelligenza artificiale generativa (GenAI).2 Indipendentemente dal tipo, i workload possono anche essere categorizzati in base al loro stato (ad esempio, stateful o stateless) e nel caso dei workload cloud, in base ai loro modelli di utilizzo (ad es. statici o dinamici).
I workload stateful devono conservare le informazioni e lo stato da una sessione all'altra, quindi "ricordano" i dati delle interazioni precedenti. Con un'applicazione stateful, se un utente si disconnette e poi accede nuovamente, l'app ricorda le sue informazioni e attività. I sistemi di database, dove i dati rimangono anche dopo il termine della sessione, sono ottimi esempi di workload stateful.
Questi workload non salvano i dati utente per la prossima sessione dell'utente. Ogni sessione viene eseguita come nuova interazione e le risposte sono indipendenti dai dati utente precedenti. I workload stateless possono semplificare la progettazione di app, poiché gli sviluppatori non hanno bisogno di gestire le informazioni sullo stato, ma possono anche rendere più complessa la personalizzazione dell'esperienza utente.
I workload statici utilizzano una quantità relativamente costante di risorse di elaborazione per lunghi periodi di tempo e con una pianificazione coerente.
I workload dinamici, chiamati anche workload temporanei, regolano e configurano le risorse di elaborazione in base alla domanda di elaborazione.
Con la crescita dell’adozione del cloud computing, le pratiche di gestione del workload cambiano di natura. Le aziende moderne utilizzano in genere una combinazione di data center locali tradizionali e infrastrutture cloud per gestire i propri workload in modo efficiente. I workload on-premise vengono eseguiti su un'infrastruttura hardware di un'organizzazione, ospitata localmente nelle strutture dell'organizzazione. I workload basati sul cloud pubblico vengono eseguiti su server gestiti da un provider di servizi cloud (CSP) di terze parti e si trovano fuori sede, spesso in più località in tutto il mondo. Entrambe le infrastrutture offrono vantaggi per la gestione dei workload aziendali.
I workload on-premise forniscono:
Con le soluzioni on-premise, le organizzazioni hanno il controllo completo sui propri workload. Ciò include la possibilità di scegliere e personalizzare tutto l'hardware e il software, il che è particolarmente vantaggioso per le organizzazioni con esigenze IT che non possono essere facilmente soddisfatte dalle offerte cloud standard.
Le soluzioni on-premise possono offrire un maggiore controllo della sicurezza e della conformità, soprattutto per le organizzazioni che operano in settori o regioni in cui i requisiti di sovranità dei dati e i processi di audit sono molto severi. Poiché i dati vengono archiviati localmente, anziché in un ambiente cloud condiviso, è più facile applicare protocolli di sicurezza rigorosi e controllare l'accesso ai dati di ogni membro del team.
Inoltre, alcune normative richiedono che i dati vengano archiviati entro determinati confini geografici e le aziende possono garantire più facilmente la conformità dello storage con i workload locali.
Sebbene i costi iniziali dell'infrastruttura locale possano essere piuttosto elevati, i costi correnti per il mantenimento dei workload locali sono relativamente stabili e più facili da pianificare. Se un'organizzazione ha il capitale da investire e prevede che le sue esigenze rimangano coerenti a lungo termine, i workload on-premise possono essere una scelta finanziariamente valida.
In alcuni casi, i workload locali funzionano meglio rispetto ai workload basati su cloud. Con l'infrastruttura on-premise, i dati non devono uscire dalla rete locale, con tempi di elaborazione più rapidi e riducendo al minimo i problemi di latenza che possono causare colli di bottiglia nelle prestazioni.
I workload on-site sono accessibili anche quando la connettività Internet è instabile o temporaneamente assente. La disponibilità delle app offline può rappresentare un vantaggio significativo per le aziende in regioni con scarsa infrastruttura Internet o per ambienti che richiedono l'accesso alle app 24 ore su 24, 7 giorni su 7.
I workload basati sul cloud pubblico, invece, forniscono:
I workload in cloud seguono tipicamente un modello di spesa operativa, in cui gli utenti pagano solo per le risorse che utilizzano, man mano che le utilizzano. Questo può rendere il cloud computing un punto di ingresso più conveniente nella gestione dei workload, soprattutto per le piccole imprese e le startup.
I fornitori di cloud dispongono di vaste risorse che possono essere allocate e disallocate su richiesta, consentendo alle organizzazioni di scalare facilmente i workload in risposta alle mutevoli richieste di risorse.
Sebbene l'organizzazione sia sempre responsabile della gestione e della protezione delle proprie applicazioni e dei propri dati, i workload basati sul cloud affidano al fornitore molte attività di manutenzione (ad esempio, riparazioni dell'hardware, aggiornamenti del software, patch di sicurezza, ecc.)
I servizi cloud spesso includono funzionalità di disaster recovery, nonché ridondanze dell'infrastruttura, per garantire la disponibilità del workload anche in caso di guasto ai server o data center.
I workload cloud possono essere eseguiti e adeguati rapidamente, consentendo un'innovazione più rapida e offrendo alle aziende basate sul cloud un vantaggio competitivo. Con le piattaforme cloud, le organizzazioni possono implementare nuove app e servizi in pochi minuti, mentre ciò potrebbe richiedere settimane o mesi.
Molte aziende scelgono di utilizzare cloud privati (noti anche come cloud aziendali), che offrono una combinazione di determinati vantaggi offerti dalle architetture cloud sia on-premise che pubbliche.
Indipendentemente dal fatto che un'azienda scelga workload on-premise o basati su cloud pubblico (o una combinazione dei due), l'utilizzo e la gestione efficace dei workload possono migliorare il processo decisionale organizzativo, nonché l'efficienza complessiva, le prestazioni e l'economicità delle infrastrutture IT aziendali.
La piattaforma di ottimizzazione dei costi del cloud ibrido di IBM Turbonomic® consente di automatizzare continuamente le azioni critiche in tempo reale che offrono proattivamente un utilizzo più efficiente delle risorse di calcolo, di storage e di rete per le app a ogni livello dello stack.
IBM Instana democratizza l'osservabilità fornendo una soluzione che chiunque tra DevOps, SRE, piattaforma, ITOps e sviluppo può utilizzare per ottenere i dati desiderati con il contesto di cui ha bisogno. Costruita appositamente per il cloud-native, ma indipendente dalla tecnologia, la piattaforma fornisce automaticamente e continuamente dati ad alta fedeltà con una granularità di 1 secondo e tracce end-to-end, con il contesto delle dipendenze logiche e fisiche tra dispositivi mobili, web, applicazioni e infrastrutture.
IBM Workload Automation è una piattaforma di automazione progettata per il funzionamento in ambienti ibridi, che integra i flussi di lavoro IT, operativi e aziendali al fine di ottimizzare l'orchestrazione per eseguire processi non presidiati e basati su eventi.
Sfrutta l'automazione dei workload a livello aziendale per workload basati sulla pianificazione e sugli eventi.
Comprendere i cinque principi che aiutano il team operativo a pensare alla gestione del servizio e agli aspetti operativi della propria applicazione.
L'infrastruttura IT si riferisce ai componenti combinati degli ambienti e dei servizi IT aziendali.
Rivedi un esempio di architettura per IBM Cloud Security and Compliance Center Workload Protection.
Ottimizza e automatizza i workload complessi per una maggiore efficienza dell'IT.
Scopri come i team possono monitorare e regolare i workload e gestire i flussi e i thread che non rispondono con IBM Integration Bus for z/OS.
1 Le aziende si aspettano un passaggio continuo dalle strutture legacy on-premise a un mix di sedi moderne (link esterno a ibm.com), S&P Global Market Intelligence, 27 marzo 2023.
2 Prospettiva dell'analisi di mercato: workload dell'infrastruttura aziendale mondiale nel 2023 (link esterno ibm.com), IDC, settembre 2023.