Migrations of systems from on-site premises to the cloud has been a fundamental endeavor by many industrial institutions. A crucial component of such cloud migrations is the transition of databases to be hosted online. In this work, we consider the difficulties of this migration for SQL databases. While SQL is one of the prominent methods for storing database procedures, there are a plethora of different SQL dialects (e.g., MySQL, Postgres, etc.) which can complicate migrations when the on-premise SQL dialect differs to the dialect hosted on the cloud. Tools exist by common cloud provides such as AWS and Azure to aid in translating between dialects in order to mitigate the majority of the difficulties. However, these tools do not successfully translate $100\%$ of the code. Consequently, software engineers must manually convert the remainder of the untranslated database. For large organizations, this task quickly becomes intractable and so more innovative solutions are required. We consider this challenge a novel yet vital industrial research problem for any large corporation that is considering cloud migrations. Furthermore, we introduce potential avenues of research to tackle this challenge that have yielded promising preliminary results.
翻译:将本地系统迁移至云端已成为众多工业机构的基本任务。此类云迁移的关键组成部分之一是将数据库迁移至线上托管。本研究探讨了SQL数据库在此迁移过程中所面临的困难。尽管SQL是存储数据库规程的主流方法之一,但存在多种不同的SQL方言(如MySQL、Postgres等),当本地SQL方言与云端托管的SQL方言存在差异时,迁移过程可能因此复杂化。主流云服务商(如AWS和Azure)已提供相关工具来辅助方言间的翻译,以缓解大部分难题。然而,这些工具无法实现代码的100%成功翻译。因此,软件工程师必须手动转换剩余未翻译的数据库内容。对于大型组织而言,这一任务很快变得难以处理,亟需更具创新性的解决方案。我们将此挑战视为任何考虑云迁移的大型企业所面临的一个新颖且关键的工业研究问题。此外,我们介绍了应对这一挑战的潜在研究方向,这些方向已取得令人鼓舞的初步成果。