PUC - BD3 Sistemas de Banco de Dados Distribuídos IBM DB2 Carlos Henrique Rafael Siqueira

Preview:

Citation preview

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

Recommended