Click here to load reader

Formas Normais Pedro Sousa 1 Dependências Funcionais e Formas Normais

  • View
    215

  • Download
    0

Embed Size (px)

Text of Formas Normais Pedro Sousa 1 Dependências Funcionais e Formas Normais

  • Dependncias Funcionais eFormas Normais

  • IntroduoAs dependncias funcionais e as formas normais estabelecem critrios de qualidade de desenho no modelo Relacional.Permitem detectar e prevenir a redundncia e garantir a coerncia da informao.Fundamenta-se nas dependncias entre os atributos das relaes

    Ao nvel do modelo Relacional, deve ser usado para detectar eventuais problemas associados redundncia e coerncia da informao. Ao nvel do modelo Entidade Associao, deve ser usado para identifcar entidades e determinar os seus atributos.

  • O problema da Redundncia dos DadosA redundncia dos dados tem implicaes ao nvel da coerncia e da completude da informao neles contidasSo bem conhecidos os seguintes problemas, designados por anomalias:Anomalia de insero: quando os factos (conhecimento) independentes no podem ser inseridos independentemente na base de dados.Anomalia de eliminao: quando se elimina uma instncia de um facto, perde-se instncias de outros factos independentes.Anomalia de actualizao: quando a actualizao de um facto implica a alterao de uma srie de instncias de outros factos independentes.

  • Exemplo Introdutrio

    Anomalia de insero: S podemos indicar o preo de cada pea se existirem encomendas pendentes.Anomalia de eliminao: Ao eliminar uma encomenda, perde-se a informao relativa ao preo de cada pea.Anomalia de actualizao: A alterao do preo de uma pea implica a alterao do mesmo em todas as encomendas existentes.EncomendaN EncomendaN da PeaPreo UnitrioQuantidadeConsideremos a seguinte Entidade /RelaoEncomenda

  • Exemplo Introdutrio Dependncias Funcionais

    O problema reside nas relaes de dependncias entre os atributos da Entidade/Relao: o N da encomenda determina N da pea, a Quantidade e o Preo Unitrio.O N da pea determina o Preo Unitrio.EncomendaN EncomendaN da PeaPreo UnitrioQuantidadeNEncomenda | N Pea | Quantidade| Preo Unitrio | | | | | | EncomendaDiagrama de Dependncias Funcionais

  • Diagrama de Dependncias FuncionaisOutro ExemploQue informao est contida neste Diagrama de Dependncias Funcionais?De que modo essa informao pode ser til no desenvolvimento de esquemas Relacionais ou mesmo Conceptuais (ER)?

  • Dependncia funcionalSeja uma relao R com conjuntos de atributos X e Y:Diz-se que X determina Y se para todo o valor de X existe um s valor de Y.

    Por outras palavras, sempre que dois tuplos tm um valor de X comum, tm tambm o valor de Y em comum.Diz-se tambm que X determinante, e representa-se graficamente por X-> Y.A dependncia funcional um questo semntica. No pode ser deduzida com base num conjunto de tuplos. Estes apenas podem confirmar que determinada dependncia no existe.X uma super-chave se X->R, sendo R o conjunto de todos os atributos da relao R

  • Propriedades das Dependncias Funcionais(regras de Armstrong)ReflexividadeSe Y est contido em X, ento X-> Y IncrementoSe X -> Y, ento X Z -> YZ

    TransitividadeSe X -> Y e Y -> Z, ento X-> Z

  • Regras DerivadasAuto-ReflexividadeX -> X DecomposioSe X -> Y Z, ento X-> Y e X -> Z

    UnioSe X-> Y e X -> Z ento X -> YZ ComposioSe X-> Y e A -> B ento XA -> YB

  • Dependncia total e atributos chaves Seja X um atributo e Y o conjunto de atributos { y1, y2, ...yn} tal que {y1, y2, ...yn} determina X, i.e. {y1, y2, ...yn} -> XDizemos que X completamente dependente de Y, se qualquer subconjunto dos elementos de Y no determina X.Dizemos que X um atributo chave se pertence ao identificador da Entidade ou chave primria da Relao

  • As Formas Normais1 Forma Normal2 Forma Normal3 Forma Normal5 Forma Normal4 Forma NormalForma Normal Boyce Codd

  • As Formas Normais Seja uma entidade (ou associao) X com atributos {i1,..,in, a1,...,am}Seja {i1,..,in} os atributos que constituem a chave de X.

    A 1 Forma Normal prende-se com a estrutura de cada atributo de X.A 2 Forma Normal prende-se com a dependncia entre os atributos {a1,...,am} e os atributos {i1,..,in}.A 3 Forma Normal prende-se com as dependncias mtuas entre os atributos {a1,...,am}.A BCNF prende-se com a existncia de vrias chaves

  • 1 Forma NormalUma relao est na 1 Forma normal se todos os seus atributos so valores escalares.

    Todas as relaes normalizadas esto na 1 Forma NormalRelao no NormalizadaRelao Normalizada

  • Problemas com a 1 Forma NormalExemplo

    Esta relao est na 1 FN mas apresenta as anomalias de insero, de actualizao e de eliminao!A 1 FN no assegura a resoluo do problema das anomalias!

  • Eliminao das Anomalias do Exemplo Anterior

    Estas relaes j no tm as anomalias !ID_PessoaTempoGastoProjectoProjecto

    A eliminao das anomalias implica a fragmentao da relao inicial em duas novas relaes

  • A 1 Forma Normal e os Modelos ConceptuaisQual a relao entre os atributos multivalor, os atributos compostos e a 1 Forma Normal ?Em ambos os casos, os atributos Nr-da-Pea e identificao no so atributos escalares!Esta a razo pela qual a converso ER para Relacional implica a converso dos atributos multivalor e compostos em atributos simples

  • A 2 Forma NormalOu seja, todos os atributos que no pertencem a nenhuma chave so completamente dependentes de pelo menos uma chave.Todas as relaes na 1FN e com uma chave simples esto necessariamente na 2FN. Nada se diz quanto s dependncias mtuas entre os atributos que pertencem s chaves.Nada se diz quanto s dependncias mtuas entre os atributos que no pertencem s chaves.Uma Relao est na 2 Forma normal se est na 1 Forma Normal e cada atributo no chave completamente dependente dos atributos chave.

  • 2 Forma NormalExemplo 1Esta relao no est na 2 FN.A decomposio da relao R com vista 2 FN passa por criar as seguintes Relaes:

    R1(A,B,C) com a dependncia AB -> CR2(A,D) com a dependncia A -> DConsideremos a Relao R(A,B,C,D) e a dependncia A -> D(as dependncias AB ->C e AB ->D so implcitas)

    cada atributo no chave completamente dependente dos atributos chave

  • 2 Forma Normal - Exemplo 2Exame no est na 2FN O atributo Professor no pode ser atributo de Exame!

  • 2 Forma Normal Exemplo 3Esta Entidade/Relao est na 2 Forma Normal ?Encomenda(NrEncomenda, NPea,PreoUnitrio, Quantidade,PreoTotal)Cada encomenda refere-se apenas a uma quantidade de uma nica pea.Considere a Relao (ou Entidade) Encomenda.

  • Problemas com a 2 Forma NormalAs 2 Forma Normal no garante a no redundncia da informao, sendo portanto possvel que os problemas das anomalias existam tambm nas relaes na 2FN.Por exemplo, a informao sobre o preo de cada pea.

    A redundncia surge devido s dependncias entre os atributos no chave.

  • Eliminao das AnomaliasA eliminao das anomalias implica a eliminao das dependncias entre os atributos no chave.Tal implica a decomposio da Entidade/Relao original em duas.NrEncomendaN PeaQuantidadePreo UnitrioN PeaEst na 2FNEsto na 2FNNrEncomendaN PeaQuantidadePreo UnitrioPreo TotalPreo Total

  • A 3 Forma NormalOu seja, a 3FN implica a 2FN e que no existam dependncias entre os atributos no chave. Todas as relaes que apenas tm um atributo no chave esto na 3FN, se estiverem na 2FN.Nada se diz quanto s dependncias mtuas entre os atributos que pertencem s chaves.Uma Relao est na 3 Forma normal se todos os atributos no chave so completamente dependentes dos atributos chave e so independentes entre si.

  • 3 Forma Normal: Exemplo 1Esta relao no est na 3 FN.A decomposio da relao R com vista 3 FN passa por criar as seguintes Relaes:

    R1(B,C) com a dependncia B -> CR2(A,B) com a dependncia A -> BConsideremos a Relao R(A,B,C) e a dependncia B-> C

    cada atributo no chave completamente independente dos restantes atributos no chave

  • 3 Forma Normal: Exemplo 2N Empregado Nome, Departamento, Diviso,Chefe Departamento DivisoDiviso ChefeEmpregadoN EmpregadoDepartamentoChefe DivisoNomeno est na 3FNv

  • 3 Forma Normal: Exemplo 3Trabalha( N Empregado, N Departamento, Oramento, N Horas, N Projecto)

    Trabalha no est na 3FN, porque Projecto determina Oramento e no chaveEmpregado N EmpregadoOramentoPisoNomeN DepartamentoDepartamentoN HorasN ProjectoN HorasN ProjectoOramentoProjecto

  • Problemas com a 3 Forma NormalOs problemas da 3FN surgem quando:Existem dependncias entre os atributos das chaves, por exemplo:

    Existem vrias chaves compostas, com pelo menos um atributo comum, por exemplo:

    X

    X(a1, a2, a3, a4)Seja a Entidade/Relao Xcom os seguintes atributos e chavesa1a2a3a4

  • Problemas com a 3 Forma Normal: ExemploO director de cada projecto armazenado vrias vezesO director de um projecto s armazenado quando o projecto encomendar peasUm projecto no pode ser armazenado enquanto o seu director no for conhecidoA mudana de um director de um projecto implica a mudana de vrios tuplos

    Relao UsaProblemas:Estes problemas resultam de: pea ser partilhada por determinantes, e dependncia entre Director e Projecto

  • A Forma Boyce Codd(BCNF)Uma Relao est na BCNF quando todos os determinantes so chave

    No existem dependncias entre os atributos no chave

    No existem dependncias entre sub-conjuntos dos atributos das chaves.

    A BCNF s se distingue da 3FN quando:Existe mais do que uma chaveAs chaves so formadas por vrios atributos

  • Exemplo -1Chaves DisjuntasSeja a Relao Fornecedor : Fornecedor (F#, Nome, Estado, Cidade)Em que FN esta Relao est ?Que anomalias so possveis na relao Fornecedor ? Que inconvenientes resultam da exi

Search related