SlideShare uma empresa Scribd logo
1 de 46
BANCO DE DADOS
Aula: 01 Parte: 01
Carga Horária: 60 h/a
Professor(a): César Dias Soares
GOVERNO DO ESTADO DO PIAUÍ
SECRETARIA DE ESTADO DA EDUCAÇÃO – SEDUC
UNIDADE DE EDUCAÇÃO TÉCNICA E PROFISSIONAL – UETEP
PROGRAMA NACIONAL DE ACESSO AO ENSINO TÉCNICO E EMPREGO – PRONATEC/NOVOS CAMINHOS
COORDENAÇÃO DE EDUCAÇÃO A DISTÂNCIA – EAD
DEFINIÇÃO
A humanidade sempre se dedicou à produção de signos. Um signo ou
símbolo corresponde a qualquer coisa que represente algo para alguém. Da
mesma forma que um mapa representa um dado terreno, um brasão pode
representar o time de futebol.
MAS O QUE É UM BANCO DE DADOS?
MAS O QUE É UM BANCO DE DADOS?
Com base nas definições da literatura, podemos dizer que Banco de
Dados é:
• Coleção de dados relacionados que tem informação sobre algo do
mundo real, por exemplo, lojas, escritórios, bibliotecas ou banco;
• Possui coerência lógica entre de dados e significado;
• Um Banco de Dados sempre estará associado a aplicações onde
existem usuários com interesse aos dados relacionados.
FIXANDO A IDEIA
• Dado: é o componente básico de um arquivo, é um elemento com um
significado no mundo real, que compõe um sistema de arquivos. Como
exemplo, podemos citar nome, sobrenome, cidade, bairro e outros.
carro
Maria BLY 9875
065.365.256-98
• Informação: após a interpretação dos dados, é possível associar um
significado aos dados ou processa-los. Normalmente a informação vem de
convenções utilizadas por pessoas por meio de associações aos dados.
carro
Maria
BLY 9875
065.365.256-98
FIXANDO A IDEIA
carro
Maria
BLY 9875
065.365.256-98
Conhecimento: todo discernimento, obtido por meio de
critérios, e apreciação aos dados e informações
FIXANDO A IDEIA
ESCLARECENDO AS COISAS
É importante entender que um você pode ter um Banco de Dados
automatizado (informatizado) utilizando as tecnologias computacionais ou
não. Veja bem, uma lista telefônica é bom exemplo de um Banco de Dados
que não utiliza informatização, porém ela possui todos os dados de pessoas,
empresas com números de telefone onde podemos consultar por meio de
sobrenomes ou índices (ELMASRI e NAVATHE, 2011).
Manual
Informatizada
CONCEITUANDO...
POR QUE USAR UM BANCO DE DADOS?
13/05/2007
13/05/2007 – data de nasc. Maria
NOME DATA DE NASC. CPF SALDO EM CONTA
CONCEITUANDO...
Como vimos, o dado é um componente básico para compor arquivo. Já
registro nos dará uma informação completa, pois ele é formado por uma
sequencia de dados juntos. Um exemplo de registro é a ficha de cliente de
uma loja que deve conter seus dados pessoais tais como: nome,
sobrenome, RG, CPF, endereço
PESSOA
NOME
SOB.:
RG:
CPF:
END:
Registro
CONCEITUANDO...
PESSOA
NOME:
SOB.:
RG:
CPF:
END:
Registro
PESSOA
MARIA
SISTEMAS GERENCIADORES DE
BANCO DE DADOS – SGBDs
Podemos armazenar dados de duas maneiras: utilizando bancos de dados,
ou então, arquivos de dados permanentes (SILBERSCHATZ, KORF e
SUDARSHAN e 2012). Com a utilização de um Banco de Dados temos
seguintes vantagens:
Manual
Informatizada
SISTEMAS GERENCIADORES DE
BANCO DE DADOS – SGBDs
• Controle centralizado de dados: os dados ficam localizados em um único local e isso
facilita o controle e acesso.
• Controle da redundância: como os dados estão centralizados existe otimização e
redução do espaço de armazenamento e controle de redundância.
• Compartilhamento de dados: com a utilização de um Banco de Dados sem
redundância, o espaço de armazenamento é otimizado é facilita o compartilhamento
de dados.
• Facilidade de acesso aos dados: estabelecimento de padrões devido a centralização
dos dados e inter-relação de todos os registros;
• Independência de dados: os dados são independentes para cada registro dentro do
Banco de Dados.
SISTEMAS GERENCIADORES DE
BANCO DE DADOS – SGBDs
um Sistema Gerenciador de Banco de Dados (SGBD) é um software genérico
para manipular Banco de Dados. Ele permite a definição, construção e
manejo de um Banco de Dados para diversas aplicações. Um SGBD possui
uma visão lógica (projeto do BD), uma linguagem de definição de dados,
linguagem de manipulação de dados e utilitários importantes.
SISTEMAS GERENCIADORES DE
BANCO DE DADOS – SGBDs
USUÁRIOS DE BANCO DE DADOS
Usuários leigos: profissionais de outras áreas cujos conhecimentos de
informática se restringem ao básico e que interagem com o BD por meio
de aplicações escritas pelos programadores de aplicações. As aplicações
fazem a intermediação entre esses usuários e o BD, pois através de telas
ou páginas tal usuário acessa seus dados.
USUÁRIOS DE BANCO DE DADOS
Usuários avançados: usuários com maior nível de independência em
relação aos programadores de aplicações: interagem com os Bancos de
Dados por meio de interfaces disponíveis no ambiente e escrevem
consultas para relatórios com certa facilidade, sem a necessidade de um
programador escrever uma nova aplicação.
USUÁRIOS DE BANCO DE DADOS
Programadores de aplicações: profissionais formados em computação que
constroem aplicações/programas de computador com interfaces intuitivas
e amigáveis (formulários e relatórios acessando o BD) para os usuários
leigo.
USUÁRIOS DE BANCO DE DADOS
Analistas de sistemas: profissionais responsáveis por traduzir as
necessidades dos usuários leigos e avançados em uma especificação
racional de um sistema de informação. Definem o projeto do sistema de
informação que especifica as aplicações e a estrutura do Banco de Dados e
que será rigorosamente seguido pelos programadores, desenvolvendo
programas que acessem o Banco de Dados;
USUÁRIOS DE BANCO DE DADOS
Administrador de BD (Database Administrator –
DBA): usuário mais especializado responsável por administrar as
bases de dados;
ATRIBUIÇÕES DO DBA
(1) a atribuição de permissões de acesso adequadas a cada usuário;
ATRIBUIÇÕES DO DBA
(2) a geração de cópias de segurança (backups) como contingência contra
falhas;
(3) o monitoramento do ambiente como forma de assegurar a
disponibilidade do Banco de Dados pelo maior tempo possível;
(4) a otimização de recursos de infraestrutura (disco, memória, processador)
para assegurar o desempenho satisfatório do BD;
(5) o suporte à equipe de desenvolvimento (analistas e programadores).
Em resumo, o DBA deve ser o profissional que zela pela implementação
adequada do BD, assegurando um funcionamento eficiente que prime pelo
desempenho, escalabilidade, flexibilidade e confiabilidade.
EM RESUMO
Segundo DATE (2004), um Sistema Gerenciador de Banco de Dados (SGBD) é
um software genérico para manipular Banco de Dados. Ele permite a
definição, construção e manejo de um Banco de Dados para diversas
aplicações. Um SGBD possui uma visão lógica (projeto do BD), uma
linguagem de definição de dados, linguagem de manipulação de dados e
utilitários importantes.
MAS O QUE É LINGUAGEM DE DEFINIÇÃO DE
DADOS E MANIPULAÇÃO DE DADOS?
Basicamente uma linguagem de definição de dados (DDL) é usada para
definir o esquema conceitual do Banco de Dados. Na maioria dos SGBDs, a
DDL também define as visões dos usuários, e algumas vezes as estruturas de
armazenamento já uma linguagem de manipulação de dados (DML) é
empregada para especificar as recuperações e atualizações do Banco de
Dados (GARCIA-MOLINA, ULLMAN e WIDOM, 2008).
MAS O QUE É LINGUAGEM DE DEFINIÇÃO DE
DADOS E MANIPULAÇÃO DE DADOS?
Os SGBDs também facilitam a conversão e a reorganização do Banco de
Dados. Dessa forma podemos dizer que os SGBDs são programas de
computador, que ajudam na:
• Definição e construção do Banco de Dados: que é o processo de criar
uma estrutura inicial com tabelas e preenche-las com dados;
• Manipulação dos dados do Banco de Dados: são as operações de
consultas alteração, exclusão realizadas nos dados.
UTILIZAÇÃO DO BANCO DE DADOS
Com a utilização dos SGBDs, para manejo do Banco de Dados, foi possível
otimizar e facilitar a manipulação dos dados, dessa forma seu uso cresceu
durante o século XX (SILBERSCHATZ, KORF e SUDARSHAN, S, 2012). Abaixo,
algumas aplicações de bancos de dados mais utilizadas pela sociedade.
UTILIZAÇÃO DO BANCO DE DADOS
A Figura abaixo ilustra um Sistema de Banco de Dados, que é composto por
dados, hardware, software e usuários. Observe que o Banco de Dados está
dentro do SGBD (DATE, 2004).
MODELOS DE BANCO DE DADOS
Os modelos de BD definem a forma como os dados estão organizados
internamente. Em ordem cronológica, são assim classificados: em redes,
hierárquicos, relacionais, objeto-relacionais e orientados a objetos.
MODELO EM REDE
Um BD em rede é uma coleção de registros concatenados uns aos outros
por meio de ligações. Semelhantes ao conceito de ponteiros, elas são
entendidas como endereços de memória que “apontam” a localização de
um registro associado.
MODELO EM REDE
Abaixo, há um modelo em rede com dois diferentes tipos de registros:
cliente e conta. O registro de cliente apresenta três atributos: nome, cidade
e sexo. Por sua vez, o registro de conta possui apenas dois atributos:
número e saldo.
MODELO EM REDE
Ligações associam registros de clientes aos de contas. Então, sabemos que o cliente
Reinaldo Antunes tem uma conta de número 1045 e saldo de R$ 945,60; e Marcela
Souto e André Marques possuem uma conta conjunta de número 1447, com R$
93,41. Porém, Marcela tem ainda outra conta número 1358 e saldo R$ 107,00; e
André Marques também tem outra de número 1500 com R$ 1.266,00.
MODELO HIERÁRQUICO
Uma evolução do modelo em rede, os BD hierárquicos são uma coleção
de registros relacionados uns aos outros por meio de ligações
semelhantes a ponteiros. Porém, se diferenciam de seu antecessor na
organização seus registros. Enquanto no modelo em rede os registros
são distribuídos conforme a lógica de grafos arbitrários, no hierárquico
eles são dispostos como uma coleção de árvores.
MODELO HIERÁRQUICO
Um registro isolado no topo da imagem encontra-se associado a todos os registros de Clientes. Esse é
o registro do tipo “raiz”, o ponto de partida da árvore de registros. Ele está no nível mais elevado da
estrutura de dados e pode ser ligado a nenhum, um ou vários registros no nível inferior. Em nosso
exemplo, os registros conectados ao registro “raiz” são sempre registros de Clientes que, por sua vez,
estão interligados a registros de Contas no nível imediatamente abaixo.
MODELO RELACIONAL
Na década de 1970, o modelo relacional de BD estabeleceu-se como o preferencial
para aplicações comerciais. Na década seguinte já era o padrão no mercado
corporativo.
No modelo relacional, os registros são organizados em tabelas e cada linha
representa uma relação entre os valores armazenados em diferentes colunas.
Assim, na tabela de CLIENTE (a seguir), seguindo o exemplo desenvolvido até aqui,
temos cada registro subdividido em três colunas: NOME, CIDADE e SEXO. Toda
linha existente na tabela de CLIENTES representa um conjunto de valores inter-
relacionados. Ou seja, cada linha da tabela armazena os dados de um cliente
específico organizados em diferentes colunas.
MODELO RELACIONAL
Assim, sabemos que o cliente “Reinaldo Antunes” mora em “Vitória” e é do sexo
masculino (“M”), pois esses dados estão na mesma linha da tabela. Também
sabemos que os clientes “Marcela Souto” e “André Marques” residem na cidade de
“Colatina” e são, respectivamente, do sexo feminino e masculino.
MODELO RELACIONAL
O modelo relacional de BD apresenta esse nome em razão da relação
existente entre as colunas de uma mesma tabela, e também da
possibilidade de estabelecer relacionamentos entre diferentes tabelas.
Para que o exemplo de clientes e contas fique completo, precisamos
relacionar registros de uma tabela com os de outra. Caso contrário, não
teríamos como saber com precisão a quais clientes cada conta
pertence. Porém, as associações entre registros não são
implementadas mediante “ponteiros”. Na verdade, o modelo relacional
emprega a duplicação de uma ou mais colunas em uma tabela distinta
daquela a que pertencem originalmente.
MODELO RELACIONAL
Na Figura a seguir temos duas tabelas – FILME e GENERO –
relacionadas entre si através da coluna COD_GENERO. Essa coluna é
original da tabela GENERO, mas foi duplicada na tabela FILME para
estabelecer uma associação lógica entre os registros das duas tabelas.
Logo, sabemos que o filme “Star Trek” é classificado como ficção
científica, pois apresenta o valor “FIC” em sua coluna COD_GENERO, e
o mesmo valor na coluna correspondente da tabela GENERO está
associada à descrição “Ficção Científica”.
MODELO RELACIONAL
MODELO RELACIONAL
Os valores da coluna DESCRICAO_GENERO podem se repetir em diferentes registros
(linhas). Na tabela da Figura 1.5 há três filmes do gênero ficção científica. Contudo,
cada filme apresenta valores diferenciados para essa coluna. No filme
“Transformers 2” não há hífen, mas em “Star Wars” esse caractere está presente. Já
no filme “Star Trek”, não somente houve a omissão do hífen como também a
supressão da palavra “Científica”. Algo assim é perfeitamente possível de acontecer.
Usuários diferentes podem ter cadastrado cada um desses filmes, ou ainda um
mesmo usuário em diferentes ocasiões. Acontece que, em um momento, esse
usuário encontrava-se um tanto cansado e registrou apenas “ficção”. Mais tarde,
por um erro de digitação, passou a usar o hífen.
MODELO RELACIONAL
Retomando o exemplo do BD para clientes e contas bancárias, a Figura 1.6
apresenta a configuração ideal para o modelo relacional. Uma terceira tabela
CONTAS_CLIENTE precisou ser criada para relacionar CLIENTE e CONTA. No
exemplo sobre FILME e GENERO, não foi necessário, bastou replicar a coluna
COD_GENERO na tabela FILME. Porém, a duplicação da coluna ID_CLIENTE na
tabela CONTA ou a da coluna NUMERO_CONTA na tabela CLIENTE não seria uma
solução eficiente. Por isso, criamos uma tabela apresentando duas colunas e
nenhuma delas é originária da nova tabela (CONTAS_CLIENTE). As colunas
ID_CLIENTE e NUMERO_CONTA são replicadas respectivamente nas tabelas Cliente
e Conta.
MODELO RELACIONAL
Retomando o exemplo do BD para clientes e contas bancárias, a Figura 1.6
apresenta a configuração ideal para o modelo relacional. Uma terceira tabela
CONTAS_CLIENTE precisou ser criada para relacionar CLIENTE e CONTA. No
exemplo sobre FILME e GENERO, não foi necessário, bastou replicar a coluna
COD_GENERO na tabela FILME. Porém, a duplicação da coluna ID_CLIENTE na
tabela CONTA ou a da coluna NUMERO_CONTA na tabela CLIENTE não seria uma
solução eficiente. Por isso, criamos uma tabela apresentando duas colunas e
nenhuma delas é originária da nova tabela (CONTAS_CLIENTE). As colunas
ID_CLIENTE e NUMERO_CONTA são replicadas respectivamente nas tabelas Cliente
e Conta.
MODELO RELACIONAL
Caso duplicássemos ID_CLIENTE na tabela
CONTA, haveria um problema ao cadastrar
a conta número 1447, como mostrado na
Figura 1.7. Essa conta pertence a dois
clientes, é uma conta conjunta: André
(ID_CLIENTE = 37) e Marcela (ID_CLIENTE =
15). Como a coluna ID_CLIENTE na tabela
CONTA comporta apenas um valor por
linha, teríamos de cadastrar duas linhas
para a Conta de número 1447.
MODELO RELACIONAL
MODELO RELACIONAL
Por outro lado, se optássemos por duplicar NUMERO_CONTA na tabela CLIENTE,
teríamos outro problema para registrar as duas contas de “Marcela Souto” –
números 1385 e 1447 (Figura 1.8), pois teríamos de cadastrar duas linhas
exatamente iguais para Marcela na tabela CLIENTE, exceto pelo conteúdo da coluna
duplicada de NUMERO_CONTA.
MODELO RELACIONAL
As consequências mais sérias para essas tentativas equivocadas de relacionamento
das tabelas CLIENTE e CONTA seriam:
(1) Uso ineficiente dos recursos de armazenamento: redundância de dados
consumiria desnecessariamente o espaço disponível no disco rígido.
(2) Maior complexidade para a manutenção das informações: a atualização do
saldo em uma conta ou a mudança de cidade para um cliente poderia alterar mais
de um registro simultaneamente.
Por mais que a nova tabela CONTAS_CLIENTE também seja uma redundância de
dados, quando comparada às outras situações, ela representa uma replicação
controlada e, portanto, mais eficiente.
REFERÊNCIAS
Marins, Joyce de Oliveira; Guarienti, Graciely Santos Souza. Introdução
a Banco de Dados. Disponível em:
https://educapes.capes.gov.br/bitstream/capes/564494/2/FASCICULO_Intro
ducao_Banco_Dados_30_08.pdf.
Silva, Vanderson José Ildefonso. Banco de dados : Curso Técnico de
Informática. Colatina: Ifes/CEAD, 2011.

Mais conteúdo relacionado

Semelhante a Banco de Dados: Conceitos e Aplicações

Aula III: Informática em Saúde- UnB-FGA/Gama
Aula III: Informática em Saúde- UnB-FGA/GamaAula III: Informática em Saúde- UnB-FGA/Gama
Aula III: Informática em Saúde- UnB-FGA/GamaCamila Hamdan
 
APOSTILA 1 _ ADMINISTRADOR DE BANCO DE DADOS (1).pdf
APOSTILA 1 _ ADMINISTRADOR DE BANCO DE DADOS (1).pdfAPOSTILA 1 _ ADMINISTRADOR DE BANCO DE DADOS (1).pdf
APOSTILA 1 _ ADMINISTRADOR DE BANCO DE DADOS (1).pdfLinaKelly2
 
Apostila Modelagem e Desenvolvimento de Banco de Dados.pdf
Apostila Modelagem e Desenvolvimento de Banco de Dados.pdfApostila Modelagem e Desenvolvimento de Banco de Dados.pdf
Apostila Modelagem e Desenvolvimento de Banco de Dados.pdfFlvioMachadoLobo
 
Apresentação Final de Banco de Dados
Apresentação Final de Banco de DadosApresentação Final de Banco de Dados
Apresentação Final de Banco de Dadossamlobo
 
Universidade federal do amazonas Banco de Dados - Apresentação final
Universidade federal do amazonas   Banco de Dados - Apresentação finalUniversidade federal do amazonas   Banco de Dados - Apresentação final
Universidade federal do amazonas Banco de Dados - Apresentação finalRenan Levy
 
Concepcao de banco_de_dados-aula_1
Concepcao de banco_de_dados-aula_1Concepcao de banco_de_dados-aula_1
Concepcao de banco_de_dados-aula_1Carlos Melo
 
Conceitos Base_de_Dados.pdf
Conceitos Base_de_Dados.pdfConceitos Base_de_Dados.pdf
Conceitos Base_de_Dados.pdfticepcCapelas
 
Arquitetura e sgbd de um banco de dados
Arquitetura e sgbd de um banco de dadosArquitetura e sgbd de um banco de dados
Arquitetura e sgbd de um banco de dadosdiogocbj
 
1.Introdução Banco de Dados
1.Introdução Banco de Dados1.Introdução Banco de Dados
1.Introdução Banco de Dadosvini_campos
 
aula01_Fundamentos de Banco de Dados.pptx.pdf
aula01_Fundamentos de Banco de Dados.pptx.pdfaula01_Fundamentos de Banco de Dados.pptx.pdf
aula01_Fundamentos de Banco de Dados.pptx.pdfssuser7a84f91
 
Projeto de Banco de Dados - Capítulo 1
Projeto de Banco de Dados - Capítulo 1Projeto de Banco de Dados - Capítulo 1
Projeto de Banco de Dados - Capítulo 1Januário Neto
 
Banco de Dados - Part01
Banco de Dados - Part01Banco de Dados - Part01
Banco de Dados - Part01Rangel Javier
 
BANCO DE DADOS RELACIONAIS
BANCO DE DADOS RELACIONAIS BANCO DE DADOS RELACIONAIS
BANCO DE DADOS RELACIONAIS Antonio Pedro
 
Curso Gratuito Online Desmistificando BI (Business Intelligence) Open Source ...
Curso Gratuito Online Desmistificando BI (Business Intelligence) Open Source ...Curso Gratuito Online Desmistificando BI (Business Intelligence) Open Source ...
Curso Gratuito Online Desmistificando BI (Business Intelligence) Open Source ...Caio Moreno
 
Mer - Modelo Entidade Relacionamento
Mer - Modelo Entidade RelacionamentoMer - Modelo Entidade Relacionamento
Mer - Modelo Entidade RelacionamentoRademaker Siena
 
Aula tecnologia da informacao 6 banco de dados
Aula tecnologia da informacao 6 banco de dadosAula tecnologia da informacao 6 banco de dados
Aula tecnologia da informacao 6 banco de dadoswapiva
 

Semelhante a Banco de Dados: Conceitos e Aplicações (20)

Aula III: Informática em Saúde- UnB-FGA/Gama
Aula III: Informática em Saúde- UnB-FGA/GamaAula III: Informática em Saúde- UnB-FGA/Gama
Aula III: Informática em Saúde- UnB-FGA/Gama
 
APOSTILA 1 _ ADMINISTRADOR DE BANCO DE DADOS (1).pdf
APOSTILA 1 _ ADMINISTRADOR DE BANCO DE DADOS (1).pdfAPOSTILA 1 _ ADMINISTRADOR DE BANCO DE DADOS (1).pdf
APOSTILA 1 _ ADMINISTRADOR DE BANCO DE DADOS (1).pdf
 
Apostila Modelagem e Desenvolvimento de Banco de Dados.pdf
Apostila Modelagem e Desenvolvimento de Banco de Dados.pdfApostila Modelagem e Desenvolvimento de Banco de Dados.pdf
Apostila Modelagem e Desenvolvimento de Banco de Dados.pdf
 
Apresentação Final de Banco de Dados
Apresentação Final de Banco de DadosApresentação Final de Banco de Dados
Apresentação Final de Banco de Dados
 
Universidade federal do amazonas Banco de Dados - Apresentação final
Universidade federal do amazonas   Banco de Dados - Apresentação finalUniversidade federal do amazonas   Banco de Dados - Apresentação final
Universidade federal do amazonas Banco de Dados - Apresentação final
 
Concepcao de banco_de_dados-aula_1
Concepcao de banco_de_dados-aula_1Concepcao de banco_de_dados-aula_1
Concepcao de banco_de_dados-aula_1
 
Dbmod
DbmodDbmod
Dbmod
 
Apostila modelagem de banco de dados
Apostila modelagem de banco de dadosApostila modelagem de banco de dados
Apostila modelagem de banco de dados
 
Conceitos Base_de_Dados.pdf
Conceitos Base_de_Dados.pdfConceitos Base_de_Dados.pdf
Conceitos Base_de_Dados.pdf
 
Arquitetura e sgbd de um banco de dados
Arquitetura e sgbd de um banco de dadosArquitetura e sgbd de um banco de dados
Arquitetura e sgbd de um banco de dados
 
1.Introdução Banco de Dados
1.Introdução Banco de Dados1.Introdução Banco de Dados
1.Introdução Banco de Dados
 
aula01_Fundamentos de Banco de Dados.pptx.pdf
aula01_Fundamentos de Banco de Dados.pptx.pdfaula01_Fundamentos de Banco de Dados.pptx.pdf
aula01_Fundamentos de Banco de Dados.pptx.pdf
 
Aula 2 - Introdução a Banco de Dados
Aula 2 - Introdução a Banco de DadosAula 2 - Introdução a Banco de Dados
Aula 2 - Introdução a Banco de Dados
 
Projeto de Banco de Dados - Capítulo 1
Projeto de Banco de Dados - Capítulo 1Projeto de Banco de Dados - Capítulo 1
Projeto de Banco de Dados - Capítulo 1
 
Banco de Dados - Part01
Banco de Dados - Part01Banco de Dados - Part01
Banco de Dados - Part01
 
BANCO DE DADOS RELACIONAIS
BANCO DE DADOS RELACIONAIS BANCO DE DADOS RELACIONAIS
BANCO DE DADOS RELACIONAIS
 
Curso Gratuito Online Desmistificando BI (Business Intelligence) Open Source ...
Curso Gratuito Online Desmistificando BI (Business Intelligence) Open Source ...Curso Gratuito Online Desmistificando BI (Business Intelligence) Open Source ...
Curso Gratuito Online Desmistificando BI (Business Intelligence) Open Source ...
 
Banco de Dados
Banco de DadosBanco de Dados
Banco de Dados
 
Mer - Modelo Entidade Relacionamento
Mer - Modelo Entidade RelacionamentoMer - Modelo Entidade Relacionamento
Mer - Modelo Entidade Relacionamento
 
Aula tecnologia da informacao 6 banco de dados
Aula tecnologia da informacao 6 banco de dadosAula tecnologia da informacao 6 banco de dados
Aula tecnologia da informacao 6 banco de dados
 

Banco de Dados: Conceitos e Aplicações

  • 1. BANCO DE DADOS Aula: 01 Parte: 01 Carga Horária: 60 h/a Professor(a): César Dias Soares GOVERNO DO ESTADO DO PIAUÍ SECRETARIA DE ESTADO DA EDUCAÇÃO – SEDUC UNIDADE DE EDUCAÇÃO TÉCNICA E PROFISSIONAL – UETEP PROGRAMA NACIONAL DE ACESSO AO ENSINO TÉCNICO E EMPREGO – PRONATEC/NOVOS CAMINHOS COORDENAÇÃO DE EDUCAÇÃO A DISTÂNCIA – EAD
  • 2. DEFINIÇÃO A humanidade sempre se dedicou à produção de signos. Um signo ou símbolo corresponde a qualquer coisa que represente algo para alguém. Da mesma forma que um mapa representa um dado terreno, um brasão pode representar o time de futebol.
  • 3. MAS O QUE É UM BANCO DE DADOS?
  • 4. MAS O QUE É UM BANCO DE DADOS? Com base nas definições da literatura, podemos dizer que Banco de Dados é: • Coleção de dados relacionados que tem informação sobre algo do mundo real, por exemplo, lojas, escritórios, bibliotecas ou banco; • Possui coerência lógica entre de dados e significado; • Um Banco de Dados sempre estará associado a aplicações onde existem usuários com interesse aos dados relacionados.
  • 5. FIXANDO A IDEIA • Dado: é o componente básico de um arquivo, é um elemento com um significado no mundo real, que compõe um sistema de arquivos. Como exemplo, podemos citar nome, sobrenome, cidade, bairro e outros. carro Maria BLY 9875 065.365.256-98
  • 6. • Informação: após a interpretação dos dados, é possível associar um significado aos dados ou processa-los. Normalmente a informação vem de convenções utilizadas por pessoas por meio de associações aos dados. carro Maria BLY 9875 065.365.256-98 FIXANDO A IDEIA
  • 7. carro Maria BLY 9875 065.365.256-98 Conhecimento: todo discernimento, obtido por meio de critérios, e apreciação aos dados e informações FIXANDO A IDEIA
  • 8. ESCLARECENDO AS COISAS É importante entender que um você pode ter um Banco de Dados automatizado (informatizado) utilizando as tecnologias computacionais ou não. Veja bem, uma lista telefônica é bom exemplo de um Banco de Dados que não utiliza informatização, porém ela possui todos os dados de pessoas, empresas com números de telefone onde podemos consultar por meio de sobrenomes ou índices (ELMASRI e NAVATHE, 2011). Manual Informatizada
  • 9. CONCEITUANDO... POR QUE USAR UM BANCO DE DADOS? 13/05/2007 13/05/2007 – data de nasc. Maria NOME DATA DE NASC. CPF SALDO EM CONTA
  • 10. CONCEITUANDO... Como vimos, o dado é um componente básico para compor arquivo. Já registro nos dará uma informação completa, pois ele é formado por uma sequencia de dados juntos. Um exemplo de registro é a ficha de cliente de uma loja que deve conter seus dados pessoais tais como: nome, sobrenome, RG, CPF, endereço PESSOA NOME SOB.: RG: CPF: END: Registro
  • 12. SISTEMAS GERENCIADORES DE BANCO DE DADOS – SGBDs Podemos armazenar dados de duas maneiras: utilizando bancos de dados, ou então, arquivos de dados permanentes (SILBERSCHATZ, KORF e SUDARSHAN e 2012). Com a utilização de um Banco de Dados temos seguintes vantagens: Manual Informatizada
  • 13. SISTEMAS GERENCIADORES DE BANCO DE DADOS – SGBDs • Controle centralizado de dados: os dados ficam localizados em um único local e isso facilita o controle e acesso. • Controle da redundância: como os dados estão centralizados existe otimização e redução do espaço de armazenamento e controle de redundância. • Compartilhamento de dados: com a utilização de um Banco de Dados sem redundância, o espaço de armazenamento é otimizado é facilita o compartilhamento de dados. • Facilidade de acesso aos dados: estabelecimento de padrões devido a centralização dos dados e inter-relação de todos os registros; • Independência de dados: os dados são independentes para cada registro dentro do Banco de Dados.
  • 14. SISTEMAS GERENCIADORES DE BANCO DE DADOS – SGBDs um Sistema Gerenciador de Banco de Dados (SGBD) é um software genérico para manipular Banco de Dados. Ele permite a definição, construção e manejo de um Banco de Dados para diversas aplicações. Um SGBD possui uma visão lógica (projeto do BD), uma linguagem de definição de dados, linguagem de manipulação de dados e utilitários importantes.
  • 15. SISTEMAS GERENCIADORES DE BANCO DE DADOS – SGBDs
  • 16. USUÁRIOS DE BANCO DE DADOS Usuários leigos: profissionais de outras áreas cujos conhecimentos de informática se restringem ao básico e que interagem com o BD por meio de aplicações escritas pelos programadores de aplicações. As aplicações fazem a intermediação entre esses usuários e o BD, pois através de telas ou páginas tal usuário acessa seus dados.
  • 17. USUÁRIOS DE BANCO DE DADOS Usuários avançados: usuários com maior nível de independência em relação aos programadores de aplicações: interagem com os Bancos de Dados por meio de interfaces disponíveis no ambiente e escrevem consultas para relatórios com certa facilidade, sem a necessidade de um programador escrever uma nova aplicação.
  • 18. USUÁRIOS DE BANCO DE DADOS Programadores de aplicações: profissionais formados em computação que constroem aplicações/programas de computador com interfaces intuitivas e amigáveis (formulários e relatórios acessando o BD) para os usuários leigo.
  • 19. USUÁRIOS DE BANCO DE DADOS Analistas de sistemas: profissionais responsáveis por traduzir as necessidades dos usuários leigos e avançados em uma especificação racional de um sistema de informação. Definem o projeto do sistema de informação que especifica as aplicações e a estrutura do Banco de Dados e que será rigorosamente seguido pelos programadores, desenvolvendo programas que acessem o Banco de Dados;
  • 20. USUÁRIOS DE BANCO DE DADOS Administrador de BD (Database Administrator – DBA): usuário mais especializado responsável por administrar as bases de dados;
  • 21. ATRIBUIÇÕES DO DBA (1) a atribuição de permissões de acesso adequadas a cada usuário;
  • 22. ATRIBUIÇÕES DO DBA (2) a geração de cópias de segurança (backups) como contingência contra falhas; (3) o monitoramento do ambiente como forma de assegurar a disponibilidade do Banco de Dados pelo maior tempo possível; (4) a otimização de recursos de infraestrutura (disco, memória, processador) para assegurar o desempenho satisfatório do BD; (5) o suporte à equipe de desenvolvimento (analistas e programadores). Em resumo, o DBA deve ser o profissional que zela pela implementação adequada do BD, assegurando um funcionamento eficiente que prime pelo desempenho, escalabilidade, flexibilidade e confiabilidade.
  • 23. EM RESUMO Segundo DATE (2004), um Sistema Gerenciador de Banco de Dados (SGBD) é um software genérico para manipular Banco de Dados. Ele permite a definição, construção e manejo de um Banco de Dados para diversas aplicações. Um SGBD possui uma visão lógica (projeto do BD), uma linguagem de definição de dados, linguagem de manipulação de dados e utilitários importantes.
  • 24. MAS O QUE É LINGUAGEM DE DEFINIÇÃO DE DADOS E MANIPULAÇÃO DE DADOS? Basicamente uma linguagem de definição de dados (DDL) é usada para definir o esquema conceitual do Banco de Dados. Na maioria dos SGBDs, a DDL também define as visões dos usuários, e algumas vezes as estruturas de armazenamento já uma linguagem de manipulação de dados (DML) é empregada para especificar as recuperações e atualizações do Banco de Dados (GARCIA-MOLINA, ULLMAN e WIDOM, 2008).
  • 25. MAS O QUE É LINGUAGEM DE DEFINIÇÃO DE DADOS E MANIPULAÇÃO DE DADOS? Os SGBDs também facilitam a conversão e a reorganização do Banco de Dados. Dessa forma podemos dizer que os SGBDs são programas de computador, que ajudam na: • Definição e construção do Banco de Dados: que é o processo de criar uma estrutura inicial com tabelas e preenche-las com dados; • Manipulação dos dados do Banco de Dados: são as operações de consultas alteração, exclusão realizadas nos dados.
  • 26. UTILIZAÇÃO DO BANCO DE DADOS Com a utilização dos SGBDs, para manejo do Banco de Dados, foi possível otimizar e facilitar a manipulação dos dados, dessa forma seu uso cresceu durante o século XX (SILBERSCHATZ, KORF e SUDARSHAN, S, 2012). Abaixo, algumas aplicações de bancos de dados mais utilizadas pela sociedade.
  • 27. UTILIZAÇÃO DO BANCO DE DADOS A Figura abaixo ilustra um Sistema de Banco de Dados, que é composto por dados, hardware, software e usuários. Observe que o Banco de Dados está dentro do SGBD (DATE, 2004).
  • 28. MODELOS DE BANCO DE DADOS Os modelos de BD definem a forma como os dados estão organizados internamente. Em ordem cronológica, são assim classificados: em redes, hierárquicos, relacionais, objeto-relacionais e orientados a objetos.
  • 29. MODELO EM REDE Um BD em rede é uma coleção de registros concatenados uns aos outros por meio de ligações. Semelhantes ao conceito de ponteiros, elas são entendidas como endereços de memória que “apontam” a localização de um registro associado.
  • 30. MODELO EM REDE Abaixo, há um modelo em rede com dois diferentes tipos de registros: cliente e conta. O registro de cliente apresenta três atributos: nome, cidade e sexo. Por sua vez, o registro de conta possui apenas dois atributos: número e saldo.
  • 31. MODELO EM REDE Ligações associam registros de clientes aos de contas. Então, sabemos que o cliente Reinaldo Antunes tem uma conta de número 1045 e saldo de R$ 945,60; e Marcela Souto e André Marques possuem uma conta conjunta de número 1447, com R$ 93,41. Porém, Marcela tem ainda outra conta número 1358 e saldo R$ 107,00; e André Marques também tem outra de número 1500 com R$ 1.266,00.
  • 32. MODELO HIERÁRQUICO Uma evolução do modelo em rede, os BD hierárquicos são uma coleção de registros relacionados uns aos outros por meio de ligações semelhantes a ponteiros. Porém, se diferenciam de seu antecessor na organização seus registros. Enquanto no modelo em rede os registros são distribuídos conforme a lógica de grafos arbitrários, no hierárquico eles são dispostos como uma coleção de árvores.
  • 33. MODELO HIERÁRQUICO Um registro isolado no topo da imagem encontra-se associado a todos os registros de Clientes. Esse é o registro do tipo “raiz”, o ponto de partida da árvore de registros. Ele está no nível mais elevado da estrutura de dados e pode ser ligado a nenhum, um ou vários registros no nível inferior. Em nosso exemplo, os registros conectados ao registro “raiz” são sempre registros de Clientes que, por sua vez, estão interligados a registros de Contas no nível imediatamente abaixo.
  • 34. MODELO RELACIONAL Na década de 1970, o modelo relacional de BD estabeleceu-se como o preferencial para aplicações comerciais. Na década seguinte já era o padrão no mercado corporativo. No modelo relacional, os registros são organizados em tabelas e cada linha representa uma relação entre os valores armazenados em diferentes colunas. Assim, na tabela de CLIENTE (a seguir), seguindo o exemplo desenvolvido até aqui, temos cada registro subdividido em três colunas: NOME, CIDADE e SEXO. Toda linha existente na tabela de CLIENTES representa um conjunto de valores inter- relacionados. Ou seja, cada linha da tabela armazena os dados de um cliente específico organizados em diferentes colunas.
  • 35. MODELO RELACIONAL Assim, sabemos que o cliente “Reinaldo Antunes” mora em “Vitória” e é do sexo masculino (“M”), pois esses dados estão na mesma linha da tabela. Também sabemos que os clientes “Marcela Souto” e “André Marques” residem na cidade de “Colatina” e são, respectivamente, do sexo feminino e masculino.
  • 36. MODELO RELACIONAL O modelo relacional de BD apresenta esse nome em razão da relação existente entre as colunas de uma mesma tabela, e também da possibilidade de estabelecer relacionamentos entre diferentes tabelas. Para que o exemplo de clientes e contas fique completo, precisamos relacionar registros de uma tabela com os de outra. Caso contrário, não teríamos como saber com precisão a quais clientes cada conta pertence. Porém, as associações entre registros não são implementadas mediante “ponteiros”. Na verdade, o modelo relacional emprega a duplicação de uma ou mais colunas em uma tabela distinta daquela a que pertencem originalmente.
  • 37. MODELO RELACIONAL Na Figura a seguir temos duas tabelas – FILME e GENERO – relacionadas entre si através da coluna COD_GENERO. Essa coluna é original da tabela GENERO, mas foi duplicada na tabela FILME para estabelecer uma associação lógica entre os registros das duas tabelas. Logo, sabemos que o filme “Star Trek” é classificado como ficção científica, pois apresenta o valor “FIC” em sua coluna COD_GENERO, e o mesmo valor na coluna correspondente da tabela GENERO está associada à descrição “Ficção Científica”.
  • 39. MODELO RELACIONAL Os valores da coluna DESCRICAO_GENERO podem se repetir em diferentes registros (linhas). Na tabela da Figura 1.5 há três filmes do gênero ficção científica. Contudo, cada filme apresenta valores diferenciados para essa coluna. No filme “Transformers 2” não há hífen, mas em “Star Wars” esse caractere está presente. Já no filme “Star Trek”, não somente houve a omissão do hífen como também a supressão da palavra “Científica”. Algo assim é perfeitamente possível de acontecer. Usuários diferentes podem ter cadastrado cada um desses filmes, ou ainda um mesmo usuário em diferentes ocasiões. Acontece que, em um momento, esse usuário encontrava-se um tanto cansado e registrou apenas “ficção”. Mais tarde, por um erro de digitação, passou a usar o hífen.
  • 40. MODELO RELACIONAL Retomando o exemplo do BD para clientes e contas bancárias, a Figura 1.6 apresenta a configuração ideal para o modelo relacional. Uma terceira tabela CONTAS_CLIENTE precisou ser criada para relacionar CLIENTE e CONTA. No exemplo sobre FILME e GENERO, não foi necessário, bastou replicar a coluna COD_GENERO na tabela FILME. Porém, a duplicação da coluna ID_CLIENTE na tabela CONTA ou a da coluna NUMERO_CONTA na tabela CLIENTE não seria uma solução eficiente. Por isso, criamos uma tabela apresentando duas colunas e nenhuma delas é originária da nova tabela (CONTAS_CLIENTE). As colunas ID_CLIENTE e NUMERO_CONTA são replicadas respectivamente nas tabelas Cliente e Conta.
  • 41. MODELO RELACIONAL Retomando o exemplo do BD para clientes e contas bancárias, a Figura 1.6 apresenta a configuração ideal para o modelo relacional. Uma terceira tabela CONTAS_CLIENTE precisou ser criada para relacionar CLIENTE e CONTA. No exemplo sobre FILME e GENERO, não foi necessário, bastou replicar a coluna COD_GENERO na tabela FILME. Porém, a duplicação da coluna ID_CLIENTE na tabela CONTA ou a da coluna NUMERO_CONTA na tabela CLIENTE não seria uma solução eficiente. Por isso, criamos uma tabela apresentando duas colunas e nenhuma delas é originária da nova tabela (CONTAS_CLIENTE). As colunas ID_CLIENTE e NUMERO_CONTA são replicadas respectivamente nas tabelas Cliente e Conta.
  • 42. MODELO RELACIONAL Caso duplicássemos ID_CLIENTE na tabela CONTA, haveria um problema ao cadastrar a conta número 1447, como mostrado na Figura 1.7. Essa conta pertence a dois clientes, é uma conta conjunta: André (ID_CLIENTE = 37) e Marcela (ID_CLIENTE = 15). Como a coluna ID_CLIENTE na tabela CONTA comporta apenas um valor por linha, teríamos de cadastrar duas linhas para a Conta de número 1447.
  • 44. MODELO RELACIONAL Por outro lado, se optássemos por duplicar NUMERO_CONTA na tabela CLIENTE, teríamos outro problema para registrar as duas contas de “Marcela Souto” – números 1385 e 1447 (Figura 1.8), pois teríamos de cadastrar duas linhas exatamente iguais para Marcela na tabela CLIENTE, exceto pelo conteúdo da coluna duplicada de NUMERO_CONTA.
  • 45. MODELO RELACIONAL As consequências mais sérias para essas tentativas equivocadas de relacionamento das tabelas CLIENTE e CONTA seriam: (1) Uso ineficiente dos recursos de armazenamento: redundância de dados consumiria desnecessariamente o espaço disponível no disco rígido. (2) Maior complexidade para a manutenção das informações: a atualização do saldo em uma conta ou a mudança de cidade para um cliente poderia alterar mais de um registro simultaneamente. Por mais que a nova tabela CONTAS_CLIENTE também seja uma redundância de dados, quando comparada às outras situações, ela representa uma replicação controlada e, portanto, mais eficiente.
  • 46. REFERÊNCIAS Marins, Joyce de Oliveira; Guarienti, Graciely Santos Souza. Introdução a Banco de Dados. Disponível em: https://educapes.capes.gov.br/bitstream/capes/564494/2/FASCICULO_Intro ducao_Banco_Dados_30_08.pdf. Silva, Vanderson José Ildefonso. Banco de dados : Curso Técnico de Informática. Colatina: Ifes/CEAD, 2011.