Migração de Aplicações para a Cloud - Fidalgo, Diogo Monteiro (2023)
O presente relatório abrange a pesquisa, o desenvolvimento e as conclusões obtidas do estágio curricular na empresa Softinsa no centro de inovação da empresa em Vila Real. O estágio consistiu no estudo da tecnologia SingleStore e na sua aplicação numa prova de conceito de migração das bases de dados SQL Server da aplicação IALogging. Neste sentido, foi realizado um estudo inicial sobre o conceito de migração de uma base de dados, sobre as caracteristicas da SingleStore e de casos práticos de empresas que implementaram este tipo de renovação tecnológica de base de dados. Este estudo foi relevante porque permitiu fazer uma análise critica sobre a necessidade e as possíveis vantagens da renovação tecnologia na aplicação IALogging. A migração das bases de dados SQL Server da aplicação IALogging para SingleStore consistiu na conversão dos scripts das bases de dados compostos por tabelas e procedimentos. Parte do processo de conversão foi coadjuvado pela ferramenta online de conversão SQLines e por um programa criado em C# para automatizar o processo. Dado a aplicação estar desenvolvida para lidar com dados em XML e Singlestore não suportar este formato os procedimentos associados á leitura e escrita neste formato tiveram de ser alterados para funcionar no formato JSON. Para além disso, uma nova tecnologia de BD requere uma alteração no código da aplicação, mais concretamente na forma como a conexão e as chamadas dos procedimentos são feitas às bases de dados. Um projeto em .NET Framework foi criado para entender estas modificações onde foi estabelecida a conexão e feita a chamada de procedimentos a uma das BD. Para tirar partido das funcionalidades da SingleStore, foi proposto a utilização das funções de pesquisa da tecnologia para melhorar as funcionalidades de consulta de dados na aplicação. Após a realização do estágio, foi possível concluir que a migração de base de dados entre as duas tecnologias em estudo é viável, porém as ferramentas de conversão entre tecnologias de diferentes formatos, como é o caso, são limitadas. Contudo, a ausência de chaves estrangeiras e impossibilidade de definir restrições de valores na criação de tabelas em SingleStore implicam um esforço adicional, exigindo a criação de procedimentos para replicar o mesmo comportamento. Além disso, a limitação na leitura e manipulação de dados em XML nesta tecnologia cria desafios em aplicações projetadas para tal fim, como no caso da IALogging em que é necessário recorrer a outro formato de dados e implementar ajustes na aplicação. A opção por uma base de dados que pode ser hospedada por um fornecedor como é o caso da SingleStore oferece vantagens em relação ao método tradicional no qual a empresa é responsável pela sua administração. As vantagens incluem a eliminação da necessidade de manutenção de servidores, a facilidade de escalar recursos para atender ao aumento dos volumes de dados e a garantia de tolerância a falhas. Estas características são fundamentadas pelos casos práticos de migração de base de dados para SingleStore nas empresas SIEMIENS e DailyVest. As funções de pesquisa por texto da SingleStore são uma componente que foi sugerida como possível implementação na aplicação IALogging para melhorar as consultas utilizando texto.