Upload
oona
View
28
Download
0
Embed Size (px)
DESCRIPTION
Arquitetura P2P (Integração de Dados). Luciana Pereira Oliveira [email protected] www.cin.ufpe.br/~lpo Professora: Valéria Times Duração: 30 minutos Data: 11/02/2005. Arquitetura Peer-to-Peer (P2P). Definição de Sistema de Banco de Dados P2P: - PowerPoint PPT Presentation
Citation preview
Arquitetura P2P(Integração de Dados)
Luciana Pereira OliveiraLuciana Pereira [email protected]
www.cin.ufpe.br/~lpo
Professora: Valéria TimesProfessora: Valéria Times
Duração: 30 minutosDuração: 30 minutos
Data: 11/02/2005Data: 11/02/2005
• Definição de Sistema de Banco de Dados P2P:– Não há distinção entre Clientes e Servidores.– Todas as máquinas têm todas as funcionalidades dos SGBDs.– Podem se comunicar com outras máquinas para executar
transações e consultas. (Distribuição da computação local).– Topologia da rede pode ser modificada dinamicamente.– Possivelmente, diferentes Esquemas
• Vantagens:– Disponibilidade do Sistema e dos Dados– Escalabilidade
• Dificuldades:– Consistência dos Dados– Otimização das Consultas– Maior Complexidade nas Operações
Arquitetura Peer-to-Peer (P2P)
• Esquema conceitual global – Descrição global e unificada da fontes; e transparência de
distribuição.
Processo de Integração
Traduçãode Esquemas
Integração de Esquema
DB 1
Local esquema 1
Tradutor 1
Integrador
Esquema Global
Tradutor 2 Tradutor n
N modelos
RepresentaçãoCanônica
Local esquema 2 Local esquema n
DB 2 DB n
•Mapeamento de Esquemas –Regras de mapeamento entre esquemas locais e o esquema global
•Integração de Esquemas–Homogeneização– Integração:
Completa, Mínima
• EIL – Heterogeneidade da organização dos dados físicos.
• ECG - Estrutura lógica dos dados em todos os sites.
• ECL - Fragmentação e replicação.
• O modelo favorece:– Independência de dados.– Transparência de
localização.– Transparência de
replicação.
Arquitetura Geral
EsquemaExterno2
EsquemaExterno3
EsquemaExterno1
EsquemaConceitual
Local_A
EsquemaInternoLocal_A
EsquemaConceitual
Local_B
EsquemaInternoLocal_B
EsquemaConceitual
Local_C
EsquemaInternoLocal_C
Esquema Conceitual Global
Detalhes dos Componentes da Arquitetura Geral
Processador do Usuário
Tradutor da interface do usuário
Controlador de dados semânticos
Otimizador de consulta global
Monitor de execução globalDG
ECG
EE
Processador de Dados Processador de consulta local
Gerenciador de recuperação local
Processador de suporte runtime
ECL
EIL
Log doSistema
UsuárioSolicitação do UsuárioRespostas do Sistema
Componente Processador do Usuário
Processador do Usuário
Tradutor da interface do usuário
Controlador de dados semânticos
Otimizador de consulta global
Monitor de execução globalDG
ECG
EE
Processador de Dados
Processador de consulta local
Gerenciador de recuperação local
Processador de suporte runtime
ECL
EIL
Log doSistema
Usuário
Solicitação do UsuárioRespostas do Sistema
Processador de Dados Processador de consulta local
Gerenciador de recuperação local
Processador de suporte runtime
ECL
EIL
Log doSistema
Processador do Usuário
Tradutor da interface do usuário
Controlador de dados semânticos
Otimizador de consulta global
Monitor de execução globalDG
ECG
EE
Usuário
Solicitação do UsuárioRespostas do Sistema
Componente Processador de Dados
• Baseado em modelos lógicos
• Bancos de dados relacionais
• Definições:– Banco de dados local: conjunto de dados,
índices e restrições que serão compartilhados. – Regra de coordenação: mapear objetos que
estão em diferentes nós.– Sistema P2P– Consulta
Sistema P2P coDB
Integração P2P
Cidadão-3NomeJoãoRosaRobertaRoberta
Conclusão não desejável no P2P
BD1 BD2 BD3
BD interno BD público BD da Agência de Pensões
Masculino-2NomeJoãoCarlosJosé
Feminino-2NomeMariaRosaCarla
União-3Nome NomeJoão RosaRoberto Roberta
Cidadão-1Nome StatusJoão CasadoMaria SolteiroCarlos SolteiroJosé SolteiroRosa Casado
Regras BD1 e BD2:– Cidadão-1(x,y) => (Masculino-2(x) V Feminino-2(x))
Regras BD2 e BD3– Masculino-2(x) => Cidadão-3(x)– Feminino-2(x) => Cidadão-3(x)
Regras BD1 e BD3– Cidadão-1(x) => Cidadão-3(x)
Regras Cíclicas– Cidadão-1(x,”Casado”) => União-3(x,y)– União-3(x,y) => Cidadão-1(x,”Casado”) ^ Cidadão-1(y,”Casado”)
Arquitetura para Processamento de Consultas DistribuídasRegra de Coordenação na Arquitetura coDB
Relaçõespeer1
Cabeça
Corpo 2
peer1Compartilha
algumas variáveis da relação
Relaçõespeer2
Cabeça 1
Corpo 2
peer2Compartilha
algumas variáveis da relação
Relaçõespeer3
Cabeça 1
Corpo 2
peer3Compartilha
algumas variáveis da relação
C1C1
C3 Possibilidade de Importar dados de peers conhecidos de um dado peer.
Arquitetura para Processamento de Consultas DistribuídasRegra de Coordenação na Arquitetura coDB
Cidadão-1
peer1
Feminino-2Masculino-2
Masculino-2(x)
Cidadão-3(x)
peer2
União-3Cidadão-3
Cabeça 1
Corpo 2
peer3Compartilha
algumas variáveis da relação
C1C1
C3 Possibilidade de Importar dados de peers conhecidos de um dado peer.
C2
Cidadão-1(x)Cidadão-1(x,y)
Cidadão-3(x)Masculino-2(x)
V Feminino-2(x))
• O gerenciado do banco de dados (MBD) pode variar dinamicamente:– adicionar(corpo i,cabeça j, regra,identificados)– remover(corpo i,cabeça j, regra,identificados)– adicionar(nó, regra)– remover(nó)
Comportamento Dinâmico da Rede
= Encaminha Consulta
= Processa Consulta
= Solicita
= Encontra Resulta
= Encaminha Resposta
Processamento de Consulta e Atualização
Arquitetura P2P (coDB)
• Um nó consiste de:– Uma camada P2P– Um banco de dados local (LDB)– Um esquema de banco de dados
(DBS)
• A camada P2P possui:– A interface com o usuário (UI)– Camada JXTA– Tradutor (Wrapper)– Gerenciador do banco de
dados (DBM)
Camadas do coDB
Interface com o Usuário
Gerenciador do banco de dados
JXTA
Wrapper
Camada P2P
Peer 1
Banco de dadosLocal (LDB)
DBS
Interface de Consulta
Camadas do coDB
Interface com o Usuário
Gerenciador do banco de dados
JXTA
Wrapper
Camada P2P
Peer 1
Banco de dadosLocal (LDB)
DBS
• Processa:- Consultas de usuários
- Consultas que vieram da rede
- Requisições de atualizações globais
- Requisições de consultas dependentes
• É responsável pelo processamento de resultados de consultas do banco de dados local e da rede.
• Gerencia:- A propagação de consultas
- Pedidos de atualização
- Resultados de atualização na rede
Camadas do coDB
Interface com o Usuário
Gerenciador do banco de dados
JXTA
Wrapper
Camada P2P
Peer 1
Banco de dadosLocal (LDB)
DBS
Camadas do coDB
Interface com o Usuário
Gerenciador do banco de dados
JXTA
Wrapper
Camada P2P
Peer 1
Banco de dadosLocal (LDB)
DBS
Por exemplo, quando o banco de dados local não suporta consultas aninhadas, é responsabilidade do wrapper fornecer este suporte
Camadas do coDB
Interface com o Usuário
Gerenciador do banco de dados
JXTA
Wrapper
Camada P2P
Peer 1
Banco de dadosLocal (LDB)
DBS
Rede de banco de dados P2P
peer2
peer4
peer3
• Visão geral de integração
• Diversas possibilidades de integração– XML– Tabelas Virtuais (Oracle)– Regras de coordenação
• Arquiteturas de Sistemas de Bancos de Dados:– P2P– Cliente/Servidor– Vários Bancos de Dados
Considerações Finais
• F. Enrico, K. Gabriel, L. Andrei e Z. Ilya; “The coDB Robust Peer-to-Peer Database System”.
• M. Tamer Özsu e Patrick Valduriez; “Princípios de Sistemas de Bancos de Dados Distribuídos”
Referências