我可以使用SSIS在2个oracle数据库之间重复传输数据吗?

Can I use SSIS to repeatedly transfer data between 2 oracle database?

我在一些零售企业的配送中心(仓库)工作。我的任务是从分布在我国许多地区的配送中心分支数据库 (oracle) 将交易数据收集到我的总部数据库 (oracle)。 我想实施集中式系统(多对一数据库),该系统从我们的数据库分支机构到我们的总部数据库重复和例行地收集数据,以进行整合和分析。

这些数据库都是oracle的,学长们用DBLink试过,效果不佳,因为DBLink经常死机,需要手动恢复才能再次使用。有些人试图实施 Oracle Golden Gate,但它太贵了。

我正在考虑换用 SSIS,能否满足我的期望?或者我还有其他更好的选择吗?

感谢您的关注。

您提出的建议(将多个系统加载到一个系统中)通常称为 ODS(操作数据存储),它又可用于填充 "Data Warehouse"

是的,您可以使用 SSIS 做您想做的事。但它并不总是能很好地与 Oracle 驱动程序配合使用。另外,您需要支付某种许可费用。此外,如果您的 DBLink 问题是由于网络引起的,那么 SSIS 将无法解决该问题

根据您拥有的数据量,您最好设置一个进程,使用各种 Oracle Tools 中的一种将数据导出到文件,将文件复制到中央位置,然后上传将其存入您的中央数据库。

您的站点数据库有多大?最大的table有多少条记录?您需要确定导出整个数据库是否可行(在大小方面)

您的报告数据库中的数据需要多新?

另外..您没有理由需要将所有最终数据加载到 Oracle 中。您可以找到一个免费(或更便宜、更容易)的数据库来加载它。

如果您的 DBLink 问题归结为网络不稳定,那么转储和复制操作将比 DBLink 或 SSIS

更可靠(并且重新启动table)