【发布时间】:2014-01-13 10:27:45
【问题描述】:
我需要从数据库中提取大量数据(比如总共 1 到 1 亿行)到多个平面文件中。数据可能来自多个表,我们必须限制选择的列以避免提取敏感信息。
我们的源数据库可以是 Oracle、MS SQL Server 或 DB2。任何源数据库下的表名都相同。我正在寻找一种适用于所有类型的解决方案。
另一个要求是占用空间最小,因此我们不能安装大型 ETL 工具。
我正在考虑创建一个通过 JDBC 连接以从数据库读取数据并写入文件的 java 程序。我应该考虑什么?我认为一个是性能。我正在考虑批量写入文件以减少 I/O 操作。是否有适用于这些数据库的实用程序来选择性地提取数据?有什么建议和其他我需要考虑的问题吗?
【问题讨论】:
-
我在这里没有看到具体问题。您查询数据库并将行流式传输到具有适当缓冲区大小的文件(如您所说)。没关系。 Stack Overflow 不太适合“这是一个可行的解决方案,我可以改进什么?”形式的问题。
-
我明白了。我正在寻找验证,因为我觉得我遗漏了一些东西或者可能忽略了更好的解决方案。感谢您的确认。
标签: sql-server database oracle db2 extract