Migrazione dei dati: strategia e best practice
I big data sono ciò che fa funzionare la maggior parte delle moderne imprese e i big data non si fermano mai. Questo presuppone che integrazione dei dati e migrazione dei dati siano per ogni azienda processi ben definiti e perfettamente integrati — sia che i dati vengano trasferiti da sorgenti di input a data lake, da un repository a un altro, da un data warehouse a un data mart oppure nel cloud. Senza un programma di migrazione dei dati di qualità, le aziende rischiano di sforare il budget, ritrovarsi a gestire procedure eccessivamente complesse o realizzare che le proprie attività di gestione dei dati funzionano al di sotto delle aspettative.
Che cos'è la migrazione dei dati?
Per migrazione dei dati si intende il processo di trasferimento dei dati da un sistema a un altro. Anche se può sembrare una procedura semplice, in realtà comporta una modifica del sistema di archiviazione, così come del database o dell'applicazione utilizzata.
Nel contesto di un processo di estrazione/trasformazione/caricamento (ETL), una qualsiasi migrazione di dati comporterà quantomeno i passaggi di trasformazione e caricamento. Ciò significa che i dati estratti devono essere sottoposti a una serie di elaborazioni nella fase di preparazione, dopodiché possono essere caricati nella posizione di destinazione.
Le organizzazioni eseguono migrazioni dei dati per diversi motivi. Talvolta devono revisionare un intero sistema, aggiornare database, aprire un nuovo data warehouse o integrare dati provenienti da un'acquisizione o da un'altra sorgente. La migrazione dei dati si rende inoltre necessaria quando si implementa un nuovo sistema da affiancare ad applicazioni esistenti.
Perché è importante definire una strategia di migrazione dei dati.
A prescindere dalla finalità ultima di una migrazione dei dati, in genere si punta a migliorare prestazioni e competitività di un'organizzazione.
Ma per arrivare a questo è necessario che la migrazione venga fatta nel modo giusto.
Migrazioni mal riuscite possono portare a una scarsa accuratezza dei dati, contenenti ridondanze e altre incognite. Questo può accadere anche quando i dati di una sorgente sono perfettamente utilizzabili e idonei. Inoltre, eventuali problemi presenti originariamente nei dati possono venire amplificati quando tali dati vengono trasferiti in un sistema nuovo e più sofisticato.
Una strategia di migrazione dei dati completa consente di prevenire esperienze di basso livello che finiscono per creare più problemi di quanti non ne riescano a risolvere. Oltre al mancato rispetto delle scadenze e al superamento dei budget, programmi incompleti possono portare al totale fallimento del progetto di migrazione. Durante la pianificazione strategica del lavoro, i team devono dare alle migrazioni la giusta attenzione, anziché subordinarle ad altri progetti dalla portata più ampia.
Un programma strategico di migrazione dei dati dovrebbe includere la valutazione dei seguenti fattori critici:
- Conoscenza dei dati — Prima di procedere alla migrazione, i dati di origine devono essere sottoposti a verifica completa. Se questo passaggio viene ignorato, possono venire alla luce problemi inattesi.
- Pulizia — Una volta identificati eventuali problemi con i dati di origine, è necessario che vengano risolti. Questo può richiedere strumenti software aggiuntivi e risorse di terze parti, in base alla portata del lavoro.
- Manutenzione e protezione — I dati subiscono un processo di degradazione nel corso del tempo che li rende inaffidabili. Per questo devono essere implementati controlli che garantiscano la qualità dei dati.
- Governance — Monitoraggio e segnalazione della qualità dei dati sono importanti in quanto permettono una migliore comprensione dell'integrità dei dati. I processi e gli strumenti utilizzati per produrre queste informazioni dovrebbero essere altamente utilizzabili e automatizzare le funzioni, ove possibile.
Oltre a una procedura passo a passo strutturata, un programma di migrazione dei dati dovrebbe includere un processo per l'acquisizione del software e degli strumenti più adatti per il progetto.
Strategie di migrazione dei dati.
Per mettere a punto una strategia di migrazione dei dati è possibile procedere in diversi modi. Gli specifici requisiti di business di un'organizzazione aiuteranno a definire quello più appropriato. Tuttavia, la maggior parte delle strategie ricade in una o due categorie: "big bang" o "contagocce".
Migrazione di tipo "big bang".
In una migrazione dei dati di tipo big bang, l'intero trasferimento viene completato in un arco di tempo limitato. I sistemi attivi subiscono un'interruzione mentre i dati vengono sottoposti a elaborazione ETL e trasferiti al nuovo database.
Il vantaggio di questo metodo è, ovviamente, che è concentrato in un unico evento e richiede poco tempo per essere portato a termine. La pressione, tuttavia, può essere intensa, in quanto l'attività deve continuare con una delle risorse offline. Il rischio associato a questa strategia consiste nella possibilità che l'implementazione risulti compromessa.
Se l'approccio big bang dovesse risultare il più sensato per la tua azienda, considera di eseguire l'intero processo di migrazione prima dell'effettivo evento.
Migrazione a "contagocce".
Nelle migrazioni a contagocce invece il processo viene eseguito in più fasi. Durante la fase di implementazione, il vecchio sistema e il nuovo vengono eseguiti in parallelo, per scongiurare interruzioni dell'attività. Processi che vengono eseguiti in tempo reale possono mantenere i dati in costante migrazione.
Rispetto all'approccio di tipo big bang, queste implementazioni possono risultare piuttosto complesse dal punto di vista della progettazione. Tuttavia, una maggiore complessità della procedura, a patto che venga eseguita correttamente, in genere riduce i rischi, anziché incrementarli.
Best practice per la migrazione dei dati.
A prescindere dal metodo di migrazione scelto, vi sono alcune best practice da tenere a mente:
- Esegui un backup dei dati prima di iniziare la migrazione. Se qualcosa dovesse andare storto durante l'implementazione, non puoi permetterti di perdere i dati. Prima di procedere, assicurati che siano disponibili risorse di backup e che siano state testate.
- Mantieniti fedele alla strategia. Troppi manager dei dati definiscono un programma per poi abbandonarlo se il processo ha un decorso troppo "fluido" o se le cose sfuggono di mano. Il processo di migrazione può essere complicato e persino frustrante, alle volte; preparati a una tale eventualità e resta fedele al tuo programma.
- Esegui test, anche più di uno. Durante le fasi di pianificazione e progettazione, successivamente in fase di implementazione e durante tutta la manutenzione, sottoponi a test la migrazione dei dati per assicurarti di arrivare al risultato che ti eri prefissato.
Seis passaggi chiave di una strategia di migrazione dei dati.
Ogni strategia è differente nei dettagli, in quanto si basa sulle esigenze e gli obiettivi dell'organizzazione, tuttavia, generalmente, un programma di migrazione dei dati dovrebbe seguire uno schema comune e riconoscibile:
1. Esplorazione e valutazione della sorgente
Prima di procedere alla migrazione dei dati, è necessario conoscere (e comprendere) ciò che si sta trasferendo e come i dati si adatteranno al sistema di destinazione. Cerca di capire quanti dati vengono estratti e che aspetto hanno.
Potrebbero esserci dati con tanti campi, alcuni dei quali non devono essere mappati nel sistema di destinazione. Potrebbero inoltre esserci campi di dati all'interno di un'origine da estrarre da un'altra posizione per colmare il vuoto. Chiediti sempre cosa deve essere trasferito, cosa può essere tralasciato e cosa manca.
Oltre a rispettare i requisiti relativi a campi di dati da trasferire, esegui una verifica sui dati effettivi contenuti. Se rilevi campi compilati in modo discontinuo, porzioni di dati incomplete, imprecisioni o altri problemi, potresti riconsiderare l'effettiva necessità di eseguire il processo di migrazione dei dati.
Se un'organizzazione tralascia questa fase di revisione della sorgente e dà per scontata la conoscenza dei dati, la migrazione potrebbe comportare solo un inutile spreco di tempo e di denaro. O peggio ancora, l'organizzazione potrebbe incorrere in un errore critico in fase di mappatura dei dati che va a bloccare il processo in corso.
2. Definizione e progettazione della migrazione.
Nella fase di progettazione, le organizzazioni definiscono il tipo di migrazione da eseguire – big bang o a contagocce. Questa fase prevede inoltre la definizione dell'architettura tecnica della soluzione e la descrizione dei processi di migrazione.
Una volta definiti il design, i dati da estrarre e il sistema target, puoi iniziare a tracciare la sequenza temporale del progetto e a evidenziare eventuali punti critici. Al termine di questa fase, l'intero progetto dovrebbe essere documentato.
Durante la pianificazione è importante considerare eventuali programmi di sicurezza per i dati. Se i dati devono essere salvaguardati, le strategie di protezione dovrebbero essere definite durante la pianificazione.
3. Creazione della soluzione di migrazione.
Potresti essere tentato di eseguire la migrazione adottando un approccio "approssimativo". Tuttavia, dal momento che eseguirai l'implementazione una sola volta, è fondamentale che venga sviluppata nel modo corretto. Una tattica molto utilizzata consiste nel suddividere i dati in sottogruppi e creare una categoria per volta, eseguendo il relativo test. Se l'organizzazione deve eseguire una migrazione particolarmente grande, potrebbe essere utile creare e testare in parallelo.
4. Esecuzione di un test dal vivo.
La procedura di test non è terminata dopo aver testato il codice durante la fase di creazione. È importante testare il progetto di migrazione con i dati effettivi, per assicurare l'accuratezza dell'implementazione e la completezza dell'applicazione.
5. Avvio.
Dopo la fase di test, l'implementazione può procedere, utilizzando lo stile definito nel programma.
6. Verifica.
Una volta attivata l'implementazione, configura un sistema per verificare i dati e garantire l'accuratezza della migrazione.
Software di migrazione dei dati.
Creare strumenti per la migrazione dei dati da zero e codificarli manualmente può essere complicato ed estremamente laborioso. Gli strumenti per dati che semplificano la migrazione sono più efficienti ed economici. Quando dovrai trovare una soluzione software per le tue esigenze di migrazione dei dati, cerca un fornitore in grado di offrirti le seguenti caratteristiche:
- Connettività — La soluzione supporta i sistemi e il software che usi attualmente?
- Scalabilità — Quali sono i limiti del software in termini di dati? E inoltre, le tue esigenze potranno essere gestite in un prossimo futuro?
- Sicurezza — Dedica un po' di tempo all'analisi delle misure di sicurezza della piattaforma software. I dati sono una delle tue risorse più preziose e devono rimanere protetti.
- Velocità — Qual è la velocità di elaborazione della piattaforma?
Migrazione dei dati nel cloud.
Sempre più spesso, le organizzazioni trasferiscono una parte o tutti i loro dati nel cloud per velocizzare i tempi di commercializzazione, migliorare la scalabilità e ridurre la necessità di risorse tecniche.
In passato, i data architect si occupavano di implementare server farm di grandi dimensioni in sede per mantenere i dati all'interno delle risorse fisiche dell'organizzazione. Parte della motivazione di portare avanti l'implementazione di server in sede era da ricondurre a preoccupazioni per la sicurezza nel cloud. Tuttavia, ora che le principali piattaforme cloud hanno adottato pratiche di sicurezza equiparabili a quelle dei tradizionali sistemi IT (e necessariamente conformi al GDPR), questo ostacolo alla migrazione è stato ampiamente superato.
I giusti strumenti di integrazione cloud aiutano i clienti ad accelerare i progetti di migrazione dei dati nel cloud mediante soluzioni iPaaS (Integration Platform-as-a-service) altamente scalabili e sicure. La suite Talend di strumenti di integrazione dei dati open source e nativi per il cloud supportano funzionalità di trascinamento della selezione che semplificano operazioni di mappatura complesse e le nostre basi open-source rendono la nostra soluzione economica ed efficiente.
Introduzione alla migrazione dei dati
Se la tua organizzazione sta aggiornando i sistemi, passando al cloud o consolidando i dati, un processo di migrazione dei dati è all'orizzonte. Si tratta di un progetto grande e importante e l'integrità dei dati richiede che venga eseguito nel modo corretto.
La piattaforma Talend include strumenti gratuiti e open-source che possono semplificare ogni passaggio del processo di migrazione dei dati, dalla preparazione all'integrazione, fino allo streaming continuo dei dati. Dai inizio al tuo processo di migrazione esplorando il software che ti può aiutare a portarlo a termine.
Sei pronto a iniziare con Talend?
Altri articoli correlati
- "Job Design Pattern e best practice Talend": Parte 4
- "Job Design Pattern e best practice Talend": Parte 3
- Che cos'è la migrazione dei dati?
- Che cos'è la mappatura dei dati?
- Che cos'è la Data Integration?
- Job Design Pattern e best practice Talend: parte 2
- Job Design Pattern e best practice Talend: parte 1
- Change Data Capture (CDC)
- Guida per sviluppatori alla migrazione da Informatica PowerCenter a Talend: Parte 1