{"id":3605,"date":"2016-09-11T18:40:33","date_gmt":"2016-09-11T18:40:33","guid":{"rendered":"http:\/\/www.teo.com.br\/?p=3605"},"modified":"2016-09-11T18:40:33","modified_gmt":"2016-09-11T18:40:33","slug":"normalizacao-processo-de-simplificar-o-banco-de-dados-de-um-e-commerce","status":"publish","type":"post","link":"https:\/\/teo.com.br\/noticias\/2016\/09\/11\/normalizacao-processo-de-simplificar-o-banco-de-dados-de-um-e-commerce\/","title":{"rendered":"Normaliza\u00e7\u00e3o processo de simplificar o  banco de dados de um E-commerce"},"content":{"rendered":"<p>A normaliza\u00e7\u00e3o \u00e9:<\/p>\n<p style=\"text-align: center;\"><em>\u201cO processo de simplificar os dados de um banco de um determinado dom\u00ednio de uma forma mais eficiente atrav\u00e9s da elimina\u00e7\u00e3o de dados redundantes.\u201d<\/em><\/p>\n<p>A normaliza\u00e7\u00e3o \u00e9 muito utilizada em bancos de dados transacionais \u201c<strong>OLTP<\/strong>\u201d, Online Transaction Processing, onde buscamos garantir implementa\u00e7\u00e3o de modelos bem projetados e normalizados; evitando, assim, as inconsist\u00eancias nos dados.<\/p>\n<p>A normaliza\u00e7\u00e3o possui diversas Formas Normais (FNs):<br \/>\n\u2022 1\u00aa Forma Normal;<br \/>\n\u2022 2\u00aa Forma Normal;<br \/>\n\u2022 3\u00aa Forma Normal;<br \/>\n\u2022 <a href=\"https:\/\/pt.wikipedia.org\/wiki\/Normaliza%C3%A7%C3%A3o_de_dados\">Forma Normal de Boyce Cood<\/a>;<br \/>\n\u2022 4\u00aa Forma Normal;<br \/>\n\u2022 5\u00aa Forma Normal ou <b>PJ\/NF<\/b>.<\/p>\n<p>At\u00e9 a terceira forma normal, resolvemos cerca de 95% dos problemas em um banco de dados relacional. As outras formas normais, consideradas formas normais avan\u00e7adas, est\u00e3o diretamente ligadas \u00e0 quest\u00e3o de performance do banco. Exemplo de Aplica\u00e7\u00e3o das 1.\u00aa, 2.\u00aa e 3.\u00aa Formas Normais: Obs.: Este exemplo foi extra\u00eddo de: <a href=\"http:\/\/www.cefet-to.org\/~marinaldo\/FUND%20DE%20BANCO%20DE%20 DADOS\/normalizacao.pdf\">http:\/\/www.cefet-to.org\/~marinaldo\/FUND%20DE%20BANCO%20DE%20 DADOS\/normalizacao.pdf<\/a>.<\/p>\n<p>&nbsp;<\/p>\n<p>Considere o relat\u00f3rio abaixo:<br \/>\nA representa\u00e7\u00e3o do relat\u00f3rio na forma <strong>N\u00e3o Normalizada<\/strong> (\u00d1N) \u00e9: 8 Unidade: <strong>Normaliza\u00e7\u00e3o <\/strong><\/p>\n<p>Ou seja, perceba que voc\u00ea possui um grupo repetitivo de dados(c\u00f3digo do produto, descri\u00e7\u00e3o, e quantidade) dentro de um grupo que n\u00e3o se repete (n\u00famero da solicita\u00e7\u00e3o, data da solicita\u00e7\u00e3o, c\u00f3digo do funcion\u00e1rio e nome do funcion\u00e1rio).<\/p>\n<p>1FN &#8211; 1.\u00aa Forma Normal Para passarmos este modelo de relat\u00f3rio n\u00e3o normalizado para a primeira forma normal (1FN), precisamos desaninhar o grupo repetitivo.<\/p>\n<p>2FN &#8211; 2.\u00aa Forma Normal 9 Para entendermos a segunda forma normal, \u00e9 preciso, primeiramente, conhecermos o conceito de depend\u00eancia funcional, conforme apresentado na tabela abaixo: Filme Categoria Descri\u00e7\u00e3o Robocop V Ouro Lan\u00e7amento A Bela Adormecida Vermelho Antigos Velozes e furiosos VI Ouro Lan\u00e7amento Mr. Magoo Prata Cat\u00e1logo A bela e a Fera Vermelho Antigos O conceito de depend\u00eancia funcional \u00e9 apresentado atrav\u00e9s das colunas categoria e descri\u00e7\u00e3o, ou seja, sempre que a categoria \u00e9 igual a Ouro, a descri\u00e7\u00e3o \u00e9 Lan\u00e7amento; sempre que a categoria \u00e9 Vermelha, a descri\u00e7\u00e3o \u00e9 Antigos; logo, podemos afirmar que a coluna categoria determina descri\u00e7\u00e3o. Podemos representar esta afirma\u00e7\u00e3o da seguinte forma:<\/p>\n<p><strong>Categoria \uf0e0 Descri\u00e7\u00e3o [categoria DETERMINA descri\u00e7\u00e3o]<\/strong>.<\/p>\n<p>Agora, sim, falaremos sobre a segunda forma normal. Abaixo apresentamos a passagem da primeira forma normal, onde aconteceu o desaninhamento da tabela, para a segunda forma normal onde eliminamos as depend\u00eancias parciais, ou seja, onde temos atributos n\u00e3o-chave que dependem de parte da chave prim\u00e1ria composta. Neste caso, C\u00f3d.produto determina Descri\u00e7\u00e3o, ou seja: C\u00f3d. produto \uf0e0 Descri\u00e7\u00e3o. 10 Unidade: Normaliza\u00e7\u00e3o 3FN &#8211; 3.\u00aa Forma Normal O que \u00e9 uma depend\u00eancia transitiva? \u00c9 uma depend\u00eancia entre atributos que n\u00e3o fazem parte da chave prim\u00e1ria.<\/p>\n<p>A 3.\u00aa FN avalia e identifica a rela\u00e7\u00e3o entre atributos n\u00e3o-chave. Neste caso, o c\u00f3digo do funcion\u00e1rio determina o nome do funcion\u00e1rio. Observe que ambos n\u00e3o fazem parte da chave prim\u00e1ria. C\u00f3digo do Funcion\u00e1rio \uf0e0 Nome do Funcion\u00e1rio.<\/p>\n<p>&nbsp;<\/p>\n","protected":false},"excerpt":{"rendered":"<p>A normaliza\u00e7\u00e3o \u00e9: \u201cO processo de simplificar os dados de um banco de um determinado dom\u00ednio de uma forma mais eficiente atrav\u00e9s da elimina\u00e7\u00e3o de dados redundantes.\u201d A normaliza\u00e7\u00e3o \u00e9&hellip;<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[9],"tags":[54,14,116,117],"class_list":["post-3605","post","type-post","status-publish","format-standard","hentry","category-adwords","tag-banco-de-dados","tag-e-commerce","tag-normalizacao","tag-processo"],"aioseo_notices":[],"_links":{"self":[{"href":"https:\/\/teo.com.br\/noticias\/wp-json\/wp\/v2\/posts\/3605","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/teo.com.br\/noticias\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/teo.com.br\/noticias\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/teo.com.br\/noticias\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/teo.com.br\/noticias\/wp-json\/wp\/v2\/comments?post=3605"}],"version-history":[{"count":0,"href":"https:\/\/teo.com.br\/noticias\/wp-json\/wp\/v2\/posts\/3605\/revisions"}],"wp:attachment":[{"href":"https:\/\/teo.com.br\/noticias\/wp-json\/wp\/v2\/media?parent=3605"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/teo.com.br\/noticias\/wp-json\/wp\/v2\/categories?post=3605"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/teo.com.br\/noticias\/wp-json\/wp\/v2\/tags?post=3605"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}