Aula 01 de Banco de Dados - Engenharia de Software
-
Upload
davi-galucio -
Category
Documents
-
view
231 -
download
2
description
Transcript of Aula 01 de Banco de Dados - Engenharia de Software
Conceitos Básicos
Disciplina: Banco de Dados
Profª: Kelen Acquati Vieira, M.Sc
Manaus - AM
Fundação Centro de Análise, Pesquisa e Inovação Tecnológica
Instituto de Ensino Superior - FUCAPI
ROTEIRO
• Introdução
• Dados e Informações
• Banco de Dados
• Sistema de Banco de Dados
• Sistema de Gerenciamento de Banco de Dados
• Referência
10/01/2011 Conceitos Básicos 2
INTRODUÇÃO
• Os bancos de dados e os sistemas de bancos de dados se
tornaram componentes essenciais no cotidiano da sociedade
moderna
• Eles estão inseridos em bancos, hotéis, agências aéreas, lojas,
supermercados, bibliotecas, escolas, clínicas, hospitais, etc.
10/01/2011 Conceitos Básicos 3
INTRODUÇÃO
• A maioria das informações que são armazenadas e acessadas
estão em formato textual ou numérico
• A esse tipo de interação denominamos de aplicações tradicionais
de banco de dados
• Ultimamente tem-se gerado aplicações inovadoras e
interessantes de sistemas de banco de dados, tais como:
– Banco de dados de multimídia
– Tecnologia de banco de dados ativos e de Tempo Real
10/01/2011 Conceitos Básicos 4
INTRODUÇÃO
• Banco de dados de multimídia
– Armazenar figuras, videoclipes e mensagens sonoras
• Exemplo 1:
– Os Sistemas de Informações Geográficas (geographic
information systems — GIS)
• são capazes de armazenar e analisar mapas, dados do
tempo e imagens de satélite
10/01/2011 Conceitos Básicos 5
INTRODUÇÃO
• Exemplo 2
– Os data warehouses e os online analytical processing
(OLAP) – Processo Analítico On-line
• são utilizados em muitas empresas para extrair e analisar
as informações úteis dos bancos de dados para a tomada
de decisões
10/01/2011 Conceitos Básicos 6
INTRODUÇÃO
• Tecnologia de banco de dados ativos (active database
technology) e de tempo real (real time)
– são usados no controle de processos industriais e de
produção (indústria)
– As técnicas de pesquisa em banco de dados estão sendo
aplicadas na World Wide Web para aprimorar a recuperação
de informações necessárias pelos usuários da Internet
10/01/2011 Conceitos Básicos 7
INTRODUÇÃO
• Entretanto, para entendermos os fundamentos da tecnologia de
banco de dados, devemos começar pelas aplicações tradicionais
de bancos de dados
10/01/2011 Conceitos Básicos 8
DADOS E INFORMAÇÕES
DADOS E INFORMAÇÕES
• Dados são códigos que constituem a matéria prima da
informação, ou seja, é a informação não tratada
• Os dados não podem transmitir uma mensagem ou representar
algum conhecimento
• Informações são dados tratados ou seja, é o resultado do
processamento de dados, o qual gera um significado (semântica)
10/01/2011 10Conceitos Básicos
DADOS E INFORMAÇÕES
• Exemplo:
– Dados de uma padaria
Razão Social
Produto
Validade
Valor
Quantidade
outros
10/01/2011
Esses dados podem
ser relacionados?
11Conceitos Básicos
DADOS E INFORMAÇÕES
• Os dados são fatos que podem ser gravados e que possuem
um significado implícito
– Exemplo:
• 25/12/2010
• 12:00:00
• 205,50
• Ana Paula
• (92)8888-8888
10/01/2011
Há algum significado implícito?
Os três exemplos ao
lado são dados?
12Conceitos Básicos
BANCO DE DADOS
BANCO DE DADOS
• Um banco de dados é uma coleção de dados relacionados
• Esses dados podem ter sido escritos em uma agenda de
telefones
• ou armazenados em um computador, por meio de programas
como o Microsoft Access ou Excel
• Essas informações são uma coleção de dados com um significado
implícito, consequentemente, um banco de dados
10/01/2011 14Conceitos Básicos
BANCO DE DADOS
• A definição de banco de dados, mencionada anteriormente, é
muito genérica
• O uso do termo banco de dados é geralmente mais restrito e
possui as seguintes propriedades implícitas:
– Um banco de dados representa alguns aspectos do mundo
real, sendo chamado, às vezes, de minimundo ou de universo
de discurso (UoD). As mudanças no minimundo são
refletidas em um banco de dados
10/01/2011 15Conceitos Básicos
BANCO DE DADOS
– Um banco de dados é uma coleção lógica e coerente de dados
com algum significado inerente. Uma organização de dados
ao acaso (randômica) não pode ser corretamente
interpretada como um banco de dados
– Um banco de dados é projetado, construído e povoado por
dados, atendendo a uma proposta específica. Possui um grupo
de usuários definido e algumas aplicações preconcebidas, de
acordo com o interesse desse grupo de usuários
10/01/2011 16Conceitos Básicos
BANCO DE DADOS
– Um banco de dados é uma coleção lógica e coerente de dados
com algum significado inerente. Uma organização de dados
ao acaso (randômica) não pode ser corretamente
interpretada como um banco de dados
– Um banco de dados é projetado, construído e povoado por
dados, atendendo a uma proposta específica. Possui um grupo
de usuários definido e algumas aplicações preconcebidas, de
acordo com o interesse desse grupo de usuários
10/01/2011 17Conceitos Básicos
BANCO DE DADOS
• um banco de dados possui algumas fontes das quais os dados são
derivados, alguns níveis de interação com os eventos do mundo
real e um público efetivamente interessado em seus conteúdos
10/01/2011 18Conceitos Básicos
BANCO DE DADOS
• A definição de um banco de dados implica em:
Especificar os tipos de dados,
Especificar as estruturas,
Especificar as restrições
para que os dados possam ser armazenados
10/01/2011 19Conceitos Básicos
BANCO DE DADOS
• Um banco de dados pode ser de qualquer tamanho e de
complexidade variável
– Limitação:
• MEMÓRIA DE ARMAZENAMENTO!
• Um banco de dados pode ser gerado e mantido manual ou
automaticamente (computadorizado)
10/01/2011 20Conceitos Básicos
BANCO DE DADOS
• Um catálogo de cartões bibliotecários é um banco de dados que
oferece a possibilidade de ser criado e mantido manualmente
• Um banco de dados computadorizado pode ser criado e mantido
tanto por um grupo de aplicativos escritos especialmente para
essa tarefa como por um sistema gerenciador de banco de
dados – SGBD
10/01/2011 21Conceitos Básicos
BANCO DE DADOS
• Uma planilha de dados em Excel pode ser considerada um banco
de dados?
• Um arquivo de registros sequênciais pode ser considerado um
banco de dados?
10/01/2011 22Conceitos Básicos
SISTEMA DE BANCO DE DADOS
SISTEMA DE BANCO DE DADOS
• Chama-se a união do banco de dados e o software de Sistema de
Gerenciamento de Banco de Dados (SGBD) de
– sistema de banco de dados
10/01/2011 Conceitos Básicos 24
SISTEMAS DE BANCO DE DADOS
10/01/2011
Definição dos Dados Armazenados(metadados)
Banco de DadosArmazenados
Programa para processamentode consultas / programas
Software para acesso aosDados Armazenados
SW SGBD
Programas de Aplicações / Consultas (Queries)
Usuários / Programadores / Programa
25Conceitos Básicos
SISTEMA DE BANCO DE DADOS
• Características de um sistema de BD
1. Natureza autodescritiva do sistema de banco de dados;
2. Isolamento entre os programas e os dados, e a abstração dos
dados;
3. Suporte para as múltiplas visões dos dados;
4. Compartilhamento dos dados e processamento de transações
de multiusuários;
10/01/2011 26Conceitos Básicos
SISTEMA DE BANCO DE DADOS
Natureza autodescritiva do sistema de banco de dados
Uma característica fundamental entre banco de dados e
sistema de banco de dados é que o último
possui o banco de dados e uma completa definição deste
banco armazenado no catálogo (metadados)
O catálogo possui a informação da estrutura de cada arquivo,
o tipo e o formato armazenado de cada item e suas
restrições
10/01/2011 27Conceitos Básicos
SISTEMA DE BANCO DE DADOS
Isolamento entre Programas e Dados e Abstração de Dados
Ao contrário do processamento tradicional de arquivo, os
programas para acesso ao SGBD geralmente não exigem
alterações no código, pois a estrutura está armazenada no
catálogo do SGBD separado do programa de acesso
(aplicação)
Essa propriedade é chamada de independência programa-
dados
10/01/2011 28Conceitos Básicos
SISTEMA DE BANCO DE DADOS
Isolamento entre Programas e Dados e Abstração de Dados
Uma operação (método ou função) é especificada em duas partes:
– A interface e a implementação, a primeira inclui a assinatura
do método com seus parâmetros e a segunda são as linhas de
programação
– Os programas invocam essas operações sem ter que precisar
saber como estão implementadas
– Essa propriedade é chamada de independência programa-
operação
10/01/2011 29Conceitos Básicos
SISTEMA DE BANCO DE DADOS
Suporte para as múltiplas visões de dados
Uma visão de banco de dados pode ser um subconjunto de um
banco de dados, derivados dos arquivos de banco de dados,
mas não explicitamente armazenados. Exemplo:
A idade derivado do dado data_nascimento
Pode se restringir as visões conforme a permissão do usuário.
Exemplo:
Visão do Histórico Escolar ou dos Pré-requisitos do curso
Visão dos dados financeiros
10/01/2011 30Conceitos Básicos
SISTEMA DE BANCO DE DADOS
Compartilhamento de Dados e o Processamento de Transação
Multiusuário
Uma transação é um programa em execução ou processo que
inclui um ou mais acessos ao banco de dados, como leitura ou
atualização de registros
Cada transação deve executar um acesso logicamente correto
ao banco de dados, sem a interferência de outras transações
O SGBD deve garantir as propriedades de transações
10/01/2011 31Conceitos Básicos
SISTEMA DE BANCO DE DADOS
Compartilhamento de Dados e o Processamento de Transação
Multiusuário
Propriedades de transações:
– Isolamento
– Atomicidade
10/01/2011 32Conceitos Básicos
SISTEMA DE BANCO DE DADOS
Compartilhamento de Dados e o Processamento de Transação
Multiusuário
• Isolamento
Garante que cada transação possa ser efetuada de forma
isolada de outras transações (mesmo sendo centenas
simultaneamente)
• Atomicidade
Garante que todas as operações em BD, em uma transação,
sejam executadas ou que nenhuma delas o seja
10/01/2011 33Conceitos Básicos
SISTEMA DE BANCO DE DADOS
• Um BD que armazena informações de ALUNOS e CURSOS
10/01/2011
ALUNO Nome Matricula Turma Curso_Hab
Bruno 17 1 CC3380
Daniel 8 2 CC3380
CURSO Nome NumCurso Créditos Departamento
Introdução a CC CC1310 4 CC
Estrutura de Dados CC3320 4 CC
Matemática Discreta MAT2410 3 MAT
Banco de Dados CC3380 3 CC
34Conceitos Básicos
SISTEMA DE GERENCIAMENTO DE BANCO DE DADOS
SISTEMAS DE GERENCIAMENTO DE BD
• Um Sistema Gerenciador de Banco de Dados (SGBD) é uma
coleção de programas que permitem aos usuários criar e manter
um banco de dados
• A construção de um banco de dados é o processo de armazenar
os dados em alguma mídia apropriada controlada pelo SGBD
10/01/2011 36Conceitos Básicos
SISTEMAS DE GERENCIAMENTO DE BD
• O compartilhamento permite aos múltiplos usuários e aos
programas acessar, de forma concorrente, o banco de dados
• A manipulação de um banco de dados consiste em pesquisar,
alterar, inserir e remover dados para refletir mudanças no
minimundo e também para gerar relatório
10/01/2011
O que é o minimundo?
37Conceitos Básicos
SISTEMAS DE GERENCIAMENTO DE BD
• Duas funções importantes de um SGBD:
– proteção e manutenção
Proteger o sistema contra mau funcionamento ou falhas
(crashes) no HW / SW;
Proteger o sistema de acessos não autorizados ou
maliciosos;
Manter o sistema de banco de dados é permitir a
evolução dos requisitos que se alteram ao longo do tempo
10/01/2011 38Conceitos Básicos
REFERÊNCIA
• ELMASRI, R., NAVATHE, S. B. Sistemas de Banco de Dados,
4ª Edição. Editora Pearson Addison Wesley. Ano 2005
10/01/2011 39Conceitos Básicos