1
resposta

Endereço como Atributo ou Hierarquia

Olá, minha dúvida é sobre a classificação de Endereço, como hierarquia ou atributo, no exemplo utilizado.

A aula dá a entender que Endereço, por estar em uma relação 1:1 com cliente, deveria ser modelado como um atributo.

Entretanto, Endereço seria um atributo naturalmente compostos (rua, complemento, bairro, cidade, etc). Portanto, manter Endereço como um atributo (pelo menos da forma como o exemplo é colocado), violaria já a 1a Forma Normal.

Isso não seria um problema na modelagem? Especialmente, considerando que o exemplo partiu do Esquema Snow Flake, que é dito ser normalizado.

Obrigado!

1 resposta

Giuliano

Quando falamos que o modelo Snow Flake é normalizado, isso refere-se as dimensões. Nos casos dos atributos nós associamos as próprias tabelas de dimensões, mesmo que estas desrespeitem a regra de normalização.

Endereço é um atributo especial pois ele dificilmente poderá ser agregado em um conjunto de opções. Se temos 10000 clientes praticamente teremos 10000 endereços diferentes.

Mas se fossemos usar o atributo ESTADO, de 10000 cientes teríamos no máximo 23 estados. Logo, se estado for associado a um nível de dimensão, num modelo de Snow Flake, guarda esta informação em outra tabela. Se for atributo guarda na mesma tabela de cliente.

Att

Victorino.