Che cos'è la migrazione di un database?

La migrazione dei database comporta lo spostamento dei dati contenuti nel database, inclusi oggetti di schema (tabelle, indici, viste), stored procedure, funzioni e trigger, da un database esistente a un database nuovo o aggiornato.

Potresti voler eseguire la migrazione dei tuoi database per vari motivi, ad esempio per migliorare le prestazioni, ridurre i costi, rafforzare la sicurezza o adottare tecnologie come l'analisi o l'AI.

Iniziamo? Scopri di più su Database Migration Service e migra il tuo database in Google Cloud.

In che modo la migrazione del database differisce dalla migrazione dei dati?

La migrazione dei dati è un componente del processo di migrazione del database, ovvero il trasferimento dei dati da un ambiente all'altro. Potresti dover spostare i dati senza eseguire la migrazione del database, ad esempio nel caso di modifiche correlate all'archiviazione.

La chiave per una migrazione dei dati e dei database di successo è trasferire le informazioni in modo accurato e rapido, riducendo al minimo i tempi di inattività e le interruzioni durante il trasferimento e il cutover.

Confronto tra migrazioni omogenee ed eterogenee

Un motore del database, chiamato anche sistema di gestione di database (DBMS), è il software che gestisce le operazioni di database di base e si interfaccia con le applicazioni software. 

Una migrazione omogenea si verifica quando il database da cui si esegue il trasferimento (origine) ha un motore identico o molto simile a quello del database a cui si esegue il trasferimento (destinazione). Una migrazione eterogenea si verifica quando il motore del database di destinazione differisce in modo significativo da quello di origine. 

La complessità di una migrazione varia in gran parte in base alle differenze tra i database di origine e di destinazione. Una migrazione eterogenea richiede la conversione di schema e codice, ovvero la loro riscrittura nel linguaggio del database di destinazione. Per gestire le complessità delle migrazioni, ad esempio la gestione del codice dell'applicazione scritto per il database di origine che necessita di conversione, può essere utile un servizio di migrazione dei database.

Molte aziende sono disposte a investire in un progetto di migrazione dei database lungo o complicato per ottenere i vantaggi a lungo termine che derivano da un moderno motore di database.

Strategie di migrazione dei dati

Esistono 4 strategie comuni per la migrazione dei dati. Visita Strategie di migrazione al cloud per un approfondimento e per trovare le strategie consigliate.

  • Rehosting: esegui la migrazione lift and shift. Il modo più semplice per eseguire la migrazione dei dati, che prevede la creazione di una copia completa del database esistente in un altro ambiente, di solito insieme al resto dello stack dell'applicazione [omogenea].
  • Replatforming: trasferisci e ottimizza. Questa strategia copia i database, le applicazioni e le macchine virtuali, per poi ottimizzarli per il nuovo ambiente cloud. Questa può essere una migrazione eterogenea, ad esempio quando si passa da un database commerciale a un database compatibile con PostgreSQL come AlloyDB  [omogenea/eterogenea].
  • Refactoring: sposta e migliora. Una strategia di migrazione al cloud basata sul refactoring prevede la riprogettazione delle applicazioni per renderle cloud-native, incluse le modifiche delle applicazioni [di solito eterogenea].
  • Riesegui build. Una strategia di migrazione al cloud basata sulla ricreazione prevede la riscrittura completa di un'architettura e un'applicazione per il cloud. A seconda dell'applicazione, questa operazione può essere meno costosa del refactoring [di solito eterogenea].

Vantaggi della migrazione al cloud

Sebbene tu possa eseguire la migrazione del database tra praticamente qualsiasi coppia di località, la maggior parte delle migrazioni avviene da on-premise al cloud o da un cloud all'altro.

Esistono molti motivi per cui le aziende eseguono la migrazione al cloud (o a un cloud provider alternativo):

  • Sviluppo più rapido delle applicazioni
  • Prestazioni e scalabilità migliorate 
  • Risparmi sui costi
  • Sicurezza
  • Una gamma più ampia di funzionalità, in particolare quelle legate all'AI
  • Il passaggio da una spesa in conto capitale on-premise (CapEx), comune ai database con licenza tradizionale, a una spesa operativa (OpEx), comune al servizio cloud

Scopri di più sui vantaggi della migrazione al cloud.

Idealmente, la migrazione del database non è un processo che la tua azienda eseguirà spesso. Per ottenere il massimo dalla migrazione, ecco alcune domande chiave di cui tenere conto:

  • La tua nuova architettura sarà in grado di soddisfare le esigenze di crescita della tua attività in futuro?
  • In che modo la migrazione interferirà con le operazioni aziendali? Riesci a ridurre al minimo i tempi di inattività e le interruzioni?
  • Quale sarà il costo complessivo del nuovo sistema? Valuta i costi di migrazione nel contesto dei costi/risparmi mensili per il nuovo servizio/infrastruttura.

Best practice per la migrazione dei dati

Le migrazioni di dati e database possono essere complesse. È essenziale garantire che i dati della tua azienda, nonché la sua organizzazione e le sue funzioni, passino alla nuova architettura senza problemi. Se eseguite in modo errato, potresti riscontrare perdita di dati, esecuzione non corretta dei workload o problemi di sicurezza.

Alcune best practice:

  • Comprendi i dati. È essenziale conoscere le esigenze specifiche dei casi d'uso aziendali e della relativa applicazione.
  • Valuta che tipo di orientamento che sta prendendo la tua attività. Prendere in considerazione la scalabilità è fondamentale per scegliere l'architettura e il provider giusti. 
  • Seleziona la strategia di migrazione dei dati giusta per la tua situazione.
  • Segui attentamente un piano di migrazione dei dati per garantire prestazioni ottimali.

Considerazioni:

  • Quali database e applicazioni dovresti migrare per primi?
  • Dovresti mantenere lo stesso modello di dati (ad esempio relazionale) o sarebbe meglio modificarlo in base al tuo caso d'uso?
  • Dovresti mantenere lo stesso motore del database o passare a uno diverso?
  • Dovresti eseguire la migrazione dei tuoi database internamente o assumere un fornitore di servizi esterno?
  • Quale servizio di migrazione del database e altri strumenti dovresti usare?
  • L'AI generativa può aiutarti con la migrazione?
  • È meglio gestire il nuovo database personalmente o selezionare un servizio gestito?

Il numero di fasi della migrazione dipenderà dalla configurazione esistente e dalla sequenza temporale della tua organizzazione. Ad esempio, la migrazione da un deployment on-premise autogestito a un servizio cloud gestito può essere eseguita in un unico passaggio. In alternativa, se hai poco tempo a disposizione, puoi prima eseguire la migrazione a un database autogestito nel cloud e poi passare a una soluzione completamente gestita.

Se si tratta di una migrazione di database eterogenea, valuta se combinare la conversione con uno di questi passaggi o se eseguire la conversione in un secondo momento.

4 passaggi di un piano di migrazione dei dati efficace

Per un approfondimento del processo, fai riferimento aiconcetti e principi della migrazione dei dati e alla configurazione ed esecuzione del processo di migrazione dei dati.

Sebbene i dettagli possano variare in base al caso d'uso specifico, questi sono i passaggi di base per una migrazione corretta:

  1. Identifica dove si trovano attualmente tutti i tuoi dati, in quale formato sono e dove dovrebbero essere dopo la migrazione. Potresti decidere di non migrare tutti i dati e di archiviare o eliminare quelli vecchi. È anche un momento chiave per prendere nota di eventuali potenziali rischi di migrazione.
  2. Pianifica la tua strategia di migrazione. Determina quale strategia di migrazione funzionerà meglio, decidi se i tempi di inattività possono verificarsi durante l'orario di lavoro e imposta un budget. 
  3. Esegui la migrazione. Potresti voler utilizzare un servizio di migrazione per l'implementazione.
  4. Testa il nuovo sistema prima del passaggio. In questo modo puoi identificare i workload che non funzionano correttamente e risolvere eventuali problemi. Potresti dover eseguire entrambi i database contemporaneamente, il che richiede la replica dei dati da un sistema all'altro. Solo dopo aver verificato che tutti i workload funzionano come previsto nel nuovo database, puoi arrestare il tuo vecchio sistema.

Dopo aver eseguito la migrazione del database, dovrai continuare a ottimizzarlo per mantenere le migliori prestazioni. Valuta un servizio di database completamente gestito.

Considerazioni speciali per la migrazione da on-premise al cloud

Molte organizzazioni stanno trasferendo i propri workload on-premise nel cloud per i motivi di cui sopra. Le migrazioni da on-premise richiedono considerazioni aggiuntive rispetto alle migrazioni da cloud a cloud.

Una strategia comune per la migrazione dei workload on-premise è il rehosting, che copia l'intero workload nel cloud. In questo modo, si ottengono sicurezza, affidabilità e alcuni vantaggi in termini di costi associati alla migrazione al cloud. Tuttavia, questa strategia trasferisce anche le inefficienze esistenti dall'architettura on-premise all'infrastruttura cloud. Pertanto, questa strategia ti fa perdere i maggiori risparmi sui costi e le efficienze associate a un'architettura cloud-native. Potresti anche perdere la ricca funzionalità del cloud in aree come disaster recovery, integrazione di analisi, servizi di AI/ML e un marketplace di offerte dei partner.

Assicurati di mantenere la sicurezza dei tuoi dati durante la migrazione, in particolare tra diversi tipi di ambienti. Un modo per garantire la massima sicurezza è utilizzare un servizio di migrazione dei database affidabile.

Quanto tempo ci vuole per eseguire la migrazione di un database?

Potrebbero essere necessari da alcuni giorni a diversi mesi, quindi è importante pianificare. I fattori includono le dimensioni del database, la strategia di migrazione e se stai utilizzando un servizio di migrazione del database.

Vantaggi dell'utilizzo di un servizio di migrazione dei database

La migrazione del database non è solo un trasferimento di dati, ma anche la conservazione delle funzioni in modo che i workload vengano eseguiti senza intoppi sul nuovo sistema. La modalità di migrazione dipende dal codice che hai scritto e dagli strumenti di migrazione. 

I vantaggi di un servizio di migrazione del database includono:

  • Trasferimento di dati senza interruzioni
  • Dati in transito sicuri e criptati
  • Trasferimento più rapido
  • Tempi di inattività più brevi
  • Coerenza dei dati
  • Risparmio sulle spese complessive

E poiché l'AI generativa diventa sempre più essenziale per i workload aziendali, i fornitori di servizi cloud offrono la conversione basata sull'AI tra motori di database, utilizzando modelli linguistici di grandi dimensioni (LLM) come Gemini.

Rivolgiti al cloud provider scelto per sapere se offre un servizio di migrazione dei database.

Fai il prossimo passo

Inizia a creare su Google Cloud con 300 $ di crediti gratuiti e oltre 20 prodotti Always Free.

Google Cloud