Analyzing the adoption of database engines throughout the life cycle of Java open source projects

Detalhes bibliográficos
Ano de defesa: 2023
Autor(a) principal: Santos, Raquel Maximino de Barros
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 Fluminense (UFF)
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://www.repositorio.mar.mil.br/handle/ripcmb/846562
Resumo: Sistemas de Gerência de Banco de Dados (SGBDs) são amplamente utilizados para armazenar, recuperar e gerenciar as vastas quantidades de dados que os aplicativos modernos manipulam. Existem vários SGBDs disponíveis na indústria. Embora alguns estudos tenham examinado a coevolução de SGBDs e do código-fonte das aplicações, ainda há uma lacuna de pesquisa no exame da adoção de SGBDs em sistemas reais. Conhecer os SGBDs mais comumente usados, com que frequência eles são usados juntos e seus padrões de substituição pode ajudar os gerentes de projeto a tomar decisões mais assertivas sobre a adoção de SGBDs. Desta forma, conduziu-se uma investigação histórica em 317 projetos populares de código aberto, voltados para usuários finais, desenvolvidos em Java e hospedados no GitHub, com o intuito de determinar se esses projetos empregaram, em algum momento, algum dos 50 SGBDs mais populares de acordo com o ranking da DBEngines. Foi observado que o MySQL é o SGBD relacional mais utilizado, sucedido pelo PostgreSQL e H2. Considerando apenas SGBDs não relacionais, o Redis surge como a escolha predominante, com Cassandra logo atrás. SGBDs multimodelos são os mais bem classificados em projetos de gerenciamento de infraestrutura. Além disso, foram encontradas diferentes combinações de subconjuntos de 11 SGBDs sendo usados juntos no início do ciclo de vida dos projetos (por exemplo, PostgreSQL e MySQL). Na metade do ciclo de vida dos projetos, foram encontradas combinações de 25 SGBDs sendo usados juntos (por exemplo, MS SQL Server e Oracle). Finalmente, ao final do ciclo de vida, esse número aumenta para 29 SGBDs (por exemplo, Redis e H2). Também foram investigadas as substituições de SGBDs. Ao minerar padrões sequenciais, descobriu-se 20 situações em que projetos substituíram SGBDs. Por exemplo, observou-se 11 substituições do PostgreSQL em 8 projetos do corpus, sendo o MySQL uma escolha de substituição dominante, já que substituiu o PostgreSQL em quatro instâncias. Por outro lado, nenhum projeto mudou do MySQL para o PostgreSQL. Em resumo, este trabalho oferece insights sobre os padrões de adoção, co-uso e tendências de substituição de SGBD.
id MB_0735fa8a469c52409021bb5d2d369cf1
oai_identifier_str oai:www.repositorio.mar.mil.br:ripcmb/846562
network_acronym_str MB
network_name_str Repositório Institucional da Produção Científica da Marinha do Brasil (RI-MB)
repository_id_str
spelling Analyzing the adoption of database engines throughout the life cycle of Java open source projectsDatabase engines adoptionDBMS adoptionJavaEngenharia de software (DGPM-305)Sistemas de Gerência de Banco de Dados (SGBDs) são amplamente utilizados para armazenar, recuperar e gerenciar as vastas quantidades de dados que os aplicativos modernos manipulam. Existem vários SGBDs disponíveis na indústria. Embora alguns estudos tenham examinado a coevolução de SGBDs e do código-fonte das aplicações, ainda há uma lacuna de pesquisa no exame da adoção de SGBDs em sistemas reais. Conhecer os SGBDs mais comumente usados, com que frequência eles são usados juntos e seus padrões de substituição pode ajudar os gerentes de projeto a tomar decisões mais assertivas sobre a adoção de SGBDs. Desta forma, conduziu-se uma investigação histórica em 317 projetos populares de código aberto, voltados para usuários finais, desenvolvidos em Java e hospedados no GitHub, com o intuito de determinar se esses projetos empregaram, em algum momento, algum dos 50 SGBDs mais populares de acordo com o ranking da DBEngines. Foi observado que o MySQL é o SGBD relacional mais utilizado, sucedido pelo PostgreSQL e H2. Considerando apenas SGBDs não relacionais, o Redis surge como a escolha predominante, com Cassandra logo atrás. SGBDs multimodelos são os mais bem classificados em projetos de gerenciamento de infraestrutura. Além disso, foram encontradas diferentes combinações de subconjuntos de 11 SGBDs sendo usados juntos no início do ciclo de vida dos projetos (por exemplo, PostgreSQL e MySQL). Na metade do ciclo de vida dos projetos, foram encontradas combinações de 25 SGBDs sendo usados juntos (por exemplo, MS SQL Server e Oracle). Finalmente, ao final do ciclo de vida, esse número aumenta para 29 SGBDs (por exemplo, Redis e H2). Também foram investigadas as substituições de SGBDs. Ao minerar padrões sequenciais, descobriu-se 20 situações em que projetos substituíram SGBDs. Por exemplo, observou-se 11 substituições do PostgreSQL em 8 projetos do corpus, sendo o MySQL uma escolha de substituição dominante, já que substituiu o PostgreSQL em quatro instâncias. Por outro lado, nenhum projeto mudou do MySQL para o PostgreSQL. Em resumo, este trabalho oferece insights sobre os padrões de adoção, co-uso e tendências de substituição de SGBD.Database Management Systems (DBMSs) are largely used to store, retrieve, and manage the vast amounts of data that modern applications handle. There are various DBMSs available in the industry. While a few studies have examined the coevolution of DBMSs and application source code, there is a research gap in examining the adoption of DBMSs in real systems. Knowing the most commonly used DBMSs, how frequently they are used together, and their patterns of replacement can assist project managers in making informed decisions about DBMS adoption. Therefore, we conducted a historical investigation of 317 popular open-source end-user applications developed in Java and hosted on GitHub. We determined if these projects had, at any point, employed any of the top 50 DBMSs as ranked by DB-Engines. We observed that MySQL is the most utilized relational DBMS, succeeded by PostgreSQL and H2. Considering only non-relational DBMSs, Redis emerges as the predominant choice, with Cassandra trailing behind. Multi-model DBMSs are top-ranked in Infrastructure Management projects. Furthermore, we found different combinations of subsets of 11 DBMSs being used together at the beginning of the project life cycle (e.g., PostgreSQL and MySQL). Halfway through the project life cycle, we found combinations of 25 DBMSs being used together (e.g., MS SQL Server and Oracle). Finally, at the end of the life cycle, this number increases to 29 DBMSs (e.g., Redis and H2). We also investigated the replacements of DBMSs. We mined sequential patterns and discovered 20 situations where projects replaced DBMSs. For example, we could observe 11 replacements of PostgreSQL in 8 projects in our corpus, with MySQL being a dominant replacement choice, having superseded PostgreSQL in four instances. Conversely, no project switched from MySQL to PostgreSQL. In summary, this work offers insights into the patterns of DBMS adoption, co-use, and replacement tendencies.Universidade Federal Fluminense (UFF)Murta, Leonardo Gresta PaulinoMurta, Vanessa BraganholoSantos, Raquel Maximino de Barros2024-01-15T14:48:13Z2024-01-15T14:48:13Z2023info:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/masterThesisapplication/pdfhttps://www.repositorio.mar.mil.br/handle/ripcmb/846562info:eu-repo/semantics/openAccessengreponame:Repositório Institucional da Produção Científica da Marinha do Brasil (RI-MB)instname:Marinha do Brasil (MB)instacron:MB2025-08-26T17:03:58Zoai:www.repositorio.mar.mil.br:ripcmb/846562Repositório InstitucionalPUBhttps://www.repositorio.mar.mil.br/oai/requestdphdm.repositorio@marinha.mil.bropendoar:2025-08-26T17:03:58Repositório Institucional da Produção Científica da Marinha do Brasil (RI-MB) - Marinha do Brasil (MB)false
dc.title.none.fl_str_mv Analyzing the adoption of database engines throughout the life cycle of Java open source projects
title Analyzing the adoption of database engines throughout the life cycle of Java open source projects
spellingShingle Analyzing the adoption of database engines throughout the life cycle of Java open source projects
Santos, Raquel Maximino de Barros
Database engines adoption
DBMS adoption
Java
Engenharia de software (DGPM-305)
title_short Analyzing the adoption of database engines throughout the life cycle of Java open source projects
title_full Analyzing the adoption of database engines throughout the life cycle of Java open source projects
title_fullStr Analyzing the adoption of database engines throughout the life cycle of Java open source projects
title_full_unstemmed Analyzing the adoption of database engines throughout the life cycle of Java open source projects
title_sort Analyzing the adoption of database engines throughout the life cycle of Java open source projects
author Santos, Raquel Maximino de Barros
author_facet Santos, Raquel Maximino de Barros
author_role author
dc.contributor.none.fl_str_mv Murta, Leonardo Gresta Paulino
Murta, Vanessa Braganholo
dc.contributor.author.fl_str_mv Santos, Raquel Maximino de Barros
dc.subject.por.fl_str_mv Database engines adoption
DBMS adoption
Java
Engenharia de software (DGPM-305)
topic Database engines adoption
DBMS adoption
Java
Engenharia de software (DGPM-305)
description Sistemas de Gerência de Banco de Dados (SGBDs) são amplamente utilizados para armazenar, recuperar e gerenciar as vastas quantidades de dados que os aplicativos modernos manipulam. Existem vários SGBDs disponíveis na indústria. Embora alguns estudos tenham examinado a coevolução de SGBDs e do código-fonte das aplicações, ainda há uma lacuna de pesquisa no exame da adoção de SGBDs em sistemas reais. Conhecer os SGBDs mais comumente usados, com que frequência eles são usados juntos e seus padrões de substituição pode ajudar os gerentes de projeto a tomar decisões mais assertivas sobre a adoção de SGBDs. Desta forma, conduziu-se uma investigação histórica em 317 projetos populares de código aberto, voltados para usuários finais, desenvolvidos em Java e hospedados no GitHub, com o intuito de determinar se esses projetos empregaram, em algum momento, algum dos 50 SGBDs mais populares de acordo com o ranking da DBEngines. Foi observado que o MySQL é o SGBD relacional mais utilizado, sucedido pelo PostgreSQL e H2. Considerando apenas SGBDs não relacionais, o Redis surge como a escolha predominante, com Cassandra logo atrás. SGBDs multimodelos são os mais bem classificados em projetos de gerenciamento de infraestrutura. Além disso, foram encontradas diferentes combinações de subconjuntos de 11 SGBDs sendo usados juntos no início do ciclo de vida dos projetos (por exemplo, PostgreSQL e MySQL). Na metade do ciclo de vida dos projetos, foram encontradas combinações de 25 SGBDs sendo usados juntos (por exemplo, MS SQL Server e Oracle). Finalmente, ao final do ciclo de vida, esse número aumenta para 29 SGBDs (por exemplo, Redis e H2). Também foram investigadas as substituições de SGBDs. Ao minerar padrões sequenciais, descobriu-se 20 situações em que projetos substituíram SGBDs. Por exemplo, observou-se 11 substituições do PostgreSQL em 8 projetos do corpus, sendo o MySQL uma escolha de substituição dominante, já que substituiu o PostgreSQL em quatro instâncias. Por outro lado, nenhum projeto mudou do MySQL para o PostgreSQL. Em resumo, este trabalho oferece insights sobre os padrões de adoção, co-uso e tendências de substituição de SGBD.
publishDate 2023
dc.date.none.fl_str_mv 2023
2024-01-15T14:48:13Z
2024-01-15T14:48:13Z
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 https://www.repositorio.mar.mil.br/handle/ripcmb/846562
url https://www.repositorio.mar.mil.br/handle/ripcmb/846562
dc.language.iso.fl_str_mv eng
language eng
dc.rights.driver.fl_str_mv info:eu-repo/semantics/openAccess
eu_rights_str_mv openAccess
dc.format.none.fl_str_mv application/pdf
dc.publisher.none.fl_str_mv Universidade Federal Fluminense (UFF)
publisher.none.fl_str_mv Universidade Federal Fluminense (UFF)
dc.source.none.fl_str_mv reponame:Repositório Institucional da Produção Científica da Marinha do Brasil (RI-MB)
instname:Marinha do Brasil (MB)
instacron:MB
instname_str Marinha do Brasil (MB)
instacron_str MB
institution MB
reponame_str Repositório Institucional da Produção Científica da Marinha do Brasil (RI-MB)
collection Repositório Institucional da Produção Científica da Marinha do Brasil (RI-MB)
repository.name.fl_str_mv Repositório Institucional da Produção Científica da Marinha do Brasil (RI-MB) - Marinha do Brasil (MB)
repository.mail.fl_str_mv dphdm.repositorio@marinha.mil.br
_version_ 1855762812779888640