是否可以使用 JDBC 将数据从 Oracle 传输到 Teradata,反之亦然?

Is it possible to transfer data from Oracle to Teradata or vice-versa using JDBC?

我正在研究将数据从 Oracle 传输到 Teradata 的工具,并且正在考虑为此使用 java-JDBC 但是当我查看互联网时我找不到任何相关的东西但是我确实发现数据需要先转换才能移动到不同的 RDBMS,因此我只想知道它是否可能,如果是,那么一些帮助将不胜感激。

Oracle 和 Teradata 数据库都支持 JDBC。

因此,如果您的问题是您是否可以开发自己的工具将数据从一个数据库移动到另一个数据库,是的,您可以。

但是,有许多第三方工具可用于将数据从一个 JDBC 兼容的数据库提取转换和加载 (ETL) 到另一个。

您可以开始分析必须移动的数据并使用 Oracle SQL Developer 进行一些测试。它还支持连接到 Teradata(不仅是 Oracle)。即使不是 "pure" ETL 工具,我认为它可能是一个很好的起点: http://www.oracle.com/technetwork/database/migration/jdbc-migration-1923524.html

视情况而定。 Teradata JDBC 驱动程序支持 FastLoad API,与直接的逐行操作相比,它为您提供了一些批量加载优势。它不如使用 Teradata 的 Parallel Transporter 或 FastLoad 实用程序有效,但它不会像对大数据量进行单例插入那样让您的 DBA 感到不安。 FastLoad 将支持加载空 table.

正如 Peter 所提到的,适当的 ETL 过程可能更合适,尤其是当数据量很大或者这是一个 repeatable 过程时。 Teradata 的 Parallel Transporter 根据您在 Teradata 中加载的数据量和目标为您提供各种加载操作符。 (即低容量与高容量、空目标与填充目标 table 等)