SCC Bancos de Dados e Suas Aplicações

Slides:



Advertisements
Apresentações semelhantes
BANCO DE DADOS I Prof. Ricardo Santos.
Advertisements

Ana Paula B. Barboza Ivana Xavier Rodrigues
Curso: Banco de Dados I Análise de Sistemas PUC Campinas
Curso: Banco de Dados I Análise de Sistemas PUC Campinas
Evolução dos SGBD’s (2ª Parte).
Resumo 1.1) Introdução 1.2) Abordagem Convencional de Arquivos
Resumo 1.1) Introdução 1.2) Abordagem Convencional de Arquivos
Funcionalidades de um SGBD
MODELAGEM DE SISTEMAS DE INFORMAÇÃO
SISTEMAS DE INFORMAÇÃO
Maurício Edgar Stivanello
SGBD.
Sistema Gerenciador de Banco de Dados SGBD
Sistema Gerenciador de Banco de Dados SGBD
Introdução aos Sistemas Gerenciadores de Banco de Dados
1 MODELAGEM COM A UML (UNIFIED MODELING LANGUAGE) BREVE HISTÓRICO CARACTERÍSTICAS CONCEITOS DE PROGRAMAÇÃO ORIENTADA A OBJETOS MODELAGEM DE ANÁLISE E DE.
Iniciando Banco de Dados
Professora: Aline Vasconcelos
Introdução à Engenharia da Computação
SCC Bancos de Dados e Suas Aplicações
SCC Bancos de Dados e Suas Aplicações
Conceitos Básicos Dado: fato do mundo real que está registrado e possui um significado implícito no contexto de um domínio de aplicação Exemplos: endereço,
Seminários Avançados I
Material III-Bimestre Wagner Santos C. de Jesus
Prof. Alexander Roberto Valdameri
Prof. Alexander Roberto Valdameri
Fundamentos de Banco de Dados Prof. Alexander Roberto Valdameri
Aula 6 Subprogramas Universidade do Vale do Rio dos Sinos
Professor Victor Sotero
Linguagem de Banco de Dados - SQL
Bancos de Dados – SQL – parte 1
Classes e objetos P. O. O. Prof. Grace.
Administração de Sistemas de Informação Banco de Dados
CONCEITOS Modelo de Dados
Educação Profissional Técnica de Nível Médio em Informática
I- Introdução A Evolução dos Modelos de Dados e dos Sistemas de Gerência de Banco de Dados.
Banco de Dados Aplicado ao Desenvolvimento de Software
Banco de Dados II Prof. Antônio Cordeiro.
Tipos de Linguagens do Banco de Dados
Banco de Dados e Usuários do Banco de Dados (capítulo 1)
Prof. Kelly E. Medeiros Bacharel em Sistemas de Informação
Prof. Alessandro Gonçalves
Projeto de Banco de Dados
Introdução a Banco de dados
Banco de Dados Parte 04 Ceça. Ceça Moraes 2 Conteúdo  Os três níveis da arquitetura  Mapeamentos  Arquitetura cliente-servidor.
Treinamento PHP Módulo 2 PHP Avançado Waelson Negreiros waelson.com.br “Está conosco o Senhor dos Exércitos”
Contexto da disciplina
Comandos SQL.
Banco de Dados Aplicado ao Desenvolvimento de Software
Banco de Dados CIn/UFPE
Cristina Paludo Santos URI – Campus de Santo Ângelo
Campus de Caraguatatuba Aula 2: Introdução a Tecnologia de BD
Introdução a Banco de Dados Aula 04
Bancos de Dados Estrutura e Funcionamento de um SGBD
Introdução a Banco de Dados Aula 01
Banco de Dados I Objetivo:
SCC Bancos de Dados e Suas Aplicações
Mestrado em Engenharia de Computação área de concentração Geomática
Conceitos básicos Professor Esp. Diego André Sant’Ana
Bancos de Dados Fundamentos Prof. Marcos R. Cardoso.
UCSal – Bacharelado em Informática
Introdução a Bancos de Dados (BD’s)
UCSal – Bacharelado em Informática Banco de Dados Profa. Semíramis Assis
Plano de Ensino Conceitos e Características Tipos de Banco de Dados
Bancos de Dados Sistema de Banco de dados – sistema de manutenção de registros por computador. É considerado como uma sala.
Banco de Dados Parte 1 Profa. Ana Karina Barbosa Fevereiro/2008.
Fundamentos de Banco de Dados Prof. André Cypriano M. Costa
BANCO DE DADOS Prof. Marcelo West
Programação para Internet Aula 11 SQL (Introdução a linguagem, comandos de modificação: Create, Drop, Alter, Insert, Delete, Update)
Modelagem de Banco de Dados: Conceitos
Transcrição da apresentação:

SCC0141 - Bancos de Dados e Suas Aplicações Prof. Jose Fernando Rodrigues Junior Material original: Elaine Parros Machado de Sousa Introdução

Tópicos da aula Evolução dos Sistemas de Informação Conceitos Básicos SGBDs Histórico Informatização começou pela automatização de tarefas manuais. A tecnologia de gerenciamento de arquivos inicialmente utilizada não responde às necessidades. Necessidade de tecnologia que reduza tempo de desenvolvimento e facilite a manutenção. A tecnologia de base de dados vai tentar responder a dois objetivos: encontrar um forma mais natural de pensar os sistemas de informação; acelerar o processo de desenvolvimento de novos sistemas e facilitar a sua manutenção. USP – ICMC - GBDI

Evolução dos Sistemas de Informação Sistemas de Informação baseados em gerenciamento de arquivos programas e arquivos orientados a cada unidade organizacional rotinas específicas para tarefas específicas dados armazenados em disco, usando uma determinada estrutura de dados USP – ICMC - GBDI

Dados Aplicações Arquivo 1 Arquivo 2 Arquivo 3 Sistemas desenvolvidos de forma autônoma por cada nova aplicação. Definiam-se novas estruturas de dados e programas por cada aplicação. Os mesmos dados são armazenados em arquivos diferentes. Dados são atualizados independentemente o que leva a incoerências.

PROBLEMA????? Dados Aplicações Arquivo 1 Arquivo 2 Arquivo 3 Sistemas desenvolvidos de forma autônoma por cada nova aplicação. Definiam-se novas estruturas de dados e programas por cada aplicação. Os mesmos dados são armazenados em arquivos diferentes. Dados são atualizados independentemente o que leva a incoerências.

Arquivos de Dados de Vendas Arquivos de Dados de Compras REDUNDÂNCIA Arquivos de Dados de Produção Arquivos de Dados de Vendas Arquivos de Dados de Compras Produtos Aplicação de Produção Aplicação de Vendas Aplicação de Compras

Arquivos de Dados de Vendas REDUNDÂNCIA INCONSISTÊNCIA Aplicação de Produção Aplicação de Vendas Nome: Notebook NroSerie:1111111 Fabricante: Y Insere: Nome: Notebook NroSerie:1111111 Fabricante: X Insere: Arquivos de Dados de Produção Arquivos de Dados de Vendas Produtos Produtos

Consistência de Dados Dados em estado inconsistente informações incorretas ou contraditórias são fornecidas aos usuários USP – ICMC - GBDI

Consistência de Dados Consistência é “estado ou caráter do que é coerente, do que tem solidez, veracidade, credibilidade, estabilidade, realidade”. Consistência: se determinada informação é replicada (redundância), seu valor é sempre o mesmo USP – ICMC - GBDI

SIs baseados em arquivos Problemas? Redundância e inconsistência de dados Dificuldade de acesso aos dados Isolamento de dados Anomalias no acesso concorrente Segurança dificuldade de acesso aos dados: são necessárias aplicações para recuperar os dados isolamento: dados dispersos e em formato diferentes USP – ICMC - GBDI

Além disso... SIs baseados em arquivos  dados gravados em disco usando ESTRUTURAS DE DADOS Acesso requer conhecimento destas estruturas  DEPENDÊNCIA DE DADOS. 15 46 63 81 97 99 16  USP – ICMC - GBDI

Dependência dos Dados Vários programas compartilhando os mesmos dados  todos devem conhecer e manipular as mesmas estruturas E se houver uma alteração na estrutura de dados? TODOS OS PROGRAMAS TERÃO QUE SER ALTERADOS Uma aplicação que utilize um determinado arquivo (ou estrutura de dados) tem que ter uma interface física com esse arquivo. Uma alteração no arquivo tem que ser propagada por todas as aplicações que o utilizam. O acesso concorrente dos dados é um problema a ser resolvido pelas aplicações, o que prejudica a confiabilidade dos dados. Por estas razões estes sistemas evitam partilhar dados, tendem a ser autônomos. USP – ICMC - GBDI

Independência dos Dados Como tornar os programas INDEPENDENTES da estrutura de dados? CRIANDO UM SISTEMA QUE GERENCIE A ESTRUTURA 15 46 63 81 97 99 16  Sistema Gerenciador de Dados Compartilhados Aplicação 1 Aplicação 2 USP – ICMC - GBDI

Independência dos Dados Sistema de Gerenciamento de Bases (ou Banco) de Dados SGBD 15 46 63 81 97 99 16  SGBD Aplicação 1 Aplicação 2 Os dados são organizados num único conjunto. Todos os acessos físicos aos dados passam a ser feitos pelo SGBD. USP – ICMC - GBDI

Independência dos Dados Conceitos de abstração e interface Sistema de Gerenciamento de Bases (ou Banco) de Dados SGBD 15 46 63 81 97 99 16  SGBD Aplicação 1 Aplicação 2 Os dados são organizados num único conjunto. Todos os acessos físicos aos dados passam a ser feitos pelo SGBD. USP – ICMC - GBDI

SGBD Sistema de Gerenciamento de Bases de Dados conjunto de dados base (banco) de dados conjunto de programas para acesso e manipulação dos dados USP – ICMC - GBDI

SGBD Sistema de propósito geral armazenar grandes volumes de dados permitir busca e atualização dos dados eficiência Manutenção de um conjunto lógico e organizado de dados completamente autônomo em relação às aplicações USP – ICMC - GBDI

SGBD Aplicação Aplicação Aplicação Esquema - Definição da base de dados Instância – Base de dados

SGBDs Requisitos Fundamentais: Segurança Física (mais comum no passado) Lógica Usernames e passwords Perfis de usuário USP – ICMC - GBDI

SGBDs Requisitos Fundamentais (cont): Integridade consistência validade Nome: Joaquim Pereira Cargo: Faxineiro Salário:R$ 230.000,00 Arquivos de Dados ????? Integridade - uma base de dados está num estado de integridade se contem apenas dados válidos, isto é, que não contradizem a realidade que estão a representar, antes a refletem corretamente. A manutenção da integridade pressupõe proteger a BD de acessos inválidos por parte dos utilizadores autorizados, impedindo-os de executar operações que ponham em risco a correção dos dados. Apenas as operações de atualização da BD (inserção, alteração ou remoção de dados) podem comprometer a integridade. As operações de atualização são governadas por um conjunto de regras – restrições de integridade, que definem o que é válido e o que não é válido. Exemplos: – Um funcionário não pode pertencer a mais do que um departamento – O preço de venda de um produto deverá ser superior ao seu custo. – A referência de cada produto deve ser única. Restrições de Integridade!!! USP – ICMC - GBDI

SGBDs Requisitos Fundamentais (cont): Integridade - se contem apenas dados válidos, que não contradizem a realidade que estão a representar. Restrições de integridade, que definem o que é válido e o que não é válido. Exemplos: – um funcionário não pode pertencer a mais do que um departamento – o preço de venda de um produto deverá ser superior ao seu custo. – a referência de cada produto deve ser única Integridade - uma base de dados está num estado de integridade se contem apenas dados válidos, isto é, que não contradizem a realidade que estão a representar, antes a refletem corretamente. A manutenção da integridade pressupõe proteger a BD de acessos inválidos por parte dos utilizadores autorizados, impedindo-os de executar operações que ponham em risco a correção dos dados. Apenas as operações de atualização da BD (inserção, alteração ou remoção de dados) podem comprometer a integridade. As operações de atualização são governadas por um conjunto de regras – restrições de integridade, que definem o que é válido e o que não é válido. Exemplos: – Um funcionário não pode pertencer a mais do que um departamento – O preço de venda de um produto deverá ser superior ao seu custo. – A referência de cada produto deve ser única. USP – ICMC - GBDI

SGBDs Requisitos Fundamentais (cont): Recuperação / Tolerância a falhas Transações atômicas unidades lógicas de trabalho, em geral envolvendo várias operações Registros de Log Backup Controle da concorrência gerenciamento de transações concorrentes Controle da concorrência - relaciona-se com a coordenação da partilha dos dados por várias aplicações e usuários. — A unidade base do controle de concorrência é a transação. — Transação - conjunto de ações originadas por um usuário ou aplicação que, como um todo, acessam a uma BD para consultar ou modificar o seu conteúdo. — Uma transação só pode ser executada na totalidade – ou todas as ações ou nenhuma. — Exemplo: transferência de valores entre duas contas bancárias. USP – ICMC - GBDI

Por que usar SGBDs? Vantagens: armazenamento persistente de dados e estruturas de dados; INDEPENDÊNCIA DE DADOS; CONSISTÊNCIA DE DADOS; ABSTRAÇÃO E INTERFACE; acesso compartilhado (multiusuário e concorrente) à informação; distribuição de informações USP – ICMC - GBDI

Por que usar SGBDs? Vantagens: reduz complexidade das aplicações segurança controle de acesso aos dados backup utilização de padrões USP – ICMC - GBDI

Por que usar SGBDs? Desvantagens Custo financeiro Um sistema a mais a ser aprendido e gerenciado USP – ICMC - GBDI

Componentes de um SGBD SGBD Os componentes funcionais do SGBD: Banco de Dados Processador de Consultas SGBD Gerenciador de Armazenamento Dados e Metadados Os componentes funcionais do SGBD: componentes de processamento de consultas componentes de gerenciamento de armazenamento USP – ICMC - GBDI

Componentes de um SGBD Conceitos importantes: Pragmatismo: primeiro modelagem (documentada), seguida de definição e instanciação, e só depois o uso Modelagem: modelo entidade/relacionamento Definição: SQL, subconjunto DDL Instanciação: SQL, subconjuntos DDL/DML Uso: SQL, subconjunto DML USP – ICMC - GBDI

Componentes de um SGBD Conceitos importantes: SQL - Data Definition Language (DDL) conjunto de comandos para definição do esquema da base de dados Exemplos em linguagem SQL create table alter table drop table Compilador/Interpretador DDL USP – ICMC - GBDI

Componentes de um SGBD Conceitos importantes (cont.): Metadados Dicionário de Dados: banco de dados do sistema armazena descrição do esquema armazena metadados armazena restrições de segurança e integridade outras denominações: catálogo de dados, diretório de dados USP – ICMC - GBDI

Componentes de um SGBD Conceitos importantes (cont.): SQL - Data Manipulation Language (DML) recuperação (consulta) inserção remoção modificação DML viabiliza manipulação dos dados de maneira compatível com o modelo de dados USP – ICMC - GBDI

Componentes de um SGBD Conceitos importantes (cont.): Data Manipulation Language (DML) Exemplos em linguagem SQL insert select delete update ... USP – ICMC - GBDI

Componentes de um SGBD Conceitos importantes (cont.): Procedural vs Declarativo Procedural: exige especificação de quais dados são necessários, e como obtê-los requer uma sequência específica de operações a serem executadas ex.: linguagens de programação como C e Pascal, e a linguagem de projeto de bancos de dados álgebra relacional Não-Procedural (Declarativo): exige apenas especificação de quais dados são necessários, e não de como obtê-los ex: SQL A interface dos bancos de dados é definida pela linguagem declarativa SQL (DDL + DML) USP – ICMC - GBDI

Processador de Consultas Programadores de aplicações Usuários Sofisticados DBAs Usuários Finais Interfaces de aplicação Aplicações Consulta (Query) Esquema de BD SGBD Pré-compilador de Comandos DML  DML embutido no .exe Programas de Aplicações em Código Objeto Compilador DML Interpretador DDL Componente de avaliação e execução de consultas Processador de Consultas Gerenciador de Transações Gerenciador de Buffer Programas de aplicações: comandos DML precedidos por caracter especial – precompilador extrai comandos DML, interage com o Compilador DML, gera código apropriado (chamada de procedimento) e envia ao compilador da linguagem hospedeira. Gerenciador de Arquivos Gerenciador de Armazenamento

SGBD [Silbesrchats] Programas de Aplicações em Código Objeto Pré-compilador de Comandos DML Compilador DML Interpretador DDL Componente de execução de consultas Processador de Consultas Gerenciador de Transações Gerenciador de Buffer Gerenciador de Arquivos Gerenciador de Armazenamento Índices Dados Estatísticos Dicionário de Dados [Silbesrchats] Arquivos de Dados

Cronologia Década de 1950: Primeiros computadores. Programação em linguagem de máquina Surgimento de Sistemas Operacionais e Linguagens de Programação Sistemas de arquivos com acesso aleatório (não seqüencial) 1959: Sistema RAMAC (IBM) The IBM 305 RAMAC, publicly announced on September 13, 1956, was the first commercial computer that used a moving head hard disk drive (magnetic disk storage) for secondary storage. RAMAC stood for "Random Access Method of Accounting and Control". Its design was motivated by the need for real-time accounting in business. The IBM 350 disk system stored 5 million 8-bit (7-bits plus 1 odd parity bit) characters. It had fifty 24-inch-diameter (610 mm) disks. USP – ICMC - GBDI

Cronologia Década de 1960: CODASYL: consórcio da indústria  COBOL Conceituação de SGBD e modelos de dados Primeiro SGBD comercialmente disponível - Modelo Hierárquico IMS – IBM Integração com a linguagem COBOL Ainda em uso corrente CODASYL: Conference on Data Systems Languages – usado para se referir a certos sistemas de (de rede) pré-relacionais IMS: Information Management System USP – ICMC - GBDI

Cronologia Década de 1970: Proposta do Modelo Relacional Surgimento de protótipos de SGBDR INGRES (UC – Berkeley) Sistema R (IBM) Proposta do Modelo Entidade-Relacionamento (MER) Hierarchical databases were blown away by relational versions because it was difficult to model a many-to-many relationship - the very basis of the hierarchical model is that each child element has only one parent element. Hierarchical databases fell out of favor with the advent of relational databases due to their lack of flexibility because it wouldn’t easily support data access outside the original design of the data structure. For example, in the customer-order schema you could only access an order through a customer, you couldn’t easily find all the orders that included the sale of a widget because the schema isn’t designed to all that. Despite all the drawbacks of hierarchical databases, there are some specific applications where they fit nicely. Some good candidates for hierarchical databases are- White pages" information, User credential & security group information, Network configuration and service policies, Application deployment policies etc. USP – ICMC - GBDI

Cronologia Década de 1980: Primeiro SGBDR de grande porte disponível DB2 – IBM Surge SQL vinculada ao Sistema R SQL torna-se padrão Modelos Orientados a Objetos SQL surgiu de projetos vinculados ao Sistema R. Em 1980’s SQL se tornou um padrão. Padrão atual: SQL-99 USP – ICMC - GBDI

Cronologia Década de 1990 em diante: SGBDs orientados a objetos ObjectStore Objectivity/DB Jasmine … SGBDs objeto-relacionais Oracle8, Oracle9, Oracle10g, Oracle 11g PostGreSQL Informix USP – ICMC - GBDI

Sugestão de leitura Capítulos introdutórios dos livros citados na bibliografia básica da disciplina USP – ICMC - GBDI