[ban - aula 2]sistemas de banco de dados - joinville.udesc.br · sistema gerenciador de banco de...

27
BANCO DE DADOS Universidade do Estado de Santa Catarina Centro de Ciências Tecnológicas Departamento de Ciência da Computação Prof. Alexandre Veloso de Matos [email protected]

Upload: lenhan

Post on 11-Nov-2018

214 views

Category:

Documents


0 download

TRANSCRIPT

BANCO DE DADOSUniversidade do Estado de Santa CatarinaCentro de Ciências TecnológicasDepartamento de Ciência da ComputaçãoProf. Alexandre Veloso de [email protected]

INTRODUÇÃO� Hoje é inegável que a sobrevivência das organizações depende de

dados precisos e atualizados.

� Além disso, cada vez mais, as organizações estão na dependência de dados que acabam tornando-se abundantes e complexos.

� Assim, ferramentas de gerenciamento, extração rápida e precisa de informações é fundamental.

� Sistema Gerenciador de Banco de Dados (SGBDs).

SISTEMA GERENCIADOR DE BANCO DE DADOS� Um SGBD é uma coleção de programas que permite aos usuários criar e

manter um BD.

� É um sistema de software de propósito geral que facilita as operações de:� Definição/Criação

� Consulta/ Manipulação

� Atualização

� Eliminação.

Create

Read

Update

Delete

SGBDS – PROPÓSITOS GERAIS� Definição de banco de dados envolve

especificar dados com seus respectivos tipos de dados para serem gravados no banco de dados, com uma descrição detalhada de cada tipo de dado.

� Construção de um banco de dados é o processo de consistir e gravar inicialmente dados no banco de dados.

� Manipulação de um banco de dados inclui funções como consulta por dados específicos e atualização para refletir as alterações no mundo real.

SGBD – VISÃO GERAL

Aplicações

Programa para Processamento de Consultas/Programas

Software para Acesso aos Dados Armazenados

Definição dos Dados Armazenados (metadados)

Banco de Dados Armazenado

SGBD

SGBD – VISÃO GERAL

Esquema Conceitual

Esquema Interno

Visão Externa Visão Externa

Usuários Finais...NÍVEL EXTERNO

NÍVEL CONCEITUAL

NÍVEL INTERNO

BD ARMAZENADO

VANTAGENS DE UM SGBD [1/5]� Controle de Redundância:

� Evita a duplicação de esforços no caso de atualizações de registros;

� Evita o desperdício de espaço de armazenamento;

� Evita a inconsistência de dados armazenados.

VANTAGENS DE UM SGBD [2/5]� Restrição de acesso não autorizado:

� Permite que alguns usuários só possam ter acesso a dados específicos;

� Ex: restrição de acesso para proteger dados financeiros e de recursos humanos.

VANTAGENS DE UM SGBD [3/5]� Restrição de integridade:

� A nota de um aluno deve ser um valor decimal entre zero e 10;

� Toda disciplina existente na tabela Histórico Escolar deve também existir na tabela Disciplina;

� Todo aluno deve ter um único valor por disciplina para a coluna conceito na tabela Histórico Escolar.

VANTAGENS DE UM SGBD [4/5]� Garantia de Backup e Restauração:

� Um SGBD possui facilidades para recuperação de falhas de hardware ou de software;

� Exemplo: recuperar o BDs para um estado válido ao falhar durante uma transação.

VANTAGENS DE UM SGBD [5/5]� Potencial para garantir padrões:

� Padrões podem ser definidos para os nomes de tabelas, colunas e terminologias em geral;

� Tendo um controle centralizado dos dados, o responsável pode assegurar que esses padrões serão seguidos;

� Isso não ocorreria em um ambiente no qual cada grupo de usuário tem o controle de seus próprios arquivos e softwares.

CICLO DE VIDA DE UM BD

Análise das Necessidades

Projeto Conceitual

Projeto Lógico

Projeto Físico

Sintonização

Monitoração

Implementação

INDEPENDÊNCIA DE DADOS� Com SBDs estamos mais propensos a alcançar Independência de Dados!

� É a capacidade de modificar a definição dos esquemas em determinado nível, sem afetar o esquema de nível superior.� Independência de dados física: é a capacidade de modificar o esquema físico sem

que, com isso, qualquer programa de aplicação precise ser reescrito.

� Independência de dados lógica: é a capacidade de modificar o esquema lógico sem que, com isso, qualquer programa de aplicação precise ser reescrito. Modificações no nível lógico são necessárias sempre que uma estrutura lógica do banco de dados é alterada (por exemplo, mudança do sistema monetário).

CICLO DE VIDA DE UM BD� Análise das Necessidades

� Atividades:� Análise dos planos empresariais;

� Levantamento das necessidades gerais de informações;

� Levantamento das necessidades de processamento.

� Resultados:� Especificação das necessidades globais de informações de forma não estruturada.

CICLO DE VIDA DE UM BD� Projeto Conceitual

� Atividades:� Estruturação das necessidades gerais de informações;

� Especificação das entidades e relacionamentos;

� Identificação dos principais atributos.

� Resultados:� Esquema conceitual do BD, ou seja, o Modelo Entidade e Relacionamentos.

CICLO DE VIDA DE UM BD� Projeto Lógico

� Atividades:� Análise das opções de modelagem do SGBD (Ex: Modelo Relacional);

� Mapeamento do esquema conceitual para o Modelo Relacional.

� Resultados:� Estrutura lógica do BD para o SGBD correspondente.

CICLO DE VIDA DE UM BD� Projeto Físico

� Atividades:� Análise das opções de hardware e sistema operacional;

� Especificação das características físicas do BDs.

� Resultados:� Estrutura física do BD para o SGBD correspondente.

CICLO DE VIDA DE UM BD� Implementação

� Atividades:� Geração e processamento das definições do BD na linguagem de definição de dados (DDL);

� Construção dos programas e carga inicial dos BD.

� Resultados:� O Banco de Dados.

CICLO DE VIDA DE UM BD� Monitoração

� Atividades:� Utilização do BD pelos Sistemas de BD;

� Acompanhamento da utilização;

� Análise de desempenho.

� Resultados:� Medidas de desempenho do BD.

CARACTERIZAÇÃO DE SGBDS� Quanto à Arquitetura

� Quanto ao Modelo de Dados

� Quanto ao número de usuários� Monousuário� Multiusuário

� Quanto aos locais de processamento� Centralizado� Distribuído

� Quanto ao custo

� Quanto tipo de acesso� De uso geral� De uso especial

ARQUITETURAS DE SGBDS� Centralizada

� Todo processamento (quando remoto) executado em um único computador central

� Cliente/Servidor� Arquitetura de 2 camadas

� Arquitetura de 3 camadas

ARQUITETURA CENTRALIZADA DE UM SGBD

Interface do usuário + aplicações Todo processamento de todos usuários

executado centralmente.

ARQUITETURA C/S DE 2 CAMADAS PARA SGBDS

SGBD

Servidor de Impressão

Servidor de Arquivos

rede

� Incorporação de funcionalidades de SGBD;� Conexões estabelecidas com um ou mais SGBDs.

ARQUITETURA C/S DE 3 CAMADAS PARA SGBDS

SGBD

rede

Servidor Web

BD

ARQUITETURA C/S DE 3 CAMADAS PARA SGBDS

GUI

Interface Web

Camada de

Apresentação

Programas de

aplicação, páginas

Web

Camada lógica de

negócios

SGBD Camada de

Serviços de BD

Cliente

Servidor de aplicação ou Servidor Web

Servidor de Banco de Dados

MODELOS DE DADOS� Após o projeto conceitual e no consequente projeto lógico, para que um

SGBD armazene um BD necessita obedecer a um modelo de dados� Trata-se, portanto, da forma como os dados serão estruturados em um BD (qual

modelo seguir)

� Alguns exemplos:� Modelo de dados relacional

� Modelo de dados de objeto

� Modelo de dados hierárquico

� Modelo de dados em rede

� Objeto-relacionais

� XML nativo

� Modelo de dados não-relacional (NoSQL)

LEITURA RECOMENDADA� ELMASRI, Ramez; NAVATHE, Sham. Sistemas de banco de dados. 6. ed.

São Paulo: Pearson, 2010. 788 p. ISBN 9788579360855 (broch.). Número de Chamada: 005.74 E48s 6.ed. => Cap. 1

� DATE, C. J. Introdução a sistemas de bancos de dados. Rio de Janeiro: Campus, c2004. 865 p. ISBN 8535212736 (broch.). Número de Chamada: 005.74 D232i. 8 ed.. => Cap. 1