Otimização de Dataflows em Frameworks de Big Data por meio do Reúso de Dados
Resumo
O uso de arcabouços de Big Data tem aumentado nos últimos anos. Esses arcabouços representam um avanço no que tange o apoio à execução paralela e distribuída de aplicações. Essas aplicações são frequentemente compostas de diversas atividades, gerando assim um dataflow, que em geral processa um grande volume de dados. Por mais que os arcabouços sejam otimizados para explorar localidade dos dados evitar transferências desnecessárias no ambiente distribuído, tais otimizações são focadas em execuções isoladas, i.e. não consideram aproveitar dados de execuções anteriores. Esse tipo de reuso de dados pode acelerar dataflows, uma vez que o dado não precisa ser processado novamente caso já tenha sido produzido por uma execução anterior do mesmo dataflow. Este artigo apresenta uma abordagem para o compartilhamento de dados gerados nos dataflows. Discutimos e implementamos uma arquitetura que permite que múltiplas execuções de dataflows possam compartilhar resultados intermediários, reduzindo tempo de execução. Avaliamos a abordagem com dataflows reais de processamento de dados da COVID-19.
Palavras-chave:
otimização de dataflows, reuso de dados, big data
Referências
Airflow, A. (2022). Apache airflow. https://airflow.apache.org/.
Armbrust, M. (2020). Delta lake: High-performance acid table storage over cloud object stores. In Databricks. Databricks.
Azkaban (2022). Azkaban. https://azkaban.github.io/.
de Oliveira, D. C. M., Liu, J., and Pacitti, E. (2019). Data-Intensive Workflow Management: For Clouds and Data-Intensive and Scalable Computing Environments. Synthesis Lectures on Data Management. Morgan & Claypool Publishers.
Gottin, V., Pacheco, E., Dias, J., Ciarlini, A., Costa, B., Vieira, W., Souto, Y., Pires, P., Porto, F., and Rittmeyer, J. (2018). Automatic caching decision for scientific dataflow execution in apache spark. In Proc. of the BeyondMR, pages 1-10.
Heidsieck, G., de Oliveira, D., Pacitti, E., Pradal, C., Tardieu, F., and Valduriez, P. (2020). Distributed caching of scientific workflows in multisite cloud. In Database and Expert Systems Applications, volume 12392, pages 51-65. Springer.
Hopkins, U. J. (2022). Covid-19 data repository by the center for systems science and engineering at johns hopkins university. https://github.com/cssegisanddata/covid-19.
Jain, A. (2017). Mastering Apache Storm: Real-Time Big Data Streaming Using Kafka, Hbase and Redis. Packt Publishing.
Lakshman, A. and Malik, P. (2009). Cassandra-a decentralized structured storage system. In Cs Cornell. Cs Cornell.
Prefect (2022). Prefect-the new standard in dataflow automation-prefect. https://www.prefect.io/.
Zaharia, M., Xin, R. S., Wendell, P., Das, T., Armbrust, M., Dave, A., Meng, X., Rosen, J., Venkataraman, S., Franklin, M. J., Ghodsi, A., Gonzalez, J., Shenker, S., and Stoica, I. (2016). Apache spark: A unified engine for big data processing. Commun. ACM, 59(11):56-65.
Armbrust, M. (2020). Delta lake: High-performance acid table storage over cloud object stores. In Databricks. Databricks.
Azkaban (2022). Azkaban. https://azkaban.github.io/.
de Oliveira, D. C. M., Liu, J., and Pacitti, E. (2019). Data-Intensive Workflow Management: For Clouds and Data-Intensive and Scalable Computing Environments. Synthesis Lectures on Data Management. Morgan & Claypool Publishers.
Gottin, V., Pacheco, E., Dias, J., Ciarlini, A., Costa, B., Vieira, W., Souto, Y., Pires, P., Porto, F., and Rittmeyer, J. (2018). Automatic caching decision for scientific dataflow execution in apache spark. In Proc. of the BeyondMR, pages 1-10.
Heidsieck, G., de Oliveira, D., Pacitti, E., Pradal, C., Tardieu, F., and Valduriez, P. (2020). Distributed caching of scientific workflows in multisite cloud. In Database and Expert Systems Applications, volume 12392, pages 51-65. Springer.
Hopkins, U. J. (2022). Covid-19 data repository by the center for systems science and engineering at johns hopkins university. https://github.com/cssegisanddata/covid-19.
Jain, A. (2017). Mastering Apache Storm: Real-Time Big Data Streaming Using Kafka, Hbase and Redis. Packt Publishing.
Lakshman, A. and Malik, P. (2009). Cassandra-a decentralized structured storage system. In Cs Cornell. Cs Cornell.
Prefect (2022). Prefect-the new standard in dataflow automation-prefect. https://www.prefect.io/.
Zaharia, M., Xin, R. S., Wendell, P., Das, T., Armbrust, M., Dave, A., Meng, X., Rosen, J., Venkataraman, S., Franklin, M. J., Ghodsi, A., Gonzalez, J., Shenker, S., and Stoica, I. (2016). Apache spark: A unified engine for big data processing. Commun. ACM, 59(11):56-65.
Publicado
19/09/2022
Como Citar
DECARLO, Gustavo; DE OLIVEIRA, Daniel; PORTO, Fabio.
Otimização de Dataflows em Frameworks de Big Data por meio do Reúso de Dados. In: SIMPÓSIO BRASILEIRO DE BANCO DE DADOS (SBBD), 37. , 2022, Búzios.
Anais [...].
Porto Alegre: Sociedade Brasileira de Computação,
2022
.
p. 367-372.
ISSN 2763-8979.
DOI: https://doi.org/10.5753/sbbd.2022.225365.