4 Feb 02 13:52
There might be some third party tools to directly connect from Teradata to DB2 and move the data across. I cannot provide you any details on that aspect. I suspect that there is not much out there since this is typically a one shot deal.
Therefore, most people take the straight-forward approach of just unloading the data from the source DBMS (DB2 in your case) to flat files writting the tables in the host format (EBCIDIC or ASCII).
The question you have to ask is 1.) What are the volumes of data to move?, and 2.) Is this a repeatable process? If it is to become a repeatable process then you are likely to be more concerned about optimization. If the data volumes are large (100 M rows or more let's say) then you also might want to consider the most optimal process.
Once the data is extracted to flat files they can be loaded using one of a couple of utilities. These utilities can be run from the mainframe (assuming your DB2 database is running from the mainframe) and you have mainframe channel connectivity. This is often more efficient that transferring the files to the Teradata Unix server where the utilities can be run as well.
The process is similar if using FastLoad or Multiload, just defining the flat file columns and mapping them to the corresponding columns under Teradata. It is often easier if you define the columns in the flat files extracted from DB2 as all character data type since you will not run into any data type conversion issues. However, you certainly can dump numeric data as numeric. Teradata can generally read these type columns without problems.
If you do not have a large volume of data than you might consider an ODBC connection to both DB2 and Teradata. Then just copy the data from DB2 and paste it into the new Teradata table(s).
There are many different methods that could be employed. I have just mentioned the ones that come to the top of my list.