Você está na página 1de 46

BANCO DE DADOS

PROF. REUTMAN SANTOS OLIVEIRA


- Categorizar os componentes de Sistemas de Banco da Dados, com base na
arquitetura de SGBDs e abordagem relacional, para compor o alicerce o
desenvolvimento de banco de dados;

- Modelar banco de dados, utilizando a abordagem relacional e diagramas de


entidade relacionamento, para organizar a forma de pensamento sobre os
dados, segundo o conhecimento obtido nas especificações do negócio e,
assim, dar suporte à construção de sistemas eficientes e escaláveis;

- Criar as estruturas de dados, baseando-se nas técnicas de normalização,


OBJETIVOS
para o armazenamento eficiente de dados;

- Implementar banco de dados Relacionais, utilizando a linguagem SQL, de


forma a refletir o projeto criado durante a modelagem e normalização dos
dados, bem como manipular dados eficientemente.

- Aplicar técnicas de indexação e transação, com base na linguagem SQL,


para aprimorar o desempenho e integridade de transações;
TEMAS DE
APRENDIZAG
EM
 “data is the new oil”
1. INTRODUÇÃO AOS CONCEITOS DE BANCO
DE DADOS
1.1 INTRODUÇÃO AOS SISTEMAS GERENCIADORES DE BANCO DE DADOS
1.2 COMPONENTES E ARQUITETURA DE SISTEMAS GERENCIADORES DE BANCO DE
DADOS
1.3 ABORDAGEM RELACIONAL
UM BREVE HISTÓRICO

1950/1960 – Os dados eram armazenados em fitas magnéticas e Decks de


cartão perfurado
UM BREVE HISTÓRICO

1960/1970 – Surgimento dos discos rígidos – Para melhorar a questão de


armazenamento de dados foram criados os Bancos de dados relacionais

Dr. Edgar Frank Codd, o pai do modelo relacional


UM BREVE HISTÓRICO

1980 – Teve início os bancos de dados comerciais


UM BREVE HISTÓRICO

1990 – Apareceu a linguagem SQL e no final da década, a adaptação dos


bancos de dados à WEB
1. INTRODUÇÃO AOS CONCEITOS DE BANCO
DE DADOS

• Dado x Informação
• Dado: O dado não possui significado relevante, e não conduz a nenhuma
compreensão.
• Informação: É a ordenação e organização dos dados de forma a transmitir
significado e compreensão dentro de um determinado contexto.
1. INTRODUÇÃO AOS CONCEITOS DE BANCO
DE DADOS

Sistemas Gerenciadores
Informação: É o
Base de dados: Coleção de Banco de Dados:
resultado do tratamento
Dados: Fatos que podem de dados relacionados Conjunto de programas
dos dados existentes
ser armazenados. logicamente. Ex: Agenda responsáveis pelo
acerca de alguém ou de
de telefones. gerenciamento de uma
alguma coisa.
base de dados.
1.1 INTRODUÇÃO AOS SISTEMAS
GERENCIADORES DE BANCO DE DADOS (SGBDs)

• Banco de dados X SGBD

Banco de dados é uma coleção de dados inter-relacionados, representando informações


sobre um domínio específico.

SGBD(Sistema de Gerenciamento de Banco de dados) é um software com recursos


específicos para facilitar a manipulação das informações dos dados e o desenvolvimento de
programas aplicativos.
Um sistema de gerência de banco de dados (SGBD) é uma coleção de programas que permite
que usuários criem e mantenham bancos de dados.
1.1 INTRODUÇÃO AOS SISTEMAS
GERENCIADORES DE BANCO DE DADOS (SGBDs)

•Características Gerais de um SGBD

1. Controle de Redundâncias
2.Compartilhamento dos Dados
3.Controle de Acesso
4.Interfaceamento
5.Esquematização
6.Controle de Integridade
7.Backups
1.1 INTRODUÇÃO AOS SISTEMAS
GERENCIADORES DE BANCO DE DADOS (SGBDs)

Controle de Redundâncias
A redundância consiste no armazenamento de uma mesma
informação em locais diferentes, provocando inconsistências. Em
um Banco de dados as informações só se encontram armazenadas
em um único local, não existindo duplicação descontrolada dos
dados.
1.1 INTRODUÇÃO AOS SISTEMAS
GERENCIADORES DE BANCO DE DADOS (SGBDs)

Compartilhamento dos Dados


O SGBD deve incluir software de controle de concorrência ao acesso
dos dados, garantindo em qualquer tipo de situação a escrita/leitura
de dados sem erros.
1.1 INTRODUÇÃO AOS SISTEMAS
GERENCIADORES DE BANCO DE DADOS (SGBDs)

Interfaceamento
Um SGBD deverá disponibilizar formas de acesso gráfico, em
linguagem natural, em SQL ou ainda via menus de acesso, não sendo
uma “caixa-preta” somente sendo passível de ser acessada por
aplicações.
1.1 INTRODUÇÃO AOS SISTEMAS
GERENCIADORES DE BANCO DE DADOS (SGBDs)

Esquematização
Um SGBD deverá fornecer mecanismos que possibilitem a
compreensão do relacionamento existente entre as tabelas e de sua
eventual manutenção.
1.1 INTRODUÇÃO AOS SISTEMAS
GERENCIADORES DE BANCO DE DADOS (SGBDs)

Controle de Integridade
Um Banco de dados deverá impedir que aplicações ou acessos pelas
interfaces pudessem comprometer a integridade dos dados.
1.1 INTRODUÇÃO AOS SISTEMAS
GERENCIADORES DE BANCO DE DADOS (SGBDs)

Backups
O SGBD deverá apresentar facilidade para recuperar falhas de
hardware e software, através da existência de arquivos de “pré-
imagem” ou de outros recursos automáticos, exigindo minimamente
a intervenção de pessoal técnico.
1.1 INTRODUÇÃO AOS SISTEMAS
GERENCIADORES DE BANCO DE DADOS (SGBDs)

Principais SGBDs do mercado


1.1 INTRODUÇÃO AOS SISTEMAS
GERENCIADORES DE BANCO DE DADOS (SGBDs)

O Microsoft SQL Server é um sistema gerenciador de Banco


de dados relacional desenvolvido pela Sybase em parceria
com a Microsoft. Esta parceria durou até 1994, com o
lançamento da versão para Windows NT e desde então a
Microsoft mantém a manutenção do produto.

O Oracle é um SGBD que surgiu no fim dos anos 70, quando


Larry Ellison vislumbrou uma oportunidade que outras
companhias não haviam percebido, quando encontrou uma
descrição de um protótipo funcional de um banco de dados
relacional e descobriu que nenhuma empresa tinha se
empenhado em comercializar essa tecnologia.
1.1 INTRODUÇÃO AOS SISTEMAS
GERENCIADORES DE BANCO DE DADOS (SGBDs)

O DB2 é um Sistema Gerenciador de Banco de Dados


Relacionais produzido pela IBM. Existem diferentes versões
do DB2 que rodam desde num simples PDA|computador de
mão, até em potentes mainframes e funcionam em
servidores baseados em sistemas Unix, Windows, ou Linux.

PostgreSQL é um sistema gerenciador de banco de dados


objeto relacional, desenvolvido como projeto de código
aberto, sendo um dos SGBDs (Sistema Gerenciador de
Bancos de Dados) de código aberto mais avançados.
1.1 INTRODUÇÃO AOS SISTEMAS
GERENCIADORES DE BANCO DE DADOS (SGBDs)

O MySQL é um sistema de gerenciamento de banco de


dados, que utiliza a linguagem SQL como interface. É
atualmente um dos sistemas de gerenciamento de bancos
de dados mais populares da Oracle Corporation, com mais
de 10 milhões de instalações pelo mundo.
1.2 COMPONENTES E ARQUITETURA DE
SISTEMAS GERENCIADORES DE BANCO DE
DADOS
• Arquiteturas

• Plataformas centralizadas
• Sistemas de Computador Pessoal – PC
• Banco de Dados Cliente-Servidor
• Banco de Dados Distribuídos (N
camadas)
1.2 COMPONENTES E ARQUITETURA DE SISTEMAS
GERENCIADORES DE BANCO DE DADOS

• Plataformas centralizadas
Na arquitetura centralizada, existe um computador com
grande capacidade de processamento, o qual é o hospedeiro
do SGBD e emuladores para os vários aplicativos.
1.2 COMPONENTES E ARQUITETURA DE SISTEMAS
GERENCIADORES DE BANCO DE DADOS

• Sistemas de Computador Pessoal – PC


• Os computadores pessoais trabalham em sistema stand-
alone, ou seja, fazem seus processamentos sozinhos.
1.2 COMPONENTES E ARQUITETURA DE SISTEMAS
GERENCIADORES DE BANCO DE DADOS

• Banco de Dados Cliente-Servidor


• O cliente (front_end) executa as tarefas do aplicativo, ou
seja, fornece a interface do usuário (tela, e processamento
de entrada e saída). O servidor (back_end) executa as
consultas no SGBD e retorna os resultados ao cliente
1.2 COMPONENTES E ARQUITETURA DE SISTEMAS
GERENCIADORES DE BANCO DE DADOS

• Banco de Dados Cliente-Servidor (duas camadas)


1.2 COMPONENTES E ARQUITETURA DE SISTEMAS
GERENCIADORES DE BANCO DE DADOS

• Banco de Dados Cliente-Servidor (três camadas)


1.2 COMPONENTES E ARQUITETURA DE SISTEMAS
GERENCIADORES DE BANCO DE DADOS

• Banco de Dados Cliente-Servidor (quatro camadas)


1.2 COMPONENTES E ARQUITETURA DE SISTEMAS
GERENCIADORES DE BANCO DE DADOS

• Banco de Dados Distribuídos (N camadas)


Nesta arquitetura, a informação está distribuída em diversos
servidores.
1.2 COMPONENTES E ARQUITETURA DE SISTEMAS
GERENCIADORES DE BANCO DE DADOS

• Abstração de dados
Um SGBD é composto de uma coleção de arquivos inter-
relacionados e de um conjunto de programas que permitem
aos usuários fazer o acesso a estes arquivos e modificar os
mesmos.
1.2 COMPONENTES E ARQUITETURA DE SISTEMAS
GERENCIADORES DE BANCO DE DADOS

• Abstração de dados – Arquitetura de três níveis


1.2 COMPONENTES E ARQUITETURA DE SISTEMAS
GERENCIADORES DE BANCO DE DADOS

• Nível físico ou interno


O nível mais baixo de abstração descreve como os dados estão
realmente armazenados. No nível físico, complexas estruturas
de dados de baixo nível são descritas em detalhes.
1.2 COMPONENTES E ARQUITETURA DE SISTEMAS
GERENCIADORES DE BANCO DE DADOS

• Nível conceitual
Descreve quais dados estão armazenados de fato no banco de
dados e as relações que existem entre eles. Aqui o banco de
dados inteiro é descrito em termos de um pequeno número de
estruturas relativamente simples.
1.2 COMPONENTES E ARQUITETURA DE SISTEMAS
GERENCIADORES DE BANCO DE DADOS

• Nível de visões ou nível externo


O mais alto nível de abstração descreve apenas parte do
banco de dados. Apesar do uso de estruturas mais simples do
que no nível conceitual, alguma complexidade perdura devido
ao grande tamanho do banco de dados.
1.2 COMPONENTES E ARQUITETURA DE SISTEMAS
GERENCIADORES DE BANCO DE DADOS

• Independência física de dados: é a habilidade de modificar o


esquema físico sem a necessidade de reescrever os programas
aplicativos. As modificações no nível físico são ocasionalmente
necessárias para melhorar o desempenho;
• Independência lógica de dados: é a habilidade de modificar o
esquema conceitual sem a necessidade de reescrever os programas
aplicativos. As modificações no nível conceitual são necessárias quando a
estrutura lógica do banco de dados é alterada (por exemplo, a adição de
contas de bolsas de mercado num sistema bancário).
1.2 COMPONENTES E ARQUITETURA DE SISTEMAS
GERENCIADORES DE BANCO DE DADOS

• Independência de dados
Vimos três níveis de abstração pelos quais o banco de dados
pode ser visto. A habilidade de modificar a definição de um
esquema em um nível sem afetar a definição de esquema num
nível mais alto é chamada de independência de dados
1.3 ABORDAGEM RELACIONAL

• Proposto por Codd em 1970, o


modelo de dados relacional
representa os dados da base de
dados como uma coleção de
relações. Informalmente, cada
relação pode ser entendida como
uma tabela ou um simples arquivo
de registros.
1.3 ABORDAGEM RELACIONAL

Quando uma relação é vista como


uma tabela de valores, cada linha
representa uma coleção de valores
relacionados.
1.3 ABORDAGEM RELACIONAL

A primeira tabela é chamada ESTUDANTE porque cada linha representa o


fato sobre uma particular entidade estudante. Os nomes das colunas - Nome,
Número, Classe, Departamento - especificam como interpretar os valores
em cada linha, baseando-se nas colunas em que cada um se encontra. Todos
os valores de uma mesma coluna são, normalmente, do mesmo tipo.
1.3 ABORDAGEM RELACIONAL

Na terminologia de base de dados relacional, a linha é chamada de tupla,


a coluna é chamada de atributo e a tabela de relação. O tipo de dado que
especifica o tipo dos valores que podem aparecer em uma coluna é
chamado de domínio
Obrigado!

Você também pode gostar