Você está na página 1de 8

INSTITUTO FEDERAL DE CAMPUS

EDUCAÇÃO, CIÊNCIA E
TECNOLOGIA DE SÃO PAULO São Paulo

Banco de Dados Aula 01


Professor: Francisco Veríssimo Luciano
E-mail: fvluciano@hotmail.com

1 - Aula 01 - Introdução a Bancos de Dados


“Uma coleção de dados relacionados” [ELMASRI/NAVATHE]
“Conjunto de dados integrados que tem por objetivo atender a uma comunidade específica”
[HEUSER]
“Um conjunto de dados” [KORTH/SILBERCHATZ]
“É uma coleção de dados persistentes utilizada pelos sistemas de aplicação de uma empresa”
[DATE]

1.1 Motivações

1.1.1 Quais negócios precisam armazenar e manipular dados?

1.1.2 Quais dados precisam ser guardados em cada cenário?

1.1.3 O que se espera ao manipular dados?


 Rapidez
 Consistência
 Flexibilidade de acesso
 Segurança
 Facilidade de localização

1.2 – Dado, metadado e informação

De acordo com Setzer e Silva (2005) dado é uma representação simbólica (feita por
símbolos) quantificável ou quantificada. Por exemplo, um texto é um dado, pois é
representado por 26 letras (símbolos) diferentes. Dado é o registro bruto, sem contexto ou
significado. Um dado representa uma característica; uma identificação; um atributo de um
objeto, ser ou ambiente. Exemplo2: nome, altura, cor, peso, data_nascimento, idade, sexo,
etc. – dados referentes a uma pessoa.

Vaz (2011) descreve metadados como dados que descrevem dados. Os metadados
proveem uma descrição concisa a respeito dos dados. Refletindo sobre o exemplo inicial
anterior (um texto) os metadados são os 26 caracteres do alfabeto (letras).

A informação é formada por um conjunto de dados afins, ou seja, dados


relacionados a uma mesma origem. A informação é gerada a partir da contextualização de
dados e induz ao conhecimento de um novo fato.
1.3 – Abstração de dados
Está vinculada ao importante objetivo do Banco de Dados, ou seja, fornecer visão
abstrata dos dados – que quer dizer:
o Observação apenas dos aspectos de interesse
o Independência em relação à forma como os dados estão fisicamente
armazenados.

1.4 Arquivo x Bancos de Dados

Problemas no uso de arquivos:


• Redundância e inconsistência de dados
• Dificuldades no acesso aos dados
• Acesso concorrente
• Problemas de segurança
• Problemas de integridade

Vantagens no uso de Banco de Dados


• Definição do banco (mais clareza e detalhes)
• Abstração de dados
• Múltiplas visões de dados
• Compartilhamento de dados e processamento de múltiplas transações

1.5 Histórico dos Banco de Dados (arquiteturas)


Os atuais e modernos bancos de dados evoluíram do sistema monolítico. Este
sistema é geralmente composto apenas por conjuntos de rotinas que possuem permissão
para interagir livremente umas com as outras, isto é, ele armazena diversos processos de
“como fazer” em um arquivo executável único, e quando alguma rotina é solicitada pelo
usuário ou aplicação, o sistema procura a rotina e a executa, havendo a também a
possibilidade de uma rotina influenciar diretamente no resultado de outra.
O prof. Sanches, Andre Rodrigo, descreve, de modo resumido, as principais
arquiteturas 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. Esta arquitetura tem como principal vantagem a de permitir que
muitos usuários manipulem grande volume de dados. Sua principal desvantagem está no
seu alto custo, pois exige ambiente especial para mainframes e soluções centralizadas.

Sistemas de Computador Pessoal - PC: Os computadores pessoais trabalham em


sistema stand-alone, ou seja, fazem seus processamentos sozinhos. No começo esse
processamento era bastante limitado, porém, com a evolução do hardware, tem-se hoje
PCs com grande capacidade de processamento. Eles utilizam o padrão Xbase e quando se
trata de SGBDs, funcionam como hospedeiros e terminais. Desta maneira, possuem um
único aplicativo a ser executado na máquina. A principal vantagem desta arquitetura é a
simplicidade.

Banco de Dados Cliente-Servidor: Na arquitetura 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 DBMS
e retorna os resultados ao cliente. Apesar de ser uma arquitetura bastante popular, são
necessárias soluções sofisticadas de software que possibilitem: o tratamento de
transações, as confirmações de transações (commits), desfazer transações (rollbacks),
linguagens de consultas (stored procedures) e gatilhos (triggers). A principal vantagem
desta arquitetura é a divisão do processamento entre dois sistemas, o que reduz o tráfego
de dados na rede.

Banco de Dados Distribuídos (N camadas): Nesta arquitetura, a informação está


distribuída em diversos servidores. Nesta arquitetura cada servidor atua como no sistema
cliente-servidor, porém as consultas oriundas dos aplicativos são feitas para qualquer
servidor indistintamente. Caso a informação solicitada seja mantida por outro servidor ou
servidores, o sistema encarrega-se de obter a informação necessária, de maneira
transparente para o aplicativo, que passa a atuar consultando a rede, independente de
conhecer seus servidores. Exemplos típicos são as bases de dados corporativas, em que o
volume de informação é muito grande e, por isso, deve ser distribuído em diversos
servidores.

1.6 – Sistema Gerenciador de Banco de Dados (SGBD)

Banco de dados: é uma coleção de dados inter-relacionados, representando


informações sobre um domínio específico. Exemplos: Lista telefônica.

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.

Alguns exemplos de SGBD's:


1.7 – Modelos de Dados

Modelos de dados são conjuntos de conceitos que descrevem a estrutura de um banco de


dados. São também entendidos como uma coleção de ferramentas conceituais para
descrição de dados, relacionamentos entre eles, definição semântica e restrições de
consistência. Uma estrutura de banco de dados é formada por:

 tipos de dados;
 relacionamentos;
 restrições; e
 operações básicas (como inserção, recuperação, atualização e deleção)

Os modelos de dados são organizados em três grupos:

a) modelos de dados conceituais: descrevem os dados da forma que o usuário


percebe (entidade, atributos e relacionamentos). Exemplo:

b) modelo de dados representacionais (ou de implementação) - lógicos: oferece


um modelo que pode ser compreendido por usuários mas não está tão distante do
modelo físico.

c) modelo de dados físicos: descreve os detalhes de como os dados serão


armazenados.
1.8 – Arquitetura três esquemas (ou camadas)

Características importantes da abordagem com banco de dados:

a) separação de programas de dados;


b) suporte a múltiplas visões (views) de usuários; e
c) uso de catálogo (esquema) para armazenar a descrição do banco de dados.

A arquitetura três esquemas auxilia a realização e visualização destas


características tendo em vista que o seu objetivo é separar o usuário da aplicação do
banco de dados físico em três níveis, sendo eles:

1. Nível interno: descreve a estrutura de armazenamento físico; se ocupa do modo


como os dados são armazenados fisicamente; descreve o baixo nível, as Estruturas
de Dados, as rotinas de I/O, etc; assim, declara uma representação de baixo nível
do banco de dados por inteiro; não se preocupa nem com o hardware e nem com o
software, mas pressupõe um espaço de endereços linear infinito.
2. Nível conceitual: oculta os detalhes das estruturas de armazenamento físico e se
concentra na descrição das entidades, tipos de dados, chaves para relacionamento,
etc.; pode ser compreendido como o MER; pretende ser uma visão dos dados "como
eles realmente são", em vez de forçar os usuários a vê-los pelas limitações da
linguagem ou do hardware que eles possam estar utilizando.
3. Nível externo: mostra somente o que é necessário ao usuário saber do banco de
dados; é aquele que se ocupa do modo como os dados são vistos por usuários
individuais; pode ser compreendido como os insert's e update's que o usuário faz no
banco de dados.
1.9 – Independência de dados

Consiste na capacidade de mudar o esquema em um nível do Banco de Dados sem


que ocorram alterações do esquema no próximo nível mais alto. Significa a forma como os
dados são representados fisicamente no meio de armazenamento, bem como a técnica
usada para obter acesso a eles são ambas determinadas pelos requisitos da aplicação que
está sendo considerada e, acima de tudo, que o conhecimento dessa representação física
e dessas técnicas de acesso está embutida no código da aplicação.
Ou seja, é difícil mudar a representação física (o modo como os dados são
representados fisicamente no meio de armazenamento) ou a técnica de acesso (o modo
como ocorre o acesso físico aos dados) sem afetar a aplicação.
Um SGDB utiliza mapeamentos em um catálogo dos vários níveis. A independência
dos dados ocorre porque quando o esquema é alterado em algum nível, o esquema do
próximo nível acima permanece sem mudanças (apenas o mapeamento é modificado). São
dois tipos:

a) Independência de dados lógica: é a capacidade de alterar o esquema conceitual


sem mudar o esquema externo ou os programas.
b) Independência física dos dados: é a capacidade de mudar o esquema interno sem
ter de alterar o esquema conceitual (e o externo também).

1.10 – Linguagem de SGBD

Importante:
Qualquer sublinguagem de dados é, na realidade, uma combinação de pelo menos duas
linguagens subordinadas - uma linguagem de definição de dados (DDL - Data Defination
Language), que dá suporte à definição ou à declaração de objetos dos bancos de dados, e
uma de manipulação de dados (DML - Data Manipulation Language), que admite o
processamento ou a "manipulação" destes objetos. Assim, pode-se definir a seguinte
premissa:

SQL = DDL + VDL + DML

Data Manipulation Language pode ser organizada em dois níveis, sendo eles:

a) Alto nível: utiliza a SQL e especifica quais dados devem ser recuperados. Quando
utilizada de maneira interativa e isolada é chamada de linguagem de consulta.
b) Baixo nível: é embutida na linguagem de programação e especifica como os dados
devem ser recuperados.
Grupo de
Comando Descrição
Comandos
SELECT Utilizado para extrair dados da base de dados DML
INSERT Introduzir novas linhas DML
UPDATE Alterar linhas já existentes DML
DELETE Apagar linhas já existentes DML
CREATE Criar objectos da base de dados (tabelas, índices, vistas) DDL
Alterar objectos da base de dados (tabelas, índices,
ALTER DDL
vistas)
Apagar objectos da base de dados (tabelas, índices,
DROP DDL
vistas)
GRANT Conceder acesso à base de dados e aos seus objectos DCL
REVOKE Retirar acesso à base de dados e aos seus objectos DCL

1.11 – Classificação dos Sistemas DGDB's

Está dividida em três formas:

a) Modelo de dados (mais comum):


a. modelo de dados relacional
b. modelo de dados de objeto
c. modelo hierárquico
d. modelo de rede
e. modelo XML

b) Número de usuários:
a. sistemas de usuário único
b. sistemas multiusuários

c) Número de sites:
a. centralizado
b. distribuído
1.12 – Referencial Bibliografico

SILBERSCHATZ, HENRY, A.; KORTHS, H. F.; SUDARSHAN, S. Sistema de banco de


dados. 5. ed. Rio de Janeiro. Campus, 2006.

ELMASRI, R.; NAVATHE, S. B. Sistemas de banco de dados: fundamentos e


aplicações. 4.ed. São Paulo. Pearson, 2005.

MACHADO, F. N. R. Banco de dados: projeto e implementação. São Paulo, Érica, 2004.


GILLENSON, M. L. Fundamentos de sistemas de gerência de banco de dados. Rio de
Janeiro. LTC, 2006.

HEUSER, C. A. Projeto de banco de dados. 6.ed. Vol. 4. Bookamn. Porto alegre, 2009.
Setzer, Valdemar W. Bancos de dados: aprenda o que são, melhore seu
conhecimento, construa os seus / Waldemar W. Setzer e Flávio Soares Corrêa da Silva -
1ª edição - São Paulo: Edgard Blucher, 2005.

VAZ, Maria Salete Marcon Gomes. Introdução a Metadados. Revista Eletrônica de Banco
de Dados DevMedia, 2011. Acessado em <04/07/2013>. Disponível em
<http://www.devmedia.com.br/introducao-a-metadados/1883>.

Sanches, Andre Rodrigo. Fundamentos de Armazenamento e Manipulação de Dados.


Instituto de Matemática e Estatística - Universidade de São Paulo. Acessado em
<04/07/2013>. Disponível em <http://www.ime.usp.br/~andrers/aulas/bd2005-1/aula4.html>.

Você também pode gostar