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): GAMA, Kiev Santos da
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
Programa de Pós-Graduação: Programa de Pos Graduacao em Ciencia da Computacao
Departamento: Não Informado pela instituição
País: Brasil
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.