Por que eu devo ler este artigo:Ainda hoje, passados mais de 45 anos da criação dos bancos de dados relacionais e também da disseminação das soluções NoSQL, os bancos de dados relacionais ainda são muito utilizados por conta de seus diversos recursos para manipulação de dados, bem como sua eficiência e eficácia quando se trata da integridade dos dados. Este artigo será útil para todo desenvolvedor ou DBA que esteja no início de um projeto e deseja construir um modelo de dados que permita o armazenamento de informações com qualidade. Para isso, serão abordadas aqui as principais ferramentas de modelagem de dados, juntamente com conceitos fundamentais necessários para a modelagem relacional e sua aplicação na prática.

Com o crescente aumento da quantidade de dados gerados em todo o mundo, que apenas no fim do ano de 2014 atingiram o volume de 2,7 zettabytes, pode-se dizer que esta é a era do Big Data, havendo o surgimento de novas técnicas e tecnologias de armazenamento, em uma época onde se fala muito em HPC (High Performance Computing – computação de alto desempenho), Hadoop e NoSQL.

Mesmo com novas tecnologias ascendentes, os Sistemas Gerenciadores de Bancos de Dados Relacionais ainda são maioria no mercado, sendo utilizados desde o desenvolvimento de pequenos e-commerces a grandes ERPs. Os bancos de dados relacionais podem ter sido criados há décadas, porém, sempre estiveram em constante atualização para se adaptar ao cenário do momento, e na era do Big Data incluem adaptações para armazenar e processar dados em larga escala.

Atualmente são diversas as ferramentas para modelagem de dados disponíveis no mercado, trazendo uma abordagem que envolve as principais características esperadas em um software desse tipo. Este artigo visa explorar as principais ferramentas, permitindo ao leitor decidir qual a melhor opção de uso, bem como demonstrar na prática como realizar a modelagem de dados passo a passo.

O modelo relacional tem como principal objetivo a integridade dos dados, característica fundamental e que tem relação direta com a continuidade de sua adoção até os dias atuais. Garantir a integridade dos dados significa que após o seu armazenamento, eles poderão ser recuperados no mesmo estado, sem sofrer alterações não autorizadas. E um dos responsáveis por esta melhoria é a normalização, assunto que será abordado na sequência.

Normalização de dados

A normalização dos dados é o primeiro passo para se obter sucesso com um modelo de dados íntegro, uma vez que sendo estas normas respeitadas, as redundâncias e inconsistências poderão ser evitadas.

Uma característica fundamental nos bancos de dados relacionais são as transações, operações que manipulam os dados no banco e que podem ser comportas por inserções, buscas, atualizações ou exclusões. Espera-se que ao realizar transações sejam atendidas as propriedades ACID, descritas a seguir:

· Atomicidade: esta propriedade garante que uma transação seja atômica, ou seja, indivisível. De modo geral, ou tudo acontece ou nada acontece. Isto significa que em uma transação composta por várias operações, se por algum motivo alguma operação não for realizada, todas as demais também não serão e caso alguma tenha sido realizada anteriormente, deverá ser anulada;

· Consistência: esta propriedade garante que um banco de dados consistente deverá continuar consistente após uma transação. Um exemplo para melhor entendimento é o caso de uma transação que deve excluir 1.000 registros na base de dados e falha durante a exclusão do registro de número 600. Haverá essa mesma quantidade de registros a serem excluídos e 400 não excluídos temporariamente. Para manter a consistência em casos como este, a transação deverá deixar o banco de dados no estado em que ele estava antes da transação iniciar, ou seja, sem excluir os 600 registros;

· Isolamento: esta propriedade garante que cada transação dentro de um ban ...

Quer ler esse conteúdo completo? Tenha acesso completo