![Page 1: Banco de Dados - Wendel Melowendelmelo/bd201901/1_introducao.pdf · 2019. 7. 19. · • Banco de Dados: coleção de itens de dados relacionados com as seguintes características:](https://reader035.vdocuments.com.br/reader035/viewer/2022062507/5fd9ee0701b6162a065147c1/html5/thumbnails/1.jpg)
Introdução a SGBD’s
Introdução a Sistemas Gerenciadores de Banco de Dados
Wendel Melo
Faculdade de Computação
Universidade Federal de Uberlândia
www.facom.ufu.br/~wendelmelo
Banco de Dados I
![Page 2: Banco de Dados - Wendel Melowendelmelo/bd201901/1_introducao.pdf · 2019. 7. 19. · • Banco de Dados: coleção de itens de dados relacionados com as seguintes características:](https://reader035.vdocuments.com.br/reader035/viewer/2022062507/5fd9ee0701b6162a065147c1/html5/thumbnails/2.jpg)
2Introdução a SGBD’s
Definição
• Banco de Dados: coleção de itens de dados relacionados com as seguintes características:
• Representa um ou mais aspectos do mundo real;
• A coleção de dados é logicamente coerente e possui um significado próprio;
• É construído e utilizado para uma finalidade específica.
![Page 3: Banco de Dados - Wendel Melowendelmelo/bd201901/1_introducao.pdf · 2019. 7. 19. · • Banco de Dados: coleção de itens de dados relacionados com as seguintes características:](https://reader035.vdocuments.com.br/reader035/viewer/2022062507/5fd9ee0701b6162a065147c1/html5/thumbnails/3.jpg)
3Introdução a SGBD’s
Definição
• Banco de Dados: coleção de itens de dados relacionados com as seguintes características:
• Representa um ou mais aspectos do mundo real;
• A coleção de dados é logicamente coerente e possui um significado próprio;
• É construído e utilizado para uma finalidade específica.
• No contexto computacional, bancos de dados exigem armazenamento persistente de dados.
![Page 4: Banco de Dados - Wendel Melowendelmelo/bd201901/1_introducao.pdf · 2019. 7. 19. · • Banco de Dados: coleção de itens de dados relacionados com as seguintes características:](https://reader035.vdocuments.com.br/reader035/viewer/2022062507/5fd9ee0701b6162a065147c1/html5/thumbnails/4.jpg)
4Introdução a SGBD’s
Armazenamento por Arquivos
• A primeira opção para o armazenamento persistente de dados é através do uso de arquivos.
• Vamos supor que desejamos fazer uma aplicação para armazenar uma agenda que cadastra nome, data de nascimento, e-mail e telefone de indivíduos. Como fazer um código em C?
![Page 5: Banco de Dados - Wendel Melowendelmelo/bd201901/1_introducao.pdf · 2019. 7. 19. · • Banco de Dados: coleção de itens de dados relacionados com as seguintes características:](https://reader035.vdocuments.com.br/reader035/viewer/2022062507/5fd9ee0701b6162a065147c1/html5/thumbnails/5.jpg)
5Introdução a SGBD’s
Armazenamento por Arquivos
• A primeira opção para o armazenamento persistente de dados é através do uso de arquivos.
• Vamos supor que desejamos fazer uma aplicação para armazenar uma agenda que cadastra nome, data de nascimento, e-mail e telefone de indivíduos. Como fazer um código em C?
• E se for preciso obter uma lista com os contatos cuja a idade esteja entre 18 e 40 anos?
![Page 6: Banco de Dados - Wendel Melowendelmelo/bd201901/1_introducao.pdf · 2019. 7. 19. · • Banco de Dados: coleção de itens de dados relacionados com as seguintes características:](https://reader035.vdocuments.com.br/reader035/viewer/2022062507/5fd9ee0701b6162a065147c1/html5/thumbnails/6.jpg)
6Introdução a SGBD’s
Armazenamento por Arquivos
• A primeira opção para o armazenamento persistente de dados é através do uso de arquivos.
• Vamos supor que desejamos fazer uma aplicação para armazenar uma agenda que cadastra nome, data de nascimento, e-mail e telefone de indivíduos. Como fazer um código em C?
• E se for preciso obter uma lista com os contatos cuja a idade esteja entre 18 e 40 anos?
• Será necessário criar uma nova aplicação (ou modificar a original) ou gerar a lista manualmente.
![Page 7: Banco de Dados - Wendel Melowendelmelo/bd201901/1_introducao.pdf · 2019. 7. 19. · • Banco de Dados: coleção de itens de dados relacionados com as seguintes características:](https://reader035.vdocuments.com.br/reader035/viewer/2022062507/5fd9ee0701b6162a065147c1/html5/thumbnails/7.jpg)
7Introdução a SGBD’s
Armazenamento por Arquivos
• Qualquer relatório que não tenha sido previsto pelas aplicações iniciais exigirá o desenvolvimento de uma nova aplicação;
![Page 8: Banco de Dados - Wendel Melowendelmelo/bd201901/1_introducao.pdf · 2019. 7. 19. · • Banco de Dados: coleção de itens de dados relacionados com as seguintes características:](https://reader035.vdocuments.com.br/reader035/viewer/2022062507/5fd9ee0701b6162a065147c1/html5/thumbnails/8.jpg)
8Introdução a SGBD’s
Armazenamento por Arquivos
• Qualquer relatório que não tenha sido previsto pelas aplicações iniciais exigirá o desenvolvimento de uma nova aplicação;
• E se agora for preciso também armazenar o endereço dos contatos?
![Page 9: Banco de Dados - Wendel Melowendelmelo/bd201901/1_introducao.pdf · 2019. 7. 19. · • Banco de Dados: coleção de itens de dados relacionados com as seguintes características:](https://reader035.vdocuments.com.br/reader035/viewer/2022062507/5fd9ee0701b6162a065147c1/html5/thumbnails/9.jpg)
9Introdução a SGBD’s
Armazenamento por Arquivos
• Qualquer relatório que não tenha sido previsto pelas aplicações iniciais exigirá o desenvolvimento de uma nova aplicação;
• E se agora for preciso também armazenar o endereço dos contatos?
• Será necessário adaptar todas as aplicações que fazem acesso ao arquivo de dados!
• Se alguma delas não for adaptada corretamente, todo o banco de dados pode ficar comprometido!
![Page 10: Banco de Dados - Wendel Melowendelmelo/bd201901/1_introducao.pdf · 2019. 7. 19. · • Banco de Dados: coleção de itens de dados relacionados com as seguintes características:](https://reader035.vdocuments.com.br/reader035/viewer/2022062507/5fd9ee0701b6162a065147c1/html5/thumbnails/10.jpg)
10Introdução a SGBD’s
Armazenamento por Arquivos
• E se cada telefone no país ganhar mais um dígito?
![Page 11: Banco de Dados - Wendel Melowendelmelo/bd201901/1_introducao.pdf · 2019. 7. 19. · • Banco de Dados: coleção de itens de dados relacionados com as seguintes características:](https://reader035.vdocuments.com.br/reader035/viewer/2022062507/5fd9ee0701b6162a065147c1/html5/thumbnails/11.jpg)
11Introdução a SGBD’s
Armazenamento por Arquivos
• E se cada telefone no país ganhar mais um dígito?
• E se diversos usuários tiverem que atualizar o cadastro simultaneamente (concorrência)?
![Page 12: Banco de Dados - Wendel Melowendelmelo/bd201901/1_introducao.pdf · 2019. 7. 19. · • Banco de Dados: coleção de itens de dados relacionados com as seguintes características:](https://reader035.vdocuments.com.br/reader035/viewer/2022062507/5fd9ee0701b6162a065147c1/html5/thumbnails/12.jpg)
12Introdução a SGBD’s
Armazenamento por Arquivos
• E se cada telefone no país ganhar mais um dígito?
• E se diversos usuários tiverem que atualizar o cadastro simultaneamente (concorrência)?
• E se cada contato puder ter um número arbitrário de telefones?
![Page 13: Banco de Dados - Wendel Melowendelmelo/bd201901/1_introducao.pdf · 2019. 7. 19. · • Banco de Dados: coleção de itens de dados relacionados com as seguintes características:](https://reader035.vdocuments.com.br/reader035/viewer/2022062507/5fd9ee0701b6162a065147c1/html5/thumbnails/13.jpg)
13Introdução a SGBD’s
Armazenamento por Arquivos
• E se cada telefone no país ganhar mais um dígito?
• E se diversos usuários tiverem que atualizar o cadastro simultaneamente (concorrência)?
• E se cada contato puder ter um número arbitrário de telefones?
• E se o número de contatos armazenados crescer substancialmente (milhões de registros), como não perder performance?
![Page 14: Banco de Dados - Wendel Melowendelmelo/bd201901/1_introducao.pdf · 2019. 7. 19. · • Banco de Dados: coleção de itens de dados relacionados com as seguintes características:](https://reader035.vdocuments.com.br/reader035/viewer/2022062507/5fd9ee0701b6162a065147c1/html5/thumbnails/14.jpg)
14Introdução a SGBD’s
Armazenamento por Arquivos
• E se cada telefone no país ganhar mais um dígito?
• E se diversos usuários tiverem que atualizar o cadastro simultaneamente (concorrência)?
• E se cada contato puder ter um número arbitrário de telefones?
• E se o número de contatos armazenados crescer substancialmente (milhões de registros), como não perder performance?
• Como manter a integridade de um banco de dados dividido entre diferentes arquivos?
![Page 15: Banco de Dados - Wendel Melowendelmelo/bd201901/1_introducao.pdf · 2019. 7. 19. · • Banco de Dados: coleção de itens de dados relacionados com as seguintes características:](https://reader035.vdocuments.com.br/reader035/viewer/2022062507/5fd9ee0701b6162a065147c1/html5/thumbnails/15.jpg)
15Introdução a SGBD’s
Definições
• Banco de Dados (BD): coleção de itens de dados relacionados;
![Page 16: Banco de Dados - Wendel Melowendelmelo/bd201901/1_introducao.pdf · 2019. 7. 19. · • Banco de Dados: coleção de itens de dados relacionados com as seguintes características:](https://reader035.vdocuments.com.br/reader035/viewer/2022062507/5fd9ee0701b6162a065147c1/html5/thumbnails/16.jpg)
16Introdução a SGBD’s
Definições
• Banco de Dados (BD): coleção de itens de dados relacionados;
• Sistema Gerenciador de Banco de Dados (SGBD): conjunto de programas que permite a criação, utilização e manutenção de um banco de dados;
![Page 17: Banco de Dados - Wendel Melowendelmelo/bd201901/1_introducao.pdf · 2019. 7. 19. · • Banco de Dados: coleção de itens de dados relacionados com as seguintes características:](https://reader035.vdocuments.com.br/reader035/viewer/2022062507/5fd9ee0701b6162a065147c1/html5/thumbnails/17.jpg)
17Introdução a SGBD’s
Definições
• Banco de Dados (BD): coleção de itens de dados relacionados;
• Sistema Gerenciador de Banco de Dados (SGBD): conjunto de programas que permite a criação, utilização e manutenção de um banco de dados;
• Sistema de Banco de dados (SBD): BD + SGBD;
![Page 18: Banco de Dados - Wendel Melowendelmelo/bd201901/1_introducao.pdf · 2019. 7. 19. · • Banco de Dados: coleção de itens de dados relacionados com as seguintes características:](https://reader035.vdocuments.com.br/reader035/viewer/2022062507/5fd9ee0701b6162a065147c1/html5/thumbnails/18.jpg)
18Introdução a SGBD’s
Definições
• Banco de Dados (BD): coleção de itens de dados relacionados;
• Sistema Gerenciador de Banco de Dados (SGBD): conjunto de programas que permite a criação, utilização e manutenção de um banco de dados;
• Sistema de Banco de dados (SBD): BD + SGBD;
• É comum o uso informal da expressão “banco de dados” para designar o SGBD ou SBD.
![Page 19: Banco de Dados - Wendel Melowendelmelo/bd201901/1_introducao.pdf · 2019. 7. 19. · • Banco de Dados: coleção de itens de dados relacionados com as seguintes características:](https://reader035.vdocuments.com.br/reader035/viewer/2022062507/5fd9ee0701b6162a065147c1/html5/thumbnails/19.jpg)
19Introdução a SGBD’s
SGBD
• Atua como uma camada entre as aplicações e os banco de dados de dados;
![Page 20: Banco de Dados - Wendel Melowendelmelo/bd201901/1_introducao.pdf · 2019. 7. 19. · • Banco de Dados: coleção de itens de dados relacionados com as seguintes características:](https://reader035.vdocuments.com.br/reader035/viewer/2022062507/5fd9ee0701b6162a065147c1/html5/thumbnails/20.jpg)
20Introdução a SGBD’s
SGBD
• Atua como uma camada entre as aplicações e os banco de dados de dados;
• O “sentinela” dos dados: qualquer modificação na estrutura, inserção, remoção, atualização ou consulta deve “passar” pelo SGBD;
![Page 21: Banco de Dados - Wendel Melowendelmelo/bd201901/1_introducao.pdf · 2019. 7. 19. · • Banco de Dados: coleção de itens de dados relacionados com as seguintes características:](https://reader035.vdocuments.com.br/reader035/viewer/2022062507/5fd9ee0701b6162a065147c1/html5/thumbnails/21.jpg)
21Introdução a SGBD’s
SGBD
• Atua como uma camada entre as aplicações e os banco de dados de dados;
• O “sentinela” dos dados: qualquer modificação na estrutura, inserção, remoção, atualização ou consulta deve “passar” pelo SGBD;
• O SGBD toma para si toda a complexidade envolvida em se lidar com os dados, deixando o usuário livre dessa preocupação.
![Page 22: Banco de Dados - Wendel Melowendelmelo/bd201901/1_introducao.pdf · 2019. 7. 19. · • Banco de Dados: coleção de itens de dados relacionados com as seguintes características:](https://reader035.vdocuments.com.br/reader035/viewer/2022062507/5fd9ee0701b6162a065147c1/html5/thumbnails/22.jpg)
22Introdução a SGBD’s
SGBD
• Podemos fazer uma analogia simples com uma empresa:
• Banco de Dados: almoxarifado;
• SGBD: almoxarife.
![Page 23: Banco de Dados - Wendel Melowendelmelo/bd201901/1_introducao.pdf · 2019. 7. 19. · • Banco de Dados: coleção de itens de dados relacionados com as seguintes características:](https://reader035.vdocuments.com.br/reader035/viewer/2022062507/5fd9ee0701b6162a065147c1/html5/thumbnails/23.jpg)
23Introdução a SGBD’s
SGBD
• Podemos fazer uma analogia simples com uma empresa:
• Banco de Dados: almoxarifado;
• SGBD: almoxarife.
• Quando algum funcionário precisa de algum item do almoxarifado, o mesmo solicita ao almoxarife em vez de pegá-lo diretamente;
![Page 24: Banco de Dados - Wendel Melowendelmelo/bd201901/1_introducao.pdf · 2019. 7. 19. · • Banco de Dados: coleção de itens de dados relacionados com as seguintes características:](https://reader035.vdocuments.com.br/reader035/viewer/2022062507/5fd9ee0701b6162a065147c1/html5/thumbnails/24.jpg)
24Introdução a SGBD’s
SGBD
• Podemos fazer uma analogia simples com uma empresa:
• Banco de Dados: almoxarifado;
• SGBD: almoxarife.
• Quando algum funcionário precisa de algum item do almoxarifado, o mesmo solicita ao almoxarife em vez de pegá-lo diretamente;
• Quando novos itens chegam, o almoxarife se responsabiliza por armazená-los de forma organizada;
![Page 25: Banco de Dados - Wendel Melowendelmelo/bd201901/1_introducao.pdf · 2019. 7. 19. · • Banco de Dados: coleção de itens de dados relacionados com as seguintes características:](https://reader035.vdocuments.com.br/reader035/viewer/2022062507/5fd9ee0701b6162a065147c1/html5/thumbnails/25.jpg)
25Introdução a SGBD’s
SGBD• Podemos fazer uma analogia simples com uma empresa:
• Banco de Dados: almoxarifado;
• SGBD: almoxarife.
• O almoxarife é o único que conhece em detalhes como os itens es-tão organizados internamente no almoxarifado; Demais funcioná-rios não detêm essa informação.
Quando algum funcionário precisa de algum item do almoxarifado, o mesmo solicita ao almoxarife em vez de pegá-lo diretamente;
• O almoxarife controla quais funcionários podem obter um deter-minado item segundo um esquema de autorizações.
![Page 26: Banco de Dados - Wendel Melowendelmelo/bd201901/1_introducao.pdf · 2019. 7. 19. · • Banco de Dados: coleção de itens de dados relacionados com as seguintes características:](https://reader035.vdocuments.com.br/reader035/viewer/2022062507/5fd9ee0701b6162a065147c1/html5/thumbnails/26.jpg)
26Introdução a SGBD’s
SGBD• Podemos fazer uma analogia simples com uma empresa:
• Banco de Dados: almoxarifado;
• SGBD: almoxarife.
• Quando novos itens chegam ao almoxarifado, o almoxarife se res-ponsabiliza por armazená-los de forma organizada;
• Se julgar vantajoso, o almoxarife pode, reorganizar todos os itens do almoxarifado sem que isso acarrete em qualquer diferença para os demais funcionários;
• O almoxarife controla quais funcionários podem obter um determi-nado item segundo um esquema de autorizações.
![Page 27: Banco de Dados - Wendel Melowendelmelo/bd201901/1_introducao.pdf · 2019. 7. 19. · • Banco de Dados: coleção de itens de dados relacionados com as seguintes características:](https://reader035.vdocuments.com.br/reader035/viewer/2022062507/5fd9ee0701b6162a065147c1/html5/thumbnails/27.jpg)
27Introdução a SGBD’s
Vantagens de uso de SGBD’s
Os SGBD’s são uma alternativa a manutenção de dados em arquivos. As vantagens de usar SGBD’s incluem:
• O SGBD possui um catálogo com metadados que descrevem a estrutura do banco de dados;
![Page 28: Banco de Dados - Wendel Melowendelmelo/bd201901/1_introducao.pdf · 2019. 7. 19. · • Banco de Dados: coleção de itens de dados relacionados com as seguintes características:](https://reader035.vdocuments.com.br/reader035/viewer/2022062507/5fd9ee0701b6162a065147c1/html5/thumbnails/28.jpg)
28Introdução a SGBD’s
Vantagens de uso de SGBD’s
Os SGBD’s são uma alternativa a manutenção de dados em arquivos. As vantagens de usar SGBD’s incluem:
• O SGBD possui um catálogo com metadados que descrevem a estrutura do banco de dados;
• Permite o isolamento entre dados e programas:
– Em geral, mudanças na estrutura dos dados não requerem modificações nos programas que os acessam;
![Page 29: Banco de Dados - Wendel Melowendelmelo/bd201901/1_introducao.pdf · 2019. 7. 19. · • Banco de Dados: coleção de itens de dados relacionados com as seguintes características:](https://reader035.vdocuments.com.br/reader035/viewer/2022062507/5fd9ee0701b6162a065147c1/html5/thumbnails/29.jpg)
29Introdução a SGBD’s
Vantagens de uso de SGBD’s
Os SGBD’s são uma alternativa a manutenção de dados em arquivos. As vantagens de usar SGBD’s incluem:
• O SGBD possui um catálogo com metadados que descrevem a estrutura do banco de dados;
• Permite o isolamento entre dados e programas:
– Em geral, mudanças na estrutura dos dados não requerem modificações nos programas que os acessam;
• Suporte para múltiplas visões de dados
– Pode-se dar acesso apenas ao que cada usuário precisa ver. Um funcionário de RH não precisa de informações de clientes, por exemplo.
![Page 30: Banco de Dados - Wendel Melowendelmelo/bd201901/1_introducao.pdf · 2019. 7. 19. · • Banco de Dados: coleção de itens de dados relacionados com as seguintes características:](https://reader035.vdocuments.com.br/reader035/viewer/2022062507/5fd9ee0701b6162a065147c1/html5/thumbnails/30.jpg)
30Introdução a SGBD’s
Vantagens de uso de SGBD’s
• Compartilhamento de dados e operações entre múltiplos usuários (controle de concorrência);
![Page 31: Banco de Dados - Wendel Melowendelmelo/bd201901/1_introducao.pdf · 2019. 7. 19. · • Banco de Dados: coleção de itens de dados relacionados com as seguintes características:](https://reader035.vdocuments.com.br/reader035/viewer/2022062507/5fd9ee0701b6162a065147c1/html5/thumbnails/31.jpg)
31Introdução a SGBD’s
Vantagens de uso de SGBD’s
• Compartilhamento de dados e operações entre múltiplos usuários (controle de concorrência);
• Controle de redundância dos dados;
![Page 32: Banco de Dados - Wendel Melowendelmelo/bd201901/1_introducao.pdf · 2019. 7. 19. · • Banco de Dados: coleção de itens de dados relacionados com as seguintes características:](https://reader035.vdocuments.com.br/reader035/viewer/2022062507/5fd9ee0701b6162a065147c1/html5/thumbnails/32.jpg)
32Introdução a SGBD’s
Vantagens de uso de SGBD’s
• Compartilhamento de dados e operações entre múltiplos usuários (controle de concorrência);
• Controle de redundância dos dados;
• Acesso eficiente aos dados;
![Page 33: Banco de Dados - Wendel Melowendelmelo/bd201901/1_introducao.pdf · 2019. 7. 19. · • Banco de Dados: coleção de itens de dados relacionados com as seguintes características:](https://reader035.vdocuments.com.br/reader035/viewer/2022062507/5fd9ee0701b6162a065147c1/html5/thumbnails/33.jpg)
33Introdução a SGBD’s
Vantagens de uso de SGBD’s
• Compartilhamento de dados e operações entre múltiplos usuários (controle de concorrência);
• Controle de redundância dos dados;
• Acesso eficiente aos dados;
• Ferramentas para backup e recuperação;
![Page 34: Banco de Dados - Wendel Melowendelmelo/bd201901/1_introducao.pdf · 2019. 7. 19. · • Banco de Dados: coleção de itens de dados relacionados com as seguintes características:](https://reader035.vdocuments.com.br/reader035/viewer/2022062507/5fd9ee0701b6162a065147c1/html5/thumbnails/34.jpg)
34Introdução a SGBD’s
Vantagens de uso de SGBD’s
• Compartilhamento de dados e operações entre múltiplos usuários (controle de concorrência);
• Controle de redundância dos dados;
• Acesso eficiente aos dados;
• Ferramentas para backup e recuperação;
• Facilidade para lidar com relacionamentos complexos entre dados;
![Page 35: Banco de Dados - Wendel Melowendelmelo/bd201901/1_introducao.pdf · 2019. 7. 19. · • Banco de Dados: coleção de itens de dados relacionados com as seguintes características:](https://reader035.vdocuments.com.br/reader035/viewer/2022062507/5fd9ee0701b6162a065147c1/html5/thumbnails/35.jpg)
35Introdução a SGBD’s
Vantagens de uso de SGBD’s
• Compartilhamento de dados e operações entre múltiplos usuários (controle de concorrência);
• Controle de redundância dos dados;
• Acesso eficiente aos dados;
• Ferramentas para backup e recuperação;
• Facilidade para lidar com relacionamentos complexos entre dados;
• Mecanismos para ajudar a manter integridade dos dados.
![Page 36: Banco de Dados - Wendel Melowendelmelo/bd201901/1_introducao.pdf · 2019. 7. 19. · • Banco de Dados: coleção de itens de dados relacionados com as seguintes características:](https://reader035.vdocuments.com.br/reader035/viewer/2022062507/5fd9ee0701b6162a065147c1/html5/thumbnails/36.jpg)
36Introdução a SGBD’s
Exemplos de SGBD’s
• Relacionais:
– Oracle;
– MS SQL Server;
– MySQL
– PostgreSQL
– Firebird
– ...
• Não Relacionais:
– BigTable
– MongoDB
– ArangoDB
– DynamoDB
– Cassandra
– ...