BANCO DE DADOS. Introdução a Banco de Dados. Conceitos BásicosB. Engenharia da Computação UNIVASF. Aula 1. Breve Histórico



Documentos relacionados
Universidade Federal de Santa Maria Curso de Arquivologia. Disciplina de Banco de Dados Aplicados à Arquivística. Versao 1.

Banco de Dados Aula 1 Introdução a Banco de Dados Introdução Sistema Gerenciador de Banco de Dados

Bancos de Dados. Conceitos F undamentais em S is temas de B ancos de Dados e s uas Aplicações

FACULDADE INTEGRADAS DE PARANAÍBA ADMINISTRAÇÃO DE EMPRESAS. Bancos de Dados Conceitos Fundamentais

Banco de Dados I. Apresentação (mini-currículo) Conceitos. Disciplina Banco de Dados. Cont... Cont... Edson Thizon

Prof.: Clayton Maciel Costa

Evolução. Tópicos. Bancos de Dados - Introdução. Melissa Lemos. Evolução dos Sistemas de Informação Esquemas Modelos. Características de SGBDs

Banco de Dados 1 Prof. MSc Wagner Siqueira Cavalcante

GBC043 Sistemas de Banco de Dados. Introdução. Ilmério Reis da Silva UFU/FACOM

Banco de Dados. Uma coleção de dados relacionados [ELMASRI/NAVATHE]

Para construção dos modelos físicos, será estudado o modelo Relacional como originalmente proposto por Codd.

Sistemas de Banco de Dados Aspectos Gerais de Banco de Dados

Introdução Banco de Dados

Introdução. Banco de dados. Por que usar BD? Por que estudar BD? Exemplo de um BD. Conceitos básicos

Banco de Dados I. Introdução. Fabricio Breve

BANCO DE DADOS AULA 02 INTRODUÇÃO AOS BANCOS DE DADOS PROF. FELIPE TÚLIO DE CASTRO 2015

Prof. Marcelo Machado Cunha

1. CONCEITOS BÁSICOS DE BD, SBD E SGBD

Aula 02 Modelagem de Dados. Banco de Dados. Aula 02 Modelagem de Dados. Superior /2011 Redes Computadores - Disciplina: Banco de Dados -

Docente: Éberton da Silva Marinho

04/08/2012 MODELAGEM DE DADOS. PROF. RAFAEL DIAS RIBEIRO, MODELAGEM DE DADOS. Aula 2. Prof. Rafael Dias Ribeiro. M.Sc.

INTRODUÇÃO. Diferente de Bando de Dados

SGBD ITB 1.INTRODUÇÃO 1.INTRODUÇÃO Conceito SGBD: Sistema gerenciador de banco de dados Constituição SGBD

Dado: Fatos conhecidos que podem ser registrados e têm um significado implícito. Banco de Dados:

20/05/2013. Sistemas de Arquivos Sistemas de arquivos. Sistemas de Gerenciamento de Banco de Dados (SGBD) Banco de Dados. Estrutura de um BD SGBD

Conceitos de Banco de Dados

Roteiro. Conceitos e Arquitetura de Sistemas de Banco de Dados. Conceitos e Arquiteturas de Sistemas de Banco de Dados. BCC321 - Banco de Dados I

Programação com acesso a BD. Prof.: Clayton Maciel Costa clayton.maciel@ifrn.edu.br

04/08/2012 MODELAGEM DE DADOS. PROF. RAFAEL DIAS RIBEIRO, MODELAGEM DE DADOS. Aula 1. Prof. Rafael Dias Ribeiro. M.Sc.

BANCO DE DADOS E BUSINESS INTELIGENCE. C/H: 20 horas (20/02, 25/02, 27/02, 04/03, 06/03)

Banco de Dados. Conceitos e Arquitetura de Sistemas de Banco de Dados. Profa. Flávia Cristina Bernardini

Modelos de Dados e Arquitetura de um SGBD. Introdução 1º Bimestre Prof. Patrícia Lucas

Revisão de Banco de Dados

Banco de Dados Aula 02. Colégio Estadual Padre Carmelo Perrone Profº: Willian

Prof. Antonio Almeida de Barros Jr. Prof. Antonio Almeida de Barros Junior

Fundamentos dos Sistemas de Informação Organização de Dados e Informações

Introdução. Conceitos Básicos. Conceitos Básicos. Conceitos Básicos

CONCEITOS BÁSICOS. 1. Conceitos básicos de BD, SBD e SGBD BANCO DE DADOS I

Roteiro. BCC321 - Banco de Dados I. Conceitos Básicos. Conceitos Básicos. O que é um banco de dados (BD)?

Banco de Dados. CursoTécnico em Informática Modalidade Integrado. Professora Michelle Nery. Instituto Federal do Sul de Minas, câmpus Pouso Alegre

Sistemas Gerenciadores de Bancos de Dados

Disciplina de Banco de Dados Introdução

Fundamentos de Banco de Dados

Banco de Dados. Introdução. João Eduardo Ferreira Osvaldo Kotaro Takai. DCC-IME-USP

Introdução à Banco de Dados. Definição

Persistência e Banco de Dados em Jogos Digitais

Hoje é inegável que a sobrevivência das organizações depende de dados precisos e atualizados.

Faculdade Lourenço Filho - ENADE

Bancos de dados distribuídos Prof. Tiago Eugenio de Melo

Sistemas Gerenciadores de Bancos de Dados

Softwares Aplicativos Banco de Dados

Bancos de Dados Aula #1 - Introdução

Capítulo I -Introdução a Banco de Dados

Banco de Dados I Introdução

05/06/2012. Banco de Dados. Gerenciamento de Arquivos. Gerenciamento de Arquivos Sistema Gerenciador de Banco de Dados Modelos de Dados

Modelos. Comunicação com clientes

As principais características da abordagem de um banco de dados versus a abordagem de processamento de arquivos são as seguintes:

GBD PROF. ANDREZA S. AREÃO

Introdução a Banco de Dados. Adão de Melo Neto

SISTEMA GERENCIADOR DE BANCO DE DADOS

Roteiro 2 Conceitos Gerais

Conceitos básicos. Aplicações de banco de dados. Conceitos básicos (cont.) Dado: Um fato, alguma coisa sobre a qual uma inferência é baseada.

Curso de Aprendizado Industrial Desenvolvedor WEB. Disciplina: Banco de Dados Professora: Cheli Mendes Costa Modelo de Dados

Hardware (Nível 0) Organização. Interface de Máquina (IM) Interface Interna de Microprogramação (IIMP)

Noções de. Microsoft SQL Server. Microsoft SQL Server

Disciplina: Tecnologias de Banco de Dados para SI s

Conjunto de conceitos que podem ser usados para descrever a estrutura de um banco de dados

Banco de Dados I. 1. Conceitos de Banco de Dados

Banco de Dados. Aula 1 - Prof. Bruno Moreno 16/08/2011

INTRODUÇÃO E CONCEITOS BÁSICOS. Prof. Ronaldo R. Goldschmidt

CEFET.PHB - PI. Plano de Ensino. Banco de Dados. Plano de Ensino. Plano de Ensino. Plano de Ensino - Conteúdo. Plano de Ensino - Conteúdo

Disciplina de Banco de Dados Parte V

1) O QUE NÃO É BANCO DE DADOS?

Prof. Luiz Fernando. Unidade III ADMINISTRAÇÃO DE

Modelo de Dados. Modelo para organização dos dados de um BD

Módulo 4: Gerenciamento de Dados

Introdução. Motivação. Sistema Gerenciador de Banco de Dados (SGBD) Banco de Dados (BD) Sistema de Banco de Dados (SBD)

Modelo de Dados. Modelos Conceituais

Structured Query Language (SQL) Ambiente Simplificado de um SGBD

Sistemas de Banco de Dados

Banco de Dados I Módulo I: Introdução a Sistemas de Banco de Dados. (Aula 1) Clodis Boscarioli

Administração de Banco de Dados

Sistema de Bancos de Dados. Conceitos Gerais Sistema Gerenciador de Bancos de Dados

Dados. Qualquer elemento (aspecto, fato, medida etc.) representativo, disponível e coletável na realidade. fatos no estado bruto, conforme Platão;

Roteiro. Modelo de Dados Relacional. Processo de Projeto de Banco de Dados. BCC321 - Banco de Dados I. Ementa. Posicionamento.

Banco de Dados I Ementa:

Sistemas Operacionais 3º bimestre. Dierone C.Foltran Jr.

Curso Superior de Tecnologia em BD Curso Superior de Tecnologia em DAI

ADMINISTRAÇÃO DOS RECURSOS DE DADOS

SISTEMAS DE BANCO DE DADOS. Prof. Adriano Pereira Maranhão

BANCO DE DADOS. Isac Aguiar isacaguiar.com.br

Etapas da evolução rumo a tomada de decisão: Aplicações Isoladas: dados duplicados, dados inconsistentes, processos duplicados.

Banco de Dados Conceito de Arquitetura

Bases de Dados II 6638: BSc in Information Systems and Technologies. Cap. 1 Arquitectura de Sistemas de Bases de Dados. Module Introduction

Banco de Dados I. Introdução Conceitos

Introdução a Sistemas de Bancos de Dados

Exemplo de Necessidade de Modelagem de Dados. Exemplo de Necessidade de Modelagem de Dados

SGBD. Funções Básicas de um SGBD

Transcrição:

Banco de Dados // 1 Banco de Dados // 2 Conceitos BásicosB Engenharia da Computação UNIVASF BANCO DE DADOS Aula 1 Introdução a Banco de Dados Campo representação informatizada de um dado real / menor unidade de informação com valor significativo para o usuário Dado conteúdo do campo Registro conjunto de campos Arquivo conjunto de registros Banco de Dados armazenamento físico f dos arquivos Sistema Gerenciador de Banco de Dados (SGBD) software responsável pelo armazenamento e recuperação dos dados do BD. Banco de Dados // 3 Breve Histórico Computadores com capacidade de armazenamento surgimento de Sistemas Operacionais mais completos SO contendo sistemas de arquivos armazenamento e recuperação de informações mais otimizados. Necessidade de maior eficiência (tempo e espaço) SGBD Banco de Dados // 4 Redundância Inconsistência Dificuldade no acesso a dados Isolamento dos dados Múltiplos usuários Segurança Integridade Atomicidade Banco de Dados // 5 Redundância Arquivos e aplicações criados e mantidos por diferentes programadores arquivos com formatos diferentes e programas escritos em diversas linguagens de programação. Informação repetida em diversos lugares (arquivos). Inconsistência Decorrência da redundância. Várias cópias dos dados poderão divergir ao longo do tempo. Banco de Dados // 6 Dificuldade no acesso aos dados Necessidade de construir programas para obter qualquer informação solicitada. Uma empresa precisa dos nomes de todos os clientes que fazem aniversário rio no mês de fevereiro, mas esta solicitação não foi prevista no projeto do sistema existe somente uma aplicação para gerar a relação de todos os clientes da empresa. Alternativas: 1) separar manualmente da lista de todos os clientes aqueles que necessita 2) requisitar um programador para escrever o programa necessário. Ambas alternativas são insatisfatórias....mais tarde a empresa precisa saber os clientes que têm saldo negativo. 1

Banco de Dados // 7 Isolamento dos dados Dados dispersos em vários arquivos e arquivos em diferentes formatos difícil escrever novas aplicações para recuperação apropriada dos dados. Banco de Dados // 8 Múltiplos usuários Atualizações concorrentes podem resultar em inconsistências. Conta corrente com saldo = R$500,00 Dois clientes debitam da conta A simultaneamente ($50 e $100, respectivamente) Na execução dos programas, ambos lêem o saldo antigo, retiram, cada um seu valor correspondente, sendo o resultado armazenado. Dependendo de qual deles registre seu resultado primeiro, o saldo da conta A será $450 ou $400, ao invés s do valor correto de $350. Banco de Dados // 9 Segurança Definir autorizações de acesso a diferentes usuários. Integridade Valores dos dados armazenados devem satisfazer a certas restrições para manutenção da consistência. O valor da nota final de um aluno deve estar entre 0 e 10.. Os programadores determinam o cumprimento desta restrição através s da adição de código c apropriado aos vários v programas aplicativos. Entretanto, quando aparecem novas restrições, é difícil alterar todos os programas para incrementá-las. O problema é ampliado quando as restrições atingem diversos itens de dados em diferentes arquivos. Banco de Dados // 10 Atomicidade Algumas operações devem ser feitas de forma única, atômica, a fim de assegurar a integridade e consistência dos dados. um programa para transferir R$50,00 da conta A para uma conta B. Se ocorrer falha no sistema durante sua execução, é possível que os 50 reais sejam debitados da conta A sem serem creditados na conta B, criando um estado inconsistente no banco de dados. É essencial para a consistência do banco de dados que ambos, débito d e crédito ocorram, ou nenhum deles seja efetuado. Isto é,, a transferência de fundos deve ser uma operação atômica deve ocorrer por completo, ou não ocorrer. Banco de Dados // 11 Regras para que um sistema de manipulação de dados seja um SGBD Auto-conten contenção conter dados, suas descrições, relacionamentos e formas de acesso. Independência dos Dados aplicações imunes a mudanças as na estrutura de armazenamento e à estratégia de acesso a dados. Abstração dos Dados usuário não precisa saber detalhes sobre armazenamento real. Visões formas diferentes de ver os dados de acordo com necessidade dos usuários. Transações gerenciar integridade sem precisar de aplicativos. Controle automático tico de acesso vários usuários, travamento eficiente. Banco de Dados // 12 Características de um SGBD Controle de Redundâncias informações armazenadas em um único lugar. Compartilhamento dos Dados garantir concorrência ao acesso dos dados, sem erro. Controle de Acesso seleção de permissões por usuário. Interfaceamento facilidade para recuperação de informação. Esquematização mecanismos que possibilitem a compreensão do relacionamento entre as tabelas e sua manutenção. Controle de Integridade aplicações e acessos não podem comprometer integridade dos dados. Backups facilidade para recuperar falhas de hardware e software. 2

Banco de Dados // 13 SGBD: estruturas complexas para a representação dos dados no banco de dados. Complexidade precisa ser escondida dos usuários. Níveis de abstração: grande vantagem dos SGBD Nível físico: mais baixo descreve como os dados são armazenados Nível conceitual ou lógico: quais dados são armazenados e quais relacionamentos entre eles. Nível visão: se expõe apenas parte do banco de dados. Banco de Dados // 14 Visão 1 Visão 2... Visão N Nível Conceitual Nível FísicoF Banco de Dados // 15 Analogia com o conceito de tipos de dados em linguagens de programação Type cliente = record cliente-nome: string; cliente-cpf: string; cliente-endereco: string; cliente-cidade: string end; Este código c define um novo registro chamado cliente com quatro campos. Cada campo tem um nome e um tipo a ele associado. Banco de Dados // 16 Além de cliente, BD pode ter diversos tipos de registro, como: conta, com os campos numero-conta e saldo empregado, com campos numero-empregado e salário nível físico registro cliente é um bloco consecutivo de memória (por exemplo, palavra ou bytes). O compilador esconde este nível de detalhes dos programadores. nível conceitual ou lógico registro é descrito por um tipo definido, como ilustrado no segmento de código visto. É definida também inter-relação entre estes tipos de registros. nível de visão usuários do computador vêem um conjunto de programas de aplicação que escondem os detalhes dos tipos de dados. Banco de Dados // 17 Instâncias e Esquemas instância conjunto de informações contidas em determinado BD em um dado momento. esquema projeto geral do BD mudados com pouca freqüência. Sistemas de BD possuem diversos esquemas, referentes aos níveis de abstração ão. nível mais baixo = esquema físico nível intermediário = esquema lógico nível mais alto = subesquemas. sistemas de BD dão suporte a um esquema físico, f um esquema lógico l e vários v subesquemas. Banco de Dados // 18 Instâncias e Esquemas Analogia: definição do registro cliente na declaração de seu tipo, não definimos qualquer variável. vel. Definição de variável: vel: var clientenovo: : cliente; clientenovo área de memória que contém um registro tipo cliente. esquema de BD definição do tipo em linguagem de programação. instância do esquema variável de um dado tipo tem um valor em particular em dado instante. Assim, este valor corresponde a uma instância do esquema do BD. 3

Banco de Dados // 19 Independência de Dados capacidade de modificar a definição dos esquemas em determinado nível, n sem afetar o esquema do nível n superior Independência de dados físicaf sica: : modifica o esquema físico sem que, com isso, qualquer programa aplicativo precise ser reescrito (ocasionais para aumento de desempenho). Independência de dados lógical gica: modifica o esquema lógico sem que, com isso, qualquer programa aplicativo precise ser reescrito (sempre que uma estrutura lógica l do BD é alterada) mais díficil de ser atingida. Banco de Dados // 20 Modelos de Dados Coleção de ferramentas conceituais para descrição dos dados, relacionamento entre os dados, semântica e restrições dos dados. Três grupos: Modelos lógicos baseados em objetos Modelos lógicos baseados em registros Modelos de dados físicos Banco de Dados // 21 Modelos Lógicos L Baseados em Objetos Usados na descrição dos dados nos níveis n Visão Visão... conceitual e visão. 1 2... Visão N Banco de Dados // 22 : Modelo Entidade- Relacionamento s: Modelo Entidade-Relacionamento Modelo Orientado a Objeto Modelo Semântico de Dados Modelo Funcional de Dados Nível Conceitual Nível Físico nome rua cliente cidade cliente conta número conta saldo Banco de Dados // 23 Modelos Lógicos L Baseados em Registros Também m usados na descrição dos dados nos níveis n conceitual e visão. Usados para especificar a estrutura lógica l do BD. BD estruturado através s de registros de formato fixo de todos os tipos Cada registro define número n fixo de campos (atributos), e cada campo possui tamanho fixo (simplifica a implementação do BD no nível n físico) f modelo relacional modelo de rede modelo hierárquico Banco de Dados // 24 Modelo Relacional Dados e relacionamentos representados por uma coleção de tabelas. Tabelas com uma quantidade de colunas (atributos)e nomes únicos. Nome Endereço Cidade Número Conta Luís Rua X, 123 Marília 900 Heitor Av. Antonio, 865 Bauru 556 Heitor Av. Antonio, 865 Bauru 647 Joana Rua da Curva, 89 São Paulo 801 Joana Rua da Curva, 89 São Paulo 647 Número Saldo Conta 900 678,00 556 458,98 647 561,89 801 654,12 4

Banco de Dados // 25 Modelo de Rede Dados representados por coleções de registros. Relacionamentos representados por ligações (ponteiros). Registros organizados como coleções arbitrárias rias de grafos. Banco de Dados // 26 Modelo Hierárquico rquico Dados representados por coleções de registros. Relacionamentos representados por ligações. Registros organizados como coleções arbitrárias rias de árvores. Luís Rua X, 123 Marília 9 0 0 6 7 8, 0 0 Luís Rua X, 123 Marília Joana Rua da Curva, 89 São Paulo Heitor Av. Antonio, 865 Adamantina Joana Rua da Curva, 89 São Paulo 5 5 6 4 5 8, 9 8 6 4 7 5 6 1, 8 9 8 0 1 6 5 4, 1 2 9 0 0 6 7 8, 0 0 Heitor Av. Antonio, 865 Adamantina 6 4 7 5 6 1, 8 9 8 0 1 6 5 4, 1 2 5 5 6 4 5 8, 9 8 6 4 7 5 6 1, 8 9 Banco de Dados // 27 Diferenças entre os modelos modelo relacional não usa ponteiros e links relaciona os registros por valores próprios prios a eles. conseqüência possibilidade do desenvolvimento de fundamentos matemáticos ticos para sua definição e manipulação. Banco de Dados // 28 Linguagem de Definição de Dados (DDL) data-definition definition language (DDL) Especificação do esquema de dados resultado da compilação de instruções DDL conjunto de tabelas que constituem o dicionário de dados ou diretório rio de dados dicionário de dados: : arquivo de metadados (dados a respeito de dados) no SGBD o diretório rio é consultado antes que o dado real seja modificado Banco de Dados // 29 Linguagem de Definição de Dados (DDL) s create table alter table drop table create view, drop view Banco de Dados // 30 Linguagem de Manipulação de Dados (DML) data-manipulation language (DML) manipulação de dados: recuperação das informações armazenadas no BD inserção de novas informações no BD remoção de informações do BD modificação das informações do BD Objetivo proporcionar eficiente interação humana com o sistema. DML viabiliza o acesso (manipulação) dos dados organizados por um modelo de dados apropriado. 5

Banco de Dados // 31 Linguagem de Manipulação de Dados (DML) Dois tipos básicos: b Procedimental o usuário deve especificar quais dados são desejados e como chegar até eles. Não Procedimental o usuário deve especificar quais dados são desejados, sem especificar como chegar até eles geralmente mais fácil, mas menos eficiente. Linguagens de consulta (query( query) SQL Banco de Dados // 32 Gerenciador do Banco de Dados (SGBD) BD grandes quantidades de espaço o de armazenamento Dados transportados entre discos e memória principal, conforme a necessidade Sistema de BD deve minimizar necessidade de movimentação Performance (tempo de resposta) depende da eficiência das estruturas de dados usadas e das operações entre elas. Banco de Dados // 33 Gerenciador do Banco de Dados Responsabilidades do Gerenciador: Interação com o gerenciador de arquivos (tradução instruções DML para baixo nível) Garantia de integridade Garantia de segurança Recuperação e backup Controle de concorrência Banco de Dados // 34 Administrador do Banco de Dados (DBA) controle centralizado dos dados e dos programas que acessam os dados Responsável administrador de dados Funções: ões: Definição do esquema Definição da estrutura de dados e método de acesso Modificações da organização física do esquema Concessão de autorização para acesso aos dados Especificação de regras de integridade Banco de Dados // 35 Usuários do Banco de Dados Programadores de aplicações ões interagem com o sistema através s de chamadas DML, envolvidas por programas escritos na linguagem hospedeira (por exemplo, Pascal, C, Delphi). Usuários ocasionais sofisticados, que interagem sem escrever programas. Formulam suas solicitações ao BD através s de linguagens de consultas. Usuários simples interagem com o sistema através s de programas de aplicação. Usuários especializados escrevem aplicações especializadas de BD que não podem ser classificadas como aplicações tradicionais em processamento de dados - esquemas CAD, bases de conhecimento, sistemas especialistas, que armazenam dados com tipos complexos (gráficos e som, por exemplo) Banco de Dados // 36 Estrutura Geral do Sistema Usuários simples Programas de aplicação Código objeto dos programas de aplicação Programadores de aplicação Pré-compilador da linguagem de manipulação de dados Gerenciador de arquivos Chamadas de rotinas USUÁRIOS Gerenciador do Banco de Dados memória de disco Processador de consultas Arquivos de dados Usuários ocasionais Consultas Dicionário de dados Administrador do BD Esquema de Banco de Dados Compilador da linguagem de definição de dados Sistema gerenciador do banco de dados 6

Banco de Dados // 37 Exercícios cios 1. Quais são as principais diferenças entre um sistema de processamento de arquivos e um SGBD? 2. Foram listadas algumas vantagens mais importantes de um sistema de banco de dados. Há alguma desvantagem? 3. Explique a diferença entre a independência de dados física e lógica. 7