• Nenhum resultado encontrado

Introdução a Computação

N/A
N/A
Protected

Academic year: 2021

Share "Introdução a Computação"

Copied!
58
0
0

Texto

(1)

Introdução a

Computação

Prof. MSc. Edilberto Silva

Aula 04 – SGBD – Sistemas

Gerenciadores de Bancos de

Dados

(2)

Conceitos Básicos

• DADOS: são fatos em sua forma primária.

Ex: nome do funcionário, número peças de

um estoque...

• INFORMAÇÃO: conjunto de fatos

organizados de maneira significativa

Ex: com os dados das peças em estoque,

pode-se obter a lista de peças em falta.

(3)

Sistema de Arquivos

Controle Acadêmico Alunos Turmas Disciplinas CEFET Controle Administrativo Deptos. Disciplinas Turmas Salas Professores Controle Pessoal Deptos. Professores Funcionários

Cada aplicação com seu conjunto de dados Descrição dos dados dentro da aplicação

Falta de compartilhamento Redundância de Dados Difícil Manutenção

Dificuldades na segurança dos dados

(4)

Por que não usar sistemas de

arquivos?

• Sistemas de Arquivos:

– Não disponibilizam linguagem de consulta

– Esquema de dados é limitado

– Acesso concorrente aos dados por diversos usuários ou aplicações não apresenta segurança adequada

(5)

Por que não usar sistemas

de arquivos?

• Sistemas de Arquivos:

– Não permitem o armazenamento de grandes volumes de dados

– Sistema de backup é ineficiente

(6)

O que é um Banco

de Dados?

• Conjunto estruturado de dados de uma empresa ou aplicação, armazenado em

computador e cuja organização é determinada por um modelo de dados

• Usados na área comercial e de negócios, engenharia, medicina, educação, científica, gestão, etc.

(7)

Sistema de Banco

de Dados

• É um sistema de armazenamento de dados cujo objetivo global é registrar e manter

informação.

• um sistema de Banco de Dados envolve quatro componentes maiores: dados,

(8)

SGBD - Sistema Gerenciador de Banco de Dados

• Conjunto de aplicativos cujo principal

objetivo é gerenciar o acesso e a correta manutenção dos dados armazenados em um banco de dados.

• Ex: Oracle, SQL Server, DB2, PostGreSql

(9)

SGBD - Sistema Gerenciador de Banco de Dados

(10)

Características de um

SGBD...

• Garantir a ACID

– Atomicidade, Consistência – Isolamento e Durabilidade

• Segurança - criação e manipulação de dados de maneira amigável e proteção aos dados quanto aos acessos

indesejáveis ;

• Integridade - garantia da qualidade dos dados;

(11)

Características de um

SGBD...

• Controle de Concorrência – acesso aos dados de forma concorrente;

• Recuperação de Paradas e Falhas - no caso de pane o Banco de Dados possa ser recuperado de maneira confiável

(12)

Dados

Nome Matrícula Turma

Dhara Magalhães 56743223 001

Paulo Silva 56743217 001

Aluno

Nome Número CH Origem

Banco de Dados I 015 100 CDSI

Álgebra Linear 002 67 CMAT

Estruturas de Dados 009 100 CGES

Disciplina

NumDisc NúmeroPreReq

015 009

015 010

Pré-requisito

(13)

Metadados

• Dados sobre dados

• Permitem a manutenção, representação e identificação dos dados

• Garantem a consistência e a persistência das definições das unidades de dados

• Proporcionam aos usuários um

entendimento comum das unidades de dados

(14)

Metadados

• Tabela: Estudante

http://www.edilms.eti.br Prof. Edilberto Silva - [email protected]

Tabela n°Colunas Primary Key

Estudante 4 Matrícula

Disciplina 5 Código

Matrícula 3 Nome + Código

Coluna Tipo Tamanho Nulo Default

Matricula int 4 N

Nome varchar 50 N

DataNascimento date 8 N Getdate()

(15)

Evolução dos SGBDs

• Os primeiros SGBDs comerciais surgiram no final dos anos 60

• Evoluíram dos sistemas de arquivos básicos

• Modelos iniciais:

– Hierárquico ou baseado em árvores – Redes baseado em grafos

(16)
(17)

Vantagens da Utilização de

um SGBD

• Projetado para gerir um grande volume de dados

– A importância da informação nas

empresas determina o valor do banco de dados

• Controle de Redundância - garantindo consistência

(18)

Vantagens da Utilização de

um SGBD

• Restrição de Acesso

• Controle de Integridade

• Compartilhamento dos Dados

• Mecanismos de Backup e Recuperação

(19)

Vantagens da Utilização de

um SGBD

• Metadados organizados num catálogo/dicionário de dados • Múltiplas visões de usuário

• Representação de relacionamentos e estruturas complexas entre dados,

(20)

Outras vantagens - SGBDs

• Uso de padrões

• Redução do tempo de programação de aplicações

• Flexibilidade

• Disponibilidade de informação

atualizada para todos os usuários

• Economia da empresa na organização dos dados

(21)

Classificação Atual dos SGBDs

Modelo de Dados SGBD Distribuído Homogêneos Heterogêneos SGBD federados ou Rede Hierárquico Relacional Orientado a Objetos Objeto-Relacional

(22)

Principais SGBDs

• Oracle xx G (Grid computing) • IBM DB2

• Microsoft SQL Server

• PostgreSQL (Objeto Relacional) • MySQL

• ADABAS*

(23)

Banco de dados não

convencionais

• XML (eXtensible Markup Language) • JSON (JavaScript Object Notation) • SqlLite (for Android/iOS)

• Banco de Dados Multimídia: figuras, vídeos e sons; • Bancos de Dados Geográficos: mapas dos mais

diversos temas, dados climatológicos, imagens de satélite...

(24)

Exemplo de JSON

http://www.edilms.eti.br Prof. Edilberto Silva - [email protected] { "firstName": "John",

"lastName": "Smith", "age": 25,

"address": {

"streetAddress": "21 2nd Street", "city": "New York",

"state": "NY", "postalCode": 10021 }, "phoneNumbers": [ { "type": "home", "number": "212 555-1234”}, { "type": "fax", "number": "646 555-4567" } ] } http://en.wikipedia.org/wiki/JSON

(25)

Modelagem

(26)

Modelagem

(27)

Modelos

• Os objetivos dos modelos são:

– Comunicação com clientes

• pode-se mostrar ao cliente, através de um produto de demonstração, parte ou todo o comportamento externo de um sistema

(28)

http://www.edilms.eti.br Prof. Edilberto Silva - [email protected]

(29)

Modelos

• Os objetivos dos modelos são: – Visualização:

• permite visualizar idéias antes de torná-las concretas

– Redução da complexidade:

• os modelos reduzem a complexidade dividindo-a em um pequeno número de coisas importantes a serem tratadas de

(30)

ANALISTA Mini-mundo Modelo Lógico Modelo Físico Modelo Conceitual Banco de Dados Realidade http://www.edilms.eti.br

(31)

Objetivos da Modelagem Conceitual de Dados

• Representar um ambiente observado – O significado da informação

• Servir de instrumento para comunicação

• Favorecer o processo de verificação e validação

(32)

Objetivos da Modelagem Conceitual de Dados

• Capturar aspectos de relacionamento entre os objetos observados

• Servir de referencial para a geração de estruturas de dados

• Estabelecer conceitos únicos a partir de visões diversas

(33)

Modelo Conceitual

• Modelo abstrato que descreve a

estrutura de um BD de forma

independente de um SGBD particular

(restrições impostas por tecnologias,

técnicas

de

implementação

ou

(34)

Modelo Conceitual

• primeira etapa do projeto de um sistema de aplicação em banco de dados

• utilizado para entendimento, transmissão, validação de conceitos, mapeamento do

ambiente, diálogo entre usuários e

desenvolvedores

(35)

Exemplo de Modelo Conceitual

(36)

Modelo Lógico

• Os objetos, suas características e

relacionamentos têm uma representação de acordo com as regras de implementação e limitações impostas por algum tipo de tecnologia

– Relacional, Orientada a Objetos, Objeto-Relacional

(37)

Modelo Lógico

• Resulta da aplicação de regras de derivação sobre um modelo conceitual

(38)

Modelo Lógico

• descreve as estruturas que estarão

contidas no banco de dados, de

acordo

com

as

possibilidades

permitidas

pela

abordagem,

sem

considerar

características

de

armazenamento do SGBD

(39)

Modelo Lógico

• é dependente do TIPO/MODELO de dados particular do SGBD que será usado

– Exemplo: Tabela/Relação -> Modelo Relacional

Identidade Nome Telefone

23470981 Eva Andressa 21 23867543 10876457 Juju Salimeni 81 65439878 65438945 Paolla Oliveira 83 2256756

(40)

Modelo Físico

• partirá do lógico e descreverá as estruturas físicas de armazenamento de dados

(tamanho de campos, índices, métodos de acesso do SGBD, etc)

• Linguagens e Notações dependem do SGBD – Pode ser necessário o conhecimento do

modo físico de implementação das estruturas de dados

(41)

Instâncias e Esquemas

• Instâncias – conjunto de informações

contidas em determinado banco de dados em um dado momento

• Esquema – projeto geral do banco de dados. São alterados com pouca

(42)

Independência de Dados

• Define-se Independência de Dados como a imunidade das aplicações a mudanças na estrutura de

armazenamento ou na estratégia de acesso

– Física – Lógica

(43)

Independência de Dados

• Ex.: a forma como os dados estão

organizados na memória secundária e a forma de se ter acesso a eles podem

ser ditadas pelas necessidades da aplicação (arquivo armazenado no formato indexado sequencial)

(44)

Independência de Dados

• Física – modificação no esquema físico sem alteração da aplicação. Ex.

– Alterações para melhorar desempenho

– a forma como os dados estão organizados na memória secundária e a forma de se ter acesso a eles podem ser ditadas pelas

necessidades da aplicação (arquivo armazenado no formato indexado sequencial)

(45)

Independência de Dados

• Lógica – modificação no esquema

lógico sem alteração da aplicação. (Ex. Novo campo, ordem de campos,

tamanho do campo).

• A independência lógica é mais difícil de ser alcançada. Aplicações

normalmente mais dependentes da

(46)

Componentes SGBD

(47)

Componentes

• Metadados: informação sobre a estrutura dos dados

– Esses metadados encontram-se armazenados e organizados no “catálogo” do banco

– Num SGBD relacional:

(48)

Gerenciador de Armazenamento

• Faz a intermediação entre os pedidos

solicitados (consultas ou alterações) e os dados armazenados

• Consiste em:

– Gerenc. de buffer: manipula memória principal

– Gerenc. de arquivos: localiza os

arquivos no disco, alocando os blocos necessários

(49)

Processador de Consultas

• Transforma uma consulta ou

manipulação de alto nível em uma sequência de requisições a dados armazenados

• Traduz essa “sentença” em uma sequência de pedidos de maneira otimizada (melhor algoritmo) para o

(50)

Processador de Consultas

• Manipula pedidos de consultas ou alterações nos dados ou metadados • Processa linguagens disponíveis para

diferentes tipos de usuários

– Usuário final, programador, DBA

(51)

O que é uma Transação

• Grupo de operações a serem executadas de forma agrupada ou sequencialmente • Unidade de execução

(52)

Gerenciador de Transações

• Responsável pela integridade do sistema

– Deve garantir que as diversas

consultas em execução não interfiram umas nas outras e que os dados não sejam perdidos em caso de falha do sistema

(53)

Propriedades ACID

• Atomicity: tudo de uma transação é executado ou nada é.

• Consistency: após completar uma ou mais transações, o BD satisfaz condições de

(54)

Propriedades ACID

• Isolation: quando duas ou mais transações rodam, seus efeitos devem ser exclusivos

• Durability: se a transação foi completada, seu resultado não deve ser perdido em caso de falha de sistema

(55)

Normalização

• A normalização é o processo de organizar os dados em um banco de dados.

• inclui a criação de tabelas e estabelecer relacionamentos entre essas tabelas de acordo com as regras criadas para proteger os dados e para tornar o banco de dados mais flexíveis, eliminando a redundância e dependência inconsistente.

• Dados redundantes desperdiçam espaço em disco e criam problemas de manutenção.

• Se os dados que existem em mais de um local devem ser

alterados, os dados devem ser alterados da mesma maneira em todos os locais.

(56)

Formas Normais

http://www.edilms.eti.br Prof. Edilberto Silva - [email protected]

Primeira Forma Normal (1FN) Uma relação está na 1FN

se somente todos os domínios básicos contiverem somente valores atômicos (não contiver grupos

repetitivos). Para atingir esta forma normal devemos eliminar os grupos de repetição.

Segunda Forma Normal (2FN) Uma relação R está na

2FN se e somente se ela estiver na primeira e todos os atributos não chave forem totalmente dependentes da chave primária (dependente de toda a chave e não

(57)

Formas Normais

Terceira Forma Normal (3FN) Uma relação R está na

3FN se somente estiver na 2FN e todos os atributos não chave forem dependentes não transitivos da chave

primária (cada atributo for funcionalmente dependente apenas dos atributos componentes da chave primária ou se todos os seus atributos não chave forem

(58)

Obrigado!

Edilberto Silva

www.edilms.eti.br

Prof. Edilberto Silva www.edilms.eti.br

Referências

Documentos relacionados

Membro_Faculdade (Matrícula: Inteiro, Nome: string[50], Carga: Inteiro, IniContrato: data, Curso: string[30], professor: booleano, aluno: booleano). Membro

 Compreender a importância do domínio das técnicas da escrita para a produção de uma informação de qualidade e saber aplica-las às especificidades dos diferentes géneros

forficata recém-colhidas foram tratadas com escarificação mecânica, imersão em ácido sulfúrico concentrado durante 5 e 10 minutos, sementes armazenadas na geladeira (3 ± 1

Todo ser humano é único e, por isso, toda sala de aula é um berço de diversidade. O que os sistemas educacionais fizeram ao longo dos tempos foi homogeneizar o sistema educacional

É presidente da Academia Catari- nense de Letras, membro do Instituto Histórico e Geográfico de Santa Catarina, da Associação Catarinense de Imprensa e do Instituto de

No caso de uma apresentação de Artigo em formato Áudio, o arquivo deverá ser enviado em CD por correio postal para:.. Comitê Editorial INFEIES - RM

Silva e Márquez Romero, no prelo), seleccionei apenas os contextos com datas provenientes de amostras recolhidas no interior de fossos (dado que frequentemente não há garantia

Essa publicação (Figura 6) destaca a “grande ameaça” que está por trás do pânico moral: a destruição da família nuclear (pai, mãe e filhos).Em seguida o pastor