Tarefas de um DBA – O que faz um DBA?

No artigo irei escrever sobre as tarefas de um DBA: o que ele faz em seu trabalho e quais são as suas responsabilidades.

Este assunto, para quem já é um DBA, é fácil de entender, mas para quem é iniciante ou pretende ingressar nessa carreira, não é tão fácil assim!

Para quem não trabalha com TI, pior ainda, essas pessoas não tem a mínima ideia do que é ou do que faz um DBA, por isso quando me perguntam qual a minha profissão, para facilitar a conversa, eu prefiro responder: – sou Analista de Sistemas. A música Hoje eu sou um DBA do The Sprinters explica bem esta situação.

Tarefas de um DBA

Resumidamente, um DBA deve gerenciar os bancos de dados de um ou mais sistemas (geralmente muitos sistemas). Em detalhes, as tarefas que ele deve realizar são:

1- Avaliar o hardware do Servidor de Banco de Dados:
Avaliar e definir o hardware necessário para instalar o BD e comportar os seus dados e acessos.

2- Instalar o Software do Banco de Dados:
Instalar o Software do BD, instalar atualizações e correções de bugs e tudo o que for necessário para manter a estrutura física e lógica do BD.

3- Planejar e Implementar o Banco de Dados:
Definir e criar tabelas, índices e outros objetos de BD.

4- Criar e abrir o BD:
Criar o BD e garantir que ele esteja disponível para os usuários.

5- Fazer backup do BD:
Efetuar backups dos BD’s e garantir que eles sejam recuperáveis.

6- Gerenciar usuários de BD:
Criar usuários de BD e dar a eles privilégios de acesso aos dados, priorizando sempre a segurança dos dados, ou seja, os usuários devem ter o menor privilégio possível de acesso aos dados para evitar riscos desnecessários e proteger o BD como um todo.

7- Recuperar o BD em caso de falhas:
Definir e implementar estratégias e planos para recuperar o BD em caso de falhas.

8- Monitorar e ajustar a performance do BD:
Monitorar constantemente a performance do BD para identificar gargalos de desempenho e definir/implementar soluções para otimizar o seu desempenho.

Manter o tempo de resposta de acesso aos dados de acordo com as expectativas do usuários é o objetivo principal desta tarefa. Esta é a tarefa que eu mais gosto!


Em uma aula que eu dei para uma turma de Oracle Database 10G, gerei uma discussão com os alunos para definirmos (de acordo com os nossos conhecimentos e experiência) quais eram os 3 principais requisitos que o mercado de trabalho exigia para contratar um DBA. Chegamos nessa aula à seguinte conclusão:

O mínimo que um DBA deve saber

  1. Instalar e gerenciar o Banco de Dados e seus usuários, com segurança;
  2. Efetuar e recuperar backups (quando o BD for Oracle, tem que saber usar o RMAN);
  3. Monitorar e ajustar a performance do BD.

Comentários

Já ouvi muitos Desenvolvedores/Analistas de Sistemas afirmarem que uma ou outra tecnologia ou que um ou outro sistema não exige o trabalho de um DBA.

Já ouvi eles falarem: – Para quê um DBA? A gente otimizou tudo, não precisamos disso! ou – Para quê um DBA, o Hybernate é otimizado e cria todos os objetos no BD. Este sistema não precisa de um DBA.

O meu comentário é que estes profissionais estão muito enganados. Sistemas que possuem muitos usuários, em organizações que possuem BD’s corporativos, que armazenam dados de múltiplas aplicações, precisam de um DBA.

Desenvolvedores ou Analistas de Sistemas geralmente não são especialistas em gerenciar Bancos de Dados, alguns até fazem isso, mas normalmente não fazem da melhor forma possível, pois eles não tem tempo para estudar a fundo os SGBDs. Esta não é a atividade principal deles, eles tem é que especificar e desenvolver os sistemas. No quesito Banco de Dados, eles precisam apenas modelar os dados (ainda assim de preferência com o suporte de um DBA).

Também não acredito que uma ferramenta ou tecnologia de persistência de dados (já utilizei algumas) seja tão poderosa a ponto de fazer um trabalho de tunning para acesso a dados melhor que um bom DBA.

Já trabalhei em várias empresas como Analista/Desenvolvedor de Sistemas, com sistemas de pequeno à grande porte, por isso, de acordo com a experiência que eu tive, posso afirmar que, sempre que for necessário armazenar dados de muitos sistemas, com segurança e com a melhor performance possível, o trabalho de um DBA é necessário.

No Submarino, uma das empresas em que trabalhei, se não existisse o trabalho de um DBA, além dos dados não terem a segurança necessária, acredito que o desempenho do site em datas próximas à datas comemorativas (Ex.: Natal) seria tão ruim que os clientes iriam desistir de efetuar compras, por causa da lentidão que o site iria apresentar para, por exemplo, carregar uma página de visualização de produtos de uma categoria específica.

Bom pessoal, por hoje é só!

Enviado por Fábio Prado


17 Comentários

Bitetti
1

É já tive q fazer o trabalho de um DBA uma vez modelando um banco pra um sistema que ia ter alguns milhares de acessos… Teve um momento que sai lendo todas as notas de versões do MySQL em busca de diagnósticos!
Centenas de páginas em inglês!
Cuidar de banco de dados não é tarefa fácil. .

Adriano
2

Parabéns pela postagem Fábio… Muitas empresas ainda acham que desenvolvedores ou analistas ainda são responsáveis pela estrutura do banco de dados enquanto estes estão ao mesmo tempo tentando se atualizar com diversas linguagens de programação (desenvolvedores e analistas devem saber de tudo um pouco). Um banco de dados deve ser tratado de forma séria, pois é um dos pilares mais fortes da Tecnologia da Informação.

Fabricio Catae
3

Parabéns pelo artigo, muito bom! Em algumas empresas, destacando as instituições financeiras, o DBA também é responsável por estabelecer uma política de auditoria (semelhante ao item 6, das permissões e privilégios de usuários). Afinal, a segurança da informação é importante e não tem como deixar o BD sem uma administração confiável. Enganam-se aqueles que pensam que DBA é opcional..
Abraços, Fabricio

Fábio Prado
4

Obrigado pelos comentários Adriano. Comentar sobre as tarefas de um DBA faz parte do conteúdo de uma das minhas aulas. Resolvi publicar este artigo no meu blog (www.fabioprado.net) pq muitas pessoas (muitas da área de TI) realmente não sabem muito bem o que é e o que faz um DBA. Espero que o artigo ajude a entender essa questão! Recomendo que também acessem o artigo diretamente no meu blog pois lá, sempre atualizo os artigos sempre que encontro algum erro ou sempre que tenho alguma informação para acrescentar.
Link do artigo no meu blog: http://www.fabioprado.net/2011/04/tarefas-de-um-dba-o-que-faz-um-dba.html

Fabiana Tavares
5

Atualmente sou estagiária de Administração de Banco de Dados no SQL Server, e a principio estou receosa quanto a vagas no mercado após o estágio, como citado na matéria muitas empresas ignoram a necessidade de um DBA.

Fábio Prado
6

Fabiana, grandes empresas sempre tem um DBA, normalmente quem não precisa do trabalho de um DBA são pequenas empresas que tem poucos sistemas e não precisam se preocupar com performance, segurança e administração dos dados!

Denise Moura
7

Olá. Adorei o artigo sobre a função de um DBA. Sou estudante de Análise de Sistemas e tenho uma matéria que é voltada para instalação, configuração e manutenção de banco de dados, e me interessei por essa àrea.

gomes
8

Um trabalho tão essencial, e por vezes, tão mal reconhecido. Eu fiz meu curso superior todo voltado para administração de banco de dados. Hoje, sou professor e leciono disciplinas voltadas para BD, e vejo alguns ´´profissionais´´´que aprenderam a criar um script para criar uma tabela, com algumas colunas e inserir meia dúzia de dados e acham já sabem tudo de banco de dados. Trágico!

Carolina
9

O artigo é muito bom. Parabéns! Sou iniciante no mercado de TI. No momento, estou estagiando na área de Suporte. Porém, mediante os exercícios acadêmicos e vivencia no trabalho, há algo tempo venho me interessando por Banco de Dados. Pesquiso muito sobre esta área, pois tenho como objetivo sanar algumas dúvidas das reais atribuições que um DBA desempenha.

Ricardo
10

Muito interessante seu artigo Fábio, bem direto na informação fez interessar-me pela área que particularmente acho muito interessante. Parabéns.

ernesto silva
12

Fabio,
Você está equivocado, existem analistas de sistemas e desenvolvedores que conhecem muito mais que um DBA, pois o analista implementa a regra de negócio do software e sabe qual a melhor saída para modelar o banco.
A realidade é que os DBAs estão cada vez mais com os dias contados, haja vista que nenhum deles é a favor de usar ORM em software, mesmo sendo indicado e apoiado por grandes players de mercado como: Microsoft, RedHat, etc.
Um bom DBA, muitas vezes sabe diagramar em terceira, quarta ou quinta forma normal no quesito normalização de dados, mas quem disto que isto é o caminho do sucesso? esta aí os bancos NOSQL que tem performance superior a qualquer banco de dados relacional.

Fábio Prado
13

Ernesto, me desculpa, mas todas as suas respostas foram de uma pessoa leiga em BD, que não sabe muito sobre arquitetura de Bancos de Dados e as atividades de um DBA. Para lhe ajudar a obter mais conhecimentos, ressalto os seguintes pontos:
1- DBA não trabalha somente com modelagem. Essa é apenas uma das menores atividades de dele!
2- O trabalho do DBA vai acabar? Bobagem!!!! Já ouvi também dizerem isso há muito tempo sobre o trabalho do Desenvolvedor! Quando você trabalhar em uma grande empresa entenderá melhor o que estou afirmando aqui!
3- VC afirma que NOSQL é mais rápido que BD relacional, mas tenho certeza de que você não sabe porque!!! Ambos tem focos diferentes, há espaço para os 2 tipos de SGBDs e já te adianto que os SGBDs relacionais não morrerão por causa do NoSQL. Leia o artigo http://www.devmedia.com.br/comparacao-de-desempenho-entre-bancos-sql-e-nosql-revista-sql-magazine-109/27310 para aprender mais sobre NoSQL X BDs relacionais.
4- Se algum dia morrer o SGBD relacional, o DBA irá administrar BDs NOSQL, BDs Orientados a Objetos ou qq outra coisa diferente. DBA é Administrador de Bancos de Dados, não importa qual seja o seu tipo!
[]s

Marcelo dos Anjos
14

Fabio, é muito bom achar o que procuramos na internet e com informações que realmente agregam valor. Obrigado.

Vivian
15

Bom dia! Estou interessada nessa área, mas estou cheia de dúvidas, para iniciante é necessário saber inglês?

Deixe seu comentário

Seu endereço de e-mail não será publicado. Campos com * são obrigatórios!