首页 > 代码库 > Teradata中fastload使用

Teradata中fastload使用

Teradata Fastload Utility 是teradata数据库中一个基于命令行的快速load大量数据到一个空表的工具。
数据可以从以下途径被load:
1) Disk 或 tape;
2) 网络服务器上的文件;
 
Teradata Fastload使用多个session来load data,但是每一个job只能load到一个表中。如果要load到多个表中,需要提交多个job。
 
 
1. fastload脚本文件
 
SESSIONS 4;  /* optional ,total number of sessions to be allotted for the script */ERRLIMIT 1000; /* optional */LOGON localhost/Teradata_Education,Educate; /* tdpid = vivaldi,caracal... */DROP TABLE stu_fl; /* final target table */DROP TABLE error_1; /* error table ,internal to fast load utility needed to be defined */DROP TABLE error_2; /* error table ,internal to fast load utility needed to be defined */CREATE TABLE stu_fl   /* target table definition */(     stu_no       VARCHAR(5),     stu_name     VARCHAR(10),     age          VARCHAR(2))PRIMARY INDEX ( stu_no,stu_name,age );SET RECORD VARTEXT "#";  /* delimiter in the source file */DEFINE                  /* define the structure of the source file */     stu_no       (VARCHAR(5)),     stu_name     (VARCHAR(10)),     age          (VARCHAR(2))File=stu_fl.dat;   /* source file location */SHOW;BEGIN LOADING stu_flERRORFILES error_1, error_2;INSERT INTO  stu_fl   /* final insert */(stu_no          ,stu_name     ,age               )VALUES(:stu_no          ,:stu_name     ,:age               );END LOADING;LOGOFF;


 

2. fastload数据文件
 
TDExpress14.0.3_Sles10:~/tough/test # cat stu_fl.dat
10000#Tough00001#26
10001#Tough#26
10002#Tough#26
 
 
3. 测试
TDExpress14.0.3_Sles10:~/tough/test # fastload < stu_fl.fastload                     ===================================================================     =                                                                 =     =          FASTLOAD UTILITY     VERSION 14.00.00.07               =     =          PLATFORM LINUX                                         =     =                                                                 =     ===================================================================      ===================================================================     =                                                                 =     =          Copyright 1984-2012, Teradata Corporation.             =     =          ALL RIGHTS RESERVED.                                   =     =                                                                 =     =================================================================== **** 06:55:47 Processing starting at: Sat Jun 28 06:55:47 2014 0001 SESSIONS 4;  /* optional ,total number of sessions to be allotted for the s     cript */ **** 06:55:47 FDL4866 SESSIONS command accepted 0002 ERRLIMIT 1000; /* optional */ **** 06:55:47 Error limit set to: 1000     ===================================================================     =                                                                 =     =          Logon/Connection                                       =     =                                                                 =     =================================================================== 0003 LOGON localhost/Teradata_Education, **** 06:55:49 Teradata Database Release: 14.00.03.02**** 06:55:49 Teradata Database Version: 14.00.03.02**** 06:55:49 Number of AMPs available: 2**** 06:55:49 Current CLI or RDBMS allows maximum row size: 64K**** 06:55:49 Character set for this job: ASCII0004 DROP TABLE stu_fl; /* final target table */ **** 06:55:50 Command completed successfully 0005 DROP TABLE error_1; /* error table ,internal to fast load utility needed to      be defined */ **** 06:55:50 RDBMS error 3807: Object error_1 does not exist. 0006 DROP TABLE error_2; /* error table ,internal to fast load utility needed to      be defined */ **** 06:55:50 RDBMS error 3807: Object error_2 does not exist.0007 CREATE TABLE stu_fl   /* target table definition */     (     stu_no      VARCHAR(5),     stu_name    VARCHAR(10),     age         VARCHAR(2)     )     PRIMARY INDEX ( stu_no,stu_name,age ); **** 06:55:50 Command completed successfully0008 SET RECORD VARTEXT "#";  /* delimiter in the source file */ **** 06:55:50 Now set to read Variable-Length Text records**** 06:55:50 Delimiter character(s) is set to #**** 06:55:50 Command completed successfully0009 DEFINE                  /* define the structure of the source file */     stu_no      (VARCHAR(5)),     stu_name    (VARCHAR(10)),     age         (VARCHAR(2))     File=stu_fl.dat;   /* source file location */ **** 06:55:50 FDL4803 DEFINE statement processed0010 SHOW;      FILE = stu_fl.dat     STU_NO                           OFFSET =      0 LEN =     5 VARCHAR     STU_NAME                         OFFSET =      7 LEN =    10 VARCHAR     AGE                              OFFSET =     19 LEN =     2 VARCHAR     TOTAL RECORD LENGTH = 230011 BEGIN LOADING stu_fl     ERRORFILES error_1, error_2; **** 06:55:50 Number of FastLoad sessions requested = 4**** 06:55:50 Number of FastLoad sessions connected = 2**** 06:55:50 FDL4808 LOGON successful**** 06:55:50 Number of AMPs available: 2**** 06:55:50 BEGIN LOADING COMPLETE     ===================================================================     =                                                                 =     =          Insert Phase                                           =     =                                                                 =     =================================================================== 0012 INSERT INTO  stu_fl   /* final insert */     (     stu_no      ,     stu_name    ,     age     )     VALUES     (     :stu_no      ,     :stu_name    ,     :age     )     ; **** 06:55:50 Number of recs/msg: 2920**** 06:55:50 Starting to send to RDBMS with record 1**** 06:55:50 Sending row 3**** 06:55:50 Finished sending rows to the RDBMS **** 06:55:50 Acquisition Phase statistics:              Elapsed time: 00:00:00 (in hh:mm:ss)              CPU time:     0 Seconds              MB/sec:       N/A              MB/cpusec:    N/A     ===================================================================     =                                                                 =     =          End Loading Phase                                      =     =                                                                 =     =================================================================== 0013 END LOADING; **** 06:55:51 END LOADING COMPLETE      Total Records Read              =  3     Total Error Table 1             =  0  ---- Table has been dropped     Total Error Table 2             =  0  ---- Table has been dropped     Total Inserts Applied           =  3     Total Duplicate Rows            =  0      Start:   Sat Jun 28 06:55:50 2014     End  :   Sat Jun 28 06:55:51 2014 **** 06:55:51 Application Phase statistics:              Elapsed time: 00:00:01 (in hh:mm:ss) 0014 LOGOFF;      ===================================================================     =                                                                 =     =          Logoff/Disconnect                                      =     =                                                                 =     =================================================================== **** 06:55:51 Logging off all sessions**** 06:55:52 Total processor time used = 0.36 Seconds     .        Start : Sat Jun 28 06:55:47 2014     .        End   : Sat Jun 28 06:55:52 2014     .        Highest return code encountered = 0.**** 06:55:52 FDL4818 FastLoad Terminated

 

 
4. 查看数据是否load成功
 
SELECT * FROM TERADATA_EDUCATION. stu_fl ;
 
数据已经成功load到表中了。