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