sgbd para dispositivos limitados* camilo porto bruno alexandre
TRANSCRIPT
![Page 1: SGBD Para Dispositivos Limitados* Camilo Porto Bruno Alexandre](https://reader035.vdocuments.net/reader035/viewer/2022070311/552fc10c497959413d8c3453/html5/thumbnails/1.jpg)
SGBD Para Dispositivos Limitados*
Camilo Porto
Bruno Alexandre
![Page 2: SGBD Para Dispositivos Limitados* Camilo Porto Bruno Alexandre](https://reader035.vdocuments.net/reader035/viewer/2022070311/552fc10c497959413d8c3453/html5/thumbnails/2.jpg)
Roteiro
Introdução Problemática Desafios Armazenamento Processamento de consultas Conclusões Referências bibliográficas
![Page 3: SGBD Para Dispositivos Limitados* Camilo Porto Bruno Alexandre](https://reader035.vdocuments.net/reader035/viewer/2022070311/552fc10c497959413d8c3453/html5/thumbnails/3.jpg)
IntroduçãoIntrodução
![Page 4: SGBD Para Dispositivos Limitados* Camilo Porto Bruno Alexandre](https://reader035.vdocuments.net/reader035/viewer/2022070311/552fc10c497959413d8c3453/html5/thumbnails/4.jpg)
Introdução
Proliferação de dispositivos móveisPDAs, Celulares, Smart Cards;
Processamento Móvel da Informação; Acesso contínuo à informação,
independente do local físico; Informações pessoais, financeiras, médicas,
negócios;
![Page 5: SGBD Para Dispositivos Limitados* Camilo Porto Bruno Alexandre](https://reader035.vdocuments.net/reader035/viewer/2022070311/552fc10c497959413d8c3453/html5/thumbnails/5.jpg)
Introdução
Tecnologia móvel nas empresasVendas, trabalho de campo, saúde
Necessidade de computação em todo lugar (Pervasive Computing)
Aumento da complexidade/volume das informações
![Page 6: SGBD Para Dispositivos Limitados* Camilo Porto Bruno Alexandre](https://reader035.vdocuments.net/reader035/viewer/2022070311/552fc10c497959413d8c3453/html5/thumbnails/6.jpg)
Introdução
Eficiência no armazenamento da informação;
Eficiência na recuperação da informação; Segurança;
SGBD para dispositivos móveisSGBD para dispositivos móveis
![Page 7: SGBD Para Dispositivos Limitados* Camilo Porto Bruno Alexandre](https://reader035.vdocuments.net/reader035/viewer/2022070311/552fc10c497959413d8c3453/html5/thumbnails/7.jpg)
ProblemáticaProblemática
![Page 8: SGBD Para Dispositivos Limitados* Camilo Porto Bruno Alexandre](https://reader035.vdocuments.net/reader035/viewer/2022070311/552fc10c497959413d8c3453/html5/thumbnails/8.jpg)
Problemática
Dispositivos Móveis => Limitações de Hardware/Software
RAM Smart Cards – Alguns KB (4Kb – 128Kb) PDAs e Celulares – Alguns MB
Memória estável Smart Cards – (128Kb – 1MB) PDAs e Celulares – (1MB – 512MB)
![Page 9: SGBD Para Dispositivos Limitados* Camilo Porto Bruno Alexandre](https://reader035.vdocuments.net/reader035/viewer/2022070311/552fc10c497959413d8c3453/html5/thumbnails/9.jpg)
Problemática
Baixa performance na escrita em memória estável;
Eficiência na leitura; Autonomia de energia;
![Page 10: SGBD Para Dispositivos Limitados* Camilo Porto Bruno Alexandre](https://reader035.vdocuments.net/reader035/viewer/2022070311/552fc10c497959413d8c3453/html5/thumbnails/10.jpg)
Problemática
SGBD => Software complexo Técnicas convencionais => Inviabilidade
Como baixar escala das técnicas Como baixar escala das técnicas convencionais?convencionais?
Foco: Armazenamento & Processamento de Consulta
![Page 11: SGBD Para Dispositivos Limitados* Camilo Porto Bruno Alexandre](https://reader035.vdocuments.net/reader035/viewer/2022070311/552fc10c497959413d8c3453/html5/thumbnails/11.jpg)
Problemática
Técnicas Convencionais:Armazenamento
Várias estruturas de índices => Consumo de memória
Valores repetidos => Consumo de memória Uso de cache (diminuir I/O) => Consumo de RAM
![Page 12: SGBD Para Dispositivos Limitados* Camilo Porto Bruno Alexandre](https://reader035.vdocuments.net/reader035/viewer/2022070311/552fc10c497959413d8c3453/html5/thumbnails/12.jpg)
Problemática
Técnicas Convencionais:Processamento de Consulta
Alto consumo de memória Armazenamento de resultados intermediários Materialização Estruturas temporárias em memória (índices,
ordenação, etc.)
![Page 13: SGBD Para Dispositivos Limitados* Camilo Porto Bruno Alexandre](https://reader035.vdocuments.net/reader035/viewer/2022070311/552fc10c497959413d8c3453/html5/thumbnails/13.jpg)
Problemática
Outros problemasSincronizaçãoUsabilidadeDentre outros...
![Page 14: SGBD Para Dispositivos Limitados* Camilo Porto Bruno Alexandre](https://reader035.vdocuments.net/reader035/viewer/2022070311/552fc10c497959413d8c3453/html5/thumbnails/14.jpg)
DesafiosDesafios
![Page 15: SGBD Para Dispositivos Limitados* Camilo Porto Bruno Alexandre](https://reader035.vdocuments.net/reader035/viewer/2022070311/552fc10c497959413d8c3453/html5/thumbnails/15.jpg)
Desafios
Diminuir espaço ocupado por estruturas de dados (índices, tuplas, etc.)
Diminuir uso de memória RAM Diminuir operações de escrita (lento) Aproveitar eficiência de operações de
leituras
![Page 16: SGBD Para Dispositivos Limitados* Camilo Porto Bruno Alexandre](https://reader035.vdocuments.net/reader035/viewer/2022070311/552fc10c497959413d8c3453/html5/thumbnails/16.jpg)
ArmazenamentoArmazenamento
![Page 17: SGBD Para Dispositivos Limitados* Camilo Porto Bruno Alexandre](https://reader035.vdocuments.net/reader035/viewer/2022070311/552fc10c497959413d8c3453/html5/thumbnails/17.jpg)
Armazenamento
Armazenamento Seqüencial Simplicidade Tuplas 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 18: SGBD Para Dispositivos Limitados* Camilo Porto Bruno Alexandre](https://reader035.vdocuments.net/reader035/viewer/2022070311/552fc10c497959413d8c3453/html5/thumbnails/18.jpg)
Armazenamento
Armazenamento por domínio Ausência de valores duplicados Uso de apontadores em atributos
v1
v2
v3
v4Relação R Relação S
Valores
![Page 19: SGBD Para Dispositivos Limitados* Camilo Porto Bruno Alexandre](https://reader035.vdocuments.net/reader035/viewer/2022070311/552fc10c497959413d8c3453/html5/thumbnails/19.jpg)
Armazenamento
Armazenamento por domínioCompactação de dados (ausência de valores
duplicados)Facilidade de gestão de memória (tuplas com
tamanhos fixos)
![Page 20: SGBD Para Dispositivos Limitados* Camilo Porto Bruno Alexandre](https://reader035.vdocuments.net/reader035/viewer/2022070311/552fc10c497959413d8c3453/html5/thumbnails/20.jpg)
Armazenamento
Armazenamento por domínio Desvantagens
Overhead nas operações insert/delete/update;
Valores únicos (chaves, por exemplo)Valores menor que tamanho da palavra de
memória
Solução?Solução?
![Page 21: SGBD Para Dispositivos Limitados* Camilo Porto Bruno Alexandre](https://reader035.vdocuments.net/reader035/viewer/2022070311/552fc10c497959413d8c3453/html5/thumbnails/21.jpg)
Armazenamento
Combinação Seqüencial + DomínioValores únicos => seqüencial;Valores < tamanho da palavra => seqüencial;Valores > tamanho da palavra => domínio
(simplifica gestão de memória)
Problema: estruturas de índicesProblema: estruturas de índices
![Page 22: SGBD Para Dispositivos Limitados* Camilo Porto Bruno Alexandre](https://reader035.vdocuments.net/reader035/viewer/2022070311/552fc10c497959413d8c3453/html5/thumbnails/22.jpg)
Armazenamento
Armazenamento em anelRedução de estruturas de índices;Formação de anel: valor => atributos => valorSemelhança com armazenamento por
domínio;
![Page 23: SGBD Para Dispositivos Limitados* Camilo Porto Bruno Alexandre](https://reader035.vdocuments.net/reader035/viewer/2022070311/552fc10c497959413d8c3453/html5/thumbnails/23.jpg)
Armazenamento
Estrutura de índice em anel – Select Index
v1
v2
v3
v4Relação R
Valores
R.a
Indice em R.a
Requisito de espaço para o índice: 1 apontador/valor
Select Index...Where R.a=“v1”
![Page 24: SGBD Para Dispositivos Limitados* Camilo Porto Bruno Alexandre](https://reader035.vdocuments.net/reader035/viewer/2022070311/552fc10c497959413d8c3453/html5/thumbnails/24.jpg)
Armazenamento
Armazenamento em anelOverhead de projeção – percorrer anel
![Page 25: SGBD Para Dispositivos Limitados* Camilo Porto Bruno Alexandre](https://reader035.vdocuments.net/reader035/viewer/2022070311/552fc10c497959413d8c3453/html5/thumbnails/25.jpg)
Armazenamento
Estrutura de índice em Anel – Join Index
Relação R
Relação S
R.b
S.a
Requisito de espaço para o índice: 1 apontador/valor
Join Index...Where R.b=S.a
![Page 26: SGBD Para Dispositivos Limitados* Camilo Porto Bruno Alexandre](https://reader035.vdocuments.net/reader035/viewer/2022070311/552fc10c497959413d8c3453/html5/thumbnails/26.jpg)
Armazenamento
Estrutura de índice em AnelJunções efetuadas em Chaves
(freqüentemente)Chaves => armazenamento seqüencial;
![Page 27: SGBD Para Dispositivos Limitados* Camilo Porto Bruno Alexandre](https://reader035.vdocuments.net/reader035/viewer/2022070311/552fc10c497959413d8c3453/html5/thumbnails/27.jpg)
Processamento de consultaProcessamento de consulta
![Page 28: SGBD Para Dispositivos Limitados* Camilo Porto Bruno Alexandre](https://reader035.vdocuments.net/reader035/viewer/2022070311/552fc10c497959413d8c3453/html5/thumbnails/28.jpg)
Processamento de Consulta
Problemas e RestriçõesO estado da arte em Q.P. não pode ser usado
em SGBDs móveis;Não se pode estimar quantidade de memória
que será utilizada;Devido a restrição de escrita e tempo de vida
da memória utilizada, condena-se uso de write e materialization.
![Page 29: SGBD Para Dispositivos Limitados* Camilo Porto Bruno Alexandre](https://reader035.vdocuments.net/reader035/viewer/2022070311/552fc10c497959413d8c3453/html5/thumbnails/29.jpg)
Processamento de Consulta
SoluçõesOs SGBDs existentes (Sybase Everywehere,
Oracle lite, DB2 EveryPlace), não resolvem o problema da restrição de Memória principal;
Framework (operadores) para Query evaluators voltado para dispositivos com restrições de RAM.
![Page 30: SGBD Para Dispositivos Limitados* Camilo Porto Bruno Alexandre](https://reader035.vdocuments.net/reader035/viewer/2022070311/552fc10c497959413d8c3453/html5/thumbnails/30.jpg)
Processamento de Consulta
Framework operadoresExpressões utilizadas: Execution without
RAM, RAM Lower Bound model (RLB)Armazenamento interfere na execução de
planos de consulta (uso de índice ou não); Algoritmos dos operadores devem seguir
alguns princípios;
![Page 31: SGBD Para Dispositivos Limitados* Camilo Porto Bruno Alexandre](https://reader035.vdocuments.net/reader035/viewer/2022070311/552fc10c497959413d8c3453/html5/thumbnails/31.jpg)
Proc. de Consulta (sem índice)
HipótesesH1: Arquivos de dados on-board são
sequenciais (baixo desempenho);H2: Consultas não aninhadas;H3: Dispositivos autônomos;H5: Armazenamento em memória eletrônica
tipo EEPROM.
![Page 32: SGBD Para Dispositivos Limitados* Camilo Porto Bruno Alexandre](https://reader035.vdocuments.net/reader035/viewer/2022070311/552fc10c497959413d8c3453/html5/thumbnails/32.jpg)
Proc. de Consulta (sem índice)
Regras de design R1: Proibido uso de E.D. de tamanho variável; R2: Nunca Armazene informação que pode ser
recomputada (no materialization); Unicidade Completude Operador possui três primitivas: open, close e next.
![Page 33: SGBD Para Dispositivos Limitados* Camilo Porto Bruno Alexandre](https://reader035.vdocuments.net/reader035/viewer/2022070311/552fc10c497959413d8c3453/html5/thumbnails/33.jpg)
Proc. de Consulta (sem índice)
Algoritmos Compartilham estrutura de dados: DataFlow (R1 e
R2)
![Page 34: SGBD Para Dispositivos Limitados* Camilo Porto Bruno Alexandre](https://reader035.vdocuments.net/reader035/viewer/2022070311/552fc10c497959413d8c3453/html5/thumbnails/34.jpg)
Proc. de Consulta (sem índice)
Algoritmos (select)
![Page 35: SGBD Para Dispositivos Limitados* Camilo Porto Bruno Alexandre](https://reader035.vdocuments.net/reader035/viewer/2022070311/552fc10c497959413d8c3453/html5/thumbnails/35.jpg)
Proc. de Consulta (sem índice)
Algoritmos (GBY.open)
![Page 36: SGBD Para Dispositivos Limitados* Camilo Porto Bruno Alexandre](https://reader035.vdocuments.net/reader035/viewer/2022070311/552fc10c497959413d8c3453/html5/thumbnails/36.jpg)
Proc. de Consulta (sem índice)
Algoritmos (GBY.next)
![Page 37: SGBD Para Dispositivos Limitados* Camilo Porto Bruno Alexandre](https://reader035.vdocuments.net/reader035/viewer/2022070311/552fc10c497959413d8c3453/html5/thumbnails/37.jpg)
Proc. de Consulta (sem índice)
Algoritmos (GBY) Tipos: CompMin, CompMax e IterMin Otimização: Diminuir avaliação de tuplas irrelevantes
através da utilização de filtros.
![Page 38: SGBD Para Dispositivos Limitados* Camilo Porto Bruno Alexandre](https://reader035.vdocuments.net/reader035/viewer/2022070311/552fc10c497959413d8c3453/html5/thumbnails/38.jpg)
Proc. de Consulta (sem índice)
Algoritmos (GRY - filtros) Definição: Relevant tuples, required tuples e
Irrelevant tuples; Quanto mais o algoritmo que evitar required tuples e
irrelevant tuples, melhor será.
![Page 39: SGBD Para Dispositivos Limitados* Camilo Porto Bruno Alexandre](https://reader035.vdocuments.net/reader035/viewer/2022070311/552fc10c497959413d8c3453/html5/thumbnails/39.jpg)
Proc. de Consulta (sem índice)
Avaliação de desempenho Esquema: R, S, T e U
![Page 40: SGBD Para Dispositivos Limitados* Camilo Porto Bruno Alexandre](https://reader035.vdocuments.net/reader035/viewer/2022070311/552fc10c497959413d8c3453/html5/thumbnails/40.jpg)
Proc. de Consulta (sem índice)
Avaliação de desempenho
![Page 41: SGBD Para Dispositivos Limitados* Camilo Porto Bruno Alexandre](https://reader035.vdocuments.net/reader035/viewer/2022070311/552fc10c497959413d8c3453/html5/thumbnails/41.jpg)
SGBD Para Dispositivos Limitados
Referências Memory Requirements for Query Execution in Highly
Constrained Devices. Anciaux N., Bougamin L. andPucheral P.Int. Conf. on Very Large Data Bases (VLDB), 2003.
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.
IBM DB2 Everyplace, Version 8.1.Interactive Management Software Inc.