A Performance Analysis of a Reactive-based Complex Event Processing Library

Detalhes bibliográficos
Ano de defesa: 2019
Autor(a) principal: LIMA, Carlos Eduardo Zimmerle de
Orientador(a): Não Informado pela instituição
Banca de defesa: Não Informado pela instituição
Tipo de documento: Dissertação
Tipo de acesso: Acesso aberto
Idioma: eng
Instituição de defesa: Universidade Federal de Pernambuco
UFPE
Brasil
Programa de Pos Graduacao em Ciencia da Computacao
Programa de Pós-Graduação: Não Informado pela instituição
Departamento: Não Informado pela instituição
País: Não Informado pela instituição
Palavras-chave em Português:
Link de acesso: https://repositorio.ufpe.br/handle/123456789/35362
Resumo: Reactive applications are an important class of software designed to respond to events or changes surrounding an area of interest in a timely manner. Many different approaches have been proposed to project those applications, such as Complex Event Processing (CEP) and Reactive Languages (RLs). Despite being developed by different communities, they offer complementary solutions that could benefit their development. Meanwhile, the Internet of Things (IoT) is among the recent areas where reactive application solutions have been applied. IoT has a tremendous potential of allowing the creation of innovative applications, so the acquisition of IoT devices aligned with a great production of data, often called Big Data, is posing many challenges. As an alternative to deal with challenges faced by IoT stream processing placed on the cloud, Edge Analitycs has been proposed, consisting of placing part of the processing in the edge of the network. Pushing the processing toward the edge may incur in other challenges as well, since the devices are often resource-constrained. Combining the support for stream processing in those constrained devices and the proper adjustment of performance, a constant requirement in reactive applications, will be very important to allow this new trend. Therefore, this study presents CEP.js, a library to code complex event processing reactively that we have been developing, and reports an empirical study where CEP.js’ underlying reactive libraries, Most.js and RxJS, are varied to find out which performance aspects are more affected by those libraries while running in an Edge Analytics scenario. The results have shown that Most.js produced the worst results under different load levels and the differences were statistically significant. Consequently, both considered aspects, memory consumption and CPU usage, are more affected by the reactive library, Most.js.
id UFPE_1851aa5328dbfb2255b3abb4dc862144
oai_identifier_str oai:repositorio.ufpe.br:123456789/35362
network_acronym_str UFPE
network_name_str Repositório Institucional da UFPE
repository_id_str
spelling A Performance Analysis of a Reactive-based Complex Event Processing LibraryEngenharia de SoftwareInternet das CoisasAnalytics na BordaAplicações ReativasReactive applications are an important class of software designed to respond to events or changes surrounding an area of interest in a timely manner. Many different approaches have been proposed to project those applications, such as Complex Event Processing (CEP) and Reactive Languages (RLs). Despite being developed by different communities, they offer complementary solutions that could benefit their development. Meanwhile, the Internet of Things (IoT) is among the recent areas where reactive application solutions have been applied. IoT has a tremendous potential of allowing the creation of innovative applications, so the acquisition of IoT devices aligned with a great production of data, often called Big Data, is posing many challenges. As an alternative to deal with challenges faced by IoT stream processing placed on the cloud, Edge Analitycs has been proposed, consisting of placing part of the processing in the edge of the network. Pushing the processing toward the edge may incur in other challenges as well, since the devices are often resource-constrained. Combining the support for stream processing in those constrained devices and the proper adjustment of performance, a constant requirement in reactive applications, will be very important to allow this new trend. Therefore, this study presents CEP.js, a library to code complex event processing reactively that we have been developing, and reports an empirical study where CEP.js’ underlying reactive libraries, Most.js and RxJS, are varied to find out which performance aspects are more affected by those libraries while running in an Edge Analytics scenario. The results have shown that Most.js produced the worst results under different load levels and the differences were statistically significant. Consequently, both considered aspects, memory consumption and CPU usage, are more affected by the reactive library, Most.js.FACEPEAs aplicações reativas são uma classe importante de software projetada para responder a eventos ou mudanças em torno de uma área de interesse de maneira oportuna. Muitas abordagens diferentes foram propostas para projetar essas aplicações, tais como Processamento de Eventos Complexos (CEP) e Linguagens Reativas (RLs). Apesar de terem sido desenvolvidas por diferentes comunidades, elas oferecem soluções complementares que podem beneficiar seus desenvolvimentos. Enquanto isso, a Internet das Coisas (IoT) está entre as áreas recentes nas quais as soluções de aplicações reativas estão sendo aplicadas. IoT tem um tremendo potencial para permitir a criação de aplicações inovadoras, portanto, a aquisição de dispositivos IoT alinhado a uma grande produção de dados, geralmente chamada de Big Data, apresenta muitos desafios. Como uma alternativa para lidar com os desafios enfrentados pelo processamento de fluxo da IoT colocado na nuvem, o Edge Analitycs foi proposto, consistindo em colocar parte do processamento na borda da rede. Empurrar o processamento em direção à borda pode incorrer em outros desafios também, uma vez que os dispositivos possuem comumente recursos limitados. Combinar o suporte para o processamento de streams nesses dispositivos restritos e o ajuste adequado de performance, um requisito constante em aplicações reativas, será muito importante para permitir essa nova tendência. Portanto, este estudo apresenta CEP.js, uma biblioteca para codificar processamento de eventos complexos de forma reativa que nós temos desenvolvido, e relata um estudo empírico onde as bibliotecas reativas subjacentes de CEP.js, Most.js e RxJS, são alternadas para descobrir quais aspectos de desempenho são mais afetados por essas bibliotecas enquanto que executando em um cenário de analytics na borda. Os resultados mostraram que Most.js produziu os piores resultados sob os diferentes níveis de carga e as diferenças mostraram-se estatisticamente significantes. Consequentemente, ambos os aspectos considerados, consumo de memória e uso de CPU, são mais afetados pela biblioteca reativa, Most.js.Universidade Federal de PernambucoUFPEBrasilPrograma de Pos Graduacao em Ciencia da ComputacaoGAMA, Kiev Santos dahttp://lattes.cnpq.br/8472465190102818http://lattes.cnpq.br/6185519785664724LIMA, Carlos Eduardo Zimmerle de2019-11-28T22:32:48Z2019-11-28T22:32:48Z2019-08-02info:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/masterThesisapplication/pdfLIMA, Carlos Eduardo Zimmerle de. A Performance Analysis of a Reactive-based Complex Event Processing Library. 2019. Dissertação (Mestrado em Ciência da Computação) – Universidade Federal de Pernambuco, Recife, 2019.https://repositorio.ufpe.br/handle/123456789/35362engAttribution-NonCommercial-NoDerivs 3.0 Brazilhttp://creativecommons.org/licenses/by-nc-nd/3.0/br/info:eu-repo/semantics/openAccessreponame:Repositório Institucional da UFPEinstname:Universidade Federal de Pernambuco (UFPE)instacron:UFPE2019-11-29T05:17:20Zoai:repositorio.ufpe.br:123456789/35362Repositório InstitucionalPUBhttps://repositorio.ufpe.br/oai/requestattena@ufpe.bropendoar:22212019-11-29T05:17:20Repositório Institucional da UFPE - Universidade Federal de Pernambuco (UFPE)false
dc.title.none.fl_str_mv A Performance Analysis of a Reactive-based Complex Event Processing Library
title A Performance Analysis of a Reactive-based Complex Event Processing Library
spellingShingle A Performance Analysis of a Reactive-based Complex Event Processing Library
LIMA, Carlos Eduardo Zimmerle de
Engenharia de Software
Internet das Coisas
Analytics na Borda
Aplicações Reativas
title_short A Performance Analysis of a Reactive-based Complex Event Processing Library
title_full A Performance Analysis of a Reactive-based Complex Event Processing Library
title_fullStr A Performance Analysis of a Reactive-based Complex Event Processing Library
title_full_unstemmed A Performance Analysis of a Reactive-based Complex Event Processing Library
title_sort A Performance Analysis of a Reactive-based Complex Event Processing Library
author LIMA, Carlos Eduardo Zimmerle de
author_facet LIMA, Carlos Eduardo Zimmerle de
author_role author
dc.contributor.none.fl_str_mv GAMA, Kiev Santos da
http://lattes.cnpq.br/8472465190102818
http://lattes.cnpq.br/6185519785664724
dc.contributor.author.fl_str_mv LIMA, Carlos Eduardo Zimmerle de
dc.subject.por.fl_str_mv Engenharia de Software
Internet das Coisas
Analytics na Borda
Aplicações Reativas
topic Engenharia de Software
Internet das Coisas
Analytics na Borda
Aplicações Reativas
description Reactive applications are an important class of software designed to respond to events or changes surrounding an area of interest in a timely manner. Many different approaches have been proposed to project those applications, such as Complex Event Processing (CEP) and Reactive Languages (RLs). Despite being developed by different communities, they offer complementary solutions that could benefit their development. Meanwhile, the Internet of Things (IoT) is among the recent areas where reactive application solutions have been applied. IoT has a tremendous potential of allowing the creation of innovative applications, so the acquisition of IoT devices aligned with a great production of data, often called Big Data, is posing many challenges. As an alternative to deal with challenges faced by IoT stream processing placed on the cloud, Edge Analitycs has been proposed, consisting of placing part of the processing in the edge of the network. Pushing the processing toward the edge may incur in other challenges as well, since the devices are often resource-constrained. Combining the support for stream processing in those constrained devices and the proper adjustment of performance, a constant requirement in reactive applications, will be very important to allow this new trend. Therefore, this study presents CEP.js, a library to code complex event processing reactively that we have been developing, and reports an empirical study where CEP.js’ underlying reactive libraries, Most.js and RxJS, are varied to find out which performance aspects are more affected by those libraries while running in an Edge Analytics scenario. The results have shown that Most.js produced the worst results under different load levels and the differences were statistically significant. Consequently, both considered aspects, memory consumption and CPU usage, are more affected by the reactive library, Most.js.
publishDate 2019
dc.date.none.fl_str_mv 2019-11-28T22:32:48Z
2019-11-28T22:32:48Z
2019-08-02
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 LIMA, Carlos Eduardo Zimmerle de. A Performance Analysis of a Reactive-based Complex Event Processing Library. 2019. Dissertação (Mestrado em Ciência da Computação) – Universidade Federal de Pernambuco, Recife, 2019.
https://repositorio.ufpe.br/handle/123456789/35362
identifier_str_mv LIMA, Carlos Eduardo Zimmerle de. A Performance Analysis of a Reactive-based Complex Event Processing Library. 2019. Dissertação (Mestrado em Ciência da Computação) – Universidade Federal de Pernambuco, Recife, 2019.
url https://repositorio.ufpe.br/handle/123456789/35362
dc.language.iso.fl_str_mv eng
language eng
dc.rights.driver.fl_str_mv Attribution-NonCommercial-NoDerivs 3.0 Brazil
http://creativecommons.org/licenses/by-nc-nd/3.0/br/
info:eu-repo/semantics/openAccess
rights_invalid_str_mv Attribution-NonCommercial-NoDerivs 3.0 Brazil
http://creativecommons.org/licenses/by-nc-nd/3.0/br/
eu_rights_str_mv openAccess
dc.format.none.fl_str_mv application/pdf
dc.publisher.none.fl_str_mv Universidade Federal de Pernambuco
UFPE
Brasil
Programa de Pos Graduacao em Ciencia da Computacao
publisher.none.fl_str_mv Universidade Federal de Pernambuco
UFPE
Brasil
Programa de Pos Graduacao em Ciencia da Computacao
dc.source.none.fl_str_mv reponame:Repositório Institucional da UFPE
instname:Universidade Federal de Pernambuco (UFPE)
instacron:UFPE
instname_str Universidade Federal de Pernambuco (UFPE)
instacron_str UFPE
institution UFPE
reponame_str Repositório Institucional da UFPE
collection Repositório Institucional da UFPE
repository.name.fl_str_mv Repositório Institucional da UFPE - Universidade Federal de Pernambuco (UFPE)
repository.mail.fl_str_mv attena@ufpe.br
_version_ 1856041841165598720