Contesto: L’approccio Agile è sempre più determinante nelle iniziative strategiche di innovazione digitale. In tali progetti non solo lo sviluppo del software, ma anche la modellazione e la gestione applicativa/sistemistica dei dati sono molto fluide, richiedendo velocità ed agilità nella loro continua evoluzione: il team di sviluppo ha spesso bisogno di essere quanto più indipendente e rapido nel processo di evoluzione del dato, riducendo per quanto possibile la dipendenza da team terzi non direttamente coinvolti nella progettazione e nello sviluppo applicativo, quali IT Operations, database administrator etc.
Partendo da queste premesse, l’adozione di un database non relazionale come MongoDB, specialmente in applicazioni cloud-native, costituisce un fattore determinante per migliorare le prestazioni, affidabilità e scalabilità del sistema, e per ridurre i tempi di interazione e la dipendenza da team terzi di IT operations.
In quest’ottica è spesso necessario dotarsi di un’architettura in grado di effettuare una migrazione dati da un database relazionale ad un database NoSQL come MongoDB, garantendone l’integrità.
Obiettivi: Nel corso di questa tesi si analizzerà lo stato dell’arte dei database relazionali e NoSQL (con focus particolare su MongoDB), degli strumenti e delle strategie di migrazione dati già esistenti.
Verrà inoltre progettata e realizzata un’applicazione cloud-native per gestire la migrazione dati da un database relazionale verso un database NoSQL basato su cloud come MongoDB (Database as a Service), garantendo l'integrità delle informazioni migrate. Il Front End dell'applicazione (GUI) sarà sviluppato con una tecnologia a scelta (React, Vue.js, Angular).