Is there anyway to tell FastLoad, FastExport and TPT to use other special character as record delimiter? All Teradata utilities use \n in Unix and \n\r in Windows as the record delimiter.
No. Those are defined record format definitions.
However, you can try and use the "unformatted" record format type where our tools will just read in the data according to the schema layout, and just put a CHAR(n) in the schema to account for the end-of-record marker (where 'n' is the number of bytes for your customized end-of-record marker).
What do you mean, it is not variable length?
Sure it is.
It uses the schema to read the data, field-by-field.
In other words, if your schema had INTEGER, CHAR(10), VARCHAR(100), the utility will read 4 bytes, and then 10 bytes and then 2 bytes (for the varchar field length, 'n'), followed by 'n' bytes for the varchar data.
And if you have a 3-byte end-of-record marker, then put CHAR(3) as the last "column" in the schema.
Sorry, NOFORMAT is variable length. What I meant to say is that decoding binary format of decimal, unicode string and timestamp is quite an effort.
The reason to avoid TD binary file format is to build a framework which can reuse the flat file format for TPT import & export, and copy the file into HDFS without modifying the content. It is possible to create a deserialization code for TD binary format, but it will make life a lot easier to support alternative record delimeter such as \x00 or \x0000
You never mentioned what record format you WANT to use.
You only commented on the record delimiter.
Are you trying to use "delimited" format?
(Even if you are, there are still no plans to support a different EOR.)