DATA OPS

Attribute BigQuery slot contention to noisy query authors and nudge them in Slack

Each morning, ranks the previous day's BigQuery query authors by slot-milliseconds consumed, flags the top contention drivers during peak hours.

CategoryData Ops
Enginesim
Difficultyintermediate
Triggerschedule
Steps6
Setup~15 min

How it runs

The automated pipeline, trigger to output.

  • TriggerDaily schedule after prior day closes
  • ActionQuery JOBS for slot_ms by author (24h)Google BigQueryBigQuery
  • LogicRank authors, keep those over contention threshold
  • ActionFetch each flagged author's costliest queriesGoogle BigQueryBigQuery
  • OutputDM each author their slot share and queriesSlack
  • OutputPost ranked leaderboard to #data-platformSlack

What it does

It turns yesterday's BigQuery usage into a clear, person-by-person accountability report. The workflow pulls slot consumption from INFORMATION_SCHEMA, attributes it to the user who ran each job, and quietly nudges the heaviest consumers with the exact queries that drove their cost — before they repeat the pattern today.

When to use it

Use it when a shared reservation keeps hitting its slot ceiling and analysts blame "the warehouse being slow" instead of their own scans. It replaces finger-pointing with named, data-backed feedback delivered privately, so people self-correct without a manager meeting.

How it works

  1. 1A daily schedule fires after the prior day closes.
  2. 2Query `INFORMATION_SCHEMA.JOBS` for total_slot_ms, bytes scanned, and user_email grouped by author for the last 24h.
  3. 3Rank authors and keep only those above the contention threshold during peak hours.
  4. 4For each flagged author, fetch their three costliest individual queries.
  5. 5Send each author a private Slack DM with their slot share, dollar estimate, and the specific queries to optimize.
  6. 6Post a ranked leaderboard to the #data-platform channel for team visibility.

Set it up

What you configure once, before turning it on.

  1. 1
    Connect BigQueryDatasets, queries, schemas.
  2. 2
    Connect SlackChannels, DMs, threads, mentions.
  3. 3
    Set each agent's modelWe leave models unset so you pick the tier — fast + cheap, or top-quality.
  4. 4
    Tune it to your dataEdit the prompts, filters, and field mappings so it matches how your team works.
  5. 5
    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.