Database in cloud

Vola sul cloud con i database

Quali sono i vantaggi e quali sono le categorie a disposizione? Dai database autogestiti a quelli gestiti, tradizionali e cloud native, in questo articolo scoprirai qual è quello più adatto alle tue esigenze.

 

 

Il 2020 è stato un anno diverso da tutti gli altri e la sua imprevedibilità ha acceso i riflettori sulle tecnologie di cui il business si è dotato.

Le aziende hanno bisogno di database affidabiliscalabili e costantemente efficienti. In questo 2020 le imprese hanno intensificato e, in alcuni casi, iniziato la modernizzazione dei loro database:

  • i piani di migrazione del database in cloud sono stati accelerati
  • tutte le soluzioni predefinite e rigide sono in via di abbandono
  • Tutte le soluzioni non facilmente adattabili a condizioni mutevoli o quelle non adeguate alle necessità odierne verranno, mano a mano, dismesse.

Questo trend non è nuovo ma è già in corso da almeno un paio di anni. Nel 2019 Gartner prevedeva una crescita del 54%, rispetto all’anno precedente, dell’uso del database in cloud.
Il trend ci accompagnerà per molti anni ancora. Infatti, la dimensione del mercato del database in cloud e del database as a service (DBaaS) continuerà a crescere fino a raggiungere da un valore stimato complessivo di 24,8 miliardi di dollari entro il 2025.

Di fronte alle esigenze dei clienti, sempre crescenti e diversificate, i principali provider di servizi cloud hanno continuato a lanciare nuovi prodotti, nuove funzionalità e a diversificare le tipologie di servizi offerti. Database gestiti di varie tipologie fanno ora parte delle offerte di tutti i principali cloud provider, e si affiancano ad altri servizi consulenziali offerti come database relazionali (sia transazionali che data warehouse), non relazionali, chiave/valore e archivi di documenti.

 

Quali sono le possibilità che il cloud mette a disposizione?

In questo articolo andremo ad esaminare in modo specifico i database in cloud ed i vantaggi correlati. Le opzioni di database in cloud si dividono in due categorie principali:

Database autogestiti

L’opzione basic del database autogestito prevede semplicemente l’esecuzione dei database in cloud su delle Virtual Machine. In questo caso il software viene installato come se ci trovassimo nel datacenter, ma il server è effettivamente in Cloud.
Quest’opzione “base” è adatta a quegli applicativi che non permettono un utilizzo più spinto delle potenzialità del cloud. Infatti, questa opzione, pur essendo la soluzione più adatta in determinati contesti, non permette di sfruttare al meglio tutte le potenzialità offerte dai Cloud provider.

Quando si implementa un database autogestito, il cloud provider metterà a disposizione solo l’hardware, l’hypervisor per eseguire la VM e altri strumenti per gestire la distribuzione.

Quindi, dovrai occuparti di creare una VM in grado di eseguire il sistema operativo e la tua applicazione. Ovviamente puoi eseguire qualsiasi cosa tu voglia nella VM, incluso un motore di database a tua scelta.
Con questo tipo di opzione database in cloud, dovrai eseguire la maggior parte delle attività amministrative, come l’installazione degli aggiornamenti e la configurazione delle opzioni di rete. La gestione, per te, sarà molto simile a quella che metti in atto se attualmente hai un database in locale.

Database gestiti

In questo caso il cloud provider non fornisce solo l’hardware ma anche il software del server stesso. La maggior parte dei fornitori offre sia database tradizionali (come Oracle e MySQL) sia cloud database nativi e specifici.

Ecco le principali differenze tra database gestiti e database autogestiti:

  • se utilizzi un database gestito non è necessario scaricare, installare, aggiornare, configurare o eseguire il backup del database manualmente perchè il cloud provider fa tutto questo per te o ti mette a disposizione dei tool che semplificano di molto queste attività.
  • poiché il cloud provider fornisce direttamente il database gestito, tu dovrai adeguarti alle sue impostazioni. Puoi modificare i parametri del database che riguardano l’esecuzione (es: cursori, connessioni, ecc.) ed è possibile decidere quando installare nuove versioni o per quanto tempo conservare i backup, ma non potrai usare un motore di database non supportato dal fornitore o una versione non supportata. I tre grandi Cloud provider (AWS, Azure e Google) offrono diversi database proprietari e open source nonché i propri database nativi del cloud.
  • nei database gestiti, gran parte della sicurezza è gestita dal vendor. Tuttavia, anche un database gestito, lascia una parte importante delle decisioni riguardanti la sicurezza a te. Ad esempio potrai decidere a chi dare gli account e quali limitazioni porre su tabelle, così come potrai controllare il monitoraggio e il controllo dei tentativi di accesso.
  • a volte, il cloud provider può fornirecompresa nella fee, anche la licenza per un database proprietario. Se quest’opzione non viene utilizzata, come nel caso del db autogestito, sarà tua responsabilità l’utilizzo corretto e il pagamento delle dovute licenze che, secondo varie logiche, possono essere convertite in licenze utilizzabili sul Cloud.

Database gestiti: tradizionale o cloud native?

I database gestiti possono essere suddivisi in due categorie: tradizionale e cloud native.

Database tradizionali, come Oracle, SQLServer, MySQL e PostgreSQL, spesso vengono proposti come gestiti dai fornitori di servizi cloud.

Infatti, se hai costruito la tua organizzazione intorno a uno di questi database in locale, spostarti nello stesso database nel cloud semplifica la migrazione: sarà meno probabile che tu abbia bisogno di modificare le tue applicazioni e puoi utilizzare strumenti familiari per gestire i tuoi dati.
Inoltre, potrai combinare offerte da diversi fornitori e, spesso, mantenere la stessa versione che hai in locale del database.

database in cloud nativi sono delle soluzioni, sviluppate o modificate, dai cloud vendor stessi. I database in cloud nativi funzionano meglio, scalano più facilmente e sono più economici nel lungo periodo.
Ad esempio, AWS ha risolto molti dei problemi di ridimensionamento e di efficienza della gestione di database relazionali nel cloud con il proprio database, Amazon Aurora. Anche Google fornisce delle feature uniche nei suoi database proprietari, come ad esempio Cloud Spanner e Big Table.

Quali sono le principali tipologie di database?

I principali tipi di database gestiti, tradizionali e cloud native, includono:

    • Database relazionali: alcuni database in cloud sono versioni gestite di database più popolari e ampiamente utilizzati.
      Per esempio, Azure offre il tradizionale SQL Server di MicrosoftAmazon supporta MariaDB, MySQL, Oracle, PostgreSQL e SQLServer tramite il suo Amazon Relational Database Service (RDS), GCP (Google Cloud Platform) fornisce Postgresql e Mysql nel suo Cloud SQL.
      Questa offerta, ampia e integrata, ti permette di migrare le tue installazioni locali su database in cloud più facilmente . Inoltre, come esempio di database relazionali nativi, Azure fornisce Azure Cosmos DB, Google Cloud offre Cloud Spanner e AWS offre Amazon Aurora.
    • Data Warehouse: sebbene questi siano tipicamente database relazionali, differiscono dai database orientati alle transazioni (transaction-oriented database). I data warehouse servono per la reportistica e, soprattutto su cloud, tendono a essere database “colonnari”, cioè memorizzano i dati per colonna anziché per riga e questo velocizza notevolmente le query di estrazione. I DWH principali offerti dai cloud provider sono ad esempio Amazon Redshift e BigQuery di Google.
    • Database non relazionali: questo termine copre una varietà di database diversi. A differenza dei database relazionali tradizionali, sono progettati per casi d’uso di applicazioni speciali.
      I fornitori di cloud offrono numerosi db di questo tipo che sono creati per scopi diversi: database chiave/valore, database documentali, db a grafo, time-series database, database Ledger, o database in memory.

Quando un database gestito potrebbe non essere una buona idea

Un servizio di database gestito non è sempre la giusta soluzione. Sicuramente non è appropriato in un paio di scenari:

    • La dimensione del database e le IOPS sono superiori ai limiti del database
      database in cloud nativi sono progettati per scalare e quindi per soddisfare le esigenze più estreme.
      database gestiti sono basati sui più tradizionali motori di database. Questi, spesso, hanno dei limiti massimi riguardo alle dimensioni e alle operazioni di input/output al secondo (IOPS). Molte organizzazioni possono rientrare in questi limiti ma, se il tuo database è davvero enorme e hai un numero maggiore di IOPS rispetto a ciò che il provider può supportare, scegliere un database tradizionale gestito non è indicato.
    • Hai bisogno del pieno controllo sui tuoi database
      Se hai la necessità di avere il massimo controllo sul tuo database è più indicato optare per una soluzione autogestita che consenta ampio margine di customizzazione delle impostazioni. Ad esempio se la tua azienda ha bisogno di una versione specifica del database oppure necessità di funzionalità o di opzioni del database che non sono supportati dal provider

 

Cosa può fare Miriade: migrazione del database in cloud

Per migrare su cloud c’è sicuramente bisogno di un supporto esperto: noi di Miriade ti accompagneremo nella definizione e nell’implementazione della tua cloud strategy con l’aiuto dei principali vendor: Amazon Web Services, Google Cloud Platform e Azure.

Cloud Selection

L’offerta dei cloud provider presenti sul mercato è sempre più ampia, valida e rispondente alle necessità delle aziende, anche quelle più esigenti. È fondamentale avere al proprio fianco un partner esperto e certificato, in grado di studiare e comprendere le reali necessità della tua organizzazione e consigliarti la migliore soluzione e architettura cloud.
Noi di Miriade siamo partner dei principali cloud provider a livello mondiale, come Amazon Web Service e Google Cloud Platform. Questo ci rende l’alleato ideale per guidarti nella scelta del provider più adatto alle tue esigenze, indicandoti la migliore opzione tra un database gestito o auto-gestito, e tra soluzioni tradizionali o cloud native.

Creazione dell’infrastruttura Cloud

Oltre al porting del database, possiamo progettare e sviluppare con te tutta l’infrastruttura cloud curando: disegno, scelta dei servizi e dei prodotti più adatti alle specifiche esigenze e creando gli ambienti di test e di produzione.
Creeremo per te un’infrastruttura solida, scalabile e performante per ospitare il tuo database.

Contenuti simili
DATA FABRIC
ago 23, 2023

Perché la Data Observability è oggi essenziale per ottimizzare le pipelines e rilevare criticità relative alla qualità dei dati.

DATA FABRIC
ago 23, 2023

Democratizzazione dell'uso dei dati e Generative AI. Gli enhancements della piattaforma Denodo.