a01 bd-i - introdução a bd
TRANSCRIPT
-
7/24/2019 a01 BD-I - Introduo a BD
1/42
-
7/24/2019 a01 BD-I - Introduo a BD
2/42
Tecnologias e Linguagens para Banc
1
modulo
-
Tcnico
em
Informtica
Prof.:
Evandro
Nilson
A
-
7/24/2019 a01 BD-I - Introduo a BD
3/42
Tecnologias e Linguagens para B
1
modulo
Tc
.
em
Informtica
Introduo...
Neste mdulo, iremos conhecer os conceitos,metodologias e tcnicas para a elaborao de um Bancode Dados.
Inicialmente, iremos abordar o conceito de Dados,Banco de Dados e SGBD Sistemas de Gerenciamentode Dados:
Dados :
Algo que faz parte da realidade; Fatos que podem ser gravados e que possuem um
significado implcito; Informaes armazenadas de maneira que possam
ser utilizadas posteriormente.
-
7/24/2019 a01 BD-I - Introduo a BD
4/42
Banco de Dados :
[Chu, 1985]Um banco de dados um conjunto de arquivos relacionad
[Date, 2000]Um banco de dados uma coleo de dadosarmazenados usados pelas aplicaes de umaorganizao;
Tecnologias e Linguagens para B
1
modulo
Tc
.
em
Informtica
Introduo...
-
7/24/2019 a01 BD-I - Introduo a BD
5/42
Banco de Dados :
[Elmasri & Navathe, 2000]Banco de Dados (BD): uma coleo de dados relacionad
Representa aspectos do mundo real (minimundo ou undiscurso) e mudanas no mundo real devem ser refleti
uma coleo lgica e coerente de dados com algum inerente. Uma organizao randmica de dados no p
considerada um BD. Um BD construdo em atendimento a uma proposta
Tecnologias e Linguagens para B
1 modulo Tc. em Informtica
Introduo...
-
7/24/2019 a01 BD-I - Introduo a BD
6/42
SGBD Sistema Gerenciador de Banco de Dados :
Um Sistema Gerenciador de Banco de Dados (SGBD) um
programas que permite criar e manter um banco de dado constitudo por um conjunto de dados associados a um
programas para acesso e manutenabilidade desses dados
Tecnologias e Linguagens para B
1 modulo Tc. em Informtica
Introduo...
-
7/24/2019 a01 BD-I - Introduo a BD
7/42
Sistema de Banco de Dados
Tecnologias e Linguagens para B
1 modulo Tc. em Informtica
Banco de dadosarmazenados
Programas de Aplicaes / Consultas (Queries)
Usurios/Programadores
Programas para Processamento de consultas /gerenciamento de dados
Software para Acesso aos Dados Armazenados
Definio dos dados
SGBD
Introduo...
-
7/24/2019 a01 BD-I - Introduo a BD
8/42
Interao
Tecnologias e Linguagens para B
1 modulo Tc. em Informtica
Introduo...
-
7/24/2019 a01 BD-I - Introduo a BD
9/42
Tecnologias e Linguagens para B
1 modulo Tc. em Informtica
Sistema de Processamento de Arquivos
Os programas gravam seus dados em disco, seguindo estrutu
Para acess-los necessrio conhecer sua estrutura; Se vrios programas compartilham seus dados, todos devem
manipular as mesmas estruturas; Se algum programa precisar de alguma mudana de dados, t
programas tero que ser alterados, mesmo que a alterao o
dados que ele no utiliza.
Introduo...
-
7/24/2019 a01 BD-I - Introduo a BD
10/42
Tecnologias e Linguagens para B
1 modulo Tc. em Informtica
Sistema Gerenciamento de Banco de Dados
Entre os programas e os dados colocado um sistema q
formato em que os dados esto gravados para o formato especprograma precisa, ento cada programa: V apenas os dados que lhe interessa; No precisa entrar em detalhes de como seus dados est
gravados;
No precisa ser modificado se a estrutura de dados quefor mudada.
Introduo...
-
7/24/2019 a01 BD-I - Introduo a BD
11/42
Independncia dos Dados
Tecnologias e Linguagens para B
1 modulo Tc. em Informtica
O acesso/gerenciamento aos/dosdados feito diretamente pelosprogramas aplicativos.
O acesso/gerenciamento aos/dos dados feito pelo SGBD. O SGBD funcionacomo uma interface entre o BD e osprogramas aplicativos.
Dados(arquivos)
Dados(arquivos)
GBD
Sistema de arquivos Sistema de Banco de Dados
Aplicativos Aplicativos
Introduo...
-
7/24/2019 a01 BD-I - Introduo a BD
12/42
Tecnologias e Linguagens para B
1 modulo Tc. em Informtica
Funes bsicas do Sist. Gerenc. de Banco de Dados
Simplificar o desenvolvimento de aplicaes caracteriza
intensivo de DADOS: Provendo servios que diminuem o tempo de desenvolvim Utilizando ferramentas que possibitam ao usurio: Realizar entrada de dados; Examinar dados;
Manipular dados de acordo com a aplicao.
Introduo...
-
7/24/2019 a01 BD-I - Introduo a BD
13/42
Tecnologias e Linguagens para B
1 modulo Tc. em Informtica
Funes bsicas do Sist. Gerenc. de Banco de Dados
SGBD
Modela-
gem de
Dados
Gerncia
de Dados
Controle
Operaci-
onais
Usurios
Definir a Base de Dados
Manipular a Base de Dados
Construir ou carregar a
Base de Dados
Proc
e co
usu
man
lidos
Administrado
Analista
Projet
Introduo...
-
7/24/2019 a01 BD-I - Introduo a BD
14/42
Tecnologias e Linguagens para B
1 modulo Tc. em Informtica
Caractersticas de um SGBD
CONTROLE DE REDUNDNCIA: A redundncia, ou seja, a
dados deve ser evitada para se minimizar possibilidade de inc COMPARTILHAMENTO DE DADOS: Em um ambiente multiuspossibilitar a manipulao simultnea de dados distintos oudados conforme regras abaixo;
CONTROLE DE ACESSO: Verificao automtica do tipo de
por cada usurio. Os nveis de segurana so estabelecidusurio independentemente, de acordo com suas necidentificao de cada usurio, por parte do SGBD, feitasenha cadastrados.
Introduo...
-
7/24/2019 a01 BD-I - Introduo a BD
15/42
Tecnologias e Linguagens para B
1 modulo Tc. em Informtica
Caractersticas de um SGBD
CONTROLE DE TRANSAO: Transao o conjunto de o
devem ser executadas completamente. So normalmentsituaes crticas (atualizaes ou incluses) de longa duraafetar a consistncia do BD (Banco de Dados);
ACESSO EM MLTIPLAS INTERFACES: Possibilidade usar divemesmo se o SGBD estiver sendo utilizado;
RESTRIES DE INTEGRIDADE: Estabelecimento de um fordados inseridos de modo a garantir integridade earmazenamento
Introduo...
-
7/24/2019 a01 BD-I - Introduo a BD
16/42
Tecnologias e Linguagens para B
1 modulo Tc. em Informtica
Caractersticas de um SGBD
BACKUP E RECUPERAO: Estabelecer o backup automtic
ou parcial em momentos estabelecidos pelo DBA. Proporcicontra a perda de informaes devido a falhas no darmazenamento (discos)
INDEPENDNCIA DE DADOS: A descrio fsica dos arquivinternamente pelo SGBD e de sua inteira respo
exclusividade INDEXAO AUTOMTICA: Com a indicao explcita dossero mais utilizados em consultas, o SGBD cria os arquivosque tornaro mais rpidas as pesquisas.
Introduo...
-
7/24/2019 a01 BD-I - Introduo a BD
17/42
Caractersticas de um SGBD
Espelhamento Replicao
Clusterizao
Tecnologias e Linguagens para B
1 modulo Tc. em Informtica
Introduo...
-
7/24/2019 a01 BD-I - Introduo a BD
18/42
Tecnologias e Linguagens para B
1 modulo Tc. em Informtica
Modelo de Dados
Conjunto de conceitos usados para descrever a estrutura dedados
Abstrao de dados; Estrutura = tipos de dados + relacionamentos + restries
Introduo...
d
-
7/24/2019 a01 BD-I - Introduo a BD
19/42
Tecnologias e Linguagens para B
1 modulo Tc. em Informtica
Tipos de Modelo de Dados
Modelos conceituais Utilizados para se descrever a estrutura de um banco de d
forma mais prxima da percepo dos usurios (independaspectos de implementao);
Conceitos: entidades, atributos, relacionamentoso Exemplos: Modelo entidade-relacionamento (ER)
Modelo funcional Modelo orientado a objetos (OO)
Introduo...
I d
-
7/24/2019 a01 BD-I - Introduo a BD
20/42
Tecnologias e Linguagens para B
1 modulo Tc. em Informtica
Tipos de Modelo de Dados
Modelos representacionais (lgicos)
Utilizados para se descrever a estrutura de um banco de dforma como ser manipulado atravs de SGBD (mais depeestruturas fsicas de armazenamento de dados)o Exemplos: Modelo relacional
Modelo de rede (CODASYL) Modelo hierrquico
Introduo...
I t d
-
7/24/2019 a01 BD-I - Introduo a BD
21/42
Tecnologias e Linguagens para B
1 modulo Tc. em Informtica
Tipos de Modelo de Dados
Modelos fsicos
Utilizados para descrever como os dados so fisicamente
Introduo...
I t d
-
7/24/2019 a01 BD-I - Introduo a BD
22/42
Tecnologias e Linguagens para B
1 modulo Tc. em Informtica
Classificao dos SGBDs
Quanto ao modelo de dados adotado: Relacionais
De rede Hierrquicos Orientados a objetos Objeto-relacionais
Quanto ao nmero de usurios suportados: Mono-usurios
Multi-usurios Quanto localizao dos dados: Centralizados Distribudos
Introduo...
Introduo
-
7/24/2019 a01 BD-I - Introduo a BD
23/42
Tecnologias e Linguagens para B
1 modulo Tc. em Informtica
Usurios em um Ambiente de Banco de Dados
Podem ser divididos : entre aqueles que de fato usam e controlam o contedo (
Atores em cena); aqueles que fazem com que a Base de Dados possa ser de
o software SGBD possa ser projetado e implementado (chTrabalhadores por trs das cenas).
Introduo...
Introduo
-
7/24/2019 a01 BD-I - Introduo a BD
24/42
Tecnologias e Linguagens para B
1 modulo Tc. em Informtica
Usurios em um Ambiente de Banco de Dados
Atores em cena : Projetistas da aplicao: Administradores do Banco de Dados ; Projetista da Base de Dados; Usurio Final; Analistas de Sistemas e Programadores de Aplicaes.
Introduo...
Introduo
-
7/24/2019 a01 BD-I - Introduo a BD
25/42
Tecnologias e Linguagens para B
1 modulo Tc. em Informtica
Usurios em um Ambiente de Banco de Dados
Trabalhadores por trs da cena : Projetistas do Sistema de Gerenciamento de Banco de Da Projetistas e Implementadores do SGBDs; Desenvolvedores de Ferramentas para SGBDs; Pessoal de Suporte dos SGBDs.
Introduo...
Introduo
-
7/24/2019 a01 BD-I - Introduo a BD
26/42
Tecnologias e Linguagens para B
1 modulo Tc. em Informtica
Usurios em um Ambiente de Banco de Dados
Administrador do Banco de Dados DBA) : Autoriza o acesso Banco de Dados; Coordena e monitora o uso da Banco de Dados; Defini a aquisio de software e recursos de hardware; Controla o uso dos recursos; Monitora a eficincia das operaes.
Introduo...
Introduo
-
7/24/2019 a01 BD-I - Introduo a BD
27/42
Tecnologias e Linguagens para B
1 modulo Tc. em Informtica
Usurios em um Ambiente de Banco de Dados
Projetista do Banco de Dados : Define o contedo do Banco de Dados; Define a estrutura do Banco de Dados; Defini as restries do Banco de Dados; Define as transaes sobre o Banco de Dados; Interage com os usurios finais para fazer o levantamento
do Banco de Dados.
Introduo...
Introduo
-
7/24/2019 a01 BD-I - Introduo a BD
28/42
Tecnologias e Linguagens para B
1 modulo Tc. em Informtica
Usurios em um Ambiente de Banco de Dados
Usurio Final : Utiliza o Banco de Dados para consultas e elaborao de r
sendo que alguns chegam a modificar o contedo armazeBanco de Dados.
Classificam-se em: Casuais => acessam o Banco de Dados eventualmente
necessrio); Produtivos => utilizam funes pr-definidas como tra
produo sobre o Banco de Dados. Exemplo : contadooperadores de reservas, etc.
Introduo...
Introduo
-
7/24/2019 a01 BD-I - Introduo a BD
29/42
Tecnologias e Linguagens para B
1 modulo Tc. em Informtica
Usurios em um Ambiente de Banco de Dados
Sofisticados => Analistas de Negcios, Cientistas, Engeusurios familiares com as capacidades do sistema. Noutilizam ferramentas que operam ligadas ao Banco de
Independentes => mantm um Banco de Dados pessonormalmente utilizando aplicaes j prontas (tipo pac
Introduo...
Introduo
-
7/24/2019 a01 BD-I - Introduo a BD
30/42
Tecnologias e Linguagens para B
1 modulo Tc. em Informtica
Arquitetura dos SGBDs
Primeira arquitetura: Centralizada (uso de Mainframes) O processamento principal e de todas as funes
(aplicativos, interface e SGBD) eram executados nosmainf Os usurios interagiam com o sistema via terminais sem pprocessamento, conectados ao mainframepor redes de c
Com o barateamento do hardware, os terminais foram spor estaes de trabalho e naturalmente a tecnologiadados comeou a aproveitar esse potencial de processam
do usurio.
Introduo...
Introduo...
-
7/24/2019 a01 BD-I - Introduo a BD
31/42
Tecnologias e Linguagens para B
1 modulo Tc. em Informtica
Segunda arquitetura: Cliente-Servidor
Dividiu as tarefas de processamento criando servidores
como os servidores de arquivos; As mquinas clientes disponibilizavam as interfaces para oforma a capacit-lo ao uso de servidores. Tambm tinhapara executar aplicaes locais;
No caso especfico de banco de dados, nesta arquitetucentralizado implantado no servidor, assim as consu
SQL) e funcionalidades transacionais so executadas no se No lado do cliente possvel formular as consultas eprogramas aplicativos;
O servidor SQL conhecido como Back-End Machine e oFront-End Machine.
Arquitetura dos SGBDs
Introduo...
Introduo...
-
7/24/2019 a01 BD-I - Introduo a BD
32/42
Tecnologias e Linguagens para B
1 modulo Tc. em Informtica
Quando as funcionalidades disponibilizadas por eles forem re Quando houver necessidade de recursos para se manter a co
dos dados e oferecer apoio a aplicaes; Quando houver necessidade de padronizao; Quando houver necessidade de flexibilidade; Quando houver necessidade de reduo no tempo de desen
uma aplicao; Quando houver necessidade de disponibilizao de informa
atualizadas.
Quando usar um dos SGBDs ?
Introduo...
Introduo...
-
7/24/2019 a01 BD-I - Introduo a BD
33/42
Tecnologias e Linguagens para B
1 modulo Tc. em Informtica
Quando as funcionalidades disponibilizadas por eles no forenecessrias;
Quando a sobrecarga influir no desempenho; Quando o investimento inicial for alto (hardware extras); Quando o Banco de Dados e as aplicaes so simples, bem
sem perspectivas de mudanas; Quando houver requisitos de tempo real;
Devido complexidade de um SGBD, ele pode no atender uma aplicao de tem Quando no existe a necessidade de acessos concorrentes ao
armazenados.
Quando no usar um dos SGBDs ?
Introduo...
-
7/24/2019 a01 BD-I - Introduo a BD
34/42
Tecnologias e Linguagens para B
1 modulo Tc. em Informtica
dBASE: Lanado pela Ashton-Tate e posteriormente adquiridoBorland. Possua uma linguagem de programao prpria par
desenvolvimento de aplicaes, teve verses para DOS e Wintrabalhava com gerenciamento de arquivos planos baseados invertidas. A partir da verso 7, os direitos foram vendidos pe
Paradox: Possui ambiente integrado de desenvolvimento paraplicativos. Os direitos de produo foram vendido pela Borla
Corel. Teve verses para DOS e hoje possui apenas verses p DataFlex: Popular para ambiente Unix, mas teve verses para
Windows. Possui ambiente integrado para desenvolvimento e hoje comercializado com o nome de Visual Data Flex.
Sistemas Comerciais de SGBDs
Introduo...
-
7/24/2019 a01 BD-I - Introduo a BD
35/42
1 modulo Tc. em Informtica
FoxBase/FoxPro: Concorrente do dBase com total compatibitermos de arquivos e programas-fontes. Com recursos adicio
capacidade de pr-compilao dos cdigos-fontes para melhperformance. Hoje, aps a aquisio pela Microsoft da Fox So(produtora original), se chama: Visual FoxPro.
Access: padro em banco de dados para microcomputadorambiente Windows. Possui ambiente integrado que permite
gerenciamento do banco de dados, desenvolvimento de aplicgerao de relatrios. A linguagem de programao usada nederiva do Visual Basic.
Sistemas Comerciais de SGBDs
Introduo...
-
7/24/2019 a01 BD-I - Introduo a BD
36/42
1 modulo Tc. em Informtica
Oracle: O primeiro em Banco de Dados Corporativos (cliente/possuindo grande variedade de distribuies (para Macintos
Linux, FreeBSD, Unix) e para computadores de grande porte. com uma linguagem prpria para desenvolvimento de aplica
Interbase: Foi includo, pela Borland, nas suas ferramentas dedesenvolvimento (Delphi, C++Builder, JBuider). Teve uma vercomo Open Source.
MS-SQL Server: Produzido pela Microsoft, inicialmente era umespecial do Sybase. As verses atuais so independentes e oexclusivamente sobre Windows.
Sistemas Comerciais de SGBDs
Introduo...
-
7/24/2019 a01 BD-I - Introduo a BD
37/42
1 modulo Tc. em Informtica
Sybase SQL Anywhere: Concorre com o Oracle no mercado coAplicaes para este banco so desenvolvidas com o PowerB
MySQL: Possui verses para Windows, Solaris, Unix, FreeBSDgratuito. Muito poderoso, usado principalmente para desenvWEB como servidor de dados para comrcio eletrnico.
PostgreSQL: Gratuito e com boa aceitao. Originalmente co
rodar em Linux. Possui verses para Windows. Principalmentcomrcio eletrnico juntamente com linguagem PHP.
Informix: Boa escalabilidade e desempenho. Comercializado
Sistemas Comerciais de SGBDs
Introduo...
-
7/24/2019 a01 BD-I - Introduo a BD
38/42
1 modulo Tc. em Informtica
DB2: Produzido pela IBM, nasceu nos ambientes de grande pposteriormente portado para plataformas mais simples
(microcomputadores). Firebird: Nascido de uma iniciativa da Borland em abrir o cd
InterBase 6, este sistema open source e esbanja versatilidaPossui recursos de trigger, store procedures e transaes con
Sistemas Comerciais de SGBDs
Introduo...
-
7/24/2019 a01 BD-I - Introduo a BD
39/42
1 modulo Tc. em Informtica
Alm dos SGBDs, pode-se citar algumas linguagens/fedesenvolvimento, que manipulam os banco de dados desses ger
Clipper: Comumente utilizado junto ao dBase. O Bramundial em vendas e uso dessa ferramenta.
Joiner: Produto nacional concorrente do Clipper, produempresa paulista chamada Tuxon Software, com versUnix, e algum suporte para Windows.
Sist. Comerciais Ferramentas Desenvolvimento
Introduo...
-
7/24/2019 a01 BD-I - Introduo a BD
40/42
1 modulo Tc. em Informtica
Delphi/C++Builder/JBuilder: Ferramentas de desenvolvimeBorland que possuem suporte nativo aos bancos de dado
MySQL. Delphi e C++Builder tambm podem acessar arquformato dBase, Paradox e Access nativamente, enquanto de dados podem ser maipuladas atravs da tecnologia OD
Visual Basic/Visual C++: O programador pode criar aplicaacessam bancos de dados Access ou, por meio de ODBC, formatos.
Sist. Comerciais Ferramentas Desenvolvimento
Introduo...
-
7/24/2019 a01 BD-I - Introduo a BD
41/42
1 modulo Tc. em Informtica
So drivers que fornecem uma interface uniforme qinterao entre aplicativos e diferentes gerenciadores de ban
Aplicativos que utilizam o API do ODBC so capazes de se coqualquer gerenciador relacional para o qual exista um driver OD
ODBC Open Database Connectivity
Programa
aplicativo
Driver
Gerenciador
ODBC
Driver
ODBC 1
Driver
ODBC 2
Driver
ODBC N
SGBD 1
SGBD 2
SGBD N
Introduo...
-
7/24/2019 a01 BD-I - Introduo a BD
42/42
1 modulo Tc. em Informtica
Exemplo
Disciplinas
cdigo
professor
nomeAlunos
pronturio
nome
curso
turma
Cursos
cdigo
turma disciplina
nome
Professores
cdigo
nomeisciplinas
cdigo
professor
nome
Disciplinas
cdigo
professor
nome
Notas
pronturio curso
turma
disciplina
mdia
ESCOLA