Skip to main content
Version: 0.4 (Latest)

config

Manage sync configurations. A sync configuration says what to export, where, and where to publish it. It is stored in the LakeXpress DB and run with sync. Examples: Configuration Management recipes, and the other Examples & Recipes.

All config commands also accept the common options.

config create​

Create a sync configuration. The command prints its sync_id and the sync command to run it.

usage: LakeXpress config create --auth_file AUTH_FILE
--lxdb_auth_id ID
--source_db_auth_id ID [OPTIONS]
[common options]

At least one of --output_dir (local disk) or --target_storage_id (cloud storage) is required.

Sync Identity​

OptionDescription
--sync_id IDName of the sync configuration: 1 to 64 letters, digits, _ or - (e.g. prod-daily-export). Generated if omitted. Fails if the ID already exists
--env_name NAMEEnvironment name, to keep separate configurations for dev, test and prod (default: default)

Source​

OptionDescription
--source_db_auth_id IDRequired. Entry of the credentials file for the source database
--source_db_name NAMESource database name. Default: info.database of the source credentials entry
--source_schema_name PATTERNSchemas to export, comma-separated, SQL LIKE patterns allowed (e.g. public, prod_%). Default: all schemas

Table Filtering​

OptionDescription
-i, --include PATTERNOnly export the tables matching these patterns, comma-separated (e.g. orders%, customer%)
-e, --exclude PATTERNSkip the tables matching these patterns, comma-separated (e.g. temp%, test%)
--min_rows NSkip tables with fewer than N rows
--max_rows NSkip tables with more than N rows

Patterns use SQL LIKE syntax: % matches any characters, _ matches one character.

Incremental Sync​

OptionDescription
--incremental_table SPECExport only new rows of a table, tracked with a watermark column. Repeat for each table. Format: schema.table:column:type[:i|:e][@start][!strategy], e.g. tpch_1.orders:o_orderdate:date
--incremental_safety_lag SECONDSStay this many seconds behind the current time, for late-arriving rows (default: 0)

Column types: date, datetime (also for timestamp columns), int, bigint, auto. Lower bound: :e exclusive, column > watermark (default), or :i inclusive, column >= watermark. Tables without --incremental_table are fully exported on each sync. Details: Incremental Sync.

Output​

OptionDescription
--output_dir PATHLocal directory for the Parquet files. A relative path is resolved against the current directory and saved as an absolute path (0.4.9+; use an absolute path with earlier versions)
--target_storage_id IDEntry of the credentials file for the cloud storage (S3, GCS, Azure, OneLake)
--sub_path PATHFolder added between the base path and the schema folders, e.g. staging/temp gives base/staging/temp/schema/table/

Export Engine​

OptionDescription
--fastbcp_dir_path PATHFolder containing FastBCP. Not needed with the trial edition, which finds its bundled engine
--n_jobs NNumber of tables exported in parallel (default: 1)
-p, --fastbcp_p NParallel processes used by FastBCP within one large table (default: 1)
--large_table_threshold NRow count above which a table is exported in parallel (default: 100000)
--fastbcp_table_config CONFIGPer-table FastBCP settings: [schema.]table:method:key_column:degree, separated by ;, e.g. dbo.lineitem:DataDriven:YEAR(l_shipdate):8;orders:Ctid::4, or ORDERS:Timepartition:(ORDER_DATE,year,month):8
--compression_type TYPEParquet compression: Zstd (default), Snappy, Gzip, Lz4 or None

With --n_jobs 4 --fastbcp_p 2, four tables are exported at the same time, each with two processes.

Publishing​

OptionDescription
--publish_target IDEntry of the credentials file for the target platform (Snowflake, Databricks, AWS Glue, Fabric, BigQuery, Redshift, MotherDuck, DuckLake)
--publish_method METHODexternal (default): tables read the Parquet files in cloud storage. internal: data is loaded into the platform
--publish_database_name NAMETarget database name (AWS Glue, Databricks)
--publish_schema_pattern PATTERNTarget schema name, with tokens {schema}, {table}, {database}, {date}, {timestamp}, {uuid}, {subpath}. Default: EXT_{schema} (external), {schema} (internal)
--publish_table_pattern PATTERNTarget table name, same tokens, must include {table}. Default: {table}
--no_viewsDo not create views over external tables (Snowflake)
--pk_constraintsAdd the source primary keys to internal tables (Snowflake, Databricks, Fabric, BigQuery, MotherDuck, Redshift)

Platform-specific defaults and behavior are described on each target platform page.

Metadata​

OptionDescription
--generate_metadataWrite CDM metadata (manifest.json and .cdm.json files) next to the Parquet files
--manifest_name NAMEName of the CDM manifest. Default: schema name (per schema) or database name (global)

Error Handling​

OptionDescription
--error_action ACTIONfail (default): stop at the first failed table. continue: log the error and go on with the other tables

config list​

List the sync configurations.

usage: LakeXpress config list --auth_file AUTH_FILE
--lxdb_auth_id ID [--env_name NAME]
[common options]
OptionDescription
--env_name NAMEOnly list the configurations of this environment

config delete​

Delete a sync configuration with its run history, table metadata and watermarks. Exported files and published tables are not deleted.

usage: LakeXpress config delete --auth_file AUTH_FILE
--lxdb_auth_id ID --sync_id SYNC_ID
[--confirm] [common options]
OptionDescription
--sync_id IDRequired. Sync configuration to delete
--confirmDelete it. Without it, shows what would be deleted
Copyright © 2026 Architecture & Performance.