Scheduling SQL Warehouse
Can ZopNight schedule SQL Warehouse?
Warehouse schedules issue a Stop and wait for it to land, but auto-resume means any query (a 2am dashboard refresh, a BI tool's metadata poll) restarts the warehouse and bills from that moment. A stop schedule therefore only sticks after the overnight query sources are found and silenced.
How the stop works
| Field | Value |
|---|---|
| Behaviour | issues a warehouse Stop (StopAndWait) and starts it again on schedule |
Example schedules
- 0 8 * * 1-5 — Business Hours Start: Start at 8:00 AM on weekdays
- 0 18 * * 1-5 — Business Hours Stop: Stop at 6:00 PM on weekdays
- 0 22 * * * — Night Shutdown: Stop at 10:00 PM every day
- 0 6 * * 1-5 — Morning Startup: Start at 6:00 AM on weekdays
- 0 20 * * 5 — Weekend Shutdown: Stop at 8:00 PM on Friday
- 0 7 * * 1 — Weekend Startup: Start at 7:00 AM on Monday
StopAndWait, confirmed down
The schedule stops the warehouse and waits for the stopped state rather than firing and hoping. At that point the DBU meter is off and, for classic warehouses, the underlying compute is released. So far, the simplest story imaginable.
Auto-resume is the plot twist
SQL warehouses wake on demand: the first query to arrive restarts a stopped warehouse automatically. That is a feature during the day and a schedule-killer at night. A dashboard set to refresh hourly, a BI tool polling metadata, a data-quality job running SELECTs at 3am: each one resurrects the warehouse, which then bills until its auto-stop idle window closes, only to be woken again by the next refresh. The stop cron fires successfully every evening and the invoice barely moves.
The audit that makes the schedule real
Before trusting the calendar, read the warehouse’s query history for the off-hours window and identify every overnight caller. Reschedule the refreshes into business hours, point monitoring probes elsewhere, or move genuinely necessary nightly jobs to their own small warehouse. The schedule’s value equals the silence you can actually arrange.
Auto-stop already exists, the calendar closes the evening
Warehouses carry a native auto-stop, often 10-60 minutes of idle. Where it is configured tightly, the calendar adds little; where teams stretched it to hours to dodge cold starts, the 19:00 stop reclaims the whole evening in one move. The two mechanisms are complementary: auto-stop handles gaps during the day, the schedule guarantees the night.
Classic and serverless wake differently
A serverless warehouse resumes in seconds, so morning users barely notice the schedule existed. Classic warehouses take minutes to come up, which argues for a scheduled morning start ahead of the first analysts rather than letting the first query of the day eat the cold start.
Either way the stop costs nothing to attempt. A warehouse already stopped by its idle timer is simply confirmed down, and the two mechanisms coexist without conflict.