PUC - BD3 Sistemas de Banco de Dados Distribuídos IBM DB2 Carlos Henrique Rafael Siqueira.
Transcript of PUC - BD3 Sistemas de Banco de Dados Distribuídos IBM DB2 Carlos Henrique Rafael Siqueira.
PUC - BD3Sistemas de Banco de Dados Distribuídos
IBM DB2Carlos HenriqueRafael Siqueira
Introdução
- Primeiro SGBD relacional multiplataforma, multimídia e pronto para Web.
- Robusto e flexível.
- Escalonamento inigualável.
- Mais de 60 milhões de usuários e 300 mil empresas.
Escalabilidade:
- DB2 roda em hardware IBM, SUN e HP, com sistemas Unix, Windows, Linux, NUMA-Q e OS/2.
- Suporte de conectividade com sistemas de handheld Windows CE, Linux e Palm OS.
Projeto de BD-Distribuído
- Arquitetura DRDA - Distributed Relational Database Architecture (Arquitetura de Banco-de-dados Relacional Distribuído).
- Tabelas Grandes – 64 bilhões de bytes.
- Recuperação integrada.
Projeto de BD-Distribuído – Fragmentação
- Suporte à fragmentação somente horizontal - Hash partitioning (balanceamento) e Partition maps (paralelismo).
- Usa o termo “partição”.
Projeto de BD-Distribuído - Partition maps
Projeto de BD-Distribuído – Mecanismos de Replicação
• Ferramenta: DataPropagator• Interface de programação: asnCapture e asnApply• Componentes
– Administration Interfaces– Change-Capture– Apply Program
Projeto de BD-Distribuído – Administration Interfaces
• São usadas para criar tabelas de controle que armazenam o critério de replicação.
• As tabelas de controle são usadas para que os componentes de replicação possam se comunicar e também para gerenciar as tarefas de replicação.
Projeto de BD-Distribuído – Change-capture mechanisms
• Capture program– Captura as modificações pelo log.– Armazena temporariamente em tabelas.– Roda continuamente (eventuais paradas).
• Capture triggers
Projeto de BD-Distribuído – Apply Program
• Inicialmente acessa diretamente a tabela de origem para popular a tabela de destino (full-refresh copy).
• Copia as mudanças das tabelas temporárias.
• Associado a um Control Server
• Verificam as atualizações nas Control Tables.
Projeto de BD-Distribuído – Schedule for Apply Program
• Synchronous replication
• Asynchronous replication– Interval timing– Event timing– On-demand timing
Projeto de BD-Distribuído – Servidores Lógicos
Todo componente de replicação reside em um servidor lógico. Existem 3 tipos:
• Source server – Change-capture mechanisms– Source tables– Control tables
• Target server– Target tables
• Control server– Control tables
Projeto de BD-Distribuído – Configurações de Replicação
• Data distribution
• Data consolidation
• Update anywhere
• Occasionally connected
Data distribution
Data consolidation
Update Anywhere
Occasionally connected
Projeto de BD-Distribuído – Resolução de conflitos
• A resolução padrão de conflito considera que se ocorre um conflito entre a origem e o destino, a origem ganha.
• É aconselhado modelar a aplicação de forma que não ocorram conflitos. Para isso é sugerido que se utilize o update anywhere nas seguintes condições:– Fragmentação por chave– Fragmentação por tempo
• Você tem a opção de ignorar os conflitos e rejeitar qualquer alteração conflitante.
Update Anywhere sem risco de conflitos
Controle do ambiente distribuído
- Gerenciamento de View.- Controle de Segurança.- Controle de Integridade.
Controle do ambiente distribuído – Controle de segurança
Pode ser especificado o tipo de autenticação.
– SERVER O login e o password são validados no servidor do DDCS.
– CLIENT O login e o password são validados no cliente do DDCS.
– DCS O login e o password são validados no “host system”.
+ Snapshot de tabelas de permissões e acessos.
Transparência
- Transparência de distribuição- Transparência de replicação- Transparência de fragmentação
Controle do ambiente distribuído – Transparência de distribuição
DB2 federated database system• Baseado em “apelidos”• Bancos Suportados
– DB2 Universal Database – DB2 for OS/390 Version 5 with PTF PQ07537 – DB2 for MVS V2R3 with APAR PN43135, UN75958, UN54600, and
UN56735 – DB2 for MVS V3R1 with APAR PN70612, UN42626, UN54601, and
UN73393 – DB2 for MVS V4R1 with APAR PN70612 – SQL/DS – DB2 for Common Servers V2 – DB2 Parallel Edition – Oracle V7.0.16 or later – Any OLE DB provider
Processamento Distribuído de Consulta
- O otimizador de consultas do DB2 conhece características do ambiente de hardware, do dado, tabelas, particionamento.
- Além dos processos, o intervalo de tempo entre geração de estatísticas no DB2 é de 30 minutos.
- RUNSTAT manual.
Processamento Distribuído de Consulta
- O BD2 trabalha com planos de acesso estáticos e dinâmicos.
- Paralelismo - Suporta níveis múltiplos de consultas em paralelo.
Processamento Distribuído de Consulta
- Custo medido em “timeron”.
Processamento Distribuído de Consulta
- Visual Explain
- Explain
Processamento Distribuído de Transação
- Transaction logging centralizado.
- Transaction Manager e TP Monitor distribuído.
- Utiliza two-phase commit.
Suporte replicação e acesso a dados de SGBD Heterogêneo
- DataPropagator.
- DataJoiner.
Replicação
Dados
FIM