C/C++教程

Oracle导入 1T 数据

本文主要是介绍Oracle导入 1T 数据,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

1. 如何产生 1T 以上数据

利用tpch 工具数据生成功能

$ ./dbgen -s 1000GB
$ ll -rth *.tbl
-rw-r--r-- 1 oracle oinstall  389 Jul 25 17:00 region.tbl
-rw-r--r-- 1 oracle oinstall 116G Jul 25 17:00 partsupp.tbl
-rw-r--r-- 1 oracle oinstall 2.2K Jul 25 17:00 nation.tbl
-rw-r--r-- 1 oracle oinstall 1.4G Jul 25 17:00 supplier.tbl
-rw-r--r-- 1 oracle oinstall  24G Jul 25 17:00 part.tbl
-rw-r--r-- 1 oracle oinstall 169G Jul 25 17:00 orders.tbl
-rw-r--r-- 1 oracle oinstall 758G Jul 25 17:00 lineitem.tbl
-rw-r--r-- 1 oracle oinstall  24G Jul 25 17:00 customer.tbl

2. oracle 创建表

利用tpch 提供的dss.ddl 文件 以及dss.ri 文件, 创建表和主键,外键

3. 如何导入大数据至oracle

利用oracle 自带的sqlldr 工具

A) 准备控制文件, 例如: 导入数据到orders 表

LOAD DATA  
INFILE "orders.tbl" 
APPEND
INTO TABLE orders   
Fields terminated by "|" 
Optionally enclosed by '"' 
trailing nullcols 
(
O_ORDERKEY,
O_CUSTKEY ,
O_ORDERSTATUS  ,
O_TOTALPRICE    ,
O_ORDERDATE     ,
O_ORDERPRIORITY  ,
O_CLERK           ,
O_SHIPPRIORITY    ,
O_COMMENT         
)

B) 执行并行导入操作

sqlldr userid=test/test control=orders.ctl  direct=true  parallel=true &

这篇关于Oracle导入 1T 数据的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!