首页 » 编程开发 » Informatica » 正文

Informatica教程之csv文件导入oracle数据库的方法

由于任务要求,需要将一个csv格式的excel文件导入到oracle数据库,文件比较大,有将近1G的大小,记录数大概是两千多万条。
我分别测试了oracle常用的导入方法:PL/SQL文本导入工具、sqlplus中用sqlldr工具、informatica导入三种方法。
耗时分别如下:PL/SQL文本导入工具是最慢的,两千多万条记录大概要用时10个小时左右;sqlldr工具大概用时1小时,informatica导入用了不到10分钟。informatica工具在数据处理方面的强大不言而喻。当然,我使用sqlldr工具导入是单线程导入的,sqlldr工具也可以将文件分割成若干个小文件,并发多线程同时向数据库加载数据,这样的话耗时应该不到1小时,也是挺不错的。

好了,废话不多说,使用Informatica对csv文件进行入库,我在网上有看到别人介绍的方法,说先把csv格式的文件打开,另存为xls格式,然后在本地系统工具中新建microsoft excel driver的ODBC,最后在informatica中通过ODBC导入文件,我觉得这样的方法不是不可以,关键是很麻烦,1G的文件不能直接打开,只能通过工具来转化成xls格式。本站也有xls方法导入的教程:informatica使用PowerCenter系列工具抽取多页excel入库方法

csv文件是以纯文本形式存储表格数据的文件格式,它其实跟txt文档没有多大区别,我们在使用Informatica导入的时候,直接可以把它看成一个txt文档,像平常导入txt文档一样直接进行导入就可以了。

不过,还是有一点小细节需要注意:

1、csv文件毕竟是存储的表格数据,所以如果不加设置,你会发现最后导入的结果中,所有的数据都是带双引号的,要把这些引号去掉,设置方法如下:

1

在source中“Table”选项卡中点击右下角的Advanced,在弹出的窗口中找到Escape Character中输入要去掉的双引号即可。

2、如果你的csv文件内容中是有首行字段名的,那么也需要过滤一下,同样在上面第一点中Advanced弹出的窗口中,将Others中“Number of

initial rows to skip”那里填入“1”,即可。

如果你对于怎样将txt文件导入到数据库也不会,那么对于初学者这里介绍个简单的视频教程,希望对大家有帮助。

发表评论