Scheduling
Sundial provides flexible scheduling capabilities to keep your materialized views fresh and up to date. You can configure data refreshes to run at regular intervals or trigger them manually.
Schedule levels
Sundial provides two levels of scheduling:
Global schedule — A tenant-wide schedule that applies to all views with auto-refresh enabled. Configure the time of day and frequency (e.g. daily at 06:00 PM UTC). This is the default for most setups.
Per-view custom schedule — Override the global schedule for individual views that need a different cadence. Each view can follow the global schedule or define its own hour, minute, and period.
Time-based scheduling
Configure data refreshes to run on a schedule using:
- Cron Expressions — Standard cron syntax for precise scheduling.
- Fixed Intervals — Simple recurring schedules (daily, weekly, hourly).
Example cron schedules:
0 0 * * *— Run daily at midnight0 */4 * * *— Run every 4 hours0 8-17 * * MON-FRI— Run hourly from 8 AM to 5 PM on weekdays*/15 * * * *— Run every 15 minutes0 0 1 * *— Run monthly on the 1st day0 12 * * SUN— Run weekly on Sundays at noon
The scheduler supports both UTC and local timezones. You can specify the timezone when setting up the schedule to ensure refreshes happen at the right local time.
Configuring a schedule
- Open the view in the Data Catalog.
- Navigate to the schedule configuration.
- Choose Follow Global Schedule or Custom schedule.
- If custom, set the time and frequency.
- Save.

Retry configuration
If a refresh fails, Sundial can automatically retry. Configure:
- Retry interval — How many minutes to wait before retrying.
- Retry attempts — How many times to retry before giving up.
Best practices
- Consider data freshness requirements when choosing a schedule frequency.
- Avoid scheduling during peak usage times.
- Space out refreshes to manage system load.
- Set appropriate retry policies.
- Monitor schedule execution and failures.
Next steps
- Learn about Materialization modes to choose the right refresh strategy
- Reprocess historical data with Backfill
- Monitor freshness to catch stale views