TeraORM — Design e Implementação de um ORM Analítico para Aplicações em Big Data com Foco na Sustentabilidade de Codebases

  • João Vitor Coimbra Centro Federal de Educação Tecnológica Celso Suckow da Fonseca (CEFET/RJ)
  • Eduardo Ferreira Centro Federal de Educação Tecnológica Celso Suckow da Fonseca (CEFET/RJ)

Resumo


O TeraORM é um framework de mapeamento objeto-relacional (ORM) em Node.js projetado para data warehouses e data lakes analíticos. Ele traduz chamadas ORM de alto nível em operações nativas de cada plataforma — inicialmente o Google BigQuery — reduzindo trechos repetitivos e facilitando a manutenção de longo prazo da aplicação. O framework foi desenvolvido e validado utilizando o método Design Science Research (DSR). Sua efetividade é avaliada por meio de (1) métricas de simplicidade de código e (2) um estudo de caso envolvendo a migração de um repositório real. Resultados preliminares indicam uma redução de até 20% nas linhas de código, sugerindo que abstrações em nível de linguagem podem melhorar a manutenibilidade de projetos analíticos.

Palavras-chave: Frameworks de dados, ecossistemas e arquiteturas de banco de dados, aplicações centradas em dados, experimentos e análises

Referências

Begoli, E., Camacho-Rodríguez, J., Hyde, J., Mior, M. J., and Lemire, D. (2018). Apache calcite: A foundational framework for optimized query processing over heterogeneous data sources. In Proceedings of the 2018 International Conference on Management of Data, SIGMOD ’18, page 221–230, New York, NY, USA. Association for Computing Machinery.

C. Bauer, G. K. . G. G. (2006). Java Persistence With Hibernate. Manning Publications.

Coleman, D., Ash, D., Lowther, B., and Oman, P. (1994). Using metrics to evaluate software system maintainability. Computer, 27:44–49.

Dresch, A., Lacerda, D. P., and Antunes Júnior, J. A. V. (2015). Design Science Research: Método de Pesquisa para Avanço da Ciência e Tecnologia. Bookman Editora, Porto Alegre.

Ebert, C. and Cain, J. (2016). Cyclomatic complexity. IEEE Software, 33:27–29.

Elbaum, S. and Munson, J. (2000). Code churn: A measure for estimating the impact of code change. Conference on Software Maintenance.

Elmore, A., Duggan, J., Stonebraker, M., Balazinska, M., Cetintemel, U., Gadepally, V., Heer, J., Howe, B., Kepner, J., Kraska, T., Madden, S., Maier, D., Mattson, T., Papadopoulos, S., Parkhurst, J., Tatbul, N., Vartak, M., and Zdonik, S. (2015). A demonstration of the bigdawg polystore system. Proc. VLDB Endow., 8(12):1908–1911.

Gruca, A. and Podsiadło, P. (2014). Performance analysis of .net based object–relational mapping frameworks.

Hevner, A. R. (2007). A three cycle view of design science research. Scandinavian Journal of Information Systems, 19(2):87–92.

Inmon, W. H., S. D. . N. G. (2008). Dw 2.0: The architecture for the next generation of data warehousing. In DW 2.0: The architecture for the next generation of data warehousing. Elsevier.

ISO/IEC 25010 (2011). Systems and Software Engineering — Systems and Software Quality Requirements and Evaluation (SQuaRE) — System and Software Quality Models. International Organization for Standardization. Genebra, CH.

Kimball, R. Ross, M. (2013). The data warehouse toolkit: the definitive guide to dimensional modeling, chapter 55. John Wiley Sons, Inc.

Prisma (2025). Comparing sql, query builders, and orms. Acesso em: 5 jun. 2025.

Reinsel, D., G. J. and Rydning, J. (2017). Data age 2025: The evolution of data to life-critical. In Data age 2025: The evolution of data to life-critical, page 2. IDC.

Wazlawick, R. S. (2020). Metodologia de Pesquisa para Ciência da Computação. GEN LTC, Rio de Janeiro, 3 edition.

Wieringa, R. J. (2014). Design Science Methodology for Information Systems and Software Engineering. Springer, Berlin.
Publicado
29/09/2025
COIMBRA, João Vitor; FERREIRA, Eduardo. TeraORM — Design e Implementação de um ORM Analítico para Aplicações em Big Data com Foco na Sustentabilidade de Codebases. In: WORKSHOP DE TRABALHOS DE ALUNOS DA GRADUAÇÃO (WTAG) - SIMPÓSIO BRASILEIRO DE BANCO DE DADOS (SBBD), 40. , 2025, Fortaleza/CE. Anais [...]. Porto Alegre: Sociedade Brasileira de Computação, 2025 . p. 43-49. DOI: https://doi.org/10.5753/sbbd_estendido.2025.247737.