首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在应用程序之间进行数据转换的最佳做法是什么

在应用程序之间进行数据转换的最佳做法是什么
EN

Stack Overflow用户
提问于 2012-01-16 06:44:11
回答 2查看 914关注 0票数 0

我想知道对于stackoverflow来说,这是不是一个太主观的问题,但我还是会试一试。

对于应用程序之间的数据迁移,是否有通用/最佳实践?假设我有一个用Java/J2EE编写并连接到PostgreSQL数据库的应用程序A和一个用Ruby/Rails编写并连接到MySQL数据库的应用程序B。

我希望将数据从应用程序A迁移到应用程序B,表结构,因此A的数据模型与B完全不同。因此,我想从A提取信息,更改其结构并将其插入到B中。

此外,我在应用程序B中具有与来自应用程序A的信息相关的现有信息,例如,基于两个应用程序中共有的ID

我试着写了几个花哨的sql脚本,但没有什么进展。

上一次我面对这样的项目时,我只是写了一大堆代码来处理迁移。我想知道有没有这方面的最佳实践?我认为这是开发人员经常做的工作。也许有可用的工具或框架?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-01-16 07:00:18

可能不是单一的最佳实践,但一旦您选择了一种方法,就会有一组最佳实践。

一种策略是在目标平台中使用相同模型(或非常接近)的数据,然后在目标平台中进行转换。

例如,如果目标是SQL Server,我将在目标服务器上创建另一个数据库,其中包含从表到表的直接数据副本(数据类型是您要注意的主要内容),并简单地使用针对database2.user.table_names的查询来填充目标数据模型。

这消除了您可能使用的任何ETL工具中的异构源/目标的问题,并允许您在database2上创建一些额外的索引,这可能是您的转换的最佳选择。

此外,您的转换将是直接的SQL,允许同时对源和目标进行联接,而没有任何服务器间的延迟或带宽。

如果您的表中有二进制数据或类似的东西,显然事情会变得复杂得多。

票数 0
EN

Stack Overflow用户

发布于 2012-01-16 07:00:56

宽泛的问题,宽泛的答案?

  1. 在DatabaseB中重新创建数据模型,没有自动增量等功能。
  2. 通过
  3. Process复制所有适当的数据,并对其进行操作等,以满足您的需求content

通过允许步骤1基于原始和副本的当前内容,扩展到自动化流程。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/8874016

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档