Um grande banco de dados definido como uma relação única pode resultar na duplicação de dados. Essa repetição de dados pode resultar em:
- Tornando as relações muito amplas.
- Não é fácil manter e atualizar dados, pois envolveria a pesquisa de muitos registros relacionados.
- Desperdício e má utilização de espaço e recursos em disco.
- A probabilidade de erros e inconsistências aumenta.
Portanto, para lidar com esses problemas, devemos analisar e decompor as relações com dados redundantes em relações menores, mais simples e bem estruturadas que satisfaçam as propriedades desejáveis. A normalização é um processo de decomposição das relações em relações com menos atributos.
string.contém java
O que é normalização?
- Normalização é o processo de organização dos dados no banco de dados.
- A normalização é usada para minimizar a redundância de uma relação ou conjunto de relações. Também é usado para eliminar características indesejáveis, como anomalias de inserção, atualização e exclusão.
- A normalização divide a tabela maior em menores e as vincula por meio de relacionamentos.
- A forma normal é usada para reduzir a redundância da tabela do banco de dados.
Por que precisamos de normalização?
A principal razão para normalizar as relações é a eliminação destas anomalias. A falha na eliminação de anomalias leva à redundância de dados e pode causar integridade de dados e outros problemas à medida que o banco de dados cresce. A normalização consiste em uma série de diretrizes que ajudam a orientá-lo na criação de uma boa estrutura de banco de dados.
opa
As anomalias de modificação de dados podem ser categorizadas em três tipos:
Tipos de formas normais:
A normalização funciona por meio de uma série de estágios chamados formas normais. As formas normais aplicam-se às relações individuais. Diz-se que a relação está na forma particularmente normal se satisfizer restrições.
A seguir estão os vários tipos de formas normais:
Forma Normal | Descrição |
---|---|
1NF | Uma relação está em 1NF se contém um valor atômico. |
2NF | Uma relação estará na 2FN se estiver na 1NF e todos os atributos não-chave forem totalmente funcionais dependendo da chave primária. |
3NF | Uma relação estará na 3FN se estiver na 2FN e não existir nenhuma dependência de transição. |
BCNF | Uma definição mais forte de 3NF é conhecida como forma normal de Boyce Codd. |
4NF | Uma relação estará em 4NF se estiver na forma normal de Boyce Codd e não tiver dependência multivalorada. |
5NF | Uma relação está em 5NF. Se estiver em 4NF e não contiver nenhuma dependência de junção, a junção deverá ser sem perdas. |
Vantagens da normalização
- A normalização ajuda a minimizar a redundância de dados.
- Maior organização geral do banco de dados.
- Consistência de dados dentro do banco de dados.
- Design de banco de dados muito mais flexível.
- Aplica o conceito de integridade relacional.
Desvantagens da normalização
- Você não pode começar a construir o banco de dados antes de saber o que o usuário precisa.
- O desempenho diminui ao normalizar as relações para formas normais superiores, ou seja, 4NF, 5NF.
- É muito demorado e difícil normalizar relações de alto grau.
- A decomposição descuidada pode levar a um design incorreto do banco de dados, levando a sérios problemas.