Output Info
Configure where and how FastTransfer saves exported data.
Directory
Use the -D or --directory parameter to specify where the output file(s) will be saved.
Local Paths
- Windows
- Linux
.\\FastTransfer.exe \
...
--directory "C:\exports\sales\orders" \
...
./FastTransfer \
...
--directory "/exports/sales/orders" \
...
UNC Paths
For Windows network shares, you can use UNC paths:
.\\FastTransfer.exe \
...
--directory "\\server\share\exports\orders" \
...
Cloud Paths
FastTransfer supports direct export to cloud storage:
- AWS S3
- Azure Blob
- Azure Data Lake Gen2
- Google Cloud Storage
- S3-Compatible (MinIO, OVH)
- OneLake
./FastTransfer \
...
--directory "s3://my-bucket/exports/orders" \
...
./FastTransfer \
...
--directory "abs://mystorageaccount.blob.core.windows.net/container/path" \
...
./FastTransfer \
...
--directory "abfss://mystorageaccount.dfs.core.windows.net/container/path/to/data" \
...
./FastTransfer \
...
--directory "gs://my-bucket/exports/orders" \
...
./FastTransfer \
...
--directory "s3://my-bucket/exports" \
...
./FastTransfer \
...
--directory "onelake://myworkspace.dfs.core.windows.net/lakehouse/path/to/data" \
...
See Cloud Options for authentication and configuration details.
Syntax:
- Short form:
-D "path" - Long form:
--directory "path"
Output File
Use the -o or --fileoutput parameter to specify the name of the output file. The file extension determines the output format.
./FastTransfer \
...
--fileoutput "orders.parquet" \
...
Syntax:
- Short form:
-o "filename" - Long form:
--fileoutput "filename"
Supported Formats
| Extension | Format | Description |
|---|---|---|
.parquet | Parquet | Columnar, compressed (recommended) |
.csv | CSV | Delimiter-separated values |
.tsv | TSV | Tab-separated values |
.json | JSON | JavaScript Object Notation |
.bson | BSON | Binary JSON |
.xlsx | Excel | Microsoft Excel format |
.bin | Binary | PostgreSQL COPY binary format |
Tokens
Use tokens in --directory and --fileoutput parameters for dynamic paths and filenames.
./FastTransfer \
...
--directory "/exports/{sourcedatabase}/{sourceschema}" \
--fileoutput "{sourcetable}_{startdate}.parquet" \
...
Syntax:
Tokens are enclosed in curly braces {token_name}
Available Tokens
| Token | Description | Example Value |
|---|---|---|
{sourcedatabase} | Value from --database | AdventureWorks |
{sourceschema} | Value from --sourceschema | Sales |
{sourcetable} | Value from --sourcetable | Orders |
{starttimestamp} | Job start (yyyyMMddHHmmss) | 20260107143022 |
{starttimestamp:FORMAT} | Custom timestamp format | See below |
{startdate} | Job start date (yyyyMMdd) | 20260107 |
{starttime} | Job start time (HHmmss) | 143022 |
{starthour} | Job start hour (HH) | 14 |
{user} | Username (from --user or system) | dbuser |
{filetype} | Output format extension | parquet |
{datadrivencolumn} | Data-driven split value | Varies |
Timestamp Format Codes
Use {starttimestamp:FORMAT} with custom format:
| Format | Description | Example |
|---|---|---|
yyyy | 4-digit year | 2026 |
yy | 2-digit year | 26 |
MM | Month (01-12) | 01 |
dd | Day (01-31) | 07 |
HH | Hour 24h (00-23) | 14 |
mm | Minute (00-59) | 30 |
ss | Second (00-59) | 22 |
Examples:
# yyyyMMdd format
./FastTransfer \
...
--fileoutput "orders_{starttimestamp:yyyyMMdd}.parquet" \
...
# yyyy-MM-dd format
./FastTransfer \
...
--fileoutput "orders_{starttimestamp:yyyy-MM-dd}.parquet" \
...
# yyyyMMddHH format (hourly)
./FastTransfer \
...
--fileoutput "logs_{starttimestamp:yyyyMMddHH}.parquet" \
...
Timestamped Output
Use the -x or --timestamped parameter to automatically add a timestamp to the filename.
./FastTransfer \
...
--fileoutput "orders.parquet" \
--timestamped \
...
Syntax:
- Short form:
-x - Long form:
--timestamped
--timestamped automatically appends _yyyyMMddHHmmss to the filename. For more control over format and placement, use timestamp tokens instead.
Encoding
Use the -e or --encoding parameter to specify character encoding for text formats (CSV, JSON, TSV).
./FastTransfer \
...
--fileoutput "orders.csv" \
--encoding "UTF-8" \
...
Syntax:
- Short form:
-e "encoding" - Long form:
--encoding "encoding"
Default: UTF-8
Encoding is not applicable to Parquet files (they use UTF-8 internally).