2012-02-22 83 views
1

我刚刚听说Oracle有一个名为External Table的功能,它允许从数据库访问一个平面文件(例如文件系统中的一个CSV文件)。DB2外部表?

我只想知道在DB2 for LUW中是否有类似的东西。

我能看到的最接近的东西是实现一个Table函数(例如用Java编写),它将读取文件,并返回一个包含文件数据的表。但是,这个过程需要很长时间(创建Java代码,编译Java并在DB2中创建关联Java类的函数),而对于具有不同列数的不同文件,实现不是动态的(table函数返回预定义的列)。

这里Oracle外部表的文档:http://docs.oracle.com/cd/B28359_01/server.111/b28319/et_concepts.htm

回答

1

是,IBM提供了此作为自己的InfoSphere联邦服务器,它基本上可以让你定义一个数据库,各种数据源中的昵称的一部分。 Supported data sources

0

如前所述,InfoSphere Federation Server是一个不错的选择。有两个备选方案的DB2 UDB(通用数据库),它可以在特定的使用情况会有所帮助:

  • 数据链:它基本上是另一种数据类型 ,保持到外部文件的引用。它还提供对外部数据的多个级别的控制,如参考 完整性,访问控制,协调备份和恢复以及事务一致性。
  • DB2 Extenders:它们扩展了DB2的功能以在特定文件格式上运行,例如, XML Extender中提供的一系列功能,对XML文件进行操作DB2里面
+0

这是一个笑话还是你过去十年一直生活在岩石下? DataLinks在版本9.1中被删除,而XML是DB2核心的一部分,称为PureXML(混合数据库)。 http://www-01.ibm.com/support/knowledgecenter/SSEPGG_9.1.0/com.ibm.db2.udb.rn.doc/doc/c0023070.htm。感谢您的答案,但它不是最新的答案。 – AngocA 2014-09-16 15:22:44

0

还有: (一)在仓储发动机产品(DB2仓库,DB2仓库云)(b)数据虚拟化外部表支持(又名联邦/流体查询)在所有可能实现相同目标的Db2产品中。