Arda Solutions s.r.l. | The Informal Blog

 

Google ha da poco annunciato un nuovo prodotto all’interno della sua piattaforma cloud che mira a dare tutte le funzionalità tipiche di un database relazionale classico ma, con al suo interno, le caratteristiche di alta affidabilità e scalabilità tipiche del cloud. Google in questo modo mira ad offrire un prodotto “mission critical” senza obbligare i suoi clienti a riscrivere completamente il backend anche se, come vedremo, qualche modifica (anche profonda) sarà necessaria

Google Cloud Spanner, questo il nome del nuovo database di casa google,  promette di avere prestazioni di altissime livello senza dover per forza “imparare” a gestirlo come fosse un nuovo sistema con un linguaggio di programmazione a se stante.

In realtà, questo è quello che traspare da una prima analisi, ma appena si mette mano al codice ci si accorge che Spanner:

  • Usa un dialetto SQL appositamente modificato per Spanner
  • Non ha nessuna compatibilità con le librerie jdbc classiche ed è necessario utilizzare le sue librerie apposite

Spanner fa parte di quella famiglia di database conosciuta con il nome di NewSQL , cioè quel tipo di tecnologie che cercano di unificare i benefici introdotti dai database NoSQL senza per questo rinunciare a caratteristiche ACID o, più in generale, all’utilizzo della sintassi SQL

Il suo utilizzo è abbastanza semplice, una volta configurato direttamente dalla dashboard google è possibile già collegarsi usando le apposite librerie o via REST e testarne l’uso sia in scrittura che in lettura.

E’ bene ricordare che Cloud Spanner ha le necessità che ogni tabella abbia almeno una Primary Key motivo per cui non può essere considerato a tutti gli effetti un database relazionale (anche se tutti vi diranno che una PK è fondamentale in un database relazionale)

Google ha già messo a disposizione una panoramica abbastanza esaustiva con un confronto a grandi linee rispetto alle tecnologie tradizioni e a quelle NoSQL:

CONSIDERAZIONE: Personalmente (ma farò altri articoli sui vari test effettuati) per il momento le caratteristiche sembrano tutte interessanti… Se confrontato però con Amazon Aurora (di cui Spanner sembra essere il concorrente Google più rassomigliante) è evidente che, in favore di una più alta affidabilità e scalabilità (rispetto ad Aurora, Spanner può avere più di un Master Writer), si è persa la compatibilità con gli standard: a causa delle istruzioni SQL non standard e all’obbligo di librerie specifiche. Scegliere quindi di migrare verso Spanner può avere un costo maggiore rispetto ad Aurora o addirittura proibitivo (a causa delle necessità di riscrivere buona parte del backend)

Il pricing, in fine, sembra molto aggressivo (sempre in stile google, con la speranza di scalfire lo strapotere Amazon): 0,90$ al mese per replica X 0,30 al mese per GB X l’utilizzo della rete

Non resta che provarlo e verificare direttamente la bontà della piattaforma

 

Leave a Reply