Você está na página 1de 51

Banco de Dados I

Introdução a Banco de dados e


Características de um SGBD
Jorge Cavalcanti Fonsêca (jorge.fonseca@upe.br)
Objetivos e Resultados Esperados
 Objetivos
 Apresentar o conceito de Banco de Dados, SGBD e suas
principais características.

 Resultados Esperados
 Aprendizado sobre as características e o entendimento
sobre a real necessidade de usar um SGBD.
 Vocês serão capazes de prosseguir com estudos e
exercícios
Agenda
 Sistemas de Informação

 Arquivos

 Banco de Dados

 Características de um SGBD
 Básicas
 Avançadas

 Exercício simples
Sistemas de Informação
 O que é um SI?
 Coleção de atividades que regulam o compartilhamento e
a distribuição de informações e o armazenamento de
dados relevantes ao gerenciamento de uma organização

 Instrumento chave de uma organização


Sistemas de Informação
 Sistemas de informações são essenciais para:
 Criação de empresas competitivas
 Gerenciamento de corporações globais
 Prover
 Produtos
 Serviços
 Útil para clientes e para a própria organização
Sistemas de Informação
 Cresce a importância de SI...
Sistemas de Informação
 Sistemas de Processamento de Transações (SPT)
 Dão suporte a operações do dia a dia, mantendo registros detalhados

 Sistemas de Informação Gerenciais (SG)


 Facilitam o gerenciamento, produzindo relatórios

 Sistemas de Suporte à Decisão (SSD)


 Ajudam à tomada de decisão em situações menos estruturadas

 Sistemas Especialistas (SE)


 Proveem orientação e assistência em determinada área do conhecimento

 Sistemas de Suporte a Executivos (SSE)


 Dão suporte às necessidades de informação dos principais executivos,
sumarizando e apresentando dados em níveis mais altos de agregação
Sistemas de Informação
 Sistemas de Suporte à Colaboração (SSC)
 SI de suporte à colaboração têm como principal objetivo
facilitar a eficácia de grupos de trabalhos

 Bibliotecas Digitais (BDIG)


 Armazenamento do acervo na forma digital
 Usuário consulta cópia de uma versão mestre
Dados x Informação x Conhecimento
 Dados
 Fatos registrados, e que têm um significado
implícito, sobre fenômenos do mundo real

 Gravação em código adequado de uma


observação, de um objeto, de um fenômeno

 Utilizados para transmitir, armazenar e deduzir


informações

Ex. 18° C
Dados x Informação x Conhecimento
 Informação
 O que pode ser inferido dos dados

 Significado associado ou deduzido de um conjunto


de dados e de associações entre eles

 Dado com um significado visível, ou seja, que


tenha uma estrutura ou que possa ser
expresso através de uma linguagem

Ex. 18°C em Caruaru


Dados x Informação x Conhecimento
 Conhecimento
 Informação adicional extraída dos dados ou do
especialista do domínio da aplicação.
 Informação que é integrada e entendida por alguém

Ex. A temperatura é de 18 °C em Caruaru, e


estamos no mês de agosto, então é bastante
provável que chova. Logo, vou levar meu guarda-
chuva.

 Papéis do conhecimento
 Transformar dados em informações
 Derivar novas informações de informações existentes
 Adquirir novos conhecimentos
Arquivos
Debitar e Creditar
numa conta Criar Conta

App 1 App 2 App 3

App 4 App 5 App n


Arquivos

 O que são esses arquivos?


 O que eles representam?
 Quais os tipos dos dados?
 Como eles se relacionam?
Banco de Dados
 O que é um Banco de dados?

 Uma coleção de dados


 Inter-relacionados (ou não), estruturados, que são confiáveis,
coerentes e compartilhados por usuários que têm necessidades
de informações diferentes.
Definição de SGBD
 Motivação
 Problemas com Arquivos  SGBD

 Mas o que é Sistemas de Gerenciamento de Banco


de dados?
“Um sistema de gerenciamento de banco de
dados é uma coleção de dados inter-
relacionados e um conjunto de programas e
regras para acessar esses dados.”
(Silberschatz, Korth, Sudarshan)

Consegue gerenciar MUITOS dados


SGBD
App 1

App 1

SGBD

Os arquivos agora são usados pelo SGBD, e não


pelas aplicações
SGBD – Característica Visual
SGBD – Característica Visual
SGBD – Característica Visual
SGBD – Característica Visual
SGBD – Característica Visual
SGBD – Característica Visual
SGBD – Característica Visual
Características de um SGBD
1. Natureza Autodescritiva
2. Evita redundância de dados
3. Evita inconsistência de dados
4. Facilidade de acesso a dados Evolução
5. Isolamento de dados
6. Múltiplas visões
7. Integridade
8. Acesso concorrente
9. Transações
 Atomicidade
 Consistência
 Isolamento
 Durabilidade
10. Segurança
11. Linguagens para Manipulação e definição dos Dados
12. Consultas eficientes
13. Backup e Restauração
Natureza autodescritiva
 Descrição completa
 Estrutura (dados e seus relacionamento)
 Tipo e formato dos dados
 Restrições

 Catálogo: Metadados
Evita redundância/inconsistência de dados
App 1 App n

Antes

App 1 App n

Depois

Menos espaço em disco


Facilidade de acesso a dados
 Arquivos
 “Bando de dados”
 Nem sempre área de
TI pode da suporte

 SGBD
 Fácil extração e
consulta dos dados
Isolamento de dados
 SGBD
 Dados ficam em estruturas bem definidas
 Separados dos programas

 Abstração de dados
 Os programas apenas visualizam uma representação conceitual dos
dados

 Independência programa-dados
 Alteração na estrutura dos dados não impacta os programas
 Armazenamento

Banco ou
App 1 De
Dados
Múltiplas Visões
 Perfis distintos  visões distintas
 Visualizar a mesma informação de maneira diferente

 Visão
 “Subconjunto de dados”
 Exemplo
 Seleção/Filtro
 Pode ser persistida
 Manipuladas pelo Dev ou DBA
Múltiplas Visões (exemplo)
Integridade dos Dados
Integridade dos Dados
 SGBD: forte controle dos dados
 Integridade de entidade
 Valor que identifique unicamente um registro

 Integridade de domínio
 Inserção apenas de dados que podem ser inseridos

 Integridade referencial
 Se dados podem ser relacionados, a consistência desses
relacionamentos precisam existir
 Não deixa existir referência inválida
 Não permitir apagar um dado se existe referência a ele
Características de um SGBD
1. Natureza Autodescritiva
2. Evita redundância de dados
3. Evita inconsistência de dados
4. Facilidade de acesso a dados
5. Isolamento de dados
6. Múltiplas visões
7. Integridade
8. Acesso concorrente
9. Transações
 Atomicidade
 Consistência
 Isolamento
 Durabilidade
10. Segurança
11. Linguagens para Manipulação e definição dos Dados
12. Consultas eficientes
13. Backup e Restauração
Acesso Concorrente
 Indispensável para os negócios...
Acesso Concorrente
 Indispensável para os negócios...

Conta A – Saldo R$ 500


- Debito R$ 50
- Debito R$ 100
Qual o saldo no final?

É necessário suporte – SGBD  Transações


Controle de Transações
 O que é uma Transação?
 Processo que inclui um ou mais acessos ao banco de dados
 Uma sequencia de leituras (reads) e escritas (writes)
 Visão abstrata que o SGBD tem de um programa usuário

 Para um SGBD ser considerado confiável, ele deve


manter 4 propriedades das transações
 Atomicidade
 Consistência
 Isolamento
 Durabilidade
Controle de Transações (Modelo ACID)
 Modelo ACID
 Atomicidade
 Toda transação deve ser atômica.
 Ex. Transferência bancária
 Consistência
 Toda transação realizada no banco de dados levará a um
estado também consistente.
 Isolamento
 Cada transação deve ser isolada dos efeitos da execução
concorrente de outras transações
 Durabilidade
 Toda transação que for finalizada de forma bem-sucedida deve
persistir seus resultados em banco/disco mesmo na presença
de falhas no sistema.
Controle de Transações
 Escalonamento
 O SGBD pode escalonar as operações de escrita e
leitura em uma ordem diferente do input.
 Inclusive paralelizar
 Porém... O SGBD deve garantir computação equivalente
(mesmo resultado)
Transação: Vamos pensar juntos...
 Para checar se entendemos o conceito...

 Sistemas de vendas online


 Compra de Passagem pelo site da companhia aérea

 Onde deve existir transação com mais de 2 operações?


 Onde sabemos que existe problema nesses sites?
Segurança
 Segurança é uma preocupação de todas as áreas...
 Criticidade dos dados

 Alguns objetivos da segurança


 Integridade  A informação deve ser protegida contra modificação imprópria.

 Disponibilidade  Dados disponíveis a um usuário/programa ao qual eles tem


um direito legítimo.

 Confidenciabilidade  Proteção dos dados contra exposição não autorizada.


 Perda de confiança pública, constrangimento ou ação legal contra a organização.
Segurança
 Controle de acesso
 Regras de restrição através de contas de usuários.
 O administrador do BD concede ou remove privilégios , cria ou
exclui usuários, e atribui os níveis de segurança no sistema de
banco de dados de acordo com as políticas da empresa.

 Controle de Fluxo
 Previne que as informações fluam por canais “secretos” e violem
a política de segurança ao alcançar usuários não autorizados.

 Criptografia dos dados


 Evita que usuários não autorizados tenha o dado real.
Linguagens para definição e
manipulação dos dados
 DDL
 Linguagem de Definição de Dados
 DML
 Linguagem de Manipulação de Dados

Linguagem de Consulta Estruturada


(Structured Query Language)
Estruturas para o processamento
eficiente de consultas
 Deve fornecer mecanismos para consultas e
atualizações eficientes
 Precisamos saber usar
 Exemplo do SQL Server Advisor

 Otimizador de Consultas
Garantia de Backup e Restauração

Dados 100% seguros (mesmo que Software e Hardware falhem)

Tão importante quanto a utilização da funcionalidade de um


sistema, é a definição de uma política de backup dos
dados(horários, períodos, mídia etc.).

Exemplo Empresa de Telecomunicações


Características de um SGBD
1. Natureza Autodescritiva
2. Evita redundância de dados
3. Evita inconsistência de dados
4. Facilidade de acesso a dados
5. Isolamento de dados
6. Múltiplas visões
7. Integridade
8. Acesso concorrente
9. Transações
 Atomicidade
 Consistência
 Isolamento
 Durabilidade
10. Segurança
11. Linguagens para Manipulação e definição dos Dados
12. Consultas eficientes
13. Backup e Restauração
...
...

Professor...
Vamos ter
implementar um
SGBD toda vez que
precisar criar um novo
aplicativo?
Dados hoje é “tudo”
 Acessar bancos de dados é uma parte essencial da vida de quase
todo mundo hoje.

 Antigamente – poucas pessoas acessavam dados de sistema


 Poucos sistemas para os usuários

 Porém hoje...
 Revolução Digital
 Autoatendimento
 URA
 Internet
 Todo mundo
 Smartphone
 Todo mundo e de todo lugar.

 Oracle, Microsoft e IBM grandes empresas


Exercício
 Identificar características de SGBD nos aplicativos
que usamos hoje.

 Pesquise sobre os principais SGBDs


 Porque seus fabricantes falam que eles são bons?
Mais Perguntas...
Bibliografia
 Básica
 Silberschatz, A; Korth, H; SudarShan, S. Sistemas de
Banco de Dados. 5ª edição. Editora Campus. 2006.
 ELMASRI & NAVATHE. Sistemas de Banco de Dados. 6ª
ed. Addison-Wesley, 2011.

 Complementar
 Date, C. J. Introdução aos Sistemas de Banco de Dados.
8ª edição. Editora Campus, 2004.
 Heuser, C. Projeto de Banco de Dados. 5ª edição. Editora
Sagra Luzzato, 2004.
 Guimarães, C. Fundamentos de bancos de dados:
modelagem, projeto e linguagem SQL. 1ª Edição. Editora
Unicamp, 2003

Você também pode gostar