O que é um Banco de Dados

Introdução

Em qualquer sistema, um dos requisitos mais importantes é a forma com que ele armazena, organiza e manipula seus dados relacionados. É inimaginável imaginar uma aplicação que não tenha um conjunto de dados mínimos para que seja funcional. Com o desenvolvimento das aplicações, que estão cada vez maiores, mais complexas, e tendo que atender a um número crescente de usuários, tornam-se cada vez mais importantes os bancos de dados.

Segundo Rob & Coronel, um banco de dados, ou base de dados,” é uma estrutura computacional compartilhada e integrada que armazena um conjunto de:

  • Dados do usuário final, ou seja, fatos brutos de interesse para esse usuário;
  • Metadados, ou dados sobre dados, por meio dos quais os dados do usuário final são integrados e gerenciados. “

Já Korth tem uma definição um pouco mais abstrata, definindo o banco de dados como “uma coleção de dados inter-relacionados, representando informações sobre um domínio específico”.

Há muita confusão entre o termo banco de dados e os sistemas de gerenciamento de banco de dados (ou SGBD), que são os softwares responsáveis por gerenciar bancos de dados e se relacionam com o usuário. MySQL, Access ou Oracle são SGBDs, e não bancos de dados.

Esquema de um sistema de banco de dados
Esquema de um sistema de banco de dados

Abstração de Dados

Em qualquer sistema, o usuário não está preocupado com o funcionamento, e sim em obter os dados que lhe interessam. Ao acessar uma conta do banco pela internet, ou fazer uma consulta sobre a disponibilidade de um livro numa biblioteca, o usuário não se importa com a forma em que a informação está organizada, e sim que ela esteja disponível quando necessária. Para que isto seja possível, é necessário realizar a abstração dos dados. Esta abstração é tipicamente classificada em três níveis:

  • Visão do usuário: aquela que o usuário tem acesso e realiza a interação; 
  • Conceitual: define que dados serão armazenados e como se relacionarão uns com os outros;
  • Físico: nível mais baixo de abstração, representa a forma como os dados estão efetivamente armazenados nos sistemas de gerenciamento de banco de dados.

Projetando o banco

Uma das etapas mais importantes no desenvolvimento de uma aplicação é o projeto do banco de dados. O projeto é o responsável por “transformar” os dados da visão do usuário, no nível mais alto de abstração, à implementação no SGBD. Este projeto ocorre em duas fases, a modelagem conceitual e o projeto lógico.

O modelo conceitual independe do SGBD que será utilizado na aplicação. Sua função é definir os dados que farão parte da aplicação, entretanto, não se preocupa como serão implementados. Normalmente, a técnica adotada para este tipo de modelagem é a ER (Entidade-Relacionamento), representada através de diagramas de entidade-relacionamento (DER).

Modelagem conceitual
Um exemplo de modelagem conceitual

Assim que observamos a imagem, podemos imaginar que se trata de um sistema de algum órgão de receita estadual, para o qual será desenvolvido um sistema para controle do IPVA. Neste modelo, observamos que há uma entidade veículo, cujos dados necessários são sua placa, modelo, cpf e nome do proprietário; além de uma entidade de imposto, que possui uma identificação, ano e valor.

Uma vez desenvolvido o modelo conceitual, passamos ao modelo lógico, que é a implementação em si do banco de dados dentro de um SGBD. Neste caso, haverá dependência com o tipo de SGBD utilizado. O tipo se refere ao modelo de banco de dados utilizado (relacional, orientado a objetos, arquivos etc) e não ao software. O modelo mais utilizado é o relacional, baseado em tabelas. No exemplo acima, nosso modelo lógico seria mais ou menos o seguinte:

  • Veiculo(placa_veiculo, modelo_veiculo, cpf_proprietario, nome_proprietario)
  • IPVA(id, valor, ano)

Conclusões

Este é um primeiro passo, contendo os conceitos introdutórios a bancos de dados e sistemas gerenciadores de bancos de dados. Entender estes conceitos é de fundamental importância para compreensão de outros conhecimentos que são exigidos ao longo da disciplinas relacionadas a banco de dados e desenvolvimento de aplicações que necessitem desta ferramenta.

Fontes

ROB, Peter e CORONEL, Carlos. Sistemas de Banco de Dados – Projeto, Implmentação e    Administração. São Paulo, Cengage Learning, 2011.

REZENDE, Ricardo. Conceitos Fundamentais de Banco de Dados. Em: <http://www.devmedia.com.br/conceitos-fundamentais-de-banco-de-dados/1649>. Acesso em: 09 de junho de 2013.

Deixe uma resposta

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