A Performance Analysis of a Reactive-based Complex Event Processing Library
Autor(a) principal: | |
---|---|
Data de Publicação: | 2019 |
Tipo de documento: | Dissertação |
Idioma: | eng |
Título da fonte: | Repositório Institucional da UFPE |
Texto Completo: | 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 |
2221 |
spelling |
LIMA, Carlos Eduardo Zimmerle dehttp://lattes.cnpq.br/8472465190102818http://lattes.cnpq.br/6185519785664724GAMA, Kiev Santos da2019-11-28T22:32:48Z2019-11-28T22:32:48Z2019-08-02LIMA, 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/35362Reactive 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.engUniversidade Federal de PernambucoPrograma de Pos Graduacao em Ciencia da ComputacaoUFPEBrasilAttribution-NonCommercial-NoDerivs 3.0 Brazilhttp://creativecommons.org/licenses/by-nc-nd/3.0/br/info:eu-repo/semantics/openAccessEngenharia de SoftwareInternet das CoisasAnalytics na BordaAplicações ReativasA Performance Analysis of a Reactive-based Complex Event Processing Libraryinfo:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/masterThesismestradoreponame:Repositório Institucional da UFPEinstname:Universidade Federal de Pernambuco (UFPE)instacron:UFPETEXTDISSERTAÇÃO Carlos Eduardo Zimmerle de Lima.pdf.txtDISSERTAÇÃO Carlos Eduardo Zimmerle de Lima.pdf.txtExtracted texttext/plain143874https://repositorio.ufpe.br/bitstream/123456789/35362/4/DISSERTA%c3%87%c3%83O%20Carlos%20Eduardo%20Zimmerle%20de%20Lima.pdf.txt5d1c3f023b589374c820f06d97e0bf27MD54THUMBNAILDISSERTAÇÃO Carlos Eduardo Zimmerle de Lima.pdf.jpgDISSERTAÇÃO Carlos Eduardo Zimmerle de Lima.pdf.jpgGenerated Thumbnailimage/jpeg1254https://repositorio.ufpe.br/bitstream/123456789/35362/5/DISSERTA%c3%87%c3%83O%20Carlos%20Eduardo%20Zimmerle%20de%20Lima.pdf.jpg6f06d78cb9e44ff3ec4a2a670d4bcfa2MD55ORIGINALDISSERTAÇÃO Carlos Eduardo Zimmerle de Lima.pdfDISSERTAÇÃO Carlos Eduardo Zimmerle de Lima.pdfapplication/pdf1663659https://repositorio.ufpe.br/bitstream/123456789/35362/1/DISSERTA%c3%87%c3%83O%20Carlos%20Eduardo%20Zimmerle%20de%20Lima.pdf42c80295b22b90d6765e9a058c7e02f2MD51CC-LICENSElicense_rdflicense_rdfapplication/rdf+xml; charset=utf-8811https://repositorio.ufpe.br/bitstream/123456789/35362/2/license_rdfe39d27027a6cc9cb039ad269a5db8e34MD52LICENSElicense.txtlicense.txttext/plain; charset=utf-81748https://repositorio.ufpe.br/bitstream/123456789/35362/3/license.txt8a4605be74aa9ea9d79846c1fba20a33MD53123456789/353622019-11-29 02:17:20.222oai:repositorio.ufpe.br:123456789/35362Tk9URTogUExBQ0UgWU9VUiBPV04gTElDRU5TRSBIRVJFClRoaXMgc2FtcGxlIGxpY2Vuc2UgaXMgcHJvdmlkZWQgZm9yIGluZm9ybWF0aW9uYWwgcHVycG9zZXMgb25seS4KCk5PTi1FWENMVVNJVkUgRElTVFJJQlVUSU9OIExJQ0VOU0UKCkJ5IHNpZ25pbmcgYW5kIHN1Ym1pdHRpbmcgdGhpcyBsaWNlbnNlLCB5b3UgKHRoZSBhdXRob3Iocykgb3IgY29weXJpZ2h0Cm93bmVyKSBncmFudHMgdG8gRFNwYWNlIFVuaXZlcnNpdHkgKERTVSkgdGhlIG5vbi1leGNsdXNpdmUgcmlnaHQgdG8gcmVwcm9kdWNlLAp0cmFuc2xhdGUgKGFzIGRlZmluZWQgYmVsb3cpLCBhbmQvb3IgZGlzdHJpYnV0ZSB5b3VyIHN1Ym1pc3Npb24gKGluY2x1ZGluZwp0aGUgYWJzdHJhY3QpIHdvcmxkd2lkZSBpbiBwcmludCBhbmQgZWxlY3Ryb25pYyBmb3JtYXQgYW5kIGluIGFueSBtZWRpdW0sCmluY2x1ZGluZyBidXQgbm90IGxpbWl0ZWQgdG8gYXVkaW8gb3IgdmlkZW8uCgpZb3UgYWdyZWUgdGhhdCBEU1UgbWF5LCB3aXRob3V0IGNoYW5naW5nIHRoZSBjb250ZW50LCB0cmFuc2xhdGUgdGhlCnN1Ym1pc3Npb24gdG8gYW55IG1lZGl1bSBvciBmb3JtYXQgZm9yIHRoZSBwdXJwb3NlIG9mIHByZXNlcnZhdGlvbi4KCllvdSBhbHNvIGFncmVlIHRoYXQgRFNVIG1heSBrZWVwIG1vcmUgdGhhbiBvbmUgY29weSBvZiB0aGlzIHN1Ym1pc3Npb24gZm9yCnB1cnBvc2VzIG9mIHNlY3VyaXR5LCBiYWNrLXVwIGFuZCBwcmVzZXJ2YXRpb24uCgpZb3UgcmVwcmVzZW50IHRoYXQgdGhlIHN1Ym1pc3Npb24gaXMgeW91ciBvcmlnaW5hbCB3b3JrLCBhbmQgdGhhdCB5b3UgaGF2ZQp0aGUgcmlnaHQgdG8gZ3JhbnQgdGhlIHJpZ2h0cyBjb250YWluZWQgaW4gdGhpcyBsaWNlbnNlLiBZb3UgYWxzbyByZXByZXNlbnQKdGhhdCB5b3VyIHN1Ym1pc3Npb24gZG9lcyBub3QsIHRvIHRoZSBiZXN0IG9mIHlvdXIga25vd2xlZGdlLCBpbmZyaW5nZSB1cG9uCmFueW9uZSdzIGNvcHlyaWdodC4KCklmIHRoZSBzdWJtaXNzaW9uIGNvbnRhaW5zIG1hdGVyaWFsIGZvciB3aGljaCB5b3UgZG8gbm90IGhvbGQgY29weXJpZ2h0LAp5b3UgcmVwcmVzZW50IHRoYXQgeW91IGhhdmUgb2J0YWluZWQgdGhlIHVucmVzdHJpY3RlZCBwZXJtaXNzaW9uIG9mIHRoZQpjb3B5cmlnaHQgb3duZXIgdG8gZ3JhbnQgRFNVIHRoZSByaWdodHMgcmVxdWlyZWQgYnkgdGhpcyBsaWNlbnNlLCBhbmQgdGhhdApzdWNoIHRoaXJkLXBhcnR5IG93bmVkIG1hdGVyaWFsIGlzIGNsZWFybHkgaWRlbnRpZmllZCBhbmQgYWNrbm93bGVkZ2VkCndpdGhpbiB0aGUgdGV4dCBvciBjb250ZW50IG9mIHRoZSBzdWJtaXNzaW9uLgoKSUYgVEhFIFNVQk1JU1NJT04gSVMgQkFTRUQgVVBPTiBXT1JLIFRIQVQgSEFTIEJFRU4gU1BPTlNPUkVEIE9SIFNVUFBPUlRFRApCWSBBTiBBR0VOQ1kgT1IgT1JHQU5JWkFUSU9OIE9USEVSIFRIQU4gRFNVLCBZT1UgUkVQUkVTRU5UIFRIQVQgWU9VIEhBVkUKRlVMRklMTEVEIEFOWSBSSUdIVCBPRiBSRVZJRVcgT1IgT1RIRVIgT0JMSUdBVElPTlMgUkVRVUlSRUQgQlkgU1VDSApDT05UUkFDVCBPUiBBR1JFRU1FTlQuCgpEU1Ugd2lsbCBjbGVhcmx5IGlkZW50aWZ5IHlvdXIgbmFtZShzKSBhcyB0aGUgYXV0aG9yKHMpIG9yIG93bmVyKHMpIG9mIHRoZQpzdWJtaXNzaW9uLCBhbmQgd2lsbCBub3QgbWFrZSBhbnkgYWx0ZXJhdGlvbiwgb3RoZXIgdGhhbiBhcyBhbGxvd2VkIGJ5IHRoaXMKbGljZW5zZSwgdG8geW91ciBzdWJtaXNzaW9uLgo=Repositó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.pt_BR.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.authorLattes.pt_BR.fl_str_mv |
http://lattes.cnpq.br/8472465190102818 |
dc.contributor.advisorLattes.pt_BR.fl_str_mv |
http://lattes.cnpq.br/6185519785664724 |
dc.contributor.author.fl_str_mv |
LIMA, Carlos Eduardo Zimmerle de |
dc.contributor.advisor1.fl_str_mv |
GAMA, Kiev Santos da |
contributor_str_mv |
GAMA, Kiev Santos da |
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.accessioned.fl_str_mv |
2019-11-28T22:32:48Z |
dc.date.available.fl_str_mv |
2019-11-28T22:32:48Z |
dc.date.issued.fl_str_mv |
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.citation.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. |
dc.identifier.uri.fl_str_mv |
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.publisher.none.fl_str_mv |
Universidade Federal de Pernambuco |
dc.publisher.program.fl_str_mv |
Programa de Pos Graduacao em Ciencia da Computacao |
dc.publisher.initials.fl_str_mv |
UFPE |
dc.publisher.country.fl_str_mv |
Brasil |
publisher.none.fl_str_mv |
Universidade Federal de Pernambuco |
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 |
bitstream.url.fl_str_mv |
https://repositorio.ufpe.br/bitstream/123456789/35362/4/DISSERTA%c3%87%c3%83O%20Carlos%20Eduardo%20Zimmerle%20de%20Lima.pdf.txt https://repositorio.ufpe.br/bitstream/123456789/35362/5/DISSERTA%c3%87%c3%83O%20Carlos%20Eduardo%20Zimmerle%20de%20Lima.pdf.jpg https://repositorio.ufpe.br/bitstream/123456789/35362/1/DISSERTA%c3%87%c3%83O%20Carlos%20Eduardo%20Zimmerle%20de%20Lima.pdf https://repositorio.ufpe.br/bitstream/123456789/35362/2/license_rdf https://repositorio.ufpe.br/bitstream/123456789/35362/3/license.txt |
bitstream.checksum.fl_str_mv |
5d1c3f023b589374c820f06d97e0bf27 6f06d78cb9e44ff3ec4a2a670d4bcfa2 42c80295b22b90d6765e9a058c7e02f2 e39d27027a6cc9cb039ad269a5db8e34 8a4605be74aa9ea9d79846c1fba20a33 |
bitstream.checksumAlgorithm.fl_str_mv |
MD5 MD5 MD5 MD5 MD5 |
repository.name.fl_str_mv |
Repositório Institucional da UFPE - Universidade Federal de Pernambuco (UFPE) |
repository.mail.fl_str_mv |
attena@ufpe.br |
_version_ |
1797780323717611520 |