250 likes | 359 Views
Mobile Agent-Based Services for View Materialization. Kyriakos Karenos George Samaras Panos K. Chrysanthis Evaggelia Pitoura. Sérgio Cavalcanti de Paiva. Sumário. Introdução Problemática da Computação Móvel O sistema ViSMA Agentes Móveis Arquitetura System Services Conclusão
E N D
Mobile Agent-Based Services for View Materialization Kyriakos Karenos George Samaras Panos K. Chrysanthis Evaggelia Pitoura Sérgio Cavalcanti de Paiva
Sumário • Introdução • Problemática da Computação Móvel • O sistema ViSMA • Agentes Móveis • Arquitetura • System Services • Conclusão • Bibliografia Sérgio Cavalcanti de Paiva
Introdução • ViSMA (Views Supported by Mobile Agents) • Protótipo de conjunto de serviços baseados em agentes móveis, que permitem a definição, materialização, manutenção e compartilhamento de visões criadas em cima de datasources web. Sérgio Cavalcanti de Paiva
Problemáticas da Computação Móvel • Lado da rede: • Desconexões freqüentes e atrasos. • Lado do Cliente: • Variabilidade de dispositivos • Requisitos de usuários: • Personalização de dados e Customização de serviços Sérgio Cavalcanti de Paiva
O sistema ViSMA • Implementado completamente em Java; • Foi usado o Voyager ORB para ser a plataforma de agentes móveis; • Possui um eficiente sistema de administração, com nome de Tracker; • Implementado três componentes de clientes alternativos: • ViSMA Client Agent; • ViSMA Light Client Applet e • ViSMA Servlet Engine. Sérgio Cavalcanti de Paiva
Agentes Móveis • São programas que podem migrar entre computadores de uma rede durante a sua execução carregando consigo o seu estado de execução. Sérgio Cavalcanti de Paiva
Agentes Móveis • Emprego: • Ser ativado em um dispositivo móvel e retornar ao mesmo na próxima conexão; • Ser usado em redes com conexões instáveis ou com pequena largura de banda. • Interagir com outros agentes de outros usuários; • Acessar recursos e dados em maquinas remotas; Sérgio Cavalcanti de Paiva
Agentes Móveis • Emprego: • Monitorar o estado de um sistema ou de uma base de dados ; • Representar pessoas ou organizações, incorporando as suas autoridades; • Executar autonomamente durante um longo período de tempo e • Executar tarefas tediosas e/ou complexa. Sérgio Cavalcanti de Paiva
Arquitetura • Server Side Components • Datasource Side Components • Client Side Components Server Side Components Datasource Side Components Client Side Components Sérgio Cavalcanti de Paiva
Server Side Components • View Dictionary Agent (VDA): comunicação central e coordenação, trabalhando com pedido via interface de acesso de usuário. • View Agent (VA): responsável por criar, materializar e manter visões. • Data Holder Agent (DH): manipular um fragmento de visão. • Personal Agent (PA): criar subvisões personalizadas e não compartilhadas. Sérgio Cavalcanti de Paiva
Datasource Side Components • Assistant Agent: prover conectividade entre os datasources e agentes que requerem acesso aos datasources. • DB Info Agent: migra para o remote datasource site, coleta seu metadata (esquema e tipos de dados), os envia ao VDA e finalmente se destrói. • Monitor Agent: Habilitar manutenção de visões. • View Evaluator Agent (VEA): Coletar os dados requeridos para a materialização do fragmento de visão que o DH é responsável. Sérgio Cavalcanti de Paiva
Client Side Components • ViSMA Client Agent: pode submeter uma query a um VA sem qualquer intercessão do VDA. • Light Client Applet: interage utilizando um Applet para interagir com o VDA. • ViSMA Servlet Engine: middleware que aceita consulta e resposta em HTML padrão. Sérgio Cavalcanti de Paiva
Pa_Hospital Ni_Hospital DoctorDB PharmacyDB Paphos Region Nicosia Region Pittsburgh System Services Sérgio Cavalcanti de Paiva
System Services • Datasource Registration; • View Definition; • Materialization Scheme; • Maintaining Views; • View Data Retrieval; • View Mobility e • View Deletion. Sérgio Cavalcanti de Paiva
System Services (Datasource Registration) Passo 1: (URL e IP)+ porta e códigos. Passo 2: O VDA cria e despacha um Assistant que migra ao Datasource usando os códigos. Passo 3: O VDA cria e despacha um DB Info Agent para coletar os metadados. Passo 4: Quando um DB Info Agent retorna com o metadado, VDA cria uma entrada em seu dicionário para o datasource. Passo 5: O VDA reconhece a inclusão do datasource ao dicionário. Sérgio Cavalcanti de Paiva
System Services (View Definition ) • O client side components provêem um interface na forma de um “wizard” que carrega todos os datasources disponíveis e visões existentes do VDA e guia o usuário através da definição de uma nova visão. • O usuário define a visão como compartilhada ou privada. Além dessas, visões personalizadas também podem ser definidas. Sérgio Cavalcanti de Paiva
System Services (View Definition ) • Exemplo: Sérgio Cavalcanti de Paiva
System Services (Materialization Scheme ) O VDA cria um VA e passa a definição de visão para ele; Para cada visão simples, o VA cria um DH para administra-la; O DH cria um VEA e provê um plano de materialização; Então o VEA viaja a cada datasource do seu plano e ao final passa os dados ao DH. Cada DH também é responsável por despachar os Monitor Agents. Sérgio Cavalcanti de Paiva
System Services (Maintaining Views) Os Monitor Agents residem no datasource; Eles mantêm os mais recentes valores dos atributos que eles monitoram; Eles comparam os valores novos com os que ele tinham e geram a visão delta; Eles enviam essa visão para os seus DHs; O DH pode selecionar apagar linhas removidas ou reenviar um VEA para re-materializar a visão. Sérgio Cavalcanti de Paiva
System Services (View Data Retrieval ) • Um usuário pode selecionar adquirir qualquer dado de visão específica mais recente pedindo isto do VA correspondente. Ex: O medico chefe pode querer inspecionar o estado dos pacientes de um doutor ausente. Sérgio Cavalcanti de Paiva
System Services (Personalized View Creation ) Sérgio Cavalcanti de Paiva
System Services (View Mobility ) • Suponha que um doutor viajou e conecta o ViSMA ao chegar para a conferência e consulta o VA responsável para o Doctor-View. • Descobrindo a nova localização e/ou notando demoras aumentadas, o VA move de Nicosia onde foi criado originalmente para onde o doutor está atualmente conectado, na rede local. Sérgio Cavalcanti de Paiva
System Services (View Deletion ) Sérgio Cavalcanti de Paiva
Conclusão • Os objetivos do ViSMA de extendibilidade de cliente e extendibilidade funcional foram alcançados; • O protótipo é funcional; • Devido as características dos agentes móveis, no protótipo é eliminado/minimizado a necessidade de comunicação cara, como conexões persistentes e • Em reconexão a uma visão estará sempre disponível e atualizada de acordo com os parâmetros monitorados. Sérgio Cavalcanti de Paiva
Bibliografia • www.di.ufpe.br/~compint/aulas-IAS/ias/ias-991/agmoveis.ppt • www.inf.ucp.br/profs/tavares/2002_01/trabalhos/agentes_moveis_2/ • K. Karenos et. Al. Mobile Agent-Based Services for View Materialization. Mobile Computing and Communications Review, Volume 8, Number 3, pages 32-43. Sérgio Cavalcanti de Paiva