Dove sono tutti i DBA?

7

Per qualche ragione ho riflettuto l'altro giorno sugli amministratori di database e su quello che fanno. Questo thread va in qualche modo per rispondere a questa domanda, ma poi ho cercato il sito di lavoro principale nella mia area di curiosità, e sembra che ci siano più posti di lavoro DBA Oracle in giro rispetto a molte altre specialità tecnologiche. Anche quelli dal suono relativamente comune, come "Java Developer" o "Network Administrator".

Ecco la cosa: sono stato in questo settore per dieci anni, ho lavorato in diversi lavori (una coppia in negozi aziendali piuttosto grandi) e non ho mai visto un vero DBA dal vivo. Di solito c'era un "guru del database" autodidatta su chi era il goto guy per i problemi del database (altrimenti impiegato come sviluppatore come il resto di noi), ma non ho mai visto nessuno in un ruolo DBA ufficiale, da nessuna parte, mai.

Quindi, dove sono tutti i DBA? Immagino che, dal momento che tutti i posti in cui ho lavorato finora fossero relativamente orientati all'applicazione, non ho mai sperimentato un ambiente DB-heavy molto hardcore. Allo stesso tempo, almeno uno dei lavori che ho svolto mi è sembrato un'operazione piuttosto incentrata sui dati (mercato in tempo reale / sistemi di trading, enormi database), e anche qui gli unici "database di persone" erano questi "sviluppatori che erano guru del database sul lato ". Nessun ruolo DBA ufficiale.

È davvero solo il mio caso di non essere mai stato nel tipo di ambiente in cui sono necessari i DBA? In tal caso, che tipo di ambiente è? Questo fenomeno ha forse a che fare con i data center che sono operazioni separate / in outsourcing in questi giorni, quindi la maggior parte dei programmatori a livello di applicazioni non li vede più?

Nota: sto fondamentalmente cercando di capire dove si trova la separazione tra "sviluppatori che conoscono bene i database" e gli effettivi DBA. Sembra che un sacco di ruoli di sviluppo richieda una certa conoscenza del database piuttosto hardcore al giorno d'oggi (e che la maggior parte dei team di sviluppo - anche in ambienti piuttosto pesanti per DB - ottengano senza un DBA ufficiale sullo staff). cioè per favore non chiudere o passare a dba.SE.

    
posta Bobby Tables 31.05.2011 - 02:16
fonte

1 risposta

5

Un DBA non è uno sviluppatore SQL. Un DBA è un amministratore. Installa, configura, esegue il back-up, ripristina, garantisce i privilegi, controlla la sicurezza, esegue l'ottimizzazione fisica, esegue la migrazione, gestisce i database delle app dei fornitori (SAS, PeopleSoft) ecc. Di un database. Tutte le imprese di medie-grandi dimensioni (banche, assicurazioni, vendita al dettaglio, ecc.) Con dati preziosi in DB avranno un DBA, sia in-house che in outsourcing. E nessuno sviluppatore non è adatto per un DBA; i ruoli, la responsabilità e persino le ore di lavoro possono essere diversi.

Uno sviluppatore di database è un esperto SQL che fa parte del team di sviluppo dell'applicazione. È lui / lei che sviluppa il modello logico dei dati (tabelle, viste, indici, ecc.) E tutto il codice SQL (Stored Procs, SQL dinamico) inclusa l'ottimizzazione. Questa persona potrebbe essere uno sviluppatore SQL esclusivo (come ho nel mio team) o uno sviluppatore condiviso SQl / OtherPorgrammingLanguage. Soprattutto, questa persona non avrebbe accesso ai DB di produzione e tutte le modifiche verrebbero effettivamente eseguite dal DBA utilizzando script di modifica o altri strumenti. A sua volta, il DBA NON deve mettere in discussione il codice SP o lo schema Table di proprietà dell'applicazione (sto parlando di app proprietarie del DB e tutti i dati vengono inseriti nel DB tramite l'app).

    
risposta data 31.05.2011 - 02:38
fonte

Leggi altre domande sui tag