Buscar

Introdução a Banco de Dados

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você viu 3, do total de 48 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você viu 6, do total de 48 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você viu 9, do total de 48 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Prévia do material em texto

Banco de Dados
Introdução
Prof. Luís Alexandre
Introdução a Banco de Dados 2
Conteúdo
• Abrangência e uso
• Evolução dos sistemas de informação
• Novos modelos e sistemas de banco de dados
• Tecnologias associadas a banco de dados
• Modelagem e projeto de bancos de dados
• Novas aplicações e tecnologias de banco de 
dados
Introdução a Banco de Dados 3
Abrangência e uso
• Nas atividades diárias necessitamos de aplicações 
que envolvem bancos de dados:
– Bancos;
– Reservas em hotéis;
– Companhias aéreas;
– Catálogo informatizado em bibliotecas;
– Assinaturas de revistas;
– Compras em supermercados;
– Etc.
Introdução a Banco de Dados 4
Sistemas de Informação
• São recursos vitais nas organizações;
• Atendem a alguma necessidade funcional 
do negócio da organização;
• Componentes dos sistemas de informação:
– Organização
– Pessoas
– Tecnologia (hardware, software e telecomunicações)
Introdução a Banco de Dados 5
Roda Viva
Tecnológica
Hardware e telecomunicações
cada vez mais poderosos
Softwares cada vez
mais amigáveis
Cada vez mais usuários,
cada vez mais exigentes
Introdução a Banco de Dados 6
Programa com 
dados armazenados
Programa com 
gerência de arquivos
Sistema de
Gerência
de BD
Programa com 
gerência de arquivosPrograma com gerência de arquivos
Programa de
aplicação de BDPrograma deaplicação de BD
arquivos
de dados
banco
de dados
Programa com 
dados armazenadosPrograma com dados armazenados
Evolução dos Sistemas de Informação
Introdução a Banco de Dados 7
Sistema de Informação
Programa de
aplicação de BDSGBD
Programa de
aplicação de BDAplicação
Dados
+Regras
?!
Desenvolver um projeto de sistema de 
informação consiste em traduzir um 
“problema” do mundo real em uma 
“solução” que envolve a organização, 
pessoas e tecnologia (hardware e software).
SISTEMA DE INFORMAÇÃO
Mundo
Real
Usuário
Usuário
Introdução a Banco de Dados 8
Banco de dados
• Coleção de dados relacionados, logicamente
coerentes e que permitam a geração de
informações de interesse para uma
organização.
• Projetado, construído e preenchido com
dados para um propósito específico.
• Destinado à utilização por grupo de usuários,
diretamente ou por meio de aplicações pré-
concebidas.
Introdução a Banco de Dados 9
Uma arquitetura simplificada de 
sistema de banco de dados
Definição
do BD
(Metadados)
BD
armazenado
Consultas / Programas de Aplicação
Software para processar
consultas / programas
Software para acessar
dados armazenados
Usuários
Sistema de BD
SGBD
Introdução a Banco de Dados 10
Vantagens do controle centralizado de 
dados
• controle / redução de redundâncias;
• padronização de dados;
• integridade mantida: assegurando que os dados estão 
corretos;
• independência de dados e dispositivos;
• restrições de segurança;
• diminuição de inconsistências;
• compartilhamento de dados;
• referência cruzada.
Introdução a Banco de Dados 11
Independência de dados
Capacidade de mudar o esquema num nível de um
sistema de banco de dados sem ter que mudar o
esquema no nível seguinte mais alto.
Independência lógica de dados: 
- Capacidade de mudar o esquema conceitual sem 
ter que mudar esquemas externos ou programas de 
aplicação.
Independência física de dados: 
- Capacidade de mudar o esquema interno sem ter 
que mudar o esquema conceitual.
Introdução a Banco de Dados 12
Características típicas de SGBD
• Persistência dos objetos do BD;
• Definição e manipulação dos dados (DDL, DML e DCL);
• Carga e descarga (leitura e armazenamento rápidos);
• Cópia e recuperação (backup);
• Segurança de acesso e dos dados (níveis de segurança);
• Integridade dos dados;
• Controle de concorrência das transações;
• Eficiente acesso aos dados;
• Independência de dados;
• Facilidade de administração;
• Redução do tempo de desenvolvimento do projeto.
Introdução a Banco de Dados 13
BDs não são sempre a solução
• Sobrecustos
– Alto investimento inicial e possível 
necessidade de hardware adicional.
– Custo da generalidade do SGBD para 
definição e processamento dos dados.
– “Overhead” para garantir segurança, 
controle de concorrência, recuperação 
e integridade.
Introdução a Banco de Dados 14
BDs não são sempre a solução
� Quando NÃO usar BDs
– O volume de dados é pequeno e as 
aplicações são simples, bem definidas. 
– Mudanças não são esperadas.
– Existem requisitos estritos de tempo real 
que não podem ser satisfeitos por causa 
do “overhead” do SGBD.
– Acessos múltiplos e concorrentes não 
são necessários.
Introdução a Banco de Dados 15
Classes de usuários de BD
• Administradores
– Administrador de dados
– Administrador do banco de dados (DBA)
– Pessoal de suporte e operação
– Analista de Dados
• Desenvolvedores
– Analistas de sistemas
– Projetistas de bancos de dados
– Programadores de aplicações
• Usuários finais
– Usuários ocasionais e sofisticados
– Operadores de aplicações
Introdução a Banco de Dados 16
DBA
É a pessoa encarregada de instalar, configurar e gerenciar 
um SGBD. São suas funções:
• Decidir sobre o conteúdo de informações;
• decidir como os dados serão representados no BD (projeto 
físico e lógico);
• definir os controles de segurança e integridade;
• definir estratégias de reserva e recuperação;
• monitorar o desempenho das aplicações.
Analista de Dados
• Profissional da área de banco de dados 
responsável pela extração de conhecimento 
(padrões) de bases de dados por meio da 
aplicação de algoritmos.
Introdução a Banco de Dados 17
Introdução a Banco de Dados 18
Evolução dos Bancos de Dados
(Khoshafian 1995)
Sistemas de arquivos
BD modelo em rede BD hierárquico
BD relacional
Linguagens
OO
Modelos
semânticos
Objetos
complexos
BD OO Information
retrieval
Inteligência
artificialHipermídia
BD “inteligente”
Introdução a Banco de Dados 19
Bancos de Dados Relacionais
• Características marcantes
– simplicidade e uniformidade do modelo (tabelas com 
células atômicas)
– formalismo matemático (Álgebra, Cálculo Relacional e a 
Teoria dos Conjuntos)
– linguagem padronizada (SQL - Structured Query 
Language)
• Desvantagens gradativamente superadas em mais de 
40 anos de pesquisa e desenvolvimento:
– desempenho
– falta de expressão semântica 
Introdução a Banco de Dados 20
Mercado de SGBDs RO
• Domínio total dos SGBDs relacional-objeto (RO);
• Principais fornecedores e produtos:
– Oracle;
– Microsoft (SQL Server e Access);
– MySQL;
– PostgreSQL;
– IBM (DB2, Informix) – relacional e NO-SQL;
– Ingres;
– Progress;
– Symantec (Sybase);
– Interbase (Embarcadero);
– Caché
Introdução a Banco de Dados 21
Contribuição da Orientação a Objetos
2 abordagens :
SGBD OO “puro”: extensão de linguagem de
programação OO (ex: C++ e Smalltalk) com
persistência de objetos, característica de SGBD.
• SGBD relacional-objeto (ou “universal”):
Extensão de SGBD relacional com características
OO (classes, herança e objetos complexos).
Introdução a Banco de Dados 22
Exemplos de SGBDs OO
• Exemplos de SGBDs OO:
– O2, ObjectStore, Gemstone, Poet, Versant e 
Objectivity.
Introdução a Banco de Dados 23
Características dos SGBDs 
Relacionais-Objeto
• Tipos de dados extensíveis no contexto da SQL;
• Suporte a objetos complexos: 
– tipos estruturados de objetos;
– conjuntos de objetos;
– referências (ponteiros) a outros objetos;
• Suporte ao princípio da herança, no contexto da 
SQL;
• Subsistema de regras de produção (ou do negócio);
Introdução a Banco de Dados 24
Sistemas de Gerência de Banco de Dados
Programa de
aplicação de BDSGBD Programa deaplicação de BDProgramadeaplicação de BD
dados
independência de dados
SGBD
ativo ou
dedutivo
dados
e
regras
Programa de
aplicação de BD
independência de conhecimento
Tradicionais
“Inteligentes”
Introdução a Banco de Dados 25
Banco de Dados Dedutivo
• Regras de dedução
Se <premissa> 
Então <conclusão>
• Exemplo:
regra: 
Se Humano(X) EntãoMortal(X)
dado (fato armazenado):
Humano(Sócrates) 
fato deduzido:
Mortal(Sócrates)
Introdução a Banco de Dados 26
Banco de Dados Ativo
• Regras de ação:
Quando <evento>
Se <condição> 
Então <ação>
• Exemplo:
Quando: Sempre que a quantidade em estoque do item X 
for modificada
Se: Quantidade em estoque < N (mínima)
Então: Emitir pedido de compra de N itens X
Introdução a Banco de Dados 27
Implementação de regras ativas
“Triggers” (gatilhos) e procedimentos armazenados
CREATE TRIGGER controle_estoque_X
AFTER UPDATE OF quantidade_em_estoque
ON ITEM
IF ITEM.nome = “X” AND :new.quantidade < N
THEN emitir_pedido_compra (“X”, N)
Introdução a Banco de Dados 28
Evolução das tecnologias associadas a 
bancos de dados
• Bancos de dados centralizados;
• Arquitetura cliente-servidor com servidor de 
arquivos;
• Arquiteturas cliente-servidor com servidor de banco 
de dados:
– servidor de dados;
– servidores de dados e regras.
Introdução a Banco de Dados 29
Bancos de Dados Centralizados
hardware + sistema operacional
Programa de
aplicação de BDSGBD
Programa de
aplicação de BD
Programa de
aplicação de BD
dados
(Década de 70)
terminais
locais
modem
terminais
remotos
Introdução a Banco de Dados 30
Redes de Microcomputadores
microcomputadores (estações de trabalho)
cada vez mais poderosos
(Década de 80)
cabo da rede
Introdução a Banco de Dados 31
Arquitetura Cliente/Servidor 
com Servidor de Arquivos
Servidor
de Arquivos
Servidor
de ImpressãoPrograma
+ SGBD Programa + SGBD
cabo da rede
Introdução a Banco de Dados 32
Arquitetura Cliente/Servidor com 
Servidor de Bancos de Dados
Servidor
de Arquivos
Servidor
de ImpressãoPrograma
Servidor de
Banco de Dados
SGBD
Programa
cabo da rede
Introdução a Banco de Dados 33
Programa de
aplicação de BDSGBD Programa deaplicação de BDAplicaçõesdados
servidor clientes
Arquitetura cliente-servidor 
com servidor de dados
Interface do usuário
+ lógica do negócioBanco de dados
Introdução a Banco de Dados 34
Programa de
aplicação de BD
SGBD
ativo
Programa de
aplicação de BDAplicações
Dados
+ regras
servidor clientes
Arquitetura cliente-servidor com 
servidor de dados e funções
Duas camadas (“two-tiers”)
Interface do usuário
+ parte da lógica do negócioBanco de dados
+ parte da lógica do negócio
Introdução a Banco de Dados 35
Programa de
aplicação de BD
SGBD
ativo
Programa de
aplicação de BDAplicações
regras
Servidor de regras clientes
Arquitetura cliente-servidor com 
servidor de dados e funções
Três camadas (“three-tiers”)
SGBDdados
Servidor 
de dados
Interface do usuário
+ parte da lógica do negócio
Banco de dados
Banco de regras
Introdução a Banco de Dados 36
Processo de Desenvolvimento
de Sistemas de Informação
Ciclo de vida de sistemas
• Definição;
• Projeto;
• Implementação;
• Testes;
• Carga /conversão de dados/programas;
• Implantação (incluindo treinamento);
• Produção (incluindo manutenção e monitoramento).
Introdução a Banco de Dados 37
Mundo real
Programa de
aplicação de BDSGBD
Programa de
aplicação de BD
Programa de
aplicação de BD
dados
e
regras
?!
Introdução a Banco de Dados 38
Requisitos
de Dados
Projeto Conceitual 
Projeto Lógico
Projeto Físico
Coleta/Especificação
de Requisitos
Mundo real
Programa de
aplicação de BDSGBD
Programa de
aplicação de BD
Programa de
aplicação de BD
dados
e
regras
Requisitos
Funcionais
Análise Funcional
Projeto Funcional
Programação
Prototipação
Introdução a Banco de Dados 39
Requisitos
de Dados
Projeto Conceitual 
Projeto Lógico
Projeto Físico
Coleta/Especificação
de Requisitos
Mundo real
Programa de
aplicação de BDSGBD
Programa de
aplicação de BD
Programa de
aplicação de BD
dados
e
regras
Requisitos
Funcionais
Análise Funcional
Projeto Funcional
Programação
Ferramenta 
(CASE)
Introdução a Banco de Dados 40
Requisitos
de Dados
Projeto Conceitual 
Projeto Lógico
Projeto Físico
Coleta/Especificação
de Requisitos
Mundo real
Programa de
aplicação de BDSGBD
Programa de
aplicação de BD
Programa de
aplicação de BD
dados
e
regras
Requisitos
Funcionais
Análise Funcional
Projeto Funcional
ProgramaçãoLinguagens 
visuais
Introdução a Banco de Dados 41
Ferramentas de Projeto (CASE)
• Modelagem:
–Modelo Entidade-Relacionamento;
–Modelos de processos;
–Modelos orientados a objeto;
• Geradores de código;
• Dicionário de dados;
• Engenharia reversa e avante.
Introdução a Banco de Dados 42
Exemplos de Ferramentas CASE
• ERwin 
• Oracle Designer
• DBDesigner4
• PgModeler
• DBSchema
• Toad Data Modeler
• Workbench
• DeZign
• ER/Studio
• PowerDesigner
Introdução a Banco de Dados 43
Ferramentas de programação
• Linguagens Gráficas e Visuais;
• Construtores de formulários e relatórios;
• Programação baseada em eventos;
• Cada vez mais orientadas a objeto;
• Cada vez mais cliente /servidor;
• Suporte a várias plataformas;
Introdução a Banco de Dados 44
Novas aplicações de banco de dados
SGBD
com dados
e funções
espaciais
Dados
+ regras
Sistemas de Informações Geográficas (SIG)
Introdução a Banco de Dados 45
DATA
WAREHOUSE
BD 1
BD 2
BD 3
aplicação
aplicação
aplicação
Sistema de
informações
executivas
Sistema de
suporte à
decisão
Introdução a Banco de Dados 46
Novas aplicações de banco de 
dados
• Projetos do tipo Genoma;
• Bibliotecas digitais;
• Monitoramento de imagens de satélites;
• Redes sociais
47
Tópicos na área (SBBD)
Adaptação de Tecnologias de Banco de Dados na Indústria
Aplicações Industriais Avançadas de Banco de Dados
Aplicações Financeiras, Governamentais e em Áreas
Sociais Diversas 
Aplicações Médicas
Aplicações envolvendo Bases de Conhecimento
Aplicações de Mineração de Dados e Descoberta de 
Conhecimento
Armazém de Dados (Data Warehousing)
Autorização, Privacidade e Segurança de Dados
Bancos de Dados Ativos
Banco de Dados Auto-Gerenciados e Autônomos
Bancos de Dados Científicos e Estatísticos
Bancos de Dados Distribuídos, Paralelos e Peer-to-Peer
Bancos de Dados Espaciais
Bancos de Dados Multi-dimensionais e Temporais
Bancos de Dados Móveis
Bancos de Dados Multimídia
Bancos de Dados Semi-estruturados e XML
Bancos de Dados de Sensores e Processamento de Streams
Bancos de Dados Textuais
Bancos de Dados na Web
Banco de Dados para Bio-Informática
Banco de Dados Embutidos e para Computação Pessoal
Bibliotecas Digitais e Gerenciamento de Documentos
• - Bibliotecas Digitais 
- Controle de Concorrência e Recuperação 
- Comércio Eletrônico e Banco de Dados 
- Computação Móvel 
- Descoberta de Conhecimento e Mineração de Dados 
- Desempenho e Benchmark 
- Experiências de uso de Tecnologias de Banco de Dados 
- Gerenciamento Ambiental 
- Gerenciamento de Dados em Empresas 
- Gerência de Meta-dados 
- Integração de Informações e Interoperabilidade 
- Linguagens de Consulta e Interfaces com Usuário 
- Mediadores e Plataformas para Gerenciamento de Dados 
- Métodos de Acesso e Indexação 
- Orientação a Objetos e Bancos de Dados 
- Processamento de Consultas e Otimização 
- Processos de Negócios 
- Projeto de Banco de Dados 
- Recuperação de Informação 
- Qualidade,Proveniência (Provenance) e Semântica de dados 
- Semântica de Dados 
- Serviços de Banco de Dados na Web 
- Sistemas de Informação Geográfica 
- Técnicas de Modelagem de Banco de Dados 
- Visualização de Dados 
- Workflow e Banco de Dados
- Bases de Conhecimento 
- NO-SQL
Introdução a Banco de Dados 48
Conclusão
Na Informática,
TUDO ACABA EM BANCO DE DADOS!

Outros materiais