Performance Metrics for Fastload Implementation Options: 1.JDBC Fastload 2.JDBC Fastload CSV 3.(External scripted) Fastload

Database

Performance Metrics for Fastload Implementation Options: 1.JDBC Fastload 2.JDBC Fastload CSV 3.(External scripted) Fastload

Hi,

Are there any published performance metrics that compares the various implementation options for Teradata fastload?

  1. JDBC Fastload  - http://developer.teradata.com/doc/connectivity/jdbc/reference/current/jdbcug_chapter_2.html#BABFGFAF
  2. JDBC Fastload CSV - http://developer.teradata.com/doc/connectivity/jdbc/reference/current/jdbcug_chapter_2.html#BABFGFA2
  3. (External scripted)  Fastload - http://www.google.com/url?sa=t&rct=j&q=&esrc=s&source=web&cd=6&ved=0CE0QFjAF&url=http%3A%2F%2Fwww.in...

Thanks... Vince

1 REPLY
Teradata Employee

Re: Performance Metrics for Fastload Implementation Options: 1.JDBC Fastload 2.JDBC Fastload CSV 3.(External scripted) Fastload

No, there are no published performance metrics, and we (Teradata Engineering) are unlikely to publish anything like that, for a couple of reasons:

1. We want to avoid the notion of "competition" between different Teradata client software products. Each product has its own purpose.

2. When loading data using the FastLoad wire protocol, the throughput that you obtain is very dependent on factors such as the dataset's number of columns and average row data size, available network bandwidth, and client machine CPU and I/O speeds.

Generally speaking, the throughput of JDBC FastLoad CSV is comparable to the throughput of the scripted FastLoad utility when loading CSV files.

Also, JDBC FastLoad is slower than JDBC FastLoad CSV. The primary reason why JDBC FastLoad is slower is because it is intended to be a drop-in replacement for SQL PreparedStatement batch insert, and therefore the application binds every row/column value. In contrast, an application binds only one value -- the InputStream -- when using JDBC FastLoad CSV. If your application loads millions of records via JDBC FastLoad, then the application will be making millions or billions of PreparedStatement bind method calls for the individual row/column values.