Skip to main content
Version: 0.4 (Latest)

Microsoft Fabric Publishing

Commands use Linux syntax. See Examples & Recipes for the Windows equivalents and the arguments every sync needs.

Export to OneLake, then create Fabric Lakehouse tables.

PostgreSQL to Fabric (Internal/Delta Tables)

./LakeXpress config create \
-a credentials.json \
--lxdb_auth_id lxdb_mssql \
--source_db_auth_id source_postgres \
--source_db_name tpch \
--source_schema_name tpch_1 \
--target_storage_id onelake_01 \
--publish_target fabric_lakehouse \
--publish_method internal \
--fastbcp_p 2 \
--n_jobs 4 \
--generate_metadata

./LakeXpress sync \
-a credentials.json \
--lxdb_auth_id lxdb_mssql \
--sync_id <SYNC_ID>

PostgreSQL to Fabric (External/SQL Views)

./LakeXpress config create \
-a credentials.json \
--lxdb_auth_id lxdb_mssql \
--source_db_auth_id source_postgres \
--source_db_name tpch \
--source_schema_name tpch_1 \
--target_storage_id onelake_01 \
--publish_target fabric_lakehouse \
--publish_method external \
--publish_table_pattern "VW_{schema}_{table}" \
--fastbcp_p 2 \
--n_jobs 4 \
--generate_metadata

./LakeXpress sync \
-a credentials.json \
--lxdb_auth_id lxdb_mssql \
--sync_id <SYNC_ID>

More Examples​

The credentials entries used below, and the Microsoft Fabric setup they rely on, are described in Microsoft Fabric Publishing.

Example 1: PostgreSQL to Fabric Delta Tables​

./LakeXpress config create \
-a credentials.json \
--lxdb_auth_id lxdb_postgres \
--source_db_auth_id source_postgres \
--source_db_name tpch \
--source_schema_name tpch_1 \
--fastbcp_p 2 \
--n_jobs 4 \
--target_storage_id onelake_01 \
--publish_target fabric_lakehouse \
--publish_method internal \
--generate_metadata

./LakeXpress sync \
-a credentials.json \
--lxdb_auth_id lxdb_postgres \
--sync_id <SYNC_ID>

Tables (customer, orders, lineitem, etc.) appear in the Lakehouse Tables section, queryable via SQL analytics endpoint and Power BI.

Example 2: SQL Server to Fabric with Custom Naming​

./LakeXpress config create \
-a credentials.json \
--lxdb_auth_id lxdb_postgres \
--source_db_auth_id source_mssql \
--source_db_name adventureworksdw \
--source_schema_name dbo \
--fastbcp_p 2 \
--n_jobs 4 \
--target_storage_id onelake_01 \
--publish_target fabric_lakehouse \
--publish_method internal \
--publish_table_pattern "dw_{table}"

./LakeXpress sync \
-a credentials.json \
--lxdb_auth_id lxdb_postgres \
--sync_id <SYNC_ID>

Creates tables dw_DimCustomer, dw_DimProduct, dw_FactSales, etc.

Example 3: SQL Analytics Views (External)​

./LakeXpress config create \
-a credentials.json \
--lxdb_auth_id lxdb_postgres \
--source_db_auth_id source_postgres \
--source_db_name tpch \
--source_schema_name tpch_1 \
--fastbcp_p 2 \
--n_jobs 4 \
--target_storage_id onelake_01 \
--publish_target fabric_lakehouse \
--publish_method external \
--publish_table_pattern "VW_{schema}_{table}"

./LakeXpress sync \
-a credentials.json \
--lxdb_auth_id lxdb_postgres \
--sync_id <SYNC_ID>

Parquet files land in the Files section; views VW_tpch_1_customer, VW_tpch_1_orders, etc. appear in the SQL analytics endpoint.

Example 4: Parallel Table Creation​

./LakeXpress config create \
-a credentials.json \
--lxdb_auth_id lxdb_postgres \
--source_db_auth_id source_postgres \
--source_db_name tpch \
--source_schema_name tpch_1 \
--fastbcp_p 4 \
--n_jobs 8 \
--target_storage_id onelake_01 \
--publish_target fabric_lakehouse \
--publish_method internal

./LakeXpress sync \
-a credentials.json \
--lxdb_auth_id lxdb_postgres \
--sync_id <SYNC_ID>

Example 5: MySQL to Fabric​

./LakeXpress config create \
-a credentials.json \
--lxdb_auth_id lxdb_postgres \
--source_db_auth_id source_mysql \
--source_db_name ecommerce \
--source_schema_name ecommerce \
--fastbcp_p 2 \
--n_jobs 4 \
--target_storage_id onelake_01 \
--publish_target fabric_lakehouse \
--publish_method internal \
--publish_table_pattern "mysql_{table}"

./LakeXpress sync \
-a credentials.json \
--lxdb_auth_id lxdb_postgres \
--sync_id <SYNC_ID>
Copyright © 2026 Architecture & Performance.