1. 采用sqlplus导入*.sql文件
(以10W条数据测试)
1.1. 生成sql脚本
写个简单的JAVA程序如下:
public class GenerateSQLFile {
public static void main(String[] args) throws Exception {
// 要操作的文件
File file = new File("d:" + File.separator + "demo.sql"); OutputStream out = null; // 声明字节输出流
out = new FileOutputStream(file, true); // 通过子类实例化
for (int i = 1; i <= 100000; i++) {
String str = "insert into t_test(id,name) values(" + i
+ ",'hello world" + i + "');\r\n"; // 要输出的信息
byte b[] = str.getBytes(); // 将String变为byte数组
out.write(b); // 写入数据
}
out.close(); // 关闭
}
}
执行程序,生成的sql脚本如下所示:
insert into t_test(id,name) values(1,'hello world1');
insert into t_test(id,name) values(2,'hello world2');
insert into t_test(id,name) values(3,'hello world3');
... ...
1.2. 新建表,导入数据
以scott/tiger登录sqlplus;
新建t_test表:create table t_test(id int,name varchar2(255));
创建成功后执行:@D:\demo.sql,逐行插入数据。
1.3. 测试结果
以sqlplus执行sql脚本导入10W条数据的时间大约是5分钟。
2. 采用sql loader 工具导入
(以100W条测试数据)
2.1. 新建test.csv数据文件
格式如下:
1,hello1
2,hello2
3,hello3
... ...
十万条数据的csv文件同样由java小程序生成:
File file = new File("d:" + File.separator + "demo.txt"); // 要操作的文件
OutputStream out = null; // 声明字节输出流
out = new FileOutputStream(file, true); // 通过子类实例化
for (int i = 1; i <= 100000; i++) {
String str = i+","+"hello"+i+"\r\n"; // 要输出的信息
byte b[] = str.getBytes(); // 将String变为byte数组
out.write(b); // 写入数据
}
out.close(); // 关闭
2.2. 建立表格
create table test(id varchar2(255),name varchar2(255));
2.3. 建立控制文件test.ctl
load data
infile demo.csv
into table test
(
id char terminated by ',',
name char terminated by whitespace
)
PS: infile 指数据源文件 这里我们省略了默认的 discardfile result.dsc badfile result.bad
into table test 默认是INSERT,也可以into table resultxt APPEND为追加方式,或REPLACE
terminated by ',' 指用逗号分隔
terminated by whitespace 结尾以空白分隔
其它参数参考:d:\>sqlldr
2.4. 导入数据
将ctl文件和csv文件放置在D盘根目录下,命令行中运行:
D:\>sqlldr userid=scott/tiger control=test.ctl
2.5. 测试结果
急速,10W条数据转眼导入结束,100W条数据耗时10s。
<!--EndFragment-->
分享到:
相关推荐
oracle 电信大数据解决方案,介绍了大数据平台架构,功能...
基于Oracle的大数据解决方案: 什么是大数据? 具有4V特性的数据称为大数据: 巨大的数据量 Volume •集中储存/集中计算已经无法处理巨大的数据量 多结构化数据 Variety •文本/图片/视频/文档等 增长速度很快 ...
ORACLE借助大数据和互联网+,实现银行业的金融创新 产品创新的根源来自于了解客户,深度挖掘客户需求; 方案思路:基于大数据技术,构建企业级大数据平台,深度发掘分析客户需求,根据客户需求定制化的设 计金融...
Oracle大数据解决方案和案例介绍
Oracle大数据之独特价值V1.0,Oracle大数据之独特价值V1.0,Oracle大数据之独特价值V1.0,Oracle大数据之独特价值V1.0
白皮书:Oracle:企业大数据解决方案(PDF)
大数据量表的处理方法对新手很有帮助,希望大家踊跃下载
Oracle大数据量导入 博文链接:https://abe.iteye.com/blog/1054515
Oracle医疗大数据解决方案参考,挺有挑战的,看看吧。试试吧
oracle 迅速查询和更新大数据,oracle 迅速查询和更新大数据oracle 迅速查询和更新大数据
oracle大数据平台参考oracle大数据平台参考oracle大数据平台参考oracle大数据平台参考oracle大数据平台参考oracle大数据平台参考
Oracle加速大数据治理.pdf
从大数据到大智慧:Oracle大数据解决方案。将时下最热门的大数据与Oracle联系,具体分析了Oracle大数据解决方案。
Oracle大数据白皮书 2012年发布
Oracle大数据解决方案24.ppt
Oracle大数据解决方案架构Oracle大数据解决方案架构Oracle大数据解决方案架构Oracle大数据解决方案架构Oracle大数据解决方案架构Oracle大数据解决方案架构Oracle大数据解决方案架构Oracle大数据解决方案架构
Oracle医疗大数据解决方案.pptx
在Oracle数据库上导出上千万上亿数据的工具 cmd 到本目录 然后执行如下命令: ->sqluldr2.exe user=用户名/密码@数据库 query="查询语句" table=表名 head=yes FILE=存放路径 例如:sqluldr2.exe user=u/pass@db ...
Oracle大数据解决方案87.pdf
Oracle端到端大数据解决方案40.pdf