11.04.2013 Views

gestão de dados partilhados em ambientes de computação móvel

gestão de dados partilhados em ambientes de computação móvel

gestão de dados partilhados em ambientes de computação móvel

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

1.2. SISTEMAS DISTRIBUÍDOS DE GESTÃO DE DADOS 3<br />

<strong>partilhados</strong> para leitura e escrita <strong>em</strong> qualquer momento. Num sist<strong>em</strong>a distribuído, e, <strong>em</strong> particular, num<br />

ambiente <strong>de</strong> <strong>computação</strong> <strong>móvel</strong>, é impossível garantir o acesso permanente aos <strong>dados</strong> a partir <strong>de</strong> um<br />

único servidor [30] <strong>de</strong>vido às falhas nas comunicações e nos servidores. Assim, o sist<strong>em</strong>a necessita <strong>de</strong><br />

recorrer à replicação dos <strong>dados</strong> para fornecer uma elevada disponibilida<strong>de</strong>.<br />

Num sist<strong>em</strong>a distribuído <strong>de</strong> gran<strong>de</strong>-escala, que inclua computadores interligados por re<strong>de</strong>s <strong>de</strong> longa-<br />

distância (WAN), po<strong>de</strong> ser impossível coor<strong>de</strong>nar os acessos executados por múltiplos utilizadores <strong>de</strong>vido<br />

à impossibilida<strong>de</strong> <strong>de</strong> contactar alguns computadores. Num ambiente <strong>de</strong> <strong>computação</strong> <strong>móvel</strong>, esta impos-<br />

sibilida<strong>de</strong> é reforçada pelas seguintes características. Primeiro, a inexistência ou reduzida qualida<strong>de</strong> da<br />

conectivida<strong>de</strong> <strong>em</strong> algumas zonas e períodos <strong>de</strong> t<strong>em</strong>po. Segundo, a necessida<strong>de</strong> <strong>de</strong> economizar energia<br />

po<strong>de</strong> levar à <strong>de</strong>sconexão dos dispositivos móveis ou dos subsist<strong>em</strong>as <strong>de</strong> comunicação. Terceiro, razões<br />

económicas po<strong>de</strong>m condicionar a conectivida<strong>de</strong> <strong>em</strong> alguns períodos <strong>de</strong> t<strong>em</strong>po.<br />

A coor<strong>de</strong>nação <strong>de</strong> múltiplos utilizadores, mesmo quando possível, po<strong>de</strong> ser in<strong>de</strong>sejável <strong>de</strong>vido à<br />

elevada latência induzida por essa coor<strong>de</strong>nação ou <strong>de</strong>vido às características da aplicação. Assim, os<br />

esqu<strong>em</strong>as <strong>de</strong> replicação tradicionais [17], que coor<strong>de</strong>nam os acessos <strong>de</strong> múltiplos utilizadores, são ina-<br />

propriados, porque incorr<strong>em</strong> numa elevada latência e/ou reduzida disponibilida<strong>de</strong> [30]. Os sist<strong>em</strong>as <strong>de</strong><br />

<strong>gestão</strong> <strong>de</strong> <strong>dados</strong> para <strong>ambientes</strong> móveis <strong>de</strong>v<strong>em</strong>, alternativamente, recorrer a um mo<strong>de</strong>lo <strong>de</strong> replicação<br />

optimista, que lhes permita fornecer uma elevada disponibilida<strong>de</strong> <strong>de</strong> leitura e escrita.<br />

Num sist<strong>em</strong>a <strong>de</strong> <strong>gestão</strong> <strong>de</strong> <strong>dados</strong> baseado <strong>em</strong> replicação optimista, permite-se que cada utilizador<br />

modifique uma cópia dos <strong>dados</strong> s<strong>em</strong> coor<strong>de</strong>nação prévia. Como vários utilizadores po<strong>de</strong>m modificar<br />

concorrent<strong>em</strong>ente os <strong>dados</strong>, levando à divergência das várias réplicas, é necessário que o sist<strong>em</strong>a <strong>de</strong><br />

<strong>gestão</strong> <strong>de</strong> <strong>dados</strong> inclua um mecanismo <strong>de</strong> reconciliação <strong>de</strong> réplicas que permita lidar com a situação.<br />

Este mecanismo <strong>de</strong> reconciliação <strong>de</strong>ve, <strong>em</strong> geral, garantir a convergência final dos <strong>dados</strong>, i.e., <strong>de</strong>ve<br />

garantir que após todas as modificações ser<strong>em</strong> reflectidas <strong>em</strong> todas as réplicas, o estado <strong>de</strong> todas as<br />

réplicas é idêntico. Outra proprieda<strong>de</strong> a satisfazer é a preservação das intenções dos utilizadores, i.e., o<br />

efeito <strong>de</strong> uma modificação <strong>de</strong>ve reflectir a intenção do utilizador quando este a executou.<br />

Várias soluções <strong>de</strong> reconciliação foram propostas e utilizadas <strong>em</strong> sist<strong>em</strong>as <strong>de</strong> <strong>gestão</strong> <strong>de</strong> <strong>dados</strong> [147,<br />

124]. Em geral, a utilização <strong>de</strong> informação s<strong>em</strong>ântica associada aos <strong>dados</strong> e às operações produzidas<br />

para modificar os <strong>dados</strong> é a chave para o <strong>de</strong>senvolvimento <strong>de</strong> uma boa solução. No entanto, nenhuma<br />

solução proposta parece ser i<strong>de</strong>al <strong>em</strong> todas as situações. Assim, a reconciliação continua a ser uma área<br />

probl<strong>em</strong>ática no <strong>de</strong>senvolvimento <strong>de</strong> um sist<strong>em</strong>a <strong>de</strong> <strong>gestão</strong> <strong>de</strong> <strong>dados</strong> baseado <strong>em</strong> replicação optimista.<br />

Muitos sist<strong>em</strong>as <strong>de</strong> <strong>gestão</strong> <strong>de</strong> <strong>dados</strong> baseados <strong>em</strong> replicação optimista permit<strong>em</strong> a <strong>de</strong>finição <strong>de</strong> so-<br />

luções específicas <strong>de</strong> reconciliação (baseadas numa dada estratégia adoptada). No entanto, apesar <strong>de</strong><br />

<strong>em</strong> alguns casos ser possível reutilizar a mesma aproximação <strong>em</strong> probl<strong>em</strong>as diferentes (com pequenas<br />

adaptações), não existe geralmente suporte para a reutilização <strong>de</strong> soluções pré-<strong>de</strong>finidas. Assim, pa-

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!