modelagem e banco de dados ii · 2010. 9. 13. · banco de dados ii désiré nguessan...

37
Modelagem e Modelagem e Banco de Dados II Banco de Dados II Désiré NGuessan [email protected]

Upload: others

Post on 05-Mar-2021

2 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Modelagem e Banco de Dados II · 2010. 9. 13. · Banco de Dados II Désiré NGuessan NGUESSAN.DESIRE@POLI.USP.BR. Atividade de Laboratório: Fragmentação, Replicação e Processamento

Modelagem e Modelagem e Banco de Dados IIBanco de Dados II

Désiré NGuessan

[email protected]

Page 2: Modelagem e Banco de Dados II · 2010. 9. 13. · Banco de Dados II Désiré NGuessan NGUESSAN.DESIRE@POLI.USP.BR. Atividade de Laboratório: Fragmentação, Replicação e Processamento

Atividade de Laboratório: Atividade de Laboratório: Fragmentação, Replicação e Fragmentação, Replicação e Processamento de ConsultaProcessamento de Consulta

Désiré NGuessan

Processamento de ConsultaProcessamento de Consultade BD Distribuídode BD Distribuído

Page 3: Modelagem e Banco de Dados II · 2010. 9. 13. · Banco de Dados II Désiré NGuessan NGUESSAN.DESIRE@POLI.USP.BR. Atividade de Laboratório: Fragmentação, Replicação e Processamento

Arquitetura Distribuída do SQL Server Arquitetura Distribuída do SQL Server

• O SQL Server utiliza uma arquitetura na qual vários

servidores distribuídos podem ser acessados a partir de

um único servidor

• Para que isto seja possível, estes servidores devem ser

configurados como Linked Servers.

Désiré NGuessan

configurados como Linked Servers.

Page 4: Modelagem e Banco de Dados II · 2010. 9. 13. · Banco de Dados II Désiré NGuessan NGUESSAN.DESIRE@POLI.USP.BR. Atividade de Laboratório: Fragmentação, Replicação e Processamento

Arquitetura Distribuída do SQL Server Arquitetura Distribuída do SQL Server

• linked Server é um conceito simples e muito funcional

quando queremos consultar dados que estão em outras

instâncias ou até mesmo em outros tipos de base de

dados como o ORACLE, ACCESS etc.

Désiré NGuessan

Page 5: Modelagem e Banco de Dados II · 2010. 9. 13. · Banco de Dados II Désiré NGuessan NGUESSAN.DESIRE@POLI.USP.BR. Atividade de Laboratório: Fragmentação, Replicação e Processamento

Arquitetura Distribuída do SQL Server Arquitetura Distribuída do SQL Server

Désiré NGuessan

Page 6: Modelagem e Banco de Dados II · 2010. 9. 13. · Banco de Dados II Désiré NGuessan NGUESSAN.DESIRE@POLI.USP.BR. Atividade de Laboratório: Fragmentação, Replicação e Processamento

Arquitetura Distribuída do SQL Server Arquitetura Distribuída do SQL Server

Désiré NGuessan

Page 7: Modelagem e Banco de Dados II · 2010. 9. 13. · Banco de Dados II Désiré NGuessan NGUESSAN.DESIRE@POLI.USP.BR. Atividade de Laboratório: Fragmentação, Replicação e Processamento

Arquitetura Distribuída do SQL Server Arquitetura Distribuída do SQL Server

• Criando um linked server apontando para um servidor

remoto

– A configuração de um Linked Server pode ser feita

usando a stored procedure :

• sp_addlinkedserver

Désiré NGuessan

• sp_addlinkedserver

• ou através do SQL Server Management Studio Express, selecionando a opção de menu 'New Linked Server':

Page 8: Modelagem e Banco de Dados II · 2010. 9. 13. · Banco de Dados II Désiré NGuessan NGUESSAN.DESIRE@POLI.USP.BR. Atividade de Laboratório: Fragmentação, Replicação e Processamento

Arquitetura Distribuída do SQL Server Arquitetura Distribuída do SQL Server

Désiré NGuessan

Page 9: Modelagem e Banco de Dados II · 2010. 9. 13. · Banco de Dados II Désiré NGuessan NGUESSAN.DESIRE@POLI.USP.BR. Atividade de Laboratório: Fragmentação, Replicação e Processamento

Arquitetura Distribuída do SQL Server Arquitetura Distribuída do SQL Server

• Criando um linked server apontando para um servidor

remoto

– Defina o nome e o tipo do servidor. Na

página 'Security' defina mapeamentos de

Désiré NGuessan

usuários entre os servidores local e remoto,

caso necessário;

Page 10: Modelagem e Banco de Dados II · 2010. 9. 13. · Banco de Dados II Désiré NGuessan NGUESSAN.DESIRE@POLI.USP.BR. Atividade de Laboratório: Fragmentação, Replicação e Processamento

Arquitetura Distribuída do SQL Server Arquitetura Distribuída do SQL Server

Désiré NGuessan

Page 11: Modelagem e Banco de Dados II · 2010. 9. 13. · Banco de Dados II Désiré NGuessan NGUESSAN.DESIRE@POLI.USP.BR. Atividade de Laboratório: Fragmentação, Replicação e Processamento

Arquitetura Distribuída do SQL Server Arquitetura Distribuída do SQL Server

• Criando um linked server apontando para um servidor

remoto

– Defina como proceder para logins que não

foram mapeados (sugestão: use a opção 'Be

Désiré NGuessan

made using the login´s current security

context').

Page 12: Modelagem e Banco de Dados II · 2010. 9. 13. · Banco de Dados II Désiré NGuessan NGUESSAN.DESIRE@POLI.USP.BR. Atividade de Laboratório: Fragmentação, Replicação e Processamento

Arquitetura Distribuída do SQL Server Arquitetura Distribuída do SQL Server

Désiré NGuessan

Page 13: Modelagem e Banco de Dados II · 2010. 9. 13. · Banco de Dados II Désiré NGuessan NGUESSAN.DESIRE@POLI.USP.BR. Atividade de Laboratório: Fragmentação, Replicação e Processamento

Arquitetura Distribuída do SQL Server Arquitetura Distribuída do SQL Server

• Acessando dados no Servidor remoto

– Devemos referenciar o nome do servidor, o

banco de dados, o esquema e o nome da

relação.

Désiré NGuessan

relação.

– SElECT * FROM [MADELEINE-

PC\SQLEXPRESS].EMPRESA.dbo.Departamento

Page 14: Modelagem e Banco de Dados II · 2010. 9. 13. · Banco de Dados II Désiré NGuessan NGUESSAN.DESIRE@POLI.USP.BR. Atividade de Laboratório: Fragmentação, Replicação e Processamento

Fragmentação de Dados no SQL Server Fragmentação de Dados no SQL Server

• Tabelas podem ser fragmentados no SQL Server

criando fragmentos em vários servidores interligados e

distribuindo os dados entre estes fragmentos.

• Os fragmentos da tabela podem ser reunidos em uma

única tabela. Para isto é preciso criar uma visão na base

Désiré NGuessan

única tabela. Para isto é preciso criar uma visão na base

de dados

Page 15: Modelagem e Banco de Dados II · 2010. 9. 13. · Banco de Dados II Désiré NGuessan NGUESSAN.DESIRE@POLI.USP.BR. Atividade de Laboratório: Fragmentação, Replicação e Processamento

Fragmentação de Dados no SQL Server Fragmentação de Dados no SQL Server

• Uma visão é uma relação que não armazena dados,

composta dinamicamente por uma consulta

– A visão deve fazer a união dos fragmentos, no caso

de partições horizontais,

– ou junção dos fragmentos, no caso de partições

Désiré NGuessan

– ou junção dos fragmentos, no caso de partições

verticais.

Page 16: Modelagem e Banco de Dados II · 2010. 9. 13. · Banco de Dados II Désiré NGuessan NGUESSAN.DESIRE@POLI.USP.BR. Atividade de Laboratório: Fragmentação, Replicação e Processamento

Fragmentação de Dados no SQL Server Fragmentação de Dados no SQL Server

• Tabelas podem ser fragmentados no SQL Server

criando fragmentos em vários servidores interligados e

distribuindo os dados entre estes fragmentos.

• Os fragmentos da tabela podem ser reunidos em uma

única tabela. Para isto é preciso criar uma visão na base

Désiré NGuessan

única tabela. Para isto é preciso criar uma visão na base

de dados (relação que não armazena dados, composta

dinamicamente por uma consulta)

– A visão deve fazer a união dos fragmentos, no caso

de partições horizontais,

– ou junção dos fragmentos, no caso de partições

verticais.

Page 17: Modelagem e Banco de Dados II · 2010. 9. 13. · Banco de Dados II Désiré NGuessan NGUESSAN.DESIRE@POLI.USP.BR. Atividade de Laboratório: Fragmentação, Replicação e Processamento

Fragmentação de Dados no SQL Server Fragmentação de Dados no SQL Server

• Fragmentação Horizontal

Désiré NGuessan

Page 18: Modelagem e Banco de Dados II · 2010. 9. 13. · Banco de Dados II Désiré NGuessan NGUESSAN.DESIRE@POLI.USP.BR. Atividade de Laboratório: Fragmentação, Replicação e Processamento

EMPRESAEMPRESA==

{ EMPREGADO, DEPARTAMENTO, { EMPREGADO, DEPARTAMENTO, DEPARTAMENTO_LOCALIZAÇÕES, PROJETO, DEPARTAMENTO_LOCALIZAÇÕES, PROJETO,

Désiré NGuessan

DEPARTAMENTO_LOCALIZAÇÕES, PROJETO, DEPARTAMENTO_LOCALIZAÇÕES, PROJETO, TRABALHA_EM, DEPENDENTE }TRABALHA_EM, DEPENDENTE }

Page 19: Modelagem e Banco de Dados II · 2010. 9. 13. · Banco de Dados II Désiré NGuessan NGUESSAN.DESIRE@POLI.USP.BR. Atividade de Laboratório: Fragmentação, Replicação e Processamento

Désiré NGuessan

ESQUEMA RELACIONAL DO BD EMPRESA

Page 20: Modelagem e Banco de Dados II · 2010. 9. 13. · Banco de Dados II Désiré NGuessan NGUESSAN.DESIRE@POLI.USP.BR. Atividade de Laboratório: Fragmentação, Replicação e Processamento

Désiré NGuessan

BDD EMPRESA

Page 21: Modelagem e Banco de Dados II · 2010. 9. 13. · Banco de Dados II Désiré NGuessan NGUESSAN.DESIRE@POLI.USP.BR. Atividade de Laboratório: Fragmentação, Replicação e Processamento

Suponha que a organização possua 3 sítios:

Um para cada departamento atual, os sítios 2 e 3

são para os departamentos 5 e 4, respectivamente.

Em cada um desses sítios esperamos o acesso

freqüente as informações de EMPREGADO e de

PROJETO para os empregados que trabalham

naquele departamento e para os projetos controlados

por aquele departamento. Alem disso, supomos que

esses sítios acessem principalmente os atributos

Désiré NGuessan

esses sítios acessem principalmente os atributos

NOME, SSN, SALARIO e SUPERSSN de

EMPREGADO. O sitio 1 é usado pela sede da

organização e acessa freqüentemente todas as

informações de empregado e de projeto, alem de

manter rastro das informações de DEPENDENTE

para propósito de seguro.

Page 22: Modelagem e Banco de Dados II · 2010. 9. 13. · Banco de Dados II Désiré NGuessan NGUESSAN.DESIRE@POLI.USP.BR. Atividade de Laboratório: Fragmentação, Replicação e Processamento

Désiré NGuessan

Page 23: Modelagem e Banco de Dados II · 2010. 9. 13. · Banco de Dados II Désiré NGuessan NGUESSAN.DESIRE@POLI.USP.BR. Atividade de Laboratório: Fragmentação, Replicação e Processamento

Désiré NGuessan

Page 24: Modelagem e Banco de Dados II · 2010. 9. 13. · Banco de Dados II Désiré NGuessan NGUESSAN.DESIRE@POLI.USP.BR. Atividade de Laboratório: Fragmentação, Replicação e Processamento

Désiré NGuessan

Page 25: Modelagem e Banco de Dados II · 2010. 9. 13. · Banco de Dados II Désiré NGuessan NGUESSAN.DESIRE@POLI.USP.BR. Atividade de Laboratório: Fragmentação, Replicação e Processamento

De acordo com as ultimas exigências o banco de

dados inteiro pode ser armazenado no sitio 1

Désiré NGuessan

Page 26: Modelagem e Banco de Dados II · 2010. 9. 13. · Banco de Dados II Désiré NGuessan NGUESSAN.DESIRE@POLI.USP.BR. Atividade de Laboratório: Fragmentação, Replicação e Processamento

Para determinar os fragmentos a serem replicados

no sítios 2:

primeiro podemos fragmentar horizontalmente

DEPARTAMENTO segundo sua chave

DNUM=5

DEP5 = σDNUM = 5 (DEPARTAMENTO)

Désiré NGuessan

DEP5 = σDNUM = 5 (DEPARTAMENTO)

Page 27: Modelagem e Banco de Dados II · 2010. 9. 13. · Banco de Dados II Désiré NGuessan NGUESSAN.DESIRE@POLI.USP.BR. Atividade de Laboratório: Fragmentação, Replicação e Processamento

Para determinar os fragmentos a serem replicados

no sítio 2:

em seguida aplicamos a fragmentação para

as relações EMPREGADO, PROJETO e

LOCAIS_DEPTO com base em suas chaves

estrangeiras para o numero do departamento

chamadas DNO, DNUM e DNUMERO

respectivamente.

Désiré NGuessan

respectivamente.

Page 28: Modelagem e Banco de Dados II · 2010. 9. 13. · Banco de Dados II Désiré NGuessan NGUESSAN.DESIRE@POLI.USP.BR. Atividade de Laboratório: Fragmentação, Replicação e Processamento

Para determinar os fragmentos a serem replicados

nos sítios 2:

EMP5 = σDNO=5 (EMPREGADO)

PRO5 = σDNUM=5 (PROJETO)

Désiré NGuessan

DEP_LOCS5 = σDNUMERO=5 (DPTO_LOCALIZACOES)

Page 29: Modelagem e Banco de Dados II · 2010. 9. 13. · Banco de Dados II Désiré NGuessan NGUESSAN.DESIRE@POLI.USP.BR. Atividade de Laboratório: Fragmentação, Replicação e Processamento

Para determinar os fragmentos a serem replicados

nos sítios 2:

EMP5 = σDNO=5 (EMPREGADO)

EMP5 = π NOME, SSN, SALRIO,

Désiré NGuessan

EMP5 = π NOME, SSN, SALRIO,

SUPERSSN, (EMPREGADO)

Page 30: Modelagem e Banco de Dados II · 2010. 9. 13. · Banco de Dados II Désiré NGuessan NGUESSAN.DESIRE@POLI.USP.BR. Atividade de Laboratório: Fragmentação, Replicação e Processamento

Para determinar os fragmentos a serem replicados

nos sítios 2:

EMP5 = σDNO=5 (EMPREGADO)

EMP_TRABALHAEM = EMP5 X TRABALHA_EM

σ

Désiré NGuessan

TRABALHA_EM5AUX = σSSN=ESSN EMP_TRABALHAEM

TRABALHA_EM5 =πESSN,NRP,HORAS (TRABALHA_EM5AUX )

Page 31: Modelagem e Banco de Dados II · 2010. 9. 13. · Banco de Dados II Désiré NGuessan NGUESSAN.DESIRE@POLI.USP.BR. Atividade de Laboratório: Fragmentação, Replicação e Processamento

Para determinar os fragmentos a serem replicados

no sítios 3:

primeiro podemos fragmentar horizontalmente

DEPARTAMENTO segundo sua chave

DNUM=4

DEP4 = σDNUM = 4 (DEPARTAMENTO)

Désiré NGuessan

DEP4 = σDNUM = 4 (DEPARTAMENTO)

Page 32: Modelagem e Banco de Dados II · 2010. 9. 13. · Banco de Dados II Désiré NGuessan NGUESSAN.DESIRE@POLI.USP.BR. Atividade de Laboratório: Fragmentação, Replicação e Processamento

Para determinar os fragmentos a serem replicados

no sítio 2:

em seguida aplicamos a fragmentação para

as relações EMPREGADO, PROJETO e

LOCAIS_DEPTO com base em suas chaves

estrangeiras para o numero do departamento

chamadas DNO, DNUM e DNUMERO

respectivamente.

Désiré NGuessan

respectivamente.

Page 33: Modelagem e Banco de Dados II · 2010. 9. 13. · Banco de Dados II Désiré NGuessan NGUESSAN.DESIRE@POLI.USP.BR. Atividade de Laboratório: Fragmentação, Replicação e Processamento

Para determinar os fragmentos a serem replicados

nos sítios 3:

EMP4 = σDNO=4 (EMPREGADO)

PRO4 = σDNUM=4 (PROJETO)

Désiré NGuessan

DEP_LOCS4 = σDNUMERO=4 (DPTO_LOCALIZACOES)

Page 34: Modelagem e Banco de Dados II · 2010. 9. 13. · Banco de Dados II Désiré NGuessan NGUESSAN.DESIRE@POLI.USP.BR. Atividade de Laboratório: Fragmentação, Replicação e Processamento

Para determinar os fragmentos a serem replicados

nos sítios 3:

EMP4 = σDNO=4 (EMPREGADO)

EMP4 = π NOME, SSN, SALRIO,

Désiré NGuessan

EMP4 = π NOME, SSN, SALRIO,

SUPERSSN, (EMPREGADO)

Page 35: Modelagem e Banco de Dados II · 2010. 9. 13. · Banco de Dados II Désiré NGuessan NGUESSAN.DESIRE@POLI.USP.BR. Atividade de Laboratório: Fragmentação, Replicação e Processamento

Para determinar os fragmentos a serem replicados

nos sítios 3:

EMP4 = σDNO=4 (EMPREGADO)

EMP_TRABALHAEM = EMP4 X TRABALHA_EM

σ

Désiré NGuessan

TRABALHA_EM4AUX = σSSN=ESSN EMP_TRABALHAEM

TRABALHA_EM4=πESSN,NRP,HORAS (TRABALHA_EM5AUX )

Page 36: Modelagem e Banco de Dados II · 2010. 9. 13. · Banco de Dados II Désiré NGuessan NGUESSAN.DESIRE@POLI.USP.BR. Atividade de Laboratório: Fragmentação, Replicação e Processamento

Referência Bibliográfica Referência Bibliográfica

• NAVARTHE S. B, ELMARRI R, Sistemas de Banco de

Dados, Ed. Pearson Addison Wesley, São Paulo, 2005

• HEUSER C A, Projeto de Banco de Dados, Serie Livros

Didáticos Informática UFRGS, Ed. Bookman, Porta

Alegre, 2009

Désiré NGuessan

Alegre, 2009

• SIBERSCHATZ A, KORTH H, SUDARSHAN S, Sistema

de BD, RJ, Elsevier, 2006

Page 37: Modelagem e Banco de Dados II · 2010. 9. 13. · Banco de Dados II Désiré NGuessan NGUESSAN.DESIRE@POLI.USP.BR. Atividade de Laboratório: Fragmentação, Replicação e Processamento

Referência Bibliográfica Referência Bibliográfica

• NAVARTHE S. B, ELMARRI R, Sistemas de Banco de

Dados, Ed. Pearson Addison Wesley, São Paulo, 2005

• HEUSER C A, Projeto de Banco de Dados, Serie Livros

Didáticos Informática UFRGS, Ed. Bookman, Porta

Alegre, 2009

Désiré NGuessan

Alegre, 2009

• SIBERSCHATZ A, KORTH H, SUDARSHAN S, Sistema

de BD, RJ, Elsevier, 2006