Database relazionali in cloud: le 12 migliori opzioni
Nel mondo dei big data il database relazionale – dove i dati sono memorizzati in un formato tradizionale di tabelle di riga e colonna – sta lasciando il posto ad archivi di dati non strutturati come NoSQL e soluzioni open source come Apache Hadoop e Hive.
Questo non succede in ambiente cloud, tuttavia, in quanto vendor come Amazon Web Services (AWS), Microsoft e Google stanno cercando di aiutare le aziende a spostare i loro tradizionali database relazionali attraverso opzioni flessibili di storage ed elaborazione in cloud.
Oggi i clienti aziendali sono sempre più a proprio agio con l’adozione del cloud, in particolare il cloud pubblico dei tre grandi fornitori, e hanno superato ostacoli come le preoccupazioni in materia di sicurezza e di conformità.
Secondo Tony Baer, analista di Ovum, attualmente le aziende non sono pronte a spostare in cloud un database transazionale, pur all’interno di una strategia globale di migrazione al cloud. Tuttavia questo succederà nel prossimo futuro.
“Non tutte le aziende sono pronte a trasferire tutto nel cloud”, ha sottolineato Baer. “Una tendenza che inizieremo a vedere è la scelta del multi-cloud, perché le grandi aziende non vogliono dipendere esclusivamente da un unico provider cloud”.
I vantaggi di utilizzare un database relazionale in cloud è che è un formato familiare e diffuso, specialmente per l’analisi dei dati; il cloud permette di ridurre i costi e aumentare velocità e scalabilità. Ciò consente alle aziende di sfruttare al meglio le licenze esistenti con Oracle, per esempio, mentre sviluppano una strategia cloud.
Poiché lo storage in cloud è conveniente, le aziende disposte a trasferire il proprio database in cloud possono trarre vantaggio dalla replica multipla per i backup, minimo sei con la maggior parte dei provider, per ottenere un failover molto migliorato.
Inoltre c’è il vantaggio di non dover gestire e amministrare il proprio database, poiché i provider cloud offrono database-as-a-service (DaaS).
Ecco le migliori 12 opzioni per utilizzare database relazionali in cloud.
1. AWS Aurora
Aurora è un database relazionale di Amazon Web Service (AWS) progettato specificamente per il cloud. Disegnato per alte prestazioni e utenti multipli, offre sei copie per procedure multiple di failover.
Parlando all’AWS Summit a Londra nel giugno del 2017, Amazon CTO Werner Vogels ha dichiarato che il database AWS Aurora è “il servizio Amazon Web Services che sta crescendo più rapidamente”. Tra i clienti di Aurora ci sono Netflix, Expedia e Finra.
Leggi anche: Confronto tra Google Cloud SQL e Amazon Aurora
2. AWS RDS
AWS offre anche il servizio di database relazionale RDS. Con RDS è possibile utilizzare database relazionali o trasferire un database esistente sul cloud storage di AWS, tramite Aurora o altri motori come Oracle Database e Microsoft SQL Server, o offerte open source come PostgreSQL, MySQL o MariaDB.
Offerto come database-as-a-service, RDS solleva i team IT dalle incombenze amministrative, in quanto non è necessario ospitare il database on-premise. È anche scalabile, più veloce ed economico perché è ospitato nello storage cloud di AWS. Il trade off avviene sotto forma di controllo, in quanto AWS gestisce il database sottostante.
AWS ha dichiarato di aver spostato 28.000 database a Aurora o RDS tramite il servizio DMS (Database Migration Service) fino a oggi.
3. Snowflake Computing
Una new entry nel mercato dei database relazionali nativi per il cloud è Snowflake Computing di San Mateo, in California. Bob Muglia, il CEO di Snowflake, spiega di aver fondato l’azienda perché non basta semplicemente trasferire in cloud un database SQL esistente.
Il sistema si basa su basa su AWS S3 ed EC2, ma la società sostiene che il suo database si distingue per la sua architettura unica, che consente un accesso veloce anche con un elevato numero di utenti contemporanei. Snowflake è “costruito da zero. Una soluzione progettata per lavorare nel cloud e trarre vantaggio da questa risorsa di fatto infinita”, ha detto Muglia.
4. Oracle Database Cloud Service
Larry Ellison ha costruito Oracle sulla base della sua tecnologia di database relazionale e offre ora il suo prodotto di punta Oracle Database nel cloud, anche se preferibilmente il loro cloud non è AWS, Azure o Google.
L’offerta Oracle Database Cloud Service comprende servizi di database flessibili per lo sviluppo, il test e la distribuzione di di applicazioni. Il servizio offre un’interfaccia utente facile da usare, tramite una console web, e API RESTful per fornire e amministrare un database Oracle sul Compute Cloud della società.
Alla familiarità degli utenti con l’ambiente Oracle si aggiungono una maggiore velocità, flessibilità, sicurezza, durata e minori esigenze di manutenzione. I clienti possono affidare la gestione a Oracle o controllare il database sottostante con alcune opzioni aggiuntive di automazione. Inoltre gli attuali clienti possono portare avanti n una strategia cloud pur essendo legati al fornitore con un contratto a lungo termine.
Oracle ha anche abbracciato un’architettura più moderna nella sua ultima versione, introducendo opzioni interessanti per le aziende che si basano su un’architettura microservice.
5. Microsoft SQL Server
Microsoft offre il suo database SQL as-a-service sull’infrastruttura cloud Azure. Microsoft promette, virtualmente, zero tempi di inattività e afferma che il sistema apprende i modelli di app per adattarsi in tempo reale.
6. MySQL
MySQL, l’amato progetto open source di Monty Widenius, David Axmark e Allan Larsson, è il leader nello spazio dei database relazionali, secondo la società di ricerca G2 Crowd.
Divenuto proprietà di Oracle dopo l’acquisizione di Sun Microsystems, MySQL è ancora un software open source e può essere eseguito sulle infrastrutture dei principali provider cloud, da AWS a Google e Azure.
7. MariaDB
MariaDB è stato creato da alcuni degli sviluppatori originali di MySQL dopo l’acquisizione di Oracle. Il punto di forza di MariaDB è che è funzionalmente simile a un database relazionale Oracle o MySQL; gli utenti possono utilizzare una tecnologia familiare, ma senza la chiusura e la mancanza di trasparenza tipica del vendor tradizionale. È costruito per essere altamente resistente ai guasti dei server e può essere eseguito as-a-service.
MariaDB è indipendente dall’infrastruttura, quindi i clienti possono scegliere di distribuire il database on premise, in un cloud ibrido o pubblico, in un ambiente multi-cloud. È progettato per essere facilmente trasferibile, per evitare la dipendenza da un fornitore.
8. PostgreSQL
PostgreSQL è un sistema di database relazionale-a oggetti open source che può essere eseguito nel cloud pubblico di AWS attraverso il servizio RDS, così come su Azure e Google Cloud. PostgreSQL è di classe enterprise, con elevate prestazioni e tolleranza agli errori, ed è pienamente conforme all’ACID.
9. SAP HANA
L’archivio di dati HANA di SAP è un’architettura diversa dal classico database relazionale e viene eseguita in-memory. Questo significa che i dati vengono memorizzati in colonne invece che in righe, il che consente analisi ed elaborazioni più veloci. HANA supporta standard industriali come SQL ed eXpressions multidimensionali (MDX).
Il servizio SAP Cloud Platform fornisce persistenza in-memory e relazionale per applicazioni che possono essere eseguite sulle piattaforme cloud dei tre grandi provider o su S/4HANA e S/4HANACloud di SAP. Oltre a gestire e fornire accesso ai database HANA, SAP offre servizi di persistenza per backup, ripristino e bilanciamento dei carichi.
10. Teradata
Teradata offre una gamma di servizi di database relazionali, tra cui la propria offerta di cloud gestito Intellicloud.
Marc Clark, direttore della strategia cloud di Teradata, ha spiegato a Computerworld che i suoi clienti lavorano soprattutto on premise e sono più orientati verso sistemi di cloud ibrido.
“I nostri clienti possono implementare Teradata dove vogliono, quindi abbiamo costruito il nostro cloud usando il nostro hardware”, ha detto. “Molti clienti vogliono un’implementazione di tipo cloud e negli ultimi anni si sono appoggiati ad AWS e Azure”. Attualmente Teradata non è disponibile su Google Cloud, che sembra essere un’opzione non richiesta dai clienti.
Clark ammette che le funzionalità Teradata rimangono le stesse on premise, su Intellicloud o cloud pubblico. La società tuttavia sta apportando cambiamenti, separando elaborazione e storage, nella prossima versione 16.0.
11. Google Cloud SQL
Google offre una gamma di soluzioni basate su cloud (Bigtable, Cloud Spanner, Cloud Datastore), tra cui Cloud SQL. Le aziende possono eseguire un database relazionale MySQL di PostgreSQL (attualmente in beta) su Google Cloud Platform.
12. EnterpriseDB
Marc Linster, SVP dei prodotti di EnterpriseDB, ha dichiarato a Computerworld che i suoi grandi clienti sono ancora riluttanti a spostare i sistemi di produzione nel cloud pubblico. EnterpriseDB è specializzata nell’aiutare i grandi clienti a dividere i loro database monolitici in qualcosa di più agile e adatto a un’infrastruttura microservice.
“Consentiamo ai clienti di scegliere il cloud ibrido e il loro meccanismo cloud, in quanto desiderano evitare la dipendenza da un singolo provider di cloud pubblico”, ha spiegato Linster. “Vediamo interesse nell’utilizzare il proprio database-as-a-service su AWS o OpenStack senza perdere il controllo o avere preoccupazioni sulla sicurezza”.