Che cos’è Google Compute Engine

Di - 5 July 2012 - in

Durante il secondo keynote al Google I/O è stato presentato Google Compute Engine, servizio passato decisamente in sordina, soprattutto nei siti di informazione italiani, nonostante la sua grande importanza. Vediamo di cosa si tratta e perché è degno di attenzione.

Google Compute Engine, è ultimo nato tra i prodotti cloud di Google, ovvero tra i prodotti per i quali Google mette a disposizione la propria infrastruttura di rete. In particolare, con Compute Engine, Google mette a disposizione macchine virtuali appoggiate alla sua struttura (ciò che tecnicamente si chiama Infrastructure-as-a-Service o IaaS).

Una macchina virtuale è un software che simula in tutto e per tutto un computer vero e proprio, con processore, memoria e spazio di archiviazione, usando le risorse di una macchina reale (o di una rete di macchine reali) che eseguono tale software. Nel caso delle IaaS la macchina virtuale non è eseguita da una macchina reale identificabile, ma è distribuita su una rete di macchine che funzionano come cloud.

È quindi in realtà replicata su molti computer reali, e le sue diverse parti possono essere portate da un computer reale all’altro senza che l’utente debba saperlo o debba agire in qualche modo. Questo rende un sistema IaaS come Google Compute Engine molto affidabile e poco sensibile ai guasti.

Spesso, per applicazioni di calcolo soprattutto scientifico (ma non solo, si pensi ad esempio al trattamento delle immagini) sono necessari sistemi che facciano moltissimi calcoli al secondo, molti di piú di quelli fattibili su un singolo computer. Uno dei modi per fare cose di questo tipo è realizzare una rete di macchine, reali o virtuali (a patto, in questo caso, di farle girare su core effettivamente differenti) che svolgano ognuna una parte dei calcoli (o che svolgano tutte gli stessi calcoli ma su parti diverse dell’insieme di input o del problema).

Tali reti hanno costi di realizzazione tali da non poterne fare di molto grandi e da non poterne fare affatto se non c’è possibilità di riutilizzarle in seguito. Costi che aumentano ancora se si vuole ottenere una soluzione che in maniera analoga al cloud possa non risentire di eventuali guasti a singole macchine, ridistribuendo le macchine virtuali su diverse macchine reali.

Per risolvere questo problema in genere si ricorre a centri di calcolo che affittino tempo-macchina su sistemi già esistenti o, appunto, alle IaaS che forniscono macchine virtuali che si possano creare con costi minimi ed eliminare quando non servono piú.

Google Compute Engine fornisce macchine a 1, 2, 4 o 8 processori e con 3,75 GB di RAM per ogni processore, creabili appena servono e pagabili a tempo (il costo l’ora varia da circa mezzo dollaro a poco piú di un dollaro, a seconda del numero di processori), la rete per collegare le macchine tra loro e ad Internet o ad altre reti, e lo spazio su disco per salvare i dati.

Ci sono tre possibilità per il salvataggio dei dati: lo spazio fornito, incluso nel prezzo, con la macchina virtuale (in quantità dipendente dai core), destinato a sparire quando viene chiusa la macchina; uno spazio pagato separatamente mensilmente che sopravvive alla chiusura della macchina, o il servizio Cloud Storage che già da qualche tempo fa parte dei servizi di Google Cloud.

Le macchine sono controllabili tramite un’interfaccia, scriptabile, in riga di comando, o tramite interfaccia web, adattandosi cosí alle diverse esigenze di utilizzo.

Rispetto alle altre IaaS presenti sul mercato Google Compute Engine costa meno (mediamente due terzi rispetto alla concorrenza) e ha dalla sua parte l’enorme affidabilità della struttura di Google, già dimostrata con gli ottimi servizi AppEngine, Cloud Storage e BigQuery. Inoltre, è facilmente scalabile all’aumentare delle dimensioni del progetto che si vuole far girare su cloud: durante la dimostrazione all’I/O hanno portato un progetto dell’Institute for System Biology dai 1000 nodi su cui girava in laboratorio a 100000 nodi, mostrando come ne aumentava la velocità di elaborazione.

A tutto questo si aggiunge, e Google non ha mancato di sottolinearlo, l’ecosostenibilità della cloud di Google.

Tutto questo fa di Google Compute Engine una IaaS davvero attraente per chiunque abbia bisogno di sistemi di questo tipo, permettendo anche a progetti con budget non enormi di accedere a risorse affidabili e potenti.

Google Compute Engine è disponibile in una preview con alcuni limiti, in attesa di essere rilasciata definitivamente in versione non limitata.

Via | Official Google Blog

Leave a Reply

Lorenzo Breda Articolo scritto da

Studente di Informatica a Roma, si occupa di programmazione web sopratutto lato server, e di accessibilità del web. Utilizza e ama Debian GNU/Linux, e si interessa di fisica, fumetto, trekking e fotografia (gli ultimi due possibilmente abbinati). Collabora con Googlab da aprile 2012.

Contatta l'autore

Previous post:

Next post: