DATA OPS

Daily BigQuery to Snowflake Schema-Drift Report

Each morning it compares column names, types, and nullability between matched BigQuery and Snowflake tables.

CategoryData Ops
Enginesim
Difficultyintermediate
Triggerschedule
Steps6
Setup~15 min

How it runs

The automated pipeline, trigger to output.

  • TriggerDaily schedule before standup
  • ActionRead BigQuery column schemaGoogle BigQueryBigQuery
  • ActionRead Snowflake column schemaSnowflakeSnowflake
  • LogicDiff and classify column changes
  • LogicBranch: drift found vs clean
  • OutputPost drift report to SlackSlack

What it does

On a daily schedule, this workflow pulls the live schema of a configured set of BigQuery tables and their Snowflake counterparts, diffs them column by column, and produces a single change report covering added columns, dropped columns, renamed-or-retyped columns, and nullability changes. The report is delivered to Slack so nobody has to manually eyeball `INFORMATION_SCHEMA` across two warehouses.

When to use it

Use it when BigQuery is your source of truth and Snowflake is a downstream replica or analytics mirror, and unannounced upstream schema changes keep breaking dbt models or BI dashboards. It turns silent drift into a morning heads-up.

How it works

  1. 1A scheduled trigger fires once per day before standup.
  2. 2It queries BigQuery `INFORMATION_SCHEMA.COLUMNS` for the watched dataset.
  3. 3It queries Snowflake `INFORMATION_SCHEMA.COLUMNS` for the mirrored schema.
  4. 4A logic step diffs the two column maps and classifies each difference.
  5. 5A branch checks whether any drift was found.
  6. 6The formatted drift report is posted to a Slack channel; a clean run posts a short all-clear.

Set it up

What you configure once, before turning it on.

  1. 1
    Connect BigQueryDatasets, queries, schemas.
  2. 2
    Connect SnowflakeWarehouses, queries, shares.
  3. 3
    Connect SlackChannels, DMs, threads, mentions.
  4. 4
    Set each agent's modelWe leave models unset so you pick the tier — fast + cheap, or top-quality.
  5. 5
    Tune it to your dataEdit the prompts, filters, and field mappings so it matches how your team works.
  6. 6
    Test, then turn it onRun once against a sample, confirm the output, then enable the trigger.

Run this workflow in your colony.

14-day trial. No DevOps. No Sales call. Provisioned in under a minute.