Quali apporaches comuni esistono per il controllo delle versioni del database per uno sviluppo basato sulle funzionalità?

1

Non è chiaro in che modo viene fornita la coerenza dei dati per i vari rami.

Abbiamo una vasta knowledgebase che viene riempita dagli esperti e consegnata come aggiornamento ai nostri clienti. Questi dati vengono anche utilizzati per testare il prodotto.

Ma se abbiamo un paio di funzioni (sviluppate in parallelo) e ogni funzionalità richiede il proprio schema db leggermente diverso non sarà un inferno?

Sicuramente esiste un modo per popolare tutti i DB da un archivio centralizzato. E qui arriva la domanda? Quali sono questi metodi?

Ora l'unica soluzione che vedo è creare un meccanismo di mappatura e salvare i mapping nel DB corrispondente, ma credo che esistano approcci più eleganti.

Aggiornamento:

Per chiarire il problema.
Ne abbiamo uno (chiamiamolo master db). E N database con schemi leggermente "più stretti" rispetto al chema del master. Cioè master ha lo schema più ricco: altri dbs hanno meno tabelle / colonne.

    
posta Pavel Voronin 22.04.2013 - 13:59
fonte

1 risposta

3

Le modifiche alla struttura e allo schema del database devono essere sottoposte al controllo del codice sorgente. Invece di spedire un file di database con i dati della knowledge base già presenti in esso, avere una build separata che eseguirà un'importazione dei dati della conoscenza dopo che il database è stato creato o modificato. La fonte dei dati potrebbe essere da file testo / xml.

Anche gli script di importazione dovrebbero trovarsi sotto il controllo del codice sorgente poiché devono gestire lo schema specifico per questo ramo.

Sarà una specie di inferno se non lo prendi sotto controllo e automatizzato. Se fosse facile, lo farebbero tutti.

    
risposta data 22.04.2013 - 14:10
fonte

Leggi altre domande sui tag