Baixe o app para aproveitar ainda mais
Prévia do material em texto
MODELAGEM DE DADOS PROF. RAFAEL DIAS RIBEIRO, M.Sc. @ribeirord MODELAGEM DE DADOS REVISÃO 1 Prof. Rafael Dias Ribeiro. M.Sc.Prof. Rafael Dias Ribeiro. M.Sc. @ribeirord Bancos de Dados De acordo com (Navathe, 2005), podemos definir um banco de dados como um conjunto de dados que se relacionam. Bancos de Dados Porém, o significado do termo é mais restrito do que esta definição. Um banco de dados, necessariamente, possui as seguintes propriedades: • um banco de dados é uma coleção lógica coerente de dados• um banco de dados é uma coleção lógica coerente de dados com um significado inerente; • uma disposição desordenada de dados não pode ser referenciada como um banco de dados; • um banco de dados é projetado, construído e populado com dados para um propósito específico; Bancos de Dados Porém, o significado do termo é mais restrito do que esta definição. Um banco de dados, necessariamente, possui as seguintes propriedades: • um banco de dados possui um conjunto pré definido de• um banco de dados possui um conjunto pré definido de usuários e aplicações; • um banco de dados representa algum aspecto do mundo real, o qual é chamado de “mini-mundo” e qualquer alteração efetuada neste mini-mundo é automaticamente refletida no banco de dados. Sistemas Gerenciadores de Bancos de Dados e Sistemas de Banco de Dados • Um banco de dados é criado e mantido por um conjunto de aplicações desenvolvidas especialmente para esta tarefa denominado “Sistema Gerenciador de Banco de Dados” denominado “Sistema Gerenciador de Banco de Dados” (SGBD). • Um SGBD é uma coleção de programas que permite aos seus usuários criarem e manipularem bancos de dados. O conjunto formado por um banco de dados e estes programas que o manipulam é chamado de Sistema de Banco de Dados. Sistemas Gerenciadores de Bancos de Dados e Sistemas de Banco de Dados Sistemas Gerenciadores de Bancos de Dados e Sistemas de Banco de Dados • O SGBD não mantém somente os dados, mas, também, a forma como os mesmos são armazenados, através de uma descrição completa dos dados armazenados.descrição completa dos dados armazenados. • Estas informações são armazenadas no catálogo ou dicionário de dados do SGBD, que contém informações como a estrutura de cada arquivo, o tipo e o formato de armazenamento de cada tipo de dado, restrições, etc. • As informações armazenadas neste catálogo são chamadas meta-dados. SGBD X Sistemas de Gerenciamento de Arquivos • A melhor maneira de entender a natureza geral e as características dos bancos de dados de hoje, é olhar para as características dos sistemas que antecederam o uso dacaracterísticas dos sistemas que antecederam o uso da tecnologia de banco de dados: os Sistemas de Gerenciamento de Arquivos. Sistemas de Gerenciamento de Arquivos • Cada usuário define e implementa os arquivos necessários para uma aplicação específica, acarretando repetição dos dados e gerando inconsistência nas informações. Por exemplo: salário do funcionário X sistema de folha de pagamento sistema financeiro salário do funcionário X Sistemas de Gerenciamento de Arquivos salário do funcionário X sistema de folha de pagamento sistema financeiro salário do funcionário X • Não existem garantias que a alteração do salário de um funcionário específico seja efetuada para os arquivos nos dois. • Se esta atualização não seja efetivada para os dois sistemas, em algum deles, as informações geradas com base neste dado, serão inconsistentes. Não refletirão a realidade do negócio. Sistemas de Gerenciamento de Arquivos • O acesso aos dados está escrito nos programas que o manipulam, subordinando os programas aos arquivos. • Isto significa que qualquer alteração na estrutura dos arquivos acarretará alterações em todos os programas que o acessam. • Estas alterações sempre envolvem muito tempo e muito dinheiro. Sistemas de Gerenciamento de Arquivos • A manipulação dos dados contidos nos arquivos pelas aplicações específicas dificulta o desenvolvimento de novos sistemas e torna a manutenção dos aplicativosnovos sistemas e torna a manutenção dos aplicativos difícil e cara. Sistemas de Gerenciamento de Arquivos • O sistema possibilita uma redundância não controlada de dados e inconsistência ao permitir que em um sistema um dado seja alterado e esse mesmo dado não seja alterado dado seja alterado e esse mesmo dado não seja alterado em outro. Sistemas de Gerenciamento de Arquivos • A responsabilidade sobre os procedimentos de backup e recuperação esta a cargo da aplicação. Assim, não podem ser automatizadas e, caso o responsável pela aplicaçãoser automatizadas e, caso o responsável pela aplicação não efetue estes backups sistematicamente, podem ocorrem perda de dados. Sistemas Gerenciadores de Bancos de Dados (SGBD) • Um arquivo (tabela) é definido uma única vez e atende a várias aplicações, ou seja, existe múltipla visão dos dados. • Armazena-se junto com os dados todas as informações referentes à forma como estes foram estruturados e onde eles estão armazenados fisicamente. Essas informações estão armazenadas no catálogo ou dicionário de dados do SGBD. Sistemas Gerenciadores de Bancos de Dados (SGBD) • Há separação entre programas e dados. • Os acessos são escritos no banco de dados e os programas • Os acessos são escritos no banco de dados e os programas enviam comandos solicitando o acesso aos dados. • Esse conceito é chamado de abstração de dados, que caracteriza- se por uma independência entre programas e dados e entre programas e operações de manipulação de dados. Sistemas Gerenciadores de Bancos de Dados (SGBD) • É permitido acesso simultâneo de vários usuários ao mesmo dado. Essa simultaneidade é tratada através dodado. Essa simultaneidade é tratada através do gerenciamento da concorrência. • Procedimentos de backup e recuperação são automatizados. Evolução dos Bancos de Dados • Nos primeiros sistemas de informação, dados e processos eram mantidos juntos em um mesmo arquivo. Evolução dos Bancos de Dados • A partir da observação de que os dados são muito mais estáveis que os processos em um sistema de informação, iniciou-se a época de investimentosinformação, iniciou-se a época de investimentos massivos no desenvolvimento de ferramentas voltados para seu tratamento eficiente. Gradativamente, dados e processos foram separados. Evolução dos Bancos de Dados • Dados e processos foram separados. Em um primeiro momento, estas ferramentas mantinham as funções básicas de criação e manipulação dos dados independentes das aplicações. Evolução dos Bancos de Dados • Em um segundo momento apresentando as características dos SGBDs. • A partir deste ponto, em paralelo com a evolução do hardware disponível para suportar tais aplicações, estes ambientes foram ganhando novas versões. O Projeto do Banco de Dados • A modelagem de um sistema através da abordagem Entidades- Relacionamentos representa este o ponto central no projeto conceitual de dados em um sistema. • O objetivo da Modelagem de Dados é transmitir e apresentar• O objetivo da Modelagem de Dados é transmitir e apresentar uma representação única, não redundante e resumida, dos dados de uma aplicação. • Em projetos conceituais de aplicação em banco de dados o Modelo Entidades-Relacionamentos é o mais largamente utilizado para representação e entendimento dos dados que compõe um sistema. O Projeto do Banco de Dados • Década de 70 - Peter Chen desenvolve o MER (Modelo Entidades-Relacionamentos) • Um Modelo de Dados é uma forma de representação gráfica do conhecimento que se tem sobre um ambiente qualquer. Mostra conhecimento que se tem sobre um ambiente qualquer. Mostra uma visão das informações de interesse e dos vínculos existentes entre elas, em um determinado momento. Objetos Conceituais • ENTIDADES • Define-se Entidade como aquele objeto que existe no mundo real, com identificação distinta e com um significadopróprio. • São as “coisas” que existem no negócio, ou ainda, descrevem o negócio em si. • A representação de uma entidade no MER é feita através de um retângulo, com o nome da entidade em seu interior. ENTIDADES • Entidade Fraca • não existe se não estiver relacionada a outra, isto é, ela é logicamente dependente da outra. • Alguns conjuntos entidade não possuem um conjunto de• Alguns conjuntos entidade não possuem um conjunto de atributos capaz de identificar univocamente uma determinada entidade. Neste caso, sua existência depende da existência de outra entidade. Objetos Conceituais • ATRIBUTOS • Todo objeto para ser uma entidade possui propriedades que são descritas por atributos e valores. • Estes atributos e valores, juntos, descrevem as instâncias de uma entidade. • O que descreve CLIENTE ? Cliente é descrito por um código de identificação, nome, endereço, telefone de contato, CGC ou CPF. Objetos Conceituais • ATRIBUTOS • A representação de uma entidade no MER é feita através de uma elipse, com o nome do atributo em seu interior. nome telefone CPF ATRIBUTOS • Todo objeto para ser uma entidade possui propriedades que são descritas por atributos e valores. • Estes atributos e valores, juntos, descrevem as instâncias de nome telefone CPF • Estes atributos e valores, juntos, descrevem as instâncias de uma entidade. • A representação de uma entidade no MER é feita através de uma elipse, com o nome do atributo em seu interior. • O que descreve CLIENTE ? Cliente é descrito por um código de identificação, nome, endereço, telefone de contato, CGC ou CPF. Atributos Simples ou Atômicos Atributos que não são divisíveis em unidades dados mais simples. ATRIBUTOS Exemplo: DataNascimento, NumeroFatura, ValorTotalVenda Atributo multivalorado Os atributos multivalorados são tratados pelos seus detalhes, seu conteúdo é formado por mais de um valor. ATRIBUTOS conteúdo é formado por mais de um valor. Exemplo: Telefone. Um empregado poderá ter mais de um número de telefone. . Atributos Compostos (Grupo de Atributos) Combinação ou agregação de atributos relacionados Exemplo: Endereço é formado pelos atributos: rua, bairro, cidade, ATRIBUTOS Exemplo: Endereço é formado pelos atributos: rua, bairro, cidade, estado, CEP. Atributos identificadores: Atributos que identifica, de forma única, as instâncias de uma entidade. Exemplo: uma matrícula identifica um aluno e um CPF identifica um cliente ATRIBUTOS cliente Domínio de um atributo: descrição de possíveis valores permitidos para um atributo. Exemplo: domínio do atributo Cor_Peça: azul, amarelo, verde, vermelho, branco ATRIBUTOS vermelho, branco Valores nulos: atributo sem valor. Um valor nulo pode ocorrer, quando o atributo não é relevante para descrever uma entidade em particular. Atributos identificadores: Atributos que identifica, de forma única, as instâncias de uma entidade. Exemplo: uma matrícula identifica um aluno e um CPF identifica um cliente ATRIBUTOS cliente Dentre os atributos matrícula, nome, endereço, CPF, cód- depto e data-nasc, relativos à entidade EMPREGADO, escolha aquele(s) que poderia(m) ser usado(s) para atributo identificador da entidade. PRATICANDO... Dentre os atributos num-placa, ano-fabricação, marca, cor, modelo e num-chassi referentes a um automóvel, que atributo(s) deveria(m) ser o atributo determinante da entidade AUTOMÓVEL? PRATICANDO... • Em um primeiro contato com o negócio de uma empresa, podemos não possuir o conhecimento necessário sobre o mesmo. Portanto, é fundamental que procuremos conhecer seus objetos principais. MODELANDO O NEGÓCIO • Ao descrevermos textualmente a realidade analisada, as entidades podem ser identificadas por similaridade com a análise sintática nas linguagens naturais. • Nesse caso, algumas regras podem ser aplicadas: o sujeito e o objeto da sentença são, provavelmente, entidades; os verbos podem sugerir relacionamentos. Objetos Conceituais • RELACIONAMENTOS • Um relacionamento é uma associação entre duas entidades cujo significado seja de interesse para a realidade analisada.realidade analisada. • Os relacionamentos estão intimamente ligados às ações realizadas pelos processos sobre os dados e representam os caminhos de navegação ou rotas de acesso do Modelo de Dados. Objetos Conceituais • RELACIONAMENTOS • Existem várias formas de se representar graficamente um relacionamento. Por exemplo, Peter Chen utiliza um retângulo para desenhar uma associação entre entidades, outros autores a desenhar uma associação entre entidades, outros autores a representam através de um traço unindo as entidades. TIPOS DE RELACIONAMENTOS: • O relacionamento um-para-um é usado quando uma entidade A se relaciona com uma entidade B e vice-versa. • Este relacionamento é representado pelo sinal: 1:1 Conjunto A Conjunto B TIPOS DE RELACIONAMENTOS: • Relacionamento um-para-um PESSOA CERTIDÃO DE ÓBITO recebe 11 PESSOA ÓBITO recebe TIPOS DE RELACIONAMENTOS: • O relacionamento um-para-muitos é usado quando uma entidade A pode se relacionar com uma ou mais entidades B. • Este relacionamento é representado pelo sinal: 1:N Conjunto A Conjunto B TIPOS DE RELACIONAMENTOS: • Relacionamento um-para-muitos SEÇÃO COLABORADORtrabalha N1 SEÇÃO COLABORADORtrabalha TIPOS DE RELACIONAMENTOS: • O relacionamento muitos-para-muitos é usado quando várias entidades A se relacionam com várias entidades B. • Este relacionamento é representado pelo sinal: N:N ou N:M Conjunto A Conjunto B TIPOS DE RELACIONAMENTOS: • Relacionamento muitos-para-muitos ATLETA ESPORTEpratica NM ATLETA ESPORTEpratica • Um auto-relacionamento acontece quando os elementos de uma entidade se relacionam com eles mesmos. • Também conhecido como relacionamento recursivo MODELANDO O NEGÓCIO PESSOA é casada • Auto-relacionamento MODELANDO O NEGÓCIO PESSOA é casada 1 PESSOA é casada PESSOA 11 1 • A cardinalidade é um número que expressa o comportamento (número de ocorrências) de determinada entidade associada a uma ocorrência da entidade em questão através do relacionamento. • Existem dois tipos de cardinalidade:mínima e máxima. MODELANDO O NEGÓCIO • Existem dois tipos de cardinalidade:mínima e máxima. • A cardinalidade máxima, expressa o número máximo de ocorrências de determinada entidade, associada a uma ocorrência da entidade em questão, através do relacionamento. • A cardinalidade mínima, expressa o número mínimo de ocorrências de determinada entidade associada a uma ocorrência da entidade em questão através do relacionamento. MODELANDO O NEGÓCIO DEPARTAMENTO COLABORADORpossui (1,N)(1,1) DEPARTAMENTO COLABORADORpossui
Compartilhar