![Search icon](https://hackernoon.imgix.net/search-new.png?w=19&h=19)
Se ti sei imbattuto in questa pagina pensando di arricchirti con qualche schema per arricchirti in fretta, mi dispiace deluderti. Questo articolo parlerà piuttosto di come ridurre le tue bollette dei costi del cloud di 1 milione di dollari. Facendo ciò, avrai essenzialmente generato un milione di dollari extra di entrate, che puoi spendere acquistando il mio corso online su come arricchirti con AWS ( link al corso qui ).
I costi del cloud sono spesso trascurati e non considerati all'inizio dei progetti delle aziende. Il sondaggio HashiCorp del 2021 ha rilevato che quasi il 40% delle aziende ha speso troppo per i costi del cloud nel 2021 [ 1 ]. Nel 2023, quasi tutte le aziende (94%) hanno ammesso di sprecare denaro sul cloud [ 1 ] e almeno il 30% dei costi del cloud è stato sprecato [ 2 ]. La spesa per il cloud è stata di quasi 500 miliardi di dollari nel 2022, quindi stiamo parlando di 150 miliardi di dollari sprecati all'anno!!
Non si tratta solo di mancati ricavi, ma anche di scarse pratiche di sostenibilità. 150 miliardi di dollari di energia sprecata!
Questi risultati coinvolgono sia le grandi aziende che quelle più piccole, da high-cloud maturity a low-cloud maturity. Si riferisce ad AWS, ma gli stessi principi possono essere applicati a qualsiasi altro provider cloud. Quindi, se una parte del tuo lavoro è nel cloud, allora questo articolo è per te.
Parlo dal punto di vista di un ingegnere dei dati, ma gli stessi insegnamenti possono essere applicati ad altre pratiche di ingegneria del software.
Cominciamo.
Questo tipo di bolletta cloud è solitamente riservata alle grandi aziende che operano a livello globale con milioni di clienti.
Per darvi un'idea, una fattura cloud da 1 milione di $ può derivare da un processo Spark ETL che elabora circa 1,5 Tb all'ora 24 ore su 24, 7 giorni su 7, 365 giorni all'anno. Un altro esempio potrebbe essere un'applicazione che riceve miliardi di richieste al giorno da più sedi nel mondo.
In una grande azienda, ci sono centinaia di applicazioni di queste dimensioni, che si traducono in contratti da miliardi di dollari con i provider cloud. Ad esempio, Airbnb si era impegnata a spendere 1,2 miliardi di dollari in risorse cloud in cinque anni alla fine del 2019 [3 ].
In Expedia abbiamo ridotto i costi per un ETL di elaborazione dati che costava 1,1 milioni di dollari all'anno a soli 100.000 dollari all'anno implementando pratiche di ottimizzazione. Si tratta di una riduzione dei costi del 91%!!
Non tutte le aziende dispongono di applicazioni di dimensioni così grandi, ma immagina di ridurre i costi del cloud del 90% per una sola applicazione o per l'intera azienda.
Vai a procurarti un elenco delle tue applicazioni più costose e metti in discussione le tue ipotesi di progettazione .
Tutte queste domande ci riportano alla domanda più importante: come verrà utilizzata l'applicazione? Qual è il valore aziendale della sua esistenza? In che modo l'applicazione ci aiuta a raggiungere un determinato obiettivo?
Naturalmente, tutte queste risposte sono molto spesso poco chiare all'inizio di un progetto; ma è per questo che la progettazione dovrebbe sempre essere un processo iterativo, consentendo ai cambiamenti di avvenire nel modo più fluido possibile. Gli ingegneri dovrebbero abbracciare l'evoluzione e il cambiamento, allineando lo sviluppo dell'applicazione all'impatto.
Il secondo passaggio consiste nel fornire all'applicazione le risorse giuste e nell'adattarla alla giusta infrastruttura.
Come ingegnere, sii consapevole di come vengono calcolati i costi del cloud. Ad esempio, AWS fornisce istanze spot, dove puoi fare un'offerta per il prezzo del cluster, il che è particolarmente utile se hai applicazioni flessibili e tolleranti ai guasti. Usale se puoi: AWS afferma una riduzione dei costi fino al 90% [ 4 ].
Ecco altre considerazioni che potresti voler prendere in considerazione:
Ci sono pochi o nessun inconveniente nell'utilizzare le istanze AWS Graviton. AWS ha investito molto nella creazione dei processori più convenienti. Puoi ottenere fino al 40% di riduzione nella spesa cloud semplicemente passando da un processore basato su Intel a un processore basato su ARM [ 10 ].
L'unica avvertenza è che la tua applicazione deve essere compatibile con i processori basati su ARM su cui gira Graviton. Se hai a che fare con un servizio gestito come RDS o OpenSearch, non ci sono complicazioni nel passaggio: AWS si occupa della compatibilità del sistema operativo e dell'applicazione sottostante. Se stai creando la tua applicazione, potresti dover ricompilare il pacchetto a seconda del linguaggio che stai utilizzando: Java e altri linguaggi non richiedono modifiche, mentre Python richiede un po' di attenzione.
Infine, non dimenticare di continuare a monitorare i costi per picchi e sorprese inaspettate. Il costo al giorno 0 della tua applicazione sarà diverso dal costo al giorno 170. Assicurati di tenere traccia delle modifiche e di capire perché si verifica la modifica: si tratta di un accatastamento dei costi di archiviazione s3 o è solo un picco una tantum?
Impostare gli avvisi e le guide operative necessari !
È importante implementare tag di allocazione dei costi per tracciare la spesa per reparto, progetto o ambiente. Evita il rischio di creare una palude di dati in cui il costo non è rintracciabile o richiede un lungo viaggio attraverso diversi sistemi di log. Dovrebbe essere rapido e semplice tornare a qualsiasi costo di applicazione.
Ovunque tu stia lavorando, bilanciare la distribuzione di nuove funzionalità con l'ottimizzazione di quelle attuali è difficile. Chi non è stato pressato a distribuire nuove funzionalità bizzarre alla velocità della luce.
Tuttavia, è essenziale che sia gli ingegneri sia i manager prendano decisioni ponderate e proattive sui loro progetti in corso, gestendo efficacemente rischi e opportunità.