getobject.sql
createobject.sql
CREATE TABLE objects ( owner varchar(30), object_name varchar(50), object_id NUMBER, created date, status VARCHAR2(10) ); CREATE INDEX idx_obj_owner_name on objects(owner,object_name);ldr_object.ctl
load data infile ldr_object.csv truncate into table objects fields terminated by "," optionally enclosed by '"' ( owner, object_name, object_id, created date 'yyyy-mm-dd hh24:mi:ss', status "substr(:status,1,5)" )ldr_object.log
SQL*Loader: Release 10.2.0.1.0 - Production on 星期五 1月 20 02:16:56 2012 Copyright (c) 1982, 2005, Oracle. All rights reserved. 控制文件: ldr_object.ctl 数据文件: ldr_object.csv 错误文件: ldr_object.bad 废弃文件: 未作指定 (可废弃所有记录) 要加载的数: ALL 要跳过的数: 0 允许的错误: 10 绑定数组: 64 行, 最大 256000 字节 继续: 未作指定 所用路径: 常规 表 OBJECTS,已加载从每个逻辑记录 插入选项对此表 TRUNCATE 生效 列名 位置 长度 中止 包装数据类型 ------------------------------ ---------- ----- ---- ---- --------------------- OWNER FIRST * , O (") CHARACTER OBJECT_NAME NEXT * , O (") CHARACTER OBJECT_ID NEXT * , O (") CHARACTER CREATED NEXT * , O (") DATE yyyy-mm-dd hh24:mi:ss STATUS NEXT * , O (") CHARACTER 列的 SQL 串: "substr(:status,1,5)" 表 OBJECTS: 1033298 行 加载成功。 由于数据错误, 0 行 没有加载。 由于所有 WHEN 子句失败, 0 行 没有加载。 由于所有字段都为空的, 0 行 没有加载。 为绑定数组分配的空间: 82560 字节 (64 行) 读取 缓冲区字节数: 1048576 跳过的逻辑记录总数: 0 读取的逻辑记录总数: 1033298 拒绝的逻辑记录总数: 0 废弃的逻辑记录总数: 0 从 星期五 1月 20 02:16:56 2012 开始运行 在 星期五 1月 20 02:19:02 2012 处运行结束 经过时间为: 00: 02: 05.55 CPU 时间为: 00: 00: 10.38C:\oracle\script>sqlldr scott/tiger control=ldr_object.ctl errors=10 rows=640
.log
嗯,加快了45s
使用direct参数
C:\oracle\script>sqlldr scott/tiger control=ldr_object.ctl errors=10 direct=true
log
SQL*Loader: Release 10.2.0.1.0 - Production on 星期五 1月 20 03:44:39 2012 Copyright (c) 1982, 2005, Oracle. All rights reserved. 控制文件: ldr_object.ctl 数据文件: ldr_object.csv 错误文件: ldr_object.bad 废弃文件: 未作指定 (可废弃所有记录) 要加载的数: ALL 要跳过的数: 0 允许的错误: 10 继续: 未作指定 所用路径: 直接 表 OBJECTS,已加载从每个逻辑记录 插入选项对此表 TRUNCATE 生效 列名 位置 长度 中止 包装数据类型 ------------------------------ ---------- ----- ---- ---- --------------------- OWNER FIRST * , O (") CHARACTER OBJECT_NAME NEXT * , O (") CHARACTER OBJECT_ID NEXT * , O (") CHARACTER CREATED NEXT * , O (") DATE yyyy-mm-dd hh24:mi:ss STATUS NEXT * , O (") CHARACTER 列的 SQL 串: "substr(:status,1,5)" 表 OBJECTS 的以下索引已处理: 索引 SCOTT.IDX_OBJ_OWNER_NAME 已成功加载, 具有 1033298 个关键字 表 OBJECTS: 1033298 行 加载成功。 由于数据错误, 0 行 没有加载。 由于所有 WHEN 子句失败, 0 行 没有加载。 由于所有字段都为空的, 0 行 没有加载。 日期高速缓存: 最大大小: 1000 条目数: 892 命中数 : 1032406 未命中数 : 0 在直接路径中没有使用绑定数组大小。 列数组 行数: 5000 流缓冲区字节数: 256000 读取 缓冲区字节数: 1048576 跳过的逻辑记录总数: 0 读取的逻辑记录总数: 1033298 拒绝的逻辑记录总数: 0 废弃的逻辑记录总数: 0 由 SQL*Loader 主线程加载的流缓冲区总数: 302 由 SQL*Loader 加载线程加载的流缓冲区总数: 201 从 星期五 1月 20 03:44:39 2012 开始运行 在 星期五 1月 20 03:45:11 2012 处运行结束 经过时间为: 00: 00: 32.17 CPU 时间为: 00: 00: 06.19
嗯,现在只要半分钟零一点就好了
加大流存储区,加大日期格式缓冲区
C:\oracle\script>sqlldr scott/tiger control=ldr_object.ctl errors=10 direct=true streamsize=10485760 date_cache=5000
log
SQL*Loader: Release 10.2.0.1.0 - Production on 星期五 1月 20 03:48:27 2012 Copyright (c) 1982, 2005, Oracle. All rights reserved. 控制文件: ldr_object.ctl 数据文件: ldr_object.csv 错误文件: ldr_object.bad 废弃文件: 未作指定 (可废弃所有记录) 要加载的数: ALL 要跳过的数: 0 允许的错误: 10 继续: 未作指定 所用路径: 直接 表 OBJECTS,已加载从每个逻辑记录 插入选项对此表 TRUNCATE 生效 列名 位置 长度 中止 包装数据类型 ------------------------------ ---------- ----- ---- ---- --------------------- OWNER FIRST * , O (") CHARACTER OBJECT_NAME NEXT * , O (") CHARACTER OBJECT_ID NEXT * , O (") CHARACTER CREATED NEXT * , O (") DATE yyyy-mm-dd hh24:mi:ss STATUS NEXT * , O (") CHARACTER 列的 SQL 串: "substr(:status,1,5)" 表 OBJECTS 的以下索引已处理: 索引 SCOTT.IDX_OBJ_OWNER_NAME 已成功加载, 具有 1033298 个关键字 表 OBJECTS: 1033298 行 加载成功。 由于数据错误, 0 行 没有加载。 由于所有 WHEN 子句失败, 0 行 没有加载。 由于所有字段都为空的, 0 行 没有加载。 日期高速缓存: 最大大小: 5000 条目数: 892 命中数 : 1032406 未命中数 : 0 在直接路径中没有使用绑定数组大小。 列数组 行数: 5000 流缓冲区字节数:10485760 读取 缓冲区字节数: 1048576 跳过的逻辑记录总数: 0 读取的逻辑记录总数: 1033298 拒绝的逻辑记录总数: 0 废弃的逻辑记录总数: 0 由 SQL*Loader 主线程加载的流缓冲区总数: 302 由 SQL*Loader 加载线程加载的流缓冲区总数: 0 从 星期五 1月 20 03:48:27 2012 开始运行 在 星期五 1月 20 03:48:53 2012 处运行结束 经过时间为: 00: 00: 25.39 CPU 时间为: 00: 00: 06.38
顺利突破30s
我相信,随着我继续学习,对各个参数的熟悉,还能再快点~
参考《涂抹oracle 》相关内容