Kettle是一款国外开源的ETL工具,纯java编写,可以在Window、Linux、Unix上运行,数据抽取高效稳定。其中,Spoon是Kettle中的一个组件,其他组件有PAN,CHEF,Encr和KITCHEN等。
Spoon通过图形化的页面,方便直观的让你完成数据转换的操作。
看官网原话:
Pentaho Data Integration, also known as Kettle, delivers powerful extraction, transformation, and loading (ETL) capabilities.
简单说实际操作中遇到的问题吧。
1、报错:找不到sun.jdbc.odbc.JdbcOdbcDriver
综合网上的资料,JDK8已经删除了JdbcOdbcDriver类,所以要用JDK8以下,我用的是7。
2、用了JDK7之后,我安装的kettle版本是8.2,不支持JDK7,没办法kettle降版本,我安装的是6.0版本。
3、报错:[ODBC 驱动程序管理器] 在指定的 DSN 中,驱动程序和应用程序之间的体系结构不匹配
这个错误的原因综合网上搜索的解决方法,个人推测应该是JDK(具体来说是其中的JdbcOdbcDriver)与Access ODBC驱动位数不一致,我安装的JDK7是64位的,所以要安装AccessDatabaseEngine_X64.exe(这个有些人说必须安装中文版,否则会遇到Unable to load odbcji32.dll 这个错误。我安装的是中文版,没有试过英文版,是不是必须与操作系统一致,这个没有验证)。
4、提示已安装了32位的office产品
这个错误就很明显了,把原来安装的office(32位)卸载即可。
最后大功告成:
oracle连接(注意数据库名称)
人大金仓V8R6连接,由于kettle内置的连接金仓驱动版本过低,使用通用database