Post on 16-Apr-2015
Teas 01
Banco de dados
PORQUE USAR ARQUIVOS?
• Redundância e inconsistência• Problema de integração• Associação a aplicações• Dificuldade de acesso ( solicitações não usuais )• Isolamento dos dados• Múltiplos usuários ( atualização simultâneas )• Segurança de acesso
Organização de dados em um ambiente *Laudon , Jane P- Sistemas de Informações Gerenciais
•Objetivos de um sistema eficiente :
•Informações precisas
•Oportunas
•Exatas
•Relevantes
Organização de dados em um ambiente *Laudon , Jane P- Sistemas de Informações Gerenciais
Objetivos de um sistema eficiente :
•Falicitar o acesso das informações aos usuários
•Somente facilitam o acesso quando estão:
• bem organizados
•Bem administradors
•Bem mantidos
Sistema Gerenciador Banco de dados
• “ Basicamente o banco de dados deve oferecer serviços que garantam o acesso eficiente e concorrente às informações, permitam notificação e conhecimento das atividades de outros membros do grupo e realizem o acompanhamento da evolução das atividades e informações do grupo, dentre outros.”
BANCO DE DADOS O QUE É?
• Date : Sistemas de armazenamento de dados baseado em computador
• Korth : Coleção de dados que contém informação sobre um empreendimento particular
DADO : Valor fisicamente registrado
INFORMAÇÃO : Significado de um valor para um usuário
SISTEMA DE GERENCIAMENTO DE BANCO DE DADOS ( SGBD ) DATA BASE MANAGEMENT SYSTEM ( DBMS )
• Coleção de arquivos inter-relacionados e um conjunto de programas, que permitem a diversos usuários acessar e modificar esses arquivos.
Em resumo… um sgbd é…
HIERARQUIA DOS DADOS
• Um sistema de computador organiza os dados em sequencia de hierarquia que começa com o bit,agrupados em bytes, que representa o caractere (uma letra ou digito).
• Estes bytes podem ser agrupados ate formar um campo (ex. Nome) , agrupando-se em campos correlacionados formamos um registro (uma ficha), que se relacionados pode se formar um arquivo e se relacionados fazem parte de um banco de dados.
HIERARQUIA DOS DADOS
Sistemas tradicionais
• Causam a Redundancia de dados
• Dependencia de programas /dados
• Falta de flexibilidade
• Baixo nível de segurança
• Falta de compartilhamento e disponibilidade de dados
Redundância e inconsistência
• É a presença de dados duplicados em multiplos arquivos de dados.– Ocorre quando os dados são armazenados
em locais diferentes na mesma organização. – Exemplo :
• Folha de pagamento(controla funcionarios) • Outras areas usam o mesmo funcionario com
numeros e nomes diferentes (cadastros duplicados)
Dependencia programa/dados
• Cada programa de computador descreve a localização dos dados , portanto qualquer alteração tem que modificar fisicamente o banco de dados e alterar lógicamente os programas para assim ter acesso a base de dados
Programa
Banco de dados
Abstração de dados
Abstração de dados
Abstração de dados
Um Modelos de dados
“Coleção de ferramentas conceituais para descrição, relacionamento, semântica e restrições dos dados”
Modelo de dados ?
• Há três tipos de modelos de dados: – o conceitual,– o lógico – O físico
“uma estrutura de dados com qualidade é imprescindível para garantir a legitimidade do banco de dados facilitando a manutenção do sistema de aplicação”
Modelagem conceitual (projeto conceitual)
– abstração de mais alto nível– objetivo: representação dos requisitos de dados do domínio
• Vantagens– independente de detalhes de implementação em um SGBD– facilita a compreensão da semântica dos dados de um domínio
• melhor compreendido por usuários leigos– pode ser mapeado para qualquer modelo lógico de BD– facilita a manutenção do modelo lógico e a migração para outro modelo lógico
• processo de engenharia reversa
Modelagem lógica (projeto lógico)
• representação da modelagem conceitual em um modelo
• de BD
• – ênfase na eficiência de armazenamento
• • evitar: muitas tabelas (e junções); tabelas sub-utilizadas, ...
Modelagem física (implementação na linguagem)
• – esquema SQL para a modelagem lógica
• • dependente de SGBD
• – ênfase na eficiência de acesso
• • implementação de consultas, índices, ...
GRUPOS DE MODELOS DE DADOS:
• MODELOS LÓGICOS BASEADOS EM OBJETOS:
– Modelo Entidade-Relacionamento– Modelo Binário– Modelo Semântico de Dados– Modelo Infológico– E vários outros. . .
GRUPOS DE MODELOS DE DADOS:
• MODELOS DE DADOS BASEADOS EM REGISTROS
– Modelo Relacional– Modelo de Rede– Modelo Hierárquico
GRUPOS DE MODELOS DE DADOS:
• MODELOS DE DADOS FÍSICOS– Modelo unificador– Memória em "Frames"
INDEPENDÊNCIA DE DADOS
• INDEPENDÊNCIA FÍSICA:– Capacidade de se modificar o esquema físico
sem alterar os programas de aplicação
• INDEPENDÊNCIA LÓGICA:– Capacidade de se modificar o esquema
conceitual sem alterar os programas de aplicação
USUÁRIOS DO BANCO DE DADOS
• Programadores de aplicação• Usuários simples• Usuários ocasionais• Usuários especializados • Data Base Administrador ( DBA )
SISTEMA GERENCIADOR DE BANCO DE DADOS
OBJETIVO:• Proporcionar um ambiente que seja conveniente e
eficiente na inserção e na recuparação de informações do banco de dados.
TAREFAS EXECUTADAS:• Integração com o gerenciados de arquivos.• Garantia de integridade.• Garantia de segurança de acesso.• Garantia de recuperação.• Controle de concorrência.
Modelos de banco de dados
• Rede
• Hierarquico
• Relacional
Modelo Hierarquico• Década de sessenta. • Organizava dados em uma estrutura hierárquica (uma estrutura em
árvore) com sentido de acesso unidirecional, do pai para o filho sempre começando pela "Raiz". Ou seja, este tipo de banco de dados constitui-se de uma coleção de registros conectados uns aos outros por links.
• Os SGBDs mais conhecidos foram o IMS e o System2000 [KORTH, 2001].
• O modelo hierárquico foi definido com base na observação de que muitas entidades do mundo real são organizadas hierarquicamente.
Reitoria
analise Ciências computaçãoEngenharia
Informática básicaProfessores
alunos
Modelo Hierarquico
Modelo Hierarquico
• Em resumo, pode-se dizer que este modelo segue o estilo de um organograma empresarial (Diretoria - Divisão - Seção - Setor) ou de biblioteca (Exata - Matemática - Álgebra Linear - Vetores ).
• Este modelo é capaz de representar este tipo de organização de forma direta, mas apresenta inconvenientes quando esta situação não aparece claramente com relações de hierarquia [HEUSER, 1998].
Modelo de Rede
• utilizado principalmente no final da década de sessenta e durante a década de setenta.
• Organizava dados em uma estrutura formada por várias listas, que definia uma intrincada rede de ligações (estrutura similar a um grafo direcionado).
• O IDMS e o Total foram os SGBDs mais conhecidos [KORTH, 2001].
Modelo de Rede
• Este modelo é muitas vezes denominado de modelo DBTG CODASYL (Data Base Task Group - subgrupo da Conference On DAta SYstems and Languages), uma organização (conferência) existente na década de setenta responsável pela padronização de linguagens de programação de sistemas.
• Similar ao modelo hierárquico, os dados no modelo de redes são organizados em tipos de registro e ligações entre dois tipos de registro.
• Não existe restrição hierárquica, ou seja, quaisquer dois tipos de registro podem se relacionar.
Modelo de Rede
• Assim, tanto o esquema quanto as ocorrências de dados são visualizados como um grafo direcionado.
• Um esquema no modelo de redes é chamado de diagrama de estrutura de dados [KORTH, 2001] [HEUSER, 1998].
• Uma rede é, essencialmente um conjunto ilimitado de nós (tipos de registros neste caso) e de ramais de ligação.
Modelo de Rede
• Na verdade, uma hierarquia é apenas um tipo particular de rede. Uma rede não apresenta o conceito de nó “raiz” e os registros podem ter diversos tipos de registros-pais, assim como diversos tipos de registros-filhos [KORTH, 2001].
• Exemplo: um departamento possui diversos empregados e diversos escritórios e que, em cada escritório, há vários empregados lotados.
• Fica claro que não há sentido de “raiz” embora se possa argumentar que o registro EMPREGADO tem dois “pais”.
Modelo de Rede
Modelo Relacional
• E. Codd, (IBM ) Califórnia em 1970.• O projeto inicial foi denominado de Sistema R e
definia a organização dos dados e linguagens formais para a sua manipulação. Com base nestas linguagens formais, a primeira versão da linguagem SQL (Structured Query Language) foi definida.
• Esta linguagem é, atualmente, um padrão para gerenciamento de dados em SGBDs relacionais. Os SGBDs de grande porte mais famosos são: Oracle,SQL Server, Informix, Sybase e Ingres [FANDERUFF, 2000], [KORTH, 2001].
Modelo Relacional
• O objeto básico tratado pelo modelo relacional é a “entidade” ou “relação”, que pode ser definida como um objeto do mundo real, concreto ou abstrato e que possui existência independente.
• Uma entidades eqüivale ao conceito matemático de conjunto, ou seja, um agrupamento de elementos[SCHERER, 2000].
Modelo Relacional
• Um banco de dados relacional visa manter os dados de forma não redundante (repetição de vários campos em várias tabelas), executar processamento integrado, lidar com relações múltiplas (relacionamentos) e fornecer certo grau de independência dos dados.
• Diante de um processamento integrado, o banco de dados torna-se simplificado causando melhoria na independência dos dados e, consequentemente, obtendo maior desempenho [FANDERUFF, 2000].
Modelo Relacional
• O modelo relacional é o modelo mais utilizado no momento, grandes empresas e instituições utilizam gigantes bases relacionais para gerenciar e manter seus dados [ABBEY, 2002][RAMALHO, 1999][SCHERER, 2000].
Modelo Relacional
Linguagens Banco de dados
Administração Banco de Dados
Visão Geral
Visão geral da estrutura
Visão geral da estrutura