Decomposição Dinâmica de Computações para Execução na Edge

Detalhes bibliográficos
Autor(a) principal: Carrasco, Diogo
Data de Publicação: 2020
Tipo de documento: Dissertação
Idioma: por
Título da fonte: Repositórios Científicos de Acesso Aberto de Portugal (RCAAP)
Texto Completo: http://hdl.handle.net/10362/177334
Resumo: Com o aumento do número de dispositivos terminais no domínio da Internet of Things (IoT) e que realizam pedidos a serviços em execução na cloud, tal como smartphones, tablets, etc., o processamento de um tão elevado volume de dados na cloud torna-se in- comportável. É também crescente o número de aplicações sensíveis à latência (e.g. online gaming) e de dispositivos IoT que necessitam de tomar decisões em tempo real/quase- real (e.g. smart cars) que requerem uma resposta rápida por parte de serviços essenciais. Torna-se então necessário aproximar os serviços, que executam os pedidos/processam os dados, aos dispositivos, reduzindo assim a latência e permitindo uma resposta atem- pada. Esta abordagem de trazer as computações para nós computacionais mais perto dos dispositivos/fontes de dados chama-se Computação na Edge. Características distintivas desses nós são a sua heterogeneidade, capacidade computacional e de armazenamento reduzidas, e variabilidade na carga de trabalho (workload). De modo a responder às restrições computacionais e energéticas dos nós da edge, os módulos de código que aí é possível executar têm também de ser de dimensão reduzida (e.g. micro-serviços). Adicionalmente, as decisões tomadas em termos da localização des- ses módulos (e.g. em função da carga e localização dos nós e, volume de acessos) podem ser melhoradas se houver informação sobre as características do seu código. Por exem- plo, se o módulo contém código que faz recolha de dados, filtra esses dados e agrega os resultados (e.g. à semelhança de plataformas distribuídas map-reduce). Existindo essa informação (e.g. através de anotações no código), é possível decompor (dinamicamente) a funcionalidade de um módulo em sub-módulos, e fazer o seu deployment tendo em vista melhorar a robustez e desempenho do módulo como um todo. A solução consiste numa API, que através do uso de anotações Java, permite aos uti- lizadores marcar o offload de um conjunto de tarefas para a sua execução na edge. Estas tarefas são mapeadas para um conjunto de padrões computacionais a executar na edge implementados com recurso ao modelo de actores. A avaliação realizada permitiu comprovar que a API permite aos utilizadores benefi- ciarem do offload de tarefas para o ambiente edge, ao mesmo tempo que lhes é oferecida uma forma transparente de fazer este offload, em que apenas necessitam de se focar na lógica da aplicação.
id RCAP_d3b4bc113f4e83597bdba5b0f2a5b33f
oai_identifier_str oai:run.unl.pt:10362/177334
network_acronym_str RCAP
network_name_str Repositórios Científicos de Acesso Aberto de Portugal (RCAAP)
repository_id_str https://opendoar.ac.uk/repository/7160
spelling Decomposição Dinâmica de Computações para Execução na Edgecloudedgemicro-serviçosDomínio/Área Científica::Engenharia e Tecnologia::Engenharia Eletrotécnica, Eletrónica e InformáticaCom o aumento do número de dispositivos terminais no domínio da Internet of Things (IoT) e que realizam pedidos a serviços em execução na cloud, tal como smartphones, tablets, etc., o processamento de um tão elevado volume de dados na cloud torna-se in- comportável. É também crescente o número de aplicações sensíveis à latência (e.g. online gaming) e de dispositivos IoT que necessitam de tomar decisões em tempo real/quase- real (e.g. smart cars) que requerem uma resposta rápida por parte de serviços essenciais. Torna-se então necessário aproximar os serviços, que executam os pedidos/processam os dados, aos dispositivos, reduzindo assim a latência e permitindo uma resposta atem- pada. Esta abordagem de trazer as computações para nós computacionais mais perto dos dispositivos/fontes de dados chama-se Computação na Edge. Características distintivas desses nós são a sua heterogeneidade, capacidade computacional e de armazenamento reduzidas, e variabilidade na carga de trabalho (workload). De modo a responder às restrições computacionais e energéticas dos nós da edge, os módulos de código que aí é possível executar têm também de ser de dimensão reduzida (e.g. micro-serviços). Adicionalmente, as decisões tomadas em termos da localização des- ses módulos (e.g. em função da carga e localização dos nós e, volume de acessos) podem ser melhoradas se houver informação sobre as características do seu código. Por exem- plo, se o módulo contém código que faz recolha de dados, filtra esses dados e agrega os resultados (e.g. à semelhança de plataformas distribuídas map-reduce). Existindo essa informação (e.g. através de anotações no código), é possível decompor (dinamicamente) a funcionalidade de um módulo em sub-módulos, e fazer o seu deployment tendo em vista melhorar a robustez e desempenho do módulo como um todo. A solução consiste numa API, que através do uso de anotações Java, permite aos uti- lizadores marcar o offload de um conjunto de tarefas para a sua execução na edge. Estas tarefas são mapeadas para um conjunto de padrões computacionais a executar na edge implementados com recurso ao modelo de actores. A avaliação realizada permitiu comprovar que a API permite aos utilizadores benefi- ciarem do offload de tarefas para o ambiente edge, ao mesmo tempo que lhes é oferecida uma forma transparente de fazer este offload, em que apenas necessitam de se focar na lógica da aplicação.With the increasing number of end-to-end devices in the Internet of Things (IoT) domain that make requests to services running in the cloud, such as smartphones, tablets, etc., processing such a high volume of data in the cloud has become infeasible. The number of latency sensible applications (e.g. online gaming) and IoT devices that need to make real-time decisions (e.g smart cars) and need a quick server response is also growing. It becomes necessary to approximate the services, which execute the requests/process the data, to the devices, thus reducing the latency and allowing a timely response. This ap- proach of bringing computations to computational nodes closer to devices/data sources is called Edge Computing. These nodes have distinguishing features, such as heterogeneity, reduced computational storage capacity, and a varying workload. In order to respond to the computational and energetic constraints of the edge nodes, the code modules that can be implemented there must also have a reduced size (e.g. mi- croservices). Moreover, the decisions over the location of these modules (e.g. depending on the load and location of the nodes and the access volume) can be improved if there is information on code characteristics. For example, if the module contains code that collects data, filters it and aggregates the results (e.g. distributed map-reduce platforms). Obtaining this information (e.g. using code annotations), it is possible to dynamically decompose the module functionality into sub-modules, and to deploy it, improving the module robustness and performance as a whole. The solution consists of an API, which by the use of Java annotations, allows users to mark the offload of a set of tasks for its execution at the edge. These tasks are mapped to a set of computational patterns to be executed at the edge, implemented by the actor model. The evaluation proved that the API allows users to collect the benefits of task offload- ing to the edge environment, while providing a transparent way to do it, allowing users to solely focus on the logic of the application.Gomes, Maria CecíliaLeitão, JoãoRUNCarrasco, Diogo2025-01-13T13:51:46Z2020-092020-09-01T00:00:00Zinfo:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/masterThesisapplication/pdfhttp://hdl.handle.net/10362/177334porinfo:eu-repo/semantics/openAccessreponame:Repositórios Científicos de Acesso Aberto de Portugal (RCAAP)instname:FCCN, serviços digitais da FCT – Fundação para a Ciência e a Tecnologiainstacron:RCAAP2025-01-20T01:37:48Zoai:run.unl.pt:10362/177334Portal AgregadorONGhttps://www.rcaap.pt/oai/openaireinfo@rcaap.ptopendoar:https://opendoar.ac.uk/repository/71602025-05-28T19:40:24.624898Repositórios Científicos de Acesso Aberto de Portugal (RCAAP) - FCCN, serviços digitais da FCT – Fundação para a Ciência e a Tecnologiafalse
dc.title.none.fl_str_mv Decomposição Dinâmica de Computações para Execução na Edge
title Decomposição Dinâmica de Computações para Execução na Edge
spellingShingle Decomposição Dinâmica de Computações para Execução na Edge
Carrasco, Diogo
cloud
edge
micro-serviços
Domínio/Área Científica::Engenharia e Tecnologia::Engenharia Eletrotécnica, Eletrónica e Informática
title_short Decomposição Dinâmica de Computações para Execução na Edge
title_full Decomposição Dinâmica de Computações para Execução na Edge
title_fullStr Decomposição Dinâmica de Computações para Execução na Edge
title_full_unstemmed Decomposição Dinâmica de Computações para Execução na Edge
title_sort Decomposição Dinâmica de Computações para Execução na Edge
author Carrasco, Diogo
author_facet Carrasco, Diogo
author_role author
dc.contributor.none.fl_str_mv Gomes, Maria Cecília
Leitão, João
RUN
dc.contributor.author.fl_str_mv Carrasco, Diogo
dc.subject.por.fl_str_mv cloud
edge
micro-serviços
Domínio/Área Científica::Engenharia e Tecnologia::Engenharia Eletrotécnica, Eletrónica e Informática
topic cloud
edge
micro-serviços
Domínio/Área Científica::Engenharia e Tecnologia::Engenharia Eletrotécnica, Eletrónica e Informática
description Com o aumento do número de dispositivos terminais no domínio da Internet of Things (IoT) e que realizam pedidos a serviços em execução na cloud, tal como smartphones, tablets, etc., o processamento de um tão elevado volume de dados na cloud torna-se in- comportável. É também crescente o número de aplicações sensíveis à latência (e.g. online gaming) e de dispositivos IoT que necessitam de tomar decisões em tempo real/quase- real (e.g. smart cars) que requerem uma resposta rápida por parte de serviços essenciais. Torna-se então necessário aproximar os serviços, que executam os pedidos/processam os dados, aos dispositivos, reduzindo assim a latência e permitindo uma resposta atem- pada. Esta abordagem de trazer as computações para nós computacionais mais perto dos dispositivos/fontes de dados chama-se Computação na Edge. Características distintivas desses nós são a sua heterogeneidade, capacidade computacional e de armazenamento reduzidas, e variabilidade na carga de trabalho (workload). De modo a responder às restrições computacionais e energéticas dos nós da edge, os módulos de código que aí é possível executar têm também de ser de dimensão reduzida (e.g. micro-serviços). Adicionalmente, as decisões tomadas em termos da localização des- ses módulos (e.g. em função da carga e localização dos nós e, volume de acessos) podem ser melhoradas se houver informação sobre as características do seu código. Por exem- plo, se o módulo contém código que faz recolha de dados, filtra esses dados e agrega os resultados (e.g. à semelhança de plataformas distribuídas map-reduce). Existindo essa informação (e.g. através de anotações no código), é possível decompor (dinamicamente) a funcionalidade de um módulo em sub-módulos, e fazer o seu deployment tendo em vista melhorar a robustez e desempenho do módulo como um todo. A solução consiste numa API, que através do uso de anotações Java, permite aos uti- lizadores marcar o offload de um conjunto de tarefas para a sua execução na edge. Estas tarefas são mapeadas para um conjunto de padrões computacionais a executar na edge implementados com recurso ao modelo de actores. A avaliação realizada permitiu comprovar que a API permite aos utilizadores benefi- ciarem do offload de tarefas para o ambiente edge, ao mesmo tempo que lhes é oferecida uma forma transparente de fazer este offload, em que apenas necessitam de se focar na lógica da aplicação.
publishDate 2020
dc.date.none.fl_str_mv 2020-09
2020-09-01T00:00:00Z
2025-01-13T13:51:46Z
dc.type.status.fl_str_mv info:eu-repo/semantics/publishedVersion
dc.type.driver.fl_str_mv info:eu-repo/semantics/masterThesis
format masterThesis
status_str publishedVersion
dc.identifier.uri.fl_str_mv http://hdl.handle.net/10362/177334
url http://hdl.handle.net/10362/177334
dc.language.iso.fl_str_mv por
language por
dc.rights.driver.fl_str_mv info:eu-repo/semantics/openAccess
eu_rights_str_mv openAccess
dc.format.none.fl_str_mv application/pdf
dc.source.none.fl_str_mv reponame:Repositórios Científicos de Acesso Aberto de Portugal (RCAAP)
instname:FCCN, serviços digitais da FCT – Fundação para a Ciência e a Tecnologia
instacron:RCAAP
instname_str FCCN, serviços digitais da FCT – Fundação para a Ciência e a Tecnologia
instacron_str RCAAP
institution RCAAP
reponame_str Repositórios Científicos de Acesso Aberto de Portugal (RCAAP)
collection Repositórios Científicos de Acesso Aberto de Portugal (RCAAP)
repository.name.fl_str_mv Repositórios Científicos de Acesso Aberto de Portugal (RCAAP) - FCCN, serviços digitais da FCT – Fundação para a Ciência e a Tecnologia
repository.mail.fl_str_mv info@rcaap.pt
_version_ 1833598247422132224