• Nenhum resultado encontrado

Computação Instrumental

N/A
N/A
Protected

Academic year: 2021

Share "Computação Instrumental"

Copied!
62
0
0

Texto

(1)

Computação Instrumental

Engenharia Ambiental 2º Semestre de 2016

(2)

José da Silva Rua B 37 Vila Aurora 18045-587 Sorocaba São Paulo Brasil

Carlos Petronio Rua B 48 Vila Aurora 18045-587 Sorocaba São Paulo Brasil

Lídia Reali Rua B 68 Vila Aurora 18045-587 Sorocaba São Paulo Brasil

Paulo Cruz Rua B 128 Vila Aurora 18045-587 Sorocaba São Paulo Brasil

José da Silva

Carlos Petronio

Lídia Reali

Paulo Cruz

Rua B Vila Aurora 18045-587 Sorocaba 37

48

68

128

São Paulo Brasil

Redundância de Dados

(3)

Integridade Relacional

CLIENTE: CONTA:

Marcos 2234

Silvia 8745

(4)

Uso de planilhas e arquivos

• Falta de padronização.

• Subordinação de programas a arquivos. • Redundância e inconsistência dos dados. • Falta de integridade.

• Segurança inexistente.

(5)

Abordagem de Banco de Dados

• Redução de redundância ou redundância controlada.

• Maior controle sobre a integridade dos dados.

• Maior controle sobre a segurança dos dados.

• Transparência dos dados quanto às aplicações.

(6)

Dados – Matéria bruta de que é feita a informação. Valores

fisicamente registrados no banco de dados.

Informação – Dado que significa alguma coisa para alguém e é

utilizado em algum contexto.

12 dado

Idade de uma criança matriculada na escola X.

(7)

Sistema Gerenciador de Banco

de Dados (SGBD)

• Entre o banco de dados físico, isto é, os dados

armazenados, e os usuários do sistema,

encontra-se o sistema gerenciador de banco de dados.

• O sistema de gerenciamento de banco de dados

compõe-se de uma coleção de arquivos inter-relacionados e de um conjunto de

programas que permitem aos usuários acessar

(8)

Gerenciador de Banco de Dados Interface

(9)

Princípios de um SGBD

• Garantia de integridade dos dados

• Segurança de dados: A segurança dos dados está ligada à acessibilidade dos dados. O objetivo é o de garantir o acesso ao banco de dados ou à parte deste apenas por pessoas devidamente autorizadas.

– Acesso identificado (login + senha). – Arquivos de auditoria

(10)

Princípios de um SGBD

•Controle de concorrência: Em sistemas multiusuários é necessário preservar a consistência dos dados quando diversos usuários estão

manipulando os mesmos concomitantemente.

Exemplo:

Transação A: Transferir R$500,00 da conta de Marcos para a de Silvia. Transação B: Subtrair 10% da conta de todos.

Marcos 1000,00 A Marcos 500,00 B Marcos 450,00 Silvia 300,00 A Silvia 800,00 B Silvia 720,00 Marcos 1000,00 A Marcos 500,00 B Marcos 450,00 Silvia 300,00 B Silvia 270,00 A Silvia 770,00

(11)

Profissionais e Atividades

Envolvidas

Usuário final: Precisa ter acesso à base de dados para

consultar, modificar e gerar relatórios.

• Interage com o sistema por meio de programas de

aplicação ou através de interfaces integrantes do

próprio sistema.

• A maioria dos sistemas fornece pelo menos uma

aplicação embutida, ou seja, um processador de

linguagem de consulta interativo, com o qual o usuário é capaz de emitir instruções de alto nível para o SGBD.

Outros possuem ainda interfaces adicionais através das quais os usuários operam escolhendo itens de menus ou preenchendo formulários.

(12)

Profissionais e Atividades

Envolvidas

Projetista da base de dados:

• Decide o conteúdo do banco de dados: Identifica os dados a serem armazenados e escolhe estruturas

apropriadas para representar e armazenar tais dados, ou seja, fazer o projeto conceitual do banco de dados.

Programador de aplicações:

• Responsável pelo desenvolvimento dos programas que

utilizam o banco de dados, caracteristicamente escritos

em linguagens de terceira geração (Cobol, PL/I, C, Pascal, Java, etc).

• Tais programas operam sobre os dados de todas as

formas usuais: recuperação, inserção, deleção e

atualização de dados são executadas pelo envio de solicitações apropriadas ao SGBD.

(13)

Profissionais e Atividades

Envolvidas

Administrador de banco de dados (DBA):

• É a pessoa, ou grupo de pessoas, responsável pelo controle do sistema, tendo as seguintes

responsabilidades:

– Servir de elo de ligação com os usuários: Garantir a disponibilidade dos dados de que eles necessitam.

– Definir os controles de segurança e de integridade: Estes podem ser considerados como parte do esquema conceitual.

– Definir estratégias de recuperação: Na eventualidade de danos a partes do banco de dados, causados seja por erro humano, por falha no hardware ou no sistema operacional, é importante

recuperar os dados o mais rapidamente possível e com o mínimo de conseqüências para o restante do sistema.

– Monitorar o desempenho e atender as necessidades de modificações.

(14)

Abstração de Dados

Uma vez que muitos dos usuários de

bancos de dados não são treinados em

computação, complexidades relacionadas a como os dados são armazenados e

mantidos fica escondida dos mesmos

através de diversos níveis de abstração

que simplificam a interação do usuário com o sistema

(15)

Abstração de Dados

Nível interno: Nível mais baixo de abstração que descreve como os

dados são realmente armazenados:

– Tipos de registros armazenados, índices existentes, seqüência física dos registros.

Nível conceitual: A visão conceitual é a visão do conteúdo total do

banco de dados, em termos:

– Da descrição das entidades e relacionamentos e

– Aspectos relacionados a controle de segurança e integridade. No modelo relacional, os objetos visíveis neste nível são tabelas relacionais.

Nível visual (externo): Descreve a forma como os dados são vistos

pelos usuários individuais, de qualquer grau de sofisticação que tanto podem ser programadores de aplicações como usuários de terminais. Cada usuário tem uma linguagem a sua disposição: Linguagem de programação ou interface baseada em formulários e sistemas de menu.

(16)
(17)

Sistemas Relacionais

Um sistema relacional é aquele no qual:

• Os dados são percebidos pelos usuários como tabelas;

• Os operadores à disposição dos usuários são operadores que geram novas tabelas a partir das antigas.

(18)

N O M E R U A C I D A D E N Ú M E R O C O N T A J o ã o R i a c h u e l o S o r o c a b a 9 0 0 A n a G a l O s ó r i o I t ú 5 5 6 S a n d r a A c á c i a s S o r o c a b a 8 0 0 M a r c o s A p a r e c i d a S ã o R o q u e 6 4 7 N Ú M E R O C O N T A S A L D O 9 0 0 5 5 , 0 0 5 5 6 1 0 0 0 0 0 , 0 0 8 0 0 4 2 6 7 , 0 0 6 4 7 3 5 8 , 0 0 as linhas são os registros

as colunas são os campos

Os campos de uma tabela separam os tipos de informações contidos naquela tabela

(19)

Tipos de campos

• Texto (alfa-numérico) • Numérico

• Datas e horas • Lógicos

• Memos (armazena informações de tamanhos variáveis)

• Binários

(20)

Os campos de datas e horas são armazenados como números e

convertidos para formatos específicos no momento da apresentação.

Os campos lógicos são usados para armazenar informações que são intrinsecamente binárias: sim/não, masculino/feminino.

(21)

BLOB (Binary Large Objects) é um tipo de campo que pode armazenar imagens,

(22)

Chaves

Cada registro em um banco de dados deve ter um campo cujo valor seja único,

possibilitando a identificação deste

registro e certificando-se que não existam registros iguais.

(23)

Formulários (FORMS)

São telas personalizadas que permitem a interação com os dados, possibilitando inserções, deleções e exibição. Um

formulário pode estar vínculado a uma única ou várias tabelas.

Existem ferramentas que permitem a criação de diversas interfaces para a

entrada de dados, como caixas de texto, de verificação e grupo de opções.

(24)
(25)
(26)
(27)

Vinculando Tabelas de Banco de

Dados

Em um banco de dados são usadas

diversas tabelas para se armazenar as diferentes informações. Exemplos: tabela de clientes tabela de fornecedores tabela de produtos tabela de funcionários

(28)

Vinculando Tabelas de Banco de

Dados

Embora existam várias tabelas, os dados contidos nelas podem ser relacionados,

como por exemplo: quais os fornecedores de materiais para cada produto.

Os SGBDs que permitem que se trabalhe com várias tabelas são chamados de

(29)
(30)
(31)

Conceitos do Modelo

Entidade-Relacionamento

(32)

- O modelo Entidade-Relacionamento foi proposto originalmente por Peter Pin Shan-Chen (MIT) em

1976, no trabalho entitulado "The

Entity-Relationship Model - Toward a Unified View of Data".

- Tem sido usado rotineiramente na análise e modelagem de sistemas.

- O modelo entidade-relacionamento (E-R) é

baseado na percepção do mundo real como um conjunto de objetos básicos chamados

entidades e nos relacionamento entre as mesmas.

(33)

Entidade

- É uma classe de objetos do mundo real que possuem uma existência independente e que possuem propriedades em comum sobre as quais deseja-se armazenar informações.

- Tais objetos podem ter existência física: Pessoa, Carro, Livro.

- Podem ainda ter apenas existência conceitual: Curso Universitário, Projeto.

(34)

Instância de entidade:

É uma ocorrência de uma entidade. O equivalente lógico de uma instância é um registro de uma tabela. Exemplo: A

entidade Funcionário possui várias

instâncias: o funcionário Pedro da Costa,

com CPF 123456789, que mora no

endereço R. A, 23; o funcionário Paulo da Silva, com CPF 987654321, que mora no endereço R. B, 32 e assim por diante.

(35)

Atributos

Propriedades particulares de uma entidade (ou relacionamento).

(36)

36

Classificação de Atributos:

Atributos compostos: Podem ser divididos em

subpartes com significados independentes.

Exemplo: O endereço da entidade e1 pode ser

subdividido em Rua e número, Cidade, Estado e CEP. São úteis quando há a necessidade de se referenciar os mesmos como um todo, mas

algumas vezes, apenas alguns de seus

componentes.

Atributos simples: Em contraposição aos atributos compostos, são aqueles que não são

(37)

Classificação de Atributos:

Atributos monovalorados: Em contraposição aos

atributos multivalorados, são aqueles que

assumem um único valor para cada instância de uma entidade. Exemplo: Nome, CPF, data de aniversário são todos exemplos de atributos que, para uma dada pessoa, assumem um único valor.

Atributos multivalorados: São aqueles que

podem assumir múltiplos valores para uma dada instância da entidade. Exemplo: É comum que uma pessoa tenha vários números de telefone ou vários endereços comerciais.

(38)

Classificação de Atributos:

Atributos opcionais: Quando uma entidade não

possui valor para determinado atributo ou quando seu valor é desconhecido, um valor especial chamado null é usado neste caso.

Exemplo: O atributo Apartamento só se

aplicaria para aqueles funcionários que

(39)

Classificação de Atributos:

Atributos derivados: Aqueles cujos valores que

assumem podem ser obtidos a partir de outro atributo ou a partir de relacionamentos entre entidades. Exemplo: O atributo idade pode ser obtido a partir da data de nascimento de uma pessoa.

Atributo-Chave: Atributo ou conjunto de atributos que identificam de modo único cada instância de uma entidade. Exemplo: O número do seguro social do funcionário. O CPF do funcionário.

(40)

Chave-Primária

Pode ser escolhida dentre quaisquer um dos atributos chave, devendo-se evitar usar chaves-primárias compostas.

(41)

Relacionamento

Classe de associações entre duas ou mais entidades. Exemplo: Há um

relacionamento “Trabalha-Para” entre a entidade Funcionário e a entidade

(42)

Instância de relacionamento

Ocorrência particular de um relacionamento, envolvendo instâncias específicas de cada uma das entidades envolvidas.

Exemplo: O Funcionário João da Silva

“trabalha para” o Departamento de

(43)
(44)

Símbolos Utilizados

• Retângulos – Representam entidades. • Elipses – Representam atributos.

• Losângulos – Representam relacionamentos. • Linhas – Ligam atributos a entidades e

(45)

Atributos de Relacionamentos

Os relacionamentos também podem ter

atributos, da mesma forma que as

entidades. Exemplo: Necessidade de se registrar o número de horas que um funcionário dedica a um determinado projeto.

(46)

O grau de um relacionamento

• Binários: Envolvem duas entidades.

• Binários recursivos: Envolvem a associação entre duas instâncias de uma única entidade as quais participam do relacionamento

(47)

O grau de um relacionamento

(48)

Mapeamento de Restrições

- O mundo real pode impor certas restrições que são refletidas nos relacionamentos. Exemplo: Uma regra segundo a qual um empregado trabalha apenas para um departamento.

- Dois tipos principais de restrições de

relacionamentos são a razão de cardinalidade de um relacionamento e a dependência de existência (restrição de participação).

(49)

Razão de Cardinalidade

A cardinalidade expressa o número de instâncias de uma entidade às quais uma instância de outra entidade pode estar associada por meio de um relacionamento

e é, obviamente, dependente das

situações reais que estão sendo

(50)

Para um relacionamento binário entre as

entidades A e B, a razão de cardinalidade

pode ser:

• Um para um (1:1)

• Um para muitos (1:N)

(51)

Um para um (1:1): Uma instância da entidade A

está associada a no máximo uma instância da

entidade B, e uma instância da entidade B está

associada a no máximo uma instância da

entidade A.

Exemplo:

(52)

Um para muitos (1:N): Uma instância da entidade

A está associada a várias instâncias da

entidade B, e uma instância da entidade B está

associada a no máximo uma instância da

entidade A.

Exemplo: Funcionário – Trabalha Para – Departamento

(53)

Muitos para muitos (N:M): Uma instância da

entidade A está associada a várias instâncias da

entidade B, e uma instância da entidade B está

associada a várias instâncias da entidade A.

(54)
(55)

Ciclo de vida de um banco de

dados relacional

1. Formulação e análise de requisitos: 2. Projeto lógico do banco de dados: 3. Projeto físico do banco de dados:

4. Distribuição do banco de dados (se necessário distribuir os dados em rede): 5. Implementação do banco de dados,

(56)

a) Relacionamentos naturais entre os dados (independentes de processo).

b) Requisitos de uso (dependentes de

processo).

c) Plataforma: hardware/software: SO, SGBD d) Requisitos de desempenho e integridade.

Resultado: Documento de especificação de

requisitos.

(57)

a) Modelo ER (projeto conceitual)

b) Integração dos múltiplos diagramas ER da empresa.

c) Transformação dos diagramas ER para

tabelas relacionais.

d) Normalização das tabelas relacionais.

Resultado: Esquema global transformado para definições de tabelas.

(58)

a) Modelo ER

(59)

a) Transformação dos diagramas ER para tabelas relacionais.

(60)

3. Projeto físico do banco de dados:

• Métodos de acesso.

4. Distribuição do banco de dados (se necessário distribuir os dados em rede):

• Fragmentação dos dados, replicação:

Minimizar tempo de resposta, minimizar custos, maximizar disponibilidade.

5. Implementação do banco de dados, monitoração e modificação.

(61)

Para a próxima semana

(62)

Aula de Lab de hoje

Referências

Documentos relacionados

Este presente artigo é o resultado de um estudo de caso que buscou apresentar o surgimento da atividade turística dentro da favela de Paraisópolis, uma

Conclui-se que o conhecimento do desenvolvimento ponderal evidenciou um padrão racial, que o perímetro torácico está altamente associado ao peso corporal e que equações de

This is a retrospective study of 101 patients treated between 1997 and 2005 for NHL and SK at the Hospital das Clínicas of the Federal University of Minas Gerais, Belo Horizonte, MG,

Estes resultados apontam para melhor capacidade de estabelecimento inicial do siratro, apresentando maior velocidade de emergência e percentual de cobertura do solo até os 60

Entendendo, então, como posto acima, propõe-se, com este trabalho, primeiramente estudar a Lei de Busca e Apreensão para dá-la a conhecer da melhor forma, fazendo o mesmo com o

A variação do pH da fase móvel, utilizando uma coluna C8 e o fluxo de 1,2 mL/min, permitiu o ajuste do tempo de retenção do lupeol em aproximadamente 6,2 minutos contribuindo para

A não uniformização quanto ao método de referência pode promover diferenças entre as curvas de calibração geradas por laboratórios de dosimetria citogenética, que podem

Little e Amyra El Khalili; também foi dissertado sobre a Agroecologia, entendida como um caminho para uma agricultura mais sustentável; sobre a ciência homeopatia e sua aplicação