Portal GSTI
Portal GSTI

PublicarCadastre-seLogin
Menu
Publicação

Modelagem de Dados: O que é e para que serve para um DBA

foto de
William Miranda CONTEÚDO EM DESTAQUE

As aplicações que giram em torno do banco de dados relacionais possuem conceitos básicos sobre a modelagem de dados. Por isso, seja muito simples ou mais complexos, a correta modelagem é necessária para tornar a aplicação mais robusta e eficiente.

Os modelos de dados são ferramentas que permitem demonstrar como serão construídas as estruturas de dados que darão suporte aos processos de negócios, como os dados estarão organizados e quais os relacionamentos que pretendemos estabelecer entre eles, para isso também é importante que você conhece a normalização de Banco de Dados.

Esses modelos se dividem em 3 perspectivas:

  1. Conceitual: como representação de alto nível e com foco no ponto de vista do usuário criador dos dados. É sempre o primeiro modelo a ser desenvolvido e muito fácil de ser compreendido, pois não há limitações ou tecnologias específicas.
  2. Lógica: agrega detalhes de implementação e leva em conta as regras e algumas limitações de recursos padronizados. Aqui é possível definir atributos que serão as chaves para a estrutura.
  3. Física: demonstra os dados fisicamente e leva em consideração todas as regras e limitações do banco de dados. Obedece padrões e validações. E a partir daqui que o modelo deve estar espelhado para o seu banco de dados final. Aqui neste ponto que entra o SQL e você como profissional de TI deve saber o que é SQL.

Os principais objetivos da modelagem de dados são: representar o ambiente observado, documentar e normalizar, fornecer processos de validação e observar processos de relacionamentos entre objetos.

Para tal é necessário também entender sobre a Entidade, que é algo que podemos definir como “do mundo real” e na qual se deseja guardar informações, tais como um cliente, produto ou contrato. Já o Atributo é tudo aquilo que pode relacionar como propriedade da entidade, tais como código do produto, nome do cliente, etc. E Domínio é o conjunto de valores possíveis do atributo.

Com isso, modelar dados é o mesmo que desenhar as entidades lógicas e suas dependências lógicas entre as unidades. O que é muito utilizado para documentar a especificação das regras de negócios e as estruturas de dados em um banco, tornando-o um importante componente no ciclo de desenvolvimento do sistema de informação.

Por que, então, a modelagem é importante? Simplesmente porque um banco de dados mal modelado pode custar caro para o projeto já que os fatores como performance e manutenção poderão ser comprometidos.

Modelagem Transacional e Informacional

Os transacionais são aqueles projetados para atender à sistemas transacionais, ou seja, que tenham foco nos dados provenientes de interações de um sistema informatizado com suas fontes de dados.

Exemplificando: quando fazemos uma compra no supermercado, recebemos uma lista com os nomes dos produtos e os respectivos preços e quantidades. Essa fatura diz respeito è essa sua recente compra e não mostra o histórico de compras anteriores.

O mesmo acontece na modelagem transacional. Ela prima armazenar e recuperar os dados referentes às transações. A preocupação nesse caso é com a normalização dos atributos, útil ao processamento de informações imediatas e não ao gerenciamento e tomada de decisões. Tal processo é chamado também de OLTP (Online Transaction Processing).

Por outro lado, a modelagem informacional – ou dimensional – tem objetivo oposto, ela visa atender a necessidade da tomada de decisão e para isso se baseia em grandes volumes de dados da base transacional.

Nesse caso, o histórico é essencial e necessita de muita armazenagem. Também chamado de OLAP (Online Analytical Processing), tem os modelos “Star Schema” (modelo estrela) e “Snowflake” como mais usuais.

Na prática, e apenas para fins de exemplo, vemos que a dimensão “tempo” é importante na modelagem informacional e deve ser projetada de forma diferente quando comparada à outras dimensões. Informações completas sobre esse quesito é:

Dia, semana, quinzena, mês, bimestre, trimestre, quadrimestre, semestre e ano;

Dia acumulado na semana, na quinzena, mês;

Período fiscal e semana de cinco dias;

Feriados e Finais de semana.

É importante: documentar o modelo. Para isso, usem tópicos como: data de criação, autor, objetivo, áreas atendidas da empresa, autor da alteração, descrição, outros.

Idiomas

Se a sua empresa for uma multinacional, você vai precisar implementar colunas descritivas do modelo em mais de um idioma. Para isso, a solução mais elaborada é seguir os seguintes passos:

  • Criar uma dimensão de idioma, independentes e com as linguagens necessárias. Para tal, uso o ISO de idiomas;
  • Criar uma dimensão associativa entre a dimensão proprietária das descrições e a de idiomas;
  • Mover para a dimensão associativa todas as colunas descritivas que demandem os idiomas variados.

Simplificadamente, não será necessário criar uma tabela de idiomas, basta que uma dimensão filha com as traduções seja feita, tendo assim o idioma como parte da sua chave primária.

Principalmente para as multinacionais, algumas informações geográficas em maior ou menor nível de precisão deverão ser feitas. E isso pode ser feito com modelo de acordo com as seguintes respostas para: país, federação, município.

Sistemas Cliente-Servidor

Na modelagem de dados também é importante saber sobre a estrutura fundamental dos sistemas, que normalmente são Cliente-Servidor, e consiste em estações de trabalho conectadas via rede aos servidores. Essas estações oferecem interfaces apropriadas para uso dos servidores, bem como processamento para aplicações.

Já no sistema cliente-servidor de três camadas, a indicação é para web, já que possui uma cada intermediária entre o cliente e o servidor de banco de dados. Essa camada é o servidor de aplicações ou servidor web e pode armazenar regras de negócio para acessar os dados do servidor.

Conclusão

Se você leu todas essas informações, mas ficou com alguma dúvida, essa é sua chance de compreender perfeitamente a modelagem de dados. Vamos simplificar e resumidor tudo o que foi dito, em uma linguagem didática e simplista. Entenda:

A modelagem de dados é a primeira etapa de um projeto do banco de dados, sendo que o principal objetivo é o desenvolvimento de um modelo que tenha entidades e relacionamentos, podendo assim representar as especificações das informações. Ficou fácil, né?

A modelagem serve para organizar a forma de pensamento sobre os dados, demonstrando o significado e a aplicação prática deles. Como? Representando o ambiente, documentando, fornecendo processos de validação e observando processos de relacionamento.

Comentários