Articles

O que é a desnormalização no SGBD?

O que é a desnormalização no SGBD?

Quando fazemos a normalização das tabelas, então dividimos as tabelas em tabelas mais pequenas. Mas se quisermos obter os dados de mais do que uma tabela, então temos de realizar algum tipo de operação de junção nessas tabelas. No blog de normalização, lemos que a operação de junção levará a um aumento do tempo. Para superar esta desvantagem da normalização, fazemos a desnormalização de tabelas.

Denormalização

Denormalização é uma técnica de optimização de bases de dados onde adicionamos dados redundantes na base de dados para nos livrarmos das complexas operações de junção. Isto é feito para acelerar a velocidade de acesso à base de dados. A desnormalização é feita após a normalização para melhorar o desempenho da base de dados. Os dados de uma tabela são incluídos noutra tabela para reduzir o número de junções na consulta e assim ajudar a acelerar o desempenho.

Uma base de dados desnormalizada nunca deve ser confundida por uma base de dados que nunca foi normalizada.

Exemplo: Suponha que após a normalização temos duas tabelas primeiro, Tabela de Alunos e segundo, Tabela de Ramos. O aluno tem os atributos Roll_no, Student-name, Age, e Branch_id.

A tabela de Ramos está relacionada com a tabela do aluno com Branch_id como a chave estrangeira na tabela do aluno.

Se quisermos o nome dos alunos juntamente com o nome do ramo, então precisamos de realizar uma operação de junção. O problema aqui é que se a tabela for grande precisamos de muito tempo para realizar as operações de junção. Assim, podemos adicionar os dados de Branch_name da tabela Branch à tabela Student e isto ajudará a reduzir o tempo que teria sido utilizado na operação de adesão e assim optimizar a base de dados.

Vantagens da Desnormalização

    A execução da consulta é rápida, uma vez que temos de juntar menos tabelas.

Desvantagens da Desnormalização

    1. Como existe redundância de dados, as operações de actualização e inserção são mais dispendiosas e levam mais tempo. Uma vez que não estamos a realizar a normalização, isto resultará em dados redundantes.
    2. A integridade dos dados não é mantida na desnormalização. Como há redundância, os dados podem ser inconsistentes.

    Isto é tudo sobre desnormalização. Espero que tenha aprendido algo novo hoje.

Deixe uma resposta

O seu endereço de email não será publicado. Campos obrigatórios marcados com *