1 picodbms: scaling down database techniques for the smartcard christophe bobineau, luc bouganin,...

32
1 PicoDBMS: Scaling down Database Techniques for the Smartcard Christophe Bobineau, Luc Bouganin, Philippe Pucheral, Pratick Valduriez Ana Karina de Oliveira Rocha

Upload: anthony-cortes

Post on 07-Apr-2016

215 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: 1 PicoDBMS: Scaling down Database Techniques for the Smartcard Christophe Bobineau, Luc Bouganin, Philippe Pucheral, Pratick Valduriez Ana Karina de Oliveira

1

PicoDBMS: Scaling down Database Techniques for

the Smartcard

Christophe Bobineau, Luc Bouganin, Philippe Pucheral, Pratick Valduriez

Ana Karina de Oliveira Rocha

Page 2: 1 PicoDBMS: Scaling down Database Techniques for the Smartcard Christophe Bobineau, Luc Bouganin, Philippe Pucheral, Pratick Valduriez Ana Karina de Oliveira

2

Roteiro• Motivação• Problemática• Desafios• Armazenamento• Custo de Armazenamento• Processamento de Consultas• Comentários Finais• Referências Bibliográficas

Page 3: 1 PicoDBMS: Scaling down Database Techniques for the Smartcard Christophe Bobineau, Luc Bouganin, Philippe Pucheral, Pratick Valduriez Ana Karina de Oliveira

3

Motivação• Proliferação de dispositivos portáteis.

−Celulares−PDAs−Cartões inteligentes (Smart cards)

• Acesso de serviços independente da sua localização física.−Aplicações nas áreas de telefonia celular,

bancárias, de transportes, de saúde, de identificação pessoal e de finanças.

Page 4: 1 PicoDBMS: Scaling down Database Techniques for the Smartcard Christophe Bobineau, Luc Bouganin, Philippe Pucheral, Pratick Valduriez Ana Karina de Oliveira

4

Motivação• Os cartões inteligentes são modernos e

seguros.• Número cada vez maior de aplicações

utilizam cartões inteligentes.• Os cartões inteligentes fornecem grande

mobilidade devido ao seu tamanho reduzido.

Page 5: 1 PicoDBMS: Scaling down Database Techniques for the Smartcard Christophe Bobineau, Luc Bouganin, Philippe Pucheral, Pratick Valduriez Ana Karina de Oliveira

5

Motivação• Vantagens dos cartões inteligentes:

−São bastante flexíveis.−São recarregáveis.−São multioperacionais.

• Quanto a forma de comunicação os cartões inteligentes podem ser de dois tipos:−Cartões com contato−Cartões sem contato

Page 6: 1 PicoDBMS: Scaling down Database Techniques for the Smartcard Christophe Bobineau, Luc Bouganin, Philippe Pucheral, Pratick Valduriez Ana Karina de Oliveira

6

Problemática• Os Cartões inteligentes possuem

limitações computacionais.−Possuem uma CPU.−Memória RAM (4KB – 128 KB).−Memória ROM – 96 KB.−Memória EEPROM (128 KB – 1MB).

• Tempo de leitura rápido (60-100 ns)• Tempo de escrita lento (10 ms/palavra)

Page 7: 1 PicoDBMS: Scaling down Database Techniques for the Smartcard Christophe Bobineau, Luc Bouganin, Philippe Pucheral, Pratick Valduriez Ana Karina de Oliveira

7

Problemática• Os cartões inteligentes possuem as maiores

restrições de recursos computacionais.• As técnicas de banco de dados tradicionais

não podem ser diretamente aplicadas em ambientes com recursos computacionais limitados.

• Como baixar a escala das técnicas tradicionais de banco de dados?

Page 8: 1 PicoDBMS: Scaling down Database Techniques for the Smartcard Christophe Bobineau, Luc Bouganin, Philippe Pucheral, Pratick Valduriez Ana Karina de Oliveira

8

Problemática• Técnicas tradicionais

−Armazenamento:• Possuem várias estruturas de índices• Possuem valores repetidos

−Consumo de memória

Page 9: 1 PicoDBMS: Scaling down Database Techniques for the Smartcard Christophe Bobineau, Luc Bouganin, Philippe Pucheral, Pratick Valduriez Ana Karina de Oliveira

9

Problemática• Técnicas tradicionais

−Processamento de Consultas• Alto consumo de memória• Armazenamento de resultados

intermediários• Materialização• Estruturas temporárias guardadas na

memória−Ex: índices

Page 10: 1 PicoDBMS: Scaling down Database Techniques for the Smartcard Christophe Bobineau, Luc Bouganin, Philippe Pucheral, Pratick Valduriez Ana Karina de Oliveira

10

Desafios• Diminuir o espaço ocupado pelas

estruturas de dados (índices, tuplas, etc.)

• Diminuir uso da memória RAM• Diminuir as operações de escrita • Aproveitar eficiência de operações

de leituras

Page 11: 1 PicoDBMS: Scaling down Database Techniques for the Smartcard Christophe Bobineau, Luc Bouganin, Philippe Pucheral, Pratick Valduriez Ana Karina de Oliveira

11

Armazenamento• Armazenamento Seqüencial (FS)

−Simplicidade−As tuplas são armazenadas em seqüência;

• Problemas−1. Consumo de espaço – valores de atributos

duplicados−2. Ineficiente – Ausência de índices -> busca

seqüencial• Adição de índices resolve o 2 problema

ao mesmo tempo que agrava o 1.

Page 12: 1 PicoDBMS: Scaling down Database Techniques for the Smartcard Christophe Bobineau, Luc Bouganin, Philippe Pucheral, Pratick Valduriez Ana Karina de Oliveira

12

Armazenamento• Armazenamento por domínio (DS)

−Ausência de valores duplicados−Uso de apontadores em atributos

v1v2v3v4

Relação R

Valores

Relação S

Page 13: 1 PicoDBMS: Scaling down Database Techniques for the Smartcard Christophe Bobineau, Luc Bouganin, Philippe Pucheral, Pratick Valduriez Ana Karina de Oliveira

13

Armazenamento• Armazenamento em anel (RS)

−Redução das estruturas de índices−Formação de anel: valor -> atributos ->

valor−Semelhança com armazenamento por

domínio

Page 14: 1 PicoDBMS: Scaling down Database Techniques for the Smartcard Christophe Bobineau, Luc Bouganin, Philippe Pucheral, Pratick Valduriez Ana Karina de Oliveira

14

Armazenamento• Estrutura de índice em anel – Select

IndexRelação R

Valores

R.aIndice em R.a

v1v2v3v4

Select Index...Where R.a=“v1”

Page 15: 1 PicoDBMS: Scaling down Database Techniques for the Smartcard Christophe Bobineau, Luc Bouganin, Philippe Pucheral, Pratick Valduriez Ana Karina de Oliveira

15

Armazenamento• Estrutura de índice em Anel – Join

IndexRelação R

Relação S

R.bS.a

Join Index...Where R.b=S.a

Page 16: 1 PicoDBMS: Scaling down Database Techniques for the Smartcard Christophe Bobineau, Luc Bouganin, Philippe Pucheral, Pratick Valduriez Ana Karina de Oliveira

16

Custo de Armazenamento• Se os atributos não precisam ser

indexados a escolha deve ser feita entre o FS e o DS. Caso contrário,

• A escolha deve ser feita entre por RS e FS com índices tradicionais.

Page 17: 1 PicoDBMS: Scaling down Database Techniques for the Smartcard Christophe Bobineau, Luc Bouganin, Philippe Pucheral, Pratick Valduriez Ana Karina de Oliveira

17

Custo de Armazenamento• A Figura abaixo compara FS com DS

Page 18: 1 PicoDBMS: Scaling down Database Techniques for the Smartcard Christophe Bobineau, Luc Bouganin, Philippe Pucheral, Pratick Valduriez Ana Karina de Oliveira

18

Custo de Armazenamento• A Figura abaixo compara FS com RS

Page 19: 1 PicoDBMS: Scaling down Database Techniques for the Smartcard Christophe Bobineau, Luc Bouganin, Philippe Pucheral, Pratick Valduriez Ana Karina de Oliveira

19

Processamento de Consultas• Modelos tradicionais consomem muita

memória principal armazenando estrutura de dados temporários e resultados intermediários.

• Quando a memória principal não é suficiente eles recorrem a materialização para evitar overflow de memória.

Page 20: 1 PicoDBMS: Scaling down Database Techniques for the Smartcard Christophe Bobineau, Luc Bouganin, Philippe Pucheral, Pratick Valduriez Ana Karina de Oliveira

20

Processamento de Consultas• Algoritmos tradicionais não podem ser

usados no PicoDBMS:−1. Lentidão da escrita na memória.−2. Não se pode estimar previamente o tamanho

de uma área específica de RAM a ser utilizada.−3. No estado da arte os algoritmos são bastante

sofisticados.• No PicoDBMS - Código simples, compacto

e seguro.

Page 21: 1 PicoDBMS: Scaling down Database Techniques for the Smartcard Christophe Bobineau, Luc Bouganin, Philippe Pucheral, Pratick Valduriez Ana Karina de Oliveira

21

Processamento de Consultas• Para resolver estes problemas o

PicoDBMS propõe técnicas de consulta que não utilizam nenhuma área de RAM, nem escrevem na memória estável.−1. Consultas Básicas - Seleção, projeção e

junção−2. Consultas Complexas - Agregação,

ordenação e remoção

Page 22: 1 PicoDBMS: Scaling down Database Techniques for the Smartcard Christophe Bobineau, Luc Bouganin, Philippe Pucheral, Pratick Valduriez Ana Karina de Oliveira

22

Processamento de Consultas• No modelo tradicional o processo de

Consultas é feito em 2 passos:−1. O “otimizador” gera planos de

otimização de execução de consultas (QEP).

−2 O QEP é executado para uma consulta que implementa um modelo de execução e usa bibliotecas de operadores relacionais.

Page 23: 1 PicoDBMS: Scaling down Database Techniques for the Smartcard Christophe Bobineau, Luc Bouganin, Philippe Pucheral, Pratick Valduriez Ana Karina de Oliveira

23

Processamento de Consultas• O “otimizador” pode usar diferentes

formas de QEP:−1. Árvore de profundidade à esquerda.−2. Árvore de profundidade à direita.

Page 24: 1 PicoDBMS: Scaling down Database Techniques for the Smartcard Christophe Bobineau, Luc Bouganin, Philippe Pucheral, Pratick Valduriez Ana Karina de Oliveira

24

Processamento de Consultas• Árvore de profundidade à esquerda

− Os operadores são executados seqüencialmente e cada resultado intermediário é materializado.

Page 25: 1 PicoDBMS: Scaling down Database Techniques for the Smartcard Christophe Bobineau, Luc Bouganin, Philippe Pucheral, Pratick Valduriez Ana Karina de Oliveira

25

Processamento de Consultas• Árvore de profundidade à direita

− Os operadores são executados em pipeline evitando que resultados intermediários sejam materializados.

Page 26: 1 PicoDBMS: Scaling down Database Techniques for the Smartcard Christophe Bobineau, Luc Bouganin, Philippe Pucheral, Pratick Valduriez Ana Karina de Oliveira

26

Processamento de Consultas• Problema: Eles requerem materialização

em memória para todas as relações da esquerda.

Page 27: 1 PicoDBMS: Scaling down Database Techniques for the Smartcard Christophe Bobineau, Luc Bouganin, Philippe Pucheral, Pratick Valduriez Ana Karina de Oliveira

27

Processamento de Consultas Básicas • O PicoDBMS propõe usar somente

pipeline em todos os operadores. Ex: árvore de extrema profundidade à direita.

Page 28: 1 PicoDBMS: Scaling down Database Techniques for the Smartcard Christophe Bobineau, Luc Bouganin, Philippe Pucheral, Pratick Valduriez Ana Karina de Oliveira

28

Processamento de Consultas Complexas• Problema: Pipeline não é compatível com os

operadores de seleção e remoção de duplicatas, pois

classicamente os seus resultados intermediários são materializados.

Page 29: 1 PicoDBMS: Scaling down Database Techniques for the Smartcard Christophe Bobineau, Luc Bouganin, Philippe Pucheral, Pratick Valduriez Ana Karina de Oliveira

29

Processamento de Consultas Complexas• O picoDBMS explora duas propriedades:• 1. Agregação e remoção de duplicatas podem

ser feitos em pipeline se: As tuplas de entrada já estiverem agrupadas por valores distintos.

• 2. Operadores pipeline preservam a ordem desde que eles consumam ou produzam tuplas na sua ordem de chegada.

Page 30: 1 PicoDBMS: Scaling down Database Techniques for the Smartcard Christophe Bobineau, Luc Bouganin, Philippe Pucheral, Pratick Valduriez Ana Karina de Oliveira

30

Processamento de Consultas Complexas• Existe um problema na solução proposta pelo

PicoDBMS:− Para construir uma Árvore de extrema profundidade à

direita o processador de consultas do PicoDBMS viola uma heurística para a otimização de consultas relacionais.

• PicoDBMS possui um processamento de consultas dispendioso, manipulando uma maior quantidade de dados e consumindo muito tempo no processamento dos dados.

Page 31: 1 PicoDBMS: Scaling down Database Techniques for the Smartcard Christophe Bobineau, Luc Bouganin, Philippe Pucheral, Pratick Valduriez Ana Karina de Oliveira

31

Considerações Finais• Existência do Sql Java Machine - pequeno

e completo SGBD, menor que 8KB que fornece as linguagens de definição de dados (DDL) e de manipulação de dados (DML).

Page 32: 1 PicoDBMS: Scaling down Database Techniques for the Smartcard Christophe Bobineau, Luc Bouganin, Philippe Pucheral, Pratick Valduriez Ana Karina de Oliveira

32

Referências• PicoDBMS: Scaling down Database Techniques for

the Smartcard. Christophe Bobineau, Luc Bouganim, Philippe Pucheral and Patrick Valduriez.Proceedings of the 26th International Conference on Very Large Databases, Cairo, Egypt, 2000.

• Pré-Calculo de Junções para Processamento Consultas em Ambientes com Recursos Computacionais Limitados. Tathianne Moreira Paulino. Orientador: Dr. Angelo Brayner. Dissertação de Mestrado – UFC, 2004.