Il team di sviluppatori ha bisogno di qualcuno con competenze simili a DBA, ma non ha bisogno di un DBA perché la maggior parte di ciò che fa il DBA non è di alcuna utilità durante il progetto di sviluppo.
I problemi usuali sono che il database viene consegnato al DBA per "tuning" prima della distribuzione, ma poi è troppo tardi. Il problema è che il DBA non ha idea di cosa debbano essere usate le tabelle, come vengono interrogate, chi userà il database e quando lo faranno. Quando trovano qualcosa su cui migliorare, spesso si scopre di aver bisogno di una riprogettazione. Molto costoso.
I problemi dall'altra prospettiva sono che i DBA che non sono coinvolti attivamente nello sviluppo non comprendono la maggior parte dei problemi che devono essere affrontati durante l'analisi o lo sviluppo e respinge la maggior parte dei problemi come "non dovrebbe accadere con analisi corretta ". Il che è vero in un certo senso, ma troppo semplicistico per essere di qualche utilità.
Girare le persone tra le diverse funzioni è un ottimo modo per trasferire le conoscenze e migliorare i metodi di lavoro di entrambi i team. Aggiunge alcune conoscenze di progetto al team DBA e aggiunge alcune competenze DBA ai team di sviluppo.
Anche se sono d'accordo con gran parte di ciò che è scritto in questo articolo, penso che i team di un singolo non siano ottimali a causa della mancanza di trasferimento di conoscenze. Ma sono d'accordo con i team di personale con persone come loro descrivono.
The Spanner: The Sviluppatore BI di prossima generazione