Descrizione del progetto
TradottoIl compito ha due parti collegate. La prima è ottimizzare il sistema esistente: raccogliere e analizzare i log delle query lente, studiare i piani di esecuzione, proporre indici, riscritture di query e affinamenti mirati dello schema (normalizzazione dove aiuta, denormalizzazione o tabelle di riepilogo dove è più efficiente). Vogliamo che ogni raccomandazione sia supportata da numeri "prima e dopo" su una copia realistica dei nostri dati. La seconda parte è la migrazione pianificata da MySQL a PostgreSQL. Questo deve essere trattato come un'operazione di combattimento con zero perdita di dati e downtime minimo: mappatura dei tipi di dati e delle collazioni, migrazione della logica e dei vincoli memorizzati, verifica dei conteggi delle righe e dei checksum su entrambi i lati, oltre a uno scenario di rollback testato in caso di fallimento.
Inizi su un ambiente di test e concordi ogni passaggio con il nostro team prima di toccare la produzione. La comunicazione chiara, script riproducibili invece di modifiche manuali una tantum e discussioni oneste sui compromessi sono importanti per noi. Si prega di fornire esperienza pertinente con grandi set di dati e specificare gli strumenti preferiti per la conversione dello schema e il controllo dell'integrità. I risultati devono essere documentati in modo che i nostri sviluppatori possano mantenerli in futuro.
— Audit completo delle query lente con priorità e passaggi di riproduzione
— Piano degli indici, query riscritte e raccomandazioni per lo schema con risultati di misurazione
— Runbook di migrazione: mappatura dei tipi, sequenza di cutover e rollback
— Verifica automatizzata dei conteggi delle righe, checksum e integrità referenziale dopo la migrazione
— Documentazione di consegna e breve walkthrough per il nostro team di sviluppo