sistemas de banco de dados paralelos

39
Banco de Dados Distribuídos e Móveis – 2012.1 Sistemas de Banco de Dados Paralelos Aluno: Márcio Angelo B. de Lira [email protected] Prof.ª : Bernadette Farias Lóscio Ana Carolina Salgado Centro de Informática (CIn) Pós-Graduação em Ciência da Computação Universidade Federal de Pernambuco (UFPE)

Upload: risa

Post on 17-Feb-2016

38 views

Category:

Documents


0 download

DESCRIPTION

Sistemas de Banco de Dados Paralelos. Aluno: Márcio Angelo B. de Lira [email protected] Prof.ª : Bernadette Farias Lóscio Ana C arolina Salgado Centro de Informática ( CIn ) Pós-Graduação em Ciência da Computação Universidade Federal de Pernambuco (UFPE). - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Sistemas de Banco de Dados Paralelos

Banco de Dados Distribuídos e Móveis – 2012.1

Sistemas de Banco de Dados Paralelos

Aluno: Márcio Angelo B. de Lira

[email protected]

Prof.ª : Bernadette Farias Lóscio

Ana Carolina Salgado

Centro de Informática (CIn)

Pós-Graduação em Ciência da Computação

Universidade Federal de Pernambuco (UFPE)

Page 2: Sistemas de Banco de Dados Paralelos

Banco de Dados Distribuídos e Móveis – 2012.1

Sistemas Paralelos de Banco de Dados

2

Roteiro• Arquiteturas de sistemas paralelos de banco de dados• Particionamento de Dados Paralelos• Processamento de consulta paralela• Balanceamento de Carga• Clusters de Banco de Dados• Conclusão

Page 3: Sistemas de Banco de Dados Paralelos

Banco de Dados Distribuídos e Móveis – 2012.1

Motivação

Sistemas paralelos melhoram as velocidades de processamento de E/S usando várias CPUs e discos em paralelo.

As máquinas paralelas estão se tornando cada vez mais comuns contribuído para o avanço dos estudos em sistemas de banco de dados paralelos.

3

Page 4: Sistemas de Banco de Dados Paralelos

Banco de Dados Distribuídos e Móveis – 2012.1

Objetivo

4

• O objetivo deste seminário é a continuidade da disciplina de Banco de dados Distribuído e Móveis, estimulando o aluno a realizar uma pesquisa minuciosa sobre os sistemas de banco de dados paralelos e compartilhar com a turma o conhecimento adquirido.

Page 5: Sistemas de Banco de Dados Paralelos

Banco de Dados Distribuídos e Móveis – 2012.1

Principais conceitos

5

•Paralelismo•Particionamento•Balanceamento•Cluster

Page 6: Sistemas de Banco de Dados Paralelos

Banco de Dados Distribuídos e Móveis – 2012.1

Estado da Arte

6

• Muitas aplicações de dados intensos requerem suporte para bancos de dados muito grandes (por exemplo, centenas de terabytes ou petabytes).

• Exemplos são: e-commerce, data warehousing e data mining.• Apoiar grandes bancos de dados de forma eficiente tanto para OLTP ou

OLAP pode ser abordada através da combinação de computação paralela e gestão de banco de dados distribuído.

• Um computador paralelo, ou multiprocessador, é um tipo especial de sistema distribuído feito de um número de nós (processadores, memórias e discos), conectados por uma rede muito rápida dentro de um ou mais armários na mesma sala.

• A idéia principal é construir um computador muito potente partindo de muitos computadores pequenos, numa relação muito boa de custo / performance, a um custo muito menor do que computadores de grande porte equivalentes

Page 7: Sistemas de Banco de Dados Paralelos

Banco de Dados Distribuídos e Móveis – 2012.1

Estado da Arte

7

• A distribuição de dados pode ser explorada para aumentar o desempenho (através de paralelismo) e disponibilidade (através da replicação).

• A maior parte da investigação em sistemas de base de dados paralelos foi feito no contexto do modelo relacional que proporciona uma boa base para os dados baseado em paralelismo.

• vantagens e limitações das arquiteturas de sistemas paralelos (memória compartilhada, compartilhada disco, compartilhou nada).

• as técnicas para particionamento de dados, processamento de consultas, balanceamento de carga e técnicas de gestão de dados paralelos em clusters de banco de dados.

Page 8: Sistemas de Banco de Dados Paralelos

Banco de Dados Distribuídos e Móveis – 2012.1

Arquiteturas de sistemas paralelos de banco de dados

Objetivos– Sistemas de banco de dados paralelos combinam gerenciamento de banco de dados e

processamento paralelo para aumentar o desempenho e disponibilidade.

– Décadas de 70 e 80.

– Objetivos cobertos pelos os mesmos do SGBD distribuído.

• Alto desempenho– Gerenciamento de dados paralelos, a otimização da consulta, e balanceamento de carga

– O rendimento pode ser aumentado, utilizando paralelismo de inter-consulta, e diminuir os tempos de resposta de transações, usando paralelismo de intra-consulta.

– dividir uma determinada carga igualmente entre todos os processadores.

– Dependendo da arquitetura do sistema paralelo, que pode ser alcançado estaticamente pelo projeto de banco de dados físico adequado ou dinamicamente em tempo de execução.

8

Page 9: Sistemas de Banco de Dados Paralelos

Banco de Dados Distribuídos e Móveis – 2012.1

Arquiteturas de sistemas paralelos de banco de dados

• Alta disponibilidade– Composto de muitos componentes redundantes, aumentando bastante a

disponibilidade de dados e tolerância a falhas.– A replicação de dados em diversos nós é útil para suportar Filover (técnica de

tolerância a falhas que permite o redirecionamento automático de transações a partir de um nó com falha para outro nó que armazena uma cópia dos dados).

– Sobrecarga da cópia disponível.– As soluções para este problema requerem cópias de particionamento de tal

modo que eles podem também ser acessados em paralelo.

9

Page 10: Sistemas de Banco de Dados Paralelos

Banco de Dados Distribuídos e Móveis – 2012.1

Arquiteturas de sistemas paralelos de banco de dados

• Extensibilidade– Extensibilidade é a capacidade de expandir o sistema suavemente através da adição de

processamento e armazenamento de energia para o sistema

– Linear speedup refere-se a um aumento linear no desempenho para uma base de dados de tamanho constante enquanto que o número de nós.

– Linear scaleup se refere a um desempenho sustentado por um aumento linear no tamanho do banco de dados e número de nós

10

Page 11: Sistemas de Banco de Dados Paralelos

Banco de Dados Distribuídos e Móveis – 2012.1

Arquiteturas de sistemas paralelos de banco de dados

Arquitetura FuncionalAssumindo uma arquitetura cliente / servidor, as funções suportadas por um sistema de banco de dados paralelo pode ser dividido em três subsistemas:

• Session Manager– Desempenha o papel de um monitor de transações, proporcionando suporte para as

interações do cliente com o servidor.

– Executa as ligações e desligamentos entre os processos de cliente e os dois outros subsistemas.

• Transaction Manager – Ele supervisiona a execução da transação e commit, ele pode disparar o processo de

recuperação em caso de falha da transação.

– Para acelerar a execução da consulta, ele pode otimizar e paralelizar a consulta em tempo de compilação.

11

Page 12: Sistemas de Banco de Dados Paralelos

Banco de Dados Distribuídos e Móveis – 2012.1

Arquiteturas de sistemas paralelos de banco de dados

Arquitetura Funcional (cont.)• Data Manager

– Ele fornece todas as funções de baixo nível necessários para executar consultas compiladas em paralelo.

– Suporte a transação paralela, gerenciando a cache.

12

Page 13: Sistemas de Banco de Dados Paralelos

Banco de Dados Distribuídos e Móveis – 2012.1

Arquiteturas de sistemas paralelos de banco de dados

13

Page 14: Sistemas de Banco de Dados Paralelos

Banco de Dados Distribuídos e Móveis – 2012.1

Arquiteturas de sistemas paralelos de banco de dados

Arquiteturas Paralelas DBMS

• Memória compartilhada

14

Page 15: Sistemas de Banco de Dados Paralelos

Banco de Dados Distribuídos e Móveis – 2012.1

Arquiteturas de sistemas paralelos de banco de dados

Arquiteturas Paralelas DBMS• Discos compartilhados

15

Page 16: Sistemas de Banco de Dados Paralelos

Banco de Dados Distribuídos e Móveis – 2012.1

Arquiteturas de sistemas paralelos de banco de dados

Arquiteturas Paralelas DBMS• Nada compartilhado

16

Page 17: Sistemas de Banco de Dados Paralelos

Banco de Dados Distribuídos e Móveis – 2012.1

Arquiteturas de sistemas paralelos de banco de dados

Arquiteturas Paralelas DBMS• Arquiteturas Híbridas– NUMA – Cluster

17

Page 18: Sistemas de Banco de Dados Paralelos

Banco de Dados Distribuídos e Móveis – 2012.1

Particionamento de Dados Paralelos

• Round-robin (Rodízio)• Hash • Range (Faixa ou intervalo)

18

Page 19: Sistemas de Banco de Dados Paralelos

Banco de Dados Distribuídos e Móveis – 2012.1

Processamento de consultas paralelas

Paralelismo Consultas

• Paralelismo intra-operador• Paralelismo Inter-operador

19

Page 20: Sistemas de Banco de Dados Paralelos

Banco de Dados Distribuídos e Móveis – 2012.1

Processamento de consultas paralelas

Algoritmos Paralelos para Processamento de Dados

20

Page 21: Sistemas de Banco de Dados Paralelos

Banco de Dados Distribuídos e Móveis – 2012.1

Processamento de consultas paralelas

Otimização de consulta paralela

• Pesquisa Espacial• Modelo de Custo• Estratégia de Pesquisa

21

Page 22: Sistemas de Banco de Dados Paralelos

Banco de Dados Distribuídos e Móveis – 2012.1

Balanceamento de Carga

Definição

22

Page 23: Sistemas de Banco de Dados Paralelos

Banco de Dados Distribuídos e Móveis – 2012.1

Balanceamento de Carga

Problemas de execução paralelas

• Inicialização• Interferências• Inclinação

23

Page 24: Sistemas de Banco de Dados Paralelos

Banco de Dados Distribuídos e Móveis – 2012.1

Balanceamento de Carga

Balanceamento de Carga Intra-Operador

• Técnicas adaptativas• Técnicas especializadas

24

Page 25: Sistemas de Banco de Dados Paralelos

Banco de Dados Distribuídos e Móveis – 2012.1

Balanceamento de Carga

Balanceamento de Carga Inter-Operador

25

Page 26: Sistemas de Banco de Dados Paralelos

Banco de Dados Distribuídos e Móveis – 2012.1

Balanceamento de Carga

Balanceamento de Carga intra-consulta

• Ativações• Filas de ativação• Tópicos

26

Page 27: Sistemas de Banco de Dados Paralelos

Banco de Dados Distribuídos e Móveis – 2012.1

Clusters de Banco de Dados

Definição

27

Page 28: Sistemas de Banco de Dados Paralelos

Banco de Dados Distribuídos e Móveis – 2012.1

Clusters de Banco de Dados

Arquitetura de Cluster de Banco de Dados

28

Page 29: Sistemas de Banco de Dados Paralelos

Banco de Dados Distribuídos e Móveis – 2012.1

Clusters de Banco de Dados

Replicação

• Protocolo de replicação preventiva

29

Page 30: Sistemas de Banco de Dados Paralelos

Banco de Dados Distribuídos e Móveis – 2012.1

Clusters de Banco de Dados

O balanceamento de carga

30

Page 31: Sistemas de Banco de Dados Paralelos

Banco de Dados Distribuídos e Móveis – 2012.1

Clusters de Banco de Dados

Processamento de Consulta

31

Page 32: Sistemas de Banco de Dados Paralelos

Banco de Dados Distribuídos e Móveis – 2012.1

Clusters de Banco de Dados

Tolerância a Falhas

32

Page 33: Sistemas de Banco de Dados Paralelos

Banco de Dados Distribuídos e Móveis – 2012.133

Page 34: Sistemas de Banco de Dados Paralelos

Banco de Dados Distribuídos e Móveis – 2012.134

Page 35: Sistemas de Banco de Dados Paralelos

Banco de Dados Distribuídos e Móveis – 2012.135

Page 36: Sistemas de Banco de Dados Paralelos

Banco de Dados Distribuídos e Móveis – 2012.136

Page 37: Sistemas de Banco de Dados Paralelos

Banco de Dados Distribuídos e Móveis – 2012.1

Exemplos de aplicações

37

Page 38: Sistemas de Banco de Dados Paralelos

Banco de Dados Distribuídos e Móveis – 2012.1

Referências utilizadas

38

Page 39: Sistemas de Banco de Dados Paralelos

Banco de Dados Distribuídos e Móveis – 2012.1

Obrigado!

39