250 likes | 423 Views
Sistemas de Informação e Bases de Dados. Apresentação da disciplina. Programa. Modelo entidade-associação Modelo e álgebra relacionais SQL Desenvolvimento de aplicações Estruturas de ficheiros e índices Processamento e optimização de queries Transacções, concorrência e recuperação.
E N D
Sistemas de Informação e Bases de Dados Apresentação da disciplina
Programa • Modelo entidade-associação • Modelo e álgebra relacionais • SQL • Desenvolvimento de aplicações • Estruturas de ficheiros e índices • Processamento e optimização de queries • Transacções, concorrência e recuperação IST ▪ DEI ▪ Bases de Dados
Bibliografia Database System Concepts (5ª ed.) A. Silberschatz, H. Korth, S. Sudarshan McGraw-Hill, 2006 ISBN 007-124476-X Capítulos: 1, 2, 3, 4, 6, 7, 8, 11, 12, 13, 14, 15, 16, 17 IST ▪ DEI ▪ Bases de Dados
Corpo Docente • Responsável – Diogo Ferreira (diogo.ferreira@dei.ist.utl.pt) • Teóricas – Pedro Sousa (pedro.sousa@dei.ist.utl.pt) • Práticas – Artur Caetano (artur.caetano@dei.ist.utl.pt) IST ▪ DEI ▪ Bases de Dados
Funcionamento da aulas • Aulas teóricas • exposição da matéria • sessões de demonstração • Aulas laboratoriais • exercícios semanais IST ▪ DEI ▪ Bases de Dados
Avaliação • Componentes de avaliação • 40% - exercícios semanais • avaliados de 0-5 • 60% - exame • nota mínima 10 • nota final ≥ nota do exame IST ▪ DEI ▪ Bases de Dados
Bases de Dados Introdução
Sistemas de gestão de bases de dados • Sistema de Gestão de Bases de Dados (SGBD) • o que é? • conjunto de dados • e programas para aceder a esses dados • contém informação relevante para a empresa • objectivo: armazenar e consultar informação de modo conveniente e eficiente IST ▪ DEI ▪ Bases de Dados
Aplicações de bases de dados • Aplicações: • banca, linhas aéreas, universidades, administração, retalhistas, produção, recursos humanos, etc. • âmbito cada vez mais alargado • Cada vez mais próximas dos utilizadores • bases de dados institucionais • bases de dados online • bases de dados pessoais IST ▪ DEI ▪ Bases de Dados
Porquê sistemas de bases de dados? • necessidade de realizar e registar operações • p.ex. criar conta, verificar saldo, efectuar débito/crédito, gerar extracto • no passado, aplicações assentes em ficheiros • redundância • inconsistência • fragmentação • concorrência • segurança IST ▪ DEI ▪ Bases de Dados
Níveis de abstracção • nível físico, nível lógico, e vistas • esquemas e instâncias … vista 1 vista 2 vista n struct customer { int id; char name[256]; float balance; } nível lógico nível físico IST ▪ DEI ▪ Bases de Dados
Modelos de dados • Modelo Relacional • baseado em tabelas com múltiplas colunas • cada coluna (campo/atributo) com nome diferente • cada linha corresponde a um registo (record) • Modelo Entidade-Associação • diagrama que descreve entidades e associações • cada entidade possui um conjunto de atributos IST ▪ DEI ▪ Bases de Dados
Linguagens de bases de dados • Linguagem de Definição de Dados (DDL) • permite especificar o esquema dos dados • valores de domínio, integridade referencial, asserções, autorização • resultado é guardado no dicionário de dados • Linguagem de Manipulação de Dados (DML) • permite consultar, inserir, apagar e modificar dados • SQL cobre as duas funções IST ▪ DEI ▪ Bases de Dados
Bases de dados relacionais – Tabelas IST ▪ DEI ▪ Bases de Dados
Bases de dados relacionais – DDL • criação da tabela account CREATE TABLE account ( account-number CHAR(10), balance INTEGER ) IST ▪ DEI ▪ Bases de Dados
Bases de dados relacionais – DML • qual é o nome do cliente com o número 192-83-7465 SELECT customer.customer_name FROM customer WHERE customer.customer_id = ‘192-83-7465’ • qual é o saldo de todas as contas desse cliente SELECT account.balance FROM depositor, account WHERE depositor.customer_id = ‘192-83-7465’ AND depositor.account_number = account.account_number IST ▪ DEI ▪ Bases de Dados
Processo de desenvolvimento • Desenho lógico envolve 2 decisões: • decisão de negócio: que informação (entidades / atributos) devem ser guardados na BD? • decisão informática: que relações (tabelas) devemos ter e como distribuir os atributos? • Desenho físico: qual a organização de ficheiros a adoptar e como estruturar o seu conteúdo? IST ▪ DEI ▪ Bases de Dados
O modelo entidade-associação • Modelo da empresa como um conjunto de: • entidades: representam objectos e são descritas por atributos • associações: estabelecem ligações entre entidades IST ▪ DEI ▪ Bases de Dados
Conversão para modelo relacional • conversão • normalização IST ▪ DEI ▪ Bases de Dados
Armazenamento e consulta de dados • Storage Manager • interface entre o nível físico dos dados e as consultas (queries) à base de dados • Query Processor • interpreta e traduz, optimiza e executa as consultas IST ▪ DEI ▪ Bases de Dados
Gestão de transacções • Transacção: conjunto de operações a serem executadas como uma única operação lógica • Transaction Manager • componente que garante que a base de dados está sempre num estado consistente • falhas de alimentação, erros do sistema, falhas de transacção • Concurrency Control • controla operações concorrentes de forma a evitar resultados inesperados IST ▪ DEI ▪ Bases de Dados
Arquitectura geral de um SGBD IST ▪ DEI ▪ Bases de Dados
Utilizadores de bases de dados • Vários tipos de utilizadores podem interagir com a BD • utilizadores simples: utilizam programas que acedem à BD sem que se apercebam disso • utilizadores sofisticados: consultam a BD através de DML • programadores: interagem com a BD através de linguagens de programação e DML • administradores: criam definições, gerem autorizações e fazem tarefas de manutenção IST ▪ DEI ▪ Bases de Dados
Breve história dos SGBDs • décadas de 50 e princípios dos anos 60: • processamento de dados armazenados em bandas magnéticas • inserção de dados com recurso a cartões perfurados • acesso sequencial • fim dos anos 60 e década de 70: • discos duros permitem acesso directo aos dados • Ted Codd cria o modelo relacional • IBM Research desenvolve protótipo System R • processamento eficiente de transacções IST ▪ DEI ▪ Bases de Dados
Breve história dos SGBDs • anos 80: • primeiros sistemas comerciais • SQL torna-se um standard industrial • BDs paralelas, distribuídas, e orientadas a objectos • anos 90: • sistemas de suporte à decisão e aplicações de data mining • data warehouses na ordem dos TB • comércio electrónico • 2000s: • standards XML • autonomic computing IST ▪ DEI ▪ Bases de Dados