Overview
Wirekite supports SingleStore as a target database for:- Schema Loading - Create target tables from Wirekite’s intermediate schema format
- Data Loading - Bulk load extracted data using LOAD DATA INFILE
- Change Loading (CDC) - Apply ongoing changes using merge table approach
SingleStore loaders use MySQL-compatible LOAD DATA INFILE for high-performance bulk loading. The Change Loader uses shadow tables with
$wkm suffix for atomic change application.Prerequisites
Before configuring SingleStore as a Wirekite target, ensure the following requirements are met:Database Configuration
- Version: SingleStore 7.x or above
- User Permissions: Create a dedicated Wirekite user with:
- CREATE TABLE privilege
- FILE privilege for LOAD DATA operations
- INSERT, UPDATE, DELETE on target tables
- Read/write access to Wirekite internal tables (
wirekite_progressandwirekite_action)
Connection Requirements
Schema Loader
The Schema Loader reads Wirekite’s intermediate schema format (.skt file) and generates SingleStore-appropriate DDL statements for creating target tables.
The Schema Loader generates both base tables and merge tables (with
$wkm suffix) for CDC operations.Required Parameters
Path to the Wirekite schema file (
.skt) generated by the Schema Extractor. Must be an absolute path.Output file for CREATE TABLE statements. Includes both base tables and merge tables for CDC operations.
Output file for constraint definitions (indexes, unique constraints).
Output file for FOREIGN KEY constraints.
Absolute path to the log file for Schema Loader operations.
Optional Parameters
Output file for DROP TABLE IF EXISTS statements. Set to “none” to skip generation.
Output file for recovery table creation SQL. Set to “none” to skip.
When
true, generates merge tables ($wkm suffix) for CDC operations. Set to false if only doing data loads.When
true, only creates merge tables, skipping base table creation.Data Loader
The Data Loader reads Wirekite’s intermediate data format (.dkt files) and loads records into SingleStore tables using LOAD DATA INFILE.
Required Parameters
Path to a file containing the SingleStore connection string.
Directory containing data files (
.dkt) to load.Path to the Wirekite schema file used by Schema Loader. Required for table structure information.
Absolute path to the log file for Data Loader operations.
Optional Parameters
Maximum number of parallel threads for loading tables.
Set to
true if data was extracted using hex encoding instead of base64. Uses unhex() for decoding.When
true, uses LOAD DATA LOCAL INFILE. When false, uses LOAD DATA INFILE (requires file access from server).Change Loader
The Change Loader applies ongoing data changes (INSERT, UPDATE, DELETE) to SingleStore tables using a merge approach with shadow tables.The Change Loader implements virtual MERGE operations using INSERT-SELECT, UPDATE, and DELETE statements since SingleStore doesn’t have native MERGE support.
Required Parameters
Path to a file containing the SingleStore connection string.
Directory containing change files (
.ckt) from the Change Extractor.Working directory for temporary CSV files during merge operations. Must be writable.
Path to the Wirekite schema file for table structure information.
Absolute path to the log file for Change Loader operations.
Optional Parameters
When
true, uses LOAD DATA LOCAL INFILE for loading changes to merge tables.Maximum number of change files to process in a single batch before executing merge operations.
Orchestrator Configuration
When using the Wirekite Orchestrator, prefix target parameters withtarget.schema., target.data., or target.change..
Example orchestrator configuration for SingleStore target:
