如何将数据插入包含clob字段的文件到oracle数据库。最佳/最快的方法将Clob数据从csv文件插入到oracle数据库
从文件中读取。 插入到oracle数据库中
当存在clob数据时可能会有一些复杂性。
谢谢,纳文
如何将数据插入包含clob字段的文件到oracle数据库。最佳/最快的方法将Clob数据从csv文件插入到oracle数据库
从文件中读取。 插入到oracle数据库中
当存在clob数据时可能会有一些复杂性。
谢谢,纳文
当我为我的最后一家公司做这件事时,我们使用存储过程和多线程编写了一个C#程序。上下调节线程有助于加载数据库。由于某些配置设置,我们无法使用Loader。关联数组也有帮助。
在我们的案例中,我们无法做一些优化,因为这些表是活动的,但关闭索引并在负载之后重新构建它们可以提高性能。我们在RAC环境中看到了每个rac服务器与索引文件争执不休的问题,对索引进行分区和调整以提高性能,但我并不是真正的Oracle专家,所以您可能想问一个更聪明的人。
我知道我们看到CLOB数据的性能很差,因此我们将其中一个字段更改为跨越多个varchar(4000)的压缩字符串,然后在程序使用时将它们重新拼接在一起。
@ Dan-OConnell你是如何将数据从文件插入数据库的。 – 2011-02-11 20:06:16
我一般建议使用SQL * Loader或根据文件是否是外部表(或可以)放置在数据库服务器上,或者是否你的意图是从客户端加载文件机。
SQL * Loader控制文件的细节将取决于您的文件的格式,但文档中有loading CLOB data stored in a data file的示例可以帮助您入门。
@ Justin-Cave谢谢Justin,我们假设使用C#(我错误地没有正确写出q)。 – 2011-02-11 20:07:22
尽量减少瓶颈。
一旦你的硬件适应了繁重的写入负载,那么使用SQL * Loader/external tables。
我怀疑多线程/进程是否会有很大的帮助,因为我期望速度受到写入磁盘而不是CPU的能力的限制。如果可以将LOB传播到具有多个主轴上文件的表空间中,这可能会有所帮助。
文件可能包含数千甚至数百万条记录。 – 2011-02-10 18:40:43
我忘了添加这个应该使用C#middle-tier – 2011-02-11 20:03:14