Comparison
of the Teradata loading utilities
The article contains
comparison and main features of the data loading tools provided by Teradata.
The tutorial illustrates main features of Teradata Multiload , FastLoad and
TPump (Parallel Data Pump) and provides sample real-life uses of those tools. Scroll down for the sample scripts which illustrate different ways to load a sample fixed-length extract into a Teradata database using FastLoad, MultiLoad and Parallel Data Pump (TPump).
Teradata
Fast Load
Main use: to load empty tables at high
speed.
The target tables must be empty in order to
use FastLoad
Supports inserts only - it is not possible to
perform updates or deletes in FastLoad
Although Fastload uses multiple sessions to
load the data, only one target table can be processed at a time
Teradata Fastload does not support join
indexes, foreign key references in target tables and tables with secondary
index defined. It is necessary to drop any of the constraints listed before
loading and recreate them afterwards.
The maximum number of concurrent Teradata
Fastload tasks can be adjusted by a system administrator.
Fastload runs in two operating modes:
Interactive and Batch
Duplicate rows will not be loaded
Teradata
Multi Load
Main use: Load, update and delete large
tables in Teradata in a bulk mode
Efficient in loading very large tables
Multiple tables can be loaded at a time.
Updates data in a database in a block mode
(one physical write can update multiple rows)
Uses table-level locks
Resource consumption: loading at the highest
possible throughput
Duplicate rows allowed
Teradata
Parallel Data Pump (TPump)
Main use: to load or update a small amount
of target table rows
Sends data to a database as a statement which
is much slower than using bulk mode
TPump uses row-level hash locks
Resource consumption: loading speed can be
adjusted using a built-in resource consumption management utility. The
throughput can be turned down in peak periods.
TPump does not support MULTI-SET tables.
Teradata
FastLoad example
The following script attached
below will load a sample fixed-length columns extract into a Teradata database
using FastLoad.
SESSIONS
4;
ERRLIMIT
25;
logon
tdpid/username,password;
create
table gg_cli (
wh_cust_no
integer not null,
cust_name
varchar(200),
bal_amt
decimal(15,3) format �ZZZ,ZZ9.999�
)
unique
primary index( wh_cust_no ) ;
SET
RECORD UNFORMATTED;
define
wh_cust_no(char(10)), delim1(char(1)),
cust_name(char(200)),
delim2(char(1)),
bal_amt(char(18)),
delim3(char(1))
newlinechar(char(1))
file=insert.input;
SHOW;
BEGIN
LOADING gg_cli errorfiles error_1, error_2;
insert
into gg_cli (
:wh_cust_no,
:cust_name,
:bal_amt
);
END
LOADING;
logoff;
Teradata
MultiLoad example
The
following script attached below will load a sample fixed-length columns extract
into a Teradata database using MultiLoad. Use the following command to run load the ggclients.mload file using Teradata
FastLoad script:
mload
< ggclients.mload
Contents of a ggclients.mload mload script:
.logtable
inslogtable;
.logon
tdpid/username,password;
create
table gg_cli (
wh_cust_no
integer not null,
cust_name
varchar(200),
bal_amt
decimal(15,3) format �ZZZ,ZZ9.999�
)
unique
primary index( wh_cust_no ) ;
.BEGIN
IMPORT MLOAD tables gg_cli;
.layout
ggclilayout;
.field wh_cust_no 1 char(10);
.field cust_name 12 char(200);
.field bal_amt 213 char(18);
.dml
label insertclidml;
insert
into gg_cli.*;
.import
infile insert.input
format text
layout ggclilayout
apply insertclidml;
.END
MLOAD;
.logoff;
Teradata TPump example
The
sample script attached below loads a sample fixed-length columns extract into a
Teradata database using Parallel Data Pump - Teradata TPump.
Contents of a ggclients.tpump script:
Contents of a ggclients.tpump script:
.logtable
tpumplogtable;
.logon
tdpid/username,password;
.BEGIN
LOAD SESSION 4;
.layout
ggclilayout;
.field wh_cust_no 1 char(10);
.field cust_name 12 char(200);
.field bal_amt 213 char(18);
.dml
label insertclidml;
insert
into gg_cli.*;
.IMPORT
INFILE insert.input
layout ggclilayout
apply insertclidml;
.END
LOAD;
.logoff;
No comments:
Post a Comment