Quindi diciamo che stai scrivendo software per qualche azienda. Le best practice, così come le comprendo, imporranno che per scopi di sviluppo, si compila il DB con dati falsi . Ci sono una serie di vantaggi a questo.
-
Se utilizzerai, per esempio, Vagrant per gestire l'ambiente di sviluppo, la maggior parte delle immagini pre-costruite ha un HDD di dimensioni limitate. Come diciamo che la produzione ha 100 di GB di dati. La tua scatola di Vagrant non sarà probabilmente così grande. Inoltre, se stai facendo test di integrazione continui, probabilmente non vorrai farlo con un DB di dimensioni di produzione.
-
In teoria, gli sviluppatori non dovrebbero avere informazioni personali identificabili dei clienti del mondo reale e questo lo facilita.
Un grosso problema che vedo con questo, tuttavia, è ... diciamo che il tuo DB di sviluppo è, nel complesso, di dimensioni pari a 1 MB, mentre la produzione è di 100 GB di dimensioni. Uno sviluppatore potrebbe scrivere una query che unisce le tabelle insieme su colonne non indicizzate. Forse con 1 MB di dati funziona benissimo ma con 100 di GB di dati?
Come si dovrebbe affrontare questo problema?
(se è per questo, a volte ci può essere una quantità eccessiva di burocrazia da tagliare per far sì che i dati di produzione riproducano accuratamente un problema specifico per un cliente, ma questo è un problema organizzativo, non tecnico)