Modelagem de dados é essencial para garantir a integridade, a consistência e a eficiência dos dados em um sistema de informação, e é uma etapa fundamental no desenvolvimento de sistemas de banco de dados e na implementação de soluções de business intelligence.
É um processo de criar uma representação visual, ou esquema. A modelagem de dados desempenha um papel crucial quando chegamos na parte de ETL (Extração, Transformação e Carga) que é o processo de integração de dados que ocorre após a modelagem de dados.
➡️ Modelo de dados conceitual (requisitos e lógica dos negócios)
O modelo conceitual representa as entidades, os relacionamentos e as regras de negócio de um domínio específico, sem se preocupar com detalhes de implementação em um banco de dados.
É uma representação abstrata e de alto nível dos requisitos de dados de uma organização.
Geralmente é expresso por meio de diagramas de entidade-relacionamento (DER) ou modelos de entidade e atributos.
As partes interessadas e os analistas de negócios normalmente criam o modelo conceitual. Trata-se de uma representação diagramática simples que não segue as regras formais de modelagem de dados. O que importa é que ele ajuda as partes interessadas técnicas e não técnicas a compartilhar uma visão comum e concordar com a finalidade, o escopo e o design de seus projetos de dados.
Exemplo de um DER (Diagrama de Entida e Relacionamento)
Considere que entidade seja representada por uma tabela e o nome das colunas, seus atributos.
Outro exemplo de modelagem conceitual:
Em uma loja de calçados, o proprietário define que, para cada cliente, ele precisa anotar as informações CPF, nome, e-mail e telefone, para viabilizar o contato, caso seja necessário. O proprietário define ainda que, de um produto, é importante que se saiba seu código, sua descrição, seu valor unitário e sua quantidade em estoque. O proprietário complementa dizendo Dicionário de dados 3 que, em uma venda, são identificados a data e o número da nota fiscal gerada. Além disso, o cliente pode comprar mais de um produto, e um produto pode ser comprado por vários clientes. Para atender à especificação do proprietário da loja, propõe-se a modelagem conceitual dos dados e respectivos atributos:
➡️ Modelo Lógico
O modelo lógico traduz o modelo conceitual em um esquema de banco de dados específico, levando em consideração as características e restrições do sistema de gerenciamento de banco de dados (SGBD) escolhido.
Define as tabelas, colunas, chaves primárias, chaves estrangeiras e outros elementos necessários para implementar o modelo conceitual em um banco de dados real.
Pode ser representado por meio de scripts SQL ou por ferramentas de modelagem de banco de dados.
Para entender melhor como funciona a modelagem lógica (Figura 4), considere a modelagem conceitual e a sua derivação. O primeiro passo da derivação é a escolha das chaves primárias. No segundo passo, criam-se novas entidades a partir das entidades associativas. Por fim, há o transporte das chaves primárias das entidades com participação N no relacionamento para as entidades com participação 1. Assim, se definem as chaves estrangeiras e a chave primária, no caso de entidades advindas de entidade associativa:
➡️ Modelo Físico (Implementação)
Representa a implementação real do banco de dados, levando em consideração os detalhes técnicos e as características específicas do sistema de banco de dados escolhido.
Alguns exemplos:
Esquema de Tabelas: Define as tabelas, colunas, tipos de dados, restrições e índices que compõem o banco de dados.
Chaves e Restrições: Inclui a definição de chaves primárias, chaves estrangeiras, restrições de integridade e outras regras que garantem a consistência e a validade dos dados.
Índices: Especifica os índices criados para otimizar a recuperação de dados e o desempenho das consultas.
Particionamento: Define como os dados são particionados e distribuídos fisicamente nos dispositivos de armazenamento.
Configurações de Segurança: Inclui permissões de acesso, papéis de usuário e outras configurações de segurança relacionadas aos dados.
Outros Detalhes Físicos: Pode abranger aspectos como o tamanho das páginas, o uso de compressão de dados, a configuração de arquivos de log, entre outros detalhes específicos do SGBD.
Em resumo, a modelagem física define as características físicas de armazenamento dos dados (tipo, tamanho, domínio, regras). Para cada entidade, ocorre a criação de uma tabela e seus atributos, conforme exemplo abaixo:
A definição do dicionário de dados se inicia pelo modelo conceitual de dados, passa pela modelagem lógica e pela modelagem física e termina quando se criam as estruturas no banco de dados.