@~), and optionally compresses and removes local files after successful upload.
When to Use
Use the Snowflake Data Mover when:- Snowflake is your target database
- You want to use Snowflake’s native PUT command for optimal performance
- You prefer staging data in Snowflake’s internal stage rather than external cloud storage
Features
- Native Snowflake PUT - Uses Snowflake’s optimized file transfer protocol
- Multi-threaded uploads - Parallel uploads for better throughput
- Optional gzip compression - Compress files before upload
- Crash recovery - Safe restarts without re-uploading completed files
- Automatic cleanup - Removes local files after successful upload
- Coordinated completion - Waits for
DATA.DONEsignal before finalizing
Configuration
The Snowflake Data Mover uses a configuration file passed as a command-line argument:Configuration Parameters
Path to a file containing the Snowflake connection string (DSN). The file should contain a single line with the full Snowflake connection URL.
The full path on the local machine where the Wirekite Data Extractor writes its files.
The path to a file where the Snowflake Data Mover will write its logging output.
Maximum number of parallel threads for uploading files. Default is
10.Whether to gzip files before uploading. When enabled, files are compressed locally and uploaded with
SOURCE_COMPRESSION=GZIP. Default is false.Whether to remove local files after successful upload. Default is
false.Example Configuration
Snowflake DSN File Format
The DSN file should contain a single line with your Snowflake connection string:Orchestrator Integration
When using the Snowflake Data Mover with the Wirekite Orchestrator, add the mover configuration to your orchestrator config:How It Works
- The mover connects to Snowflake using the provided DSN
- Monitors
dataDirectoryfor files with the specified extension - For each file found:
- Optionally compresses the file with gzip
- Executes a PUT command to upload to
@~/filename - Verifies the upload status is
UPLOADED - Removes the local file (if configured)
- When
DATA.DONEappears in the directory, uploads it and exits gracefully
PUT Command Details
The mover uses different PUT commands based on compression settings: Without compression:Notes
- Files are uploaded to the user’s default stage (
@~) - The Snowflake user must have permissions to PUT files to their stage
- For large migrations, increase
maxThreadsto improve throughput - Enable
gzipFilesto reduce network transfer time - The Snowflake Loader should be configured to read from the same stage
- This mover requires direct network connectivity to Snowflake from the extraction host
