DatriseAI-first ETL

Heroku to Azure Synapse Integration

AI-first ETL from Heroku into Azure Synapse. Governed entities, incremental sync, typed landing tables.

How Datrise loads Heroku into Azure Synapse

Datrise syncs Heroku's apps, dynos, releases, add-ons, config vars, and build logs into Azure Synapse as a typed table per source entity. Flexible or custom fields land in NVARCHAR(MAX) JSON columns, and timestamps such as created, updated, and status changes are typed as datetime2.

Sync is incremental: Datrise uses COPY into staging, then a MERGE on stable id, so re-runs update only what changed. Hash distribution on the join id with date partitioning on facts. Synapse dedicated pools reward good hash-distribution choices, so Datrise distributes on entity ids to avoid data-movement-heavy joins.

Ideal for Azure analytics estates feeding Power BI.

Endpoints

Heroku: Application platform with dynos and add-ons.

Azure Synapse: Microsoft analytics workspace with SQL pools.

How Heroku entities map to Azure Synapse

Heroku entityAzure Synapse objectNotes
appsheroku_appsid PK · custom fields → NVARCHAR(MAX) JSON columns
dynosheroku_dynosid PK · linked to heroku_apps
releasesheroku_releasesid PK · linked to heroku_apps
add-onsheroku_add_onsid PK · linked to heroku_apps

FAQ

How does Datrise handle Heroku's custom fields in Azure Synapse?

Flexible values are stored as NVARCHAR(MAX) JSON columns, so new fields don't require a migration; strongly-typed fields — dates, numbers, and references — are promoted to native Azure Synapse types.

How does the Heroku to Azure Synapse sync stay up to date?

It runs incrementally — Datrise uses COPY into staging, then a MERGE on stable id.

Related pipelines

Early access

Connect Heroku to Azure Synapse the easy way

Skip brittle scripts and manual exports. Join the waitlist to get a guided setup, AI-assisted mapping, and reliable incremental sync for this integration.