Schedule Jobs

A scheduled execution of a notebook is referred to as a “job.” The SingleStore job service provides a flexible and convenient way to schedule jobs using cron expressions that can be tailored to meet your requirements. Cron-based scheduling uses the standard cron syntax, providing precise control over when workloads are run. It supports the format - minute hour day month weekday, and allows for complex scheduling patterns (e.g., running jobs at 8:00 AM every Monday). Create, edit, and delete cron schedules, and validate cron expressions in real time.

After scheduling, the job service creates a snapshot. This snapshot represents a read-only notebook captured at the time the job was scheduled. It can be used for subsequent executions at the scheduled time until the user makes modifications. To ensure that the execution reflects the new changes, be sure to update the snapshot explicitly after modifying the notebook.

Create and manage scheduled jobs using the Cloud Portal or via the Management API.

Schedule Jobs using the Cloud Portal

Create a Scheduled Job

Jobs can be scheduled for shared notebooks only. Create a scheduled job:

  • Using Jobs in the left navigation

    Select Schedule (on the top right).

    In the left navigation, select Jobs, and then select Schedule to schedule a job.
  • Using Shared Notebooks

    1. Navigate to Editor > Shared .

    2. Select a shared notebook.

    3. Select Schedule (on the top right).

    Schedule a notebook by selecting the Schedule button on the right upper side in the shared notebook.

New Scheduled Job

After selecting Schedule, a dialog box will appear.

Enter the Job Settings.

Enter the job settings for scheduling a job

Job Settings

Name

Enter a name for the job.

Description

Enter the job description.

Notebook

Select a shared notebook to run the job. The shared notebook is pre-selected when Job is scheduled through notebooks.

Deployment

Select the SingleStore deployment (workspace) the notebook connects to.

Selecting a workspace allows connecting the SingleStore databases referenced in the notebook natively. A scheduled job can also be run without a deployment attached to it.

Runtime

Select a runtime from the following:

  • Small

  • Medium

  • GPU-T4

Note

This field is in preview.

Region

Select a region.

Select Next. Enter the Schedule Options.

Scheduled Options

Start Executions After

Specify the date and time for the first run of the scheduled job. Select one of the following available options:

  1. Now: The job runs as soon as it is created.

  2. Datetime: Specify a Starting Date and Starting Time.

Schedule Mode

Specify the frequency to run a scheduled job. Select one of the following available options:

  1. One Time: The job runs a single time.

  2. Recurring: Specify when the job needs to be run. Select from the following:

    • Hourly

    • Weekly

    • Monthly

    • Weekdays at 9 PM

    • Every 6 Hours

    • Enter a custom valid CRON expression.

Parameters

Specify the job parameters for the scheduled job. 

  1. Type: Select the type of parameters from the following:

    • String

    • Integer

    • Float

    • Boolean

  2. Name: Enter the name of the parameter.

  3. Value: Enter the value of the parameter.

Note

The system injects parameters as Python variables into the notebook while the scheduled job runs, and access them using the variables where required.

Additional Settings

  1. Save all execution results: Enable this setting to save the execution results. An execution result is a saved version of the notebook along with the cells containing outputs after the completion of a job run. This action enables to validate the execution result and the version of the notebook used for the run. By default, all snapshots for error and failed runs are saved.

  2. Auto resume the deployment on job execution: Enable this setting to resume the deployment when the job runs. This action resumes any suspended workspace deployments. The previous auto-suspend settings of the workspace remain unchanged.

Select Next.

View the summary of the job before creating a job.

Select Create Job to schedule the job.

Manage an Existing Job

To view an existing scheduled jobs and job runs, select Jobs in the left navigation pane. Existing jobs can be managed by performing the following actions:

  • View

  • Edit

  • Pause

  • Resume

  • Delete

View an Existing Job

To view a job, select the job name under the Name column.

View the scheduled job under the Name column in the Jobs page.

View the following job execution details for each job:

View the job execution details in the right navigation of the selected job.

View the details of a job on the Job Details pane in the right navigation. This page also supports refresh, edit, pause, resume, and delete actions for a job.

Edit an Existing Job

To edit an existing job, navigate to the selected job page, select the ellipsis, and select Edit Job.

Edit the job by selecting Edit Job in the ellipsis of the selected job.

Pause an Existing Job

To pause an existing job, navigate to the Jobs page, select the ellipses in the Actions column of the job, and select Pause. Alternatively, navigate to the selected job page, and select Pause Job.

Resume an Existing Job

To resume an existing job, navigate to the Jobs page, select the ellipses in the Actions column of the job, and select Resume.

Delete an Existing Job

To delete an existing job, navigate to the Jobs page, select the ellipses in the Actions column of the job, and select Delete.

Warning

Deleting a job removes all associated job runs, including snapshots.

Schedule Jobs using the Management API

Use the Jobs path (/v1/jobs endpoint) to create and manage jobs using the Management API. Refer to Management API and Management API Reference for more information.

For example, the following API call returns information about the job with the specified jobID:

curl -X 'GET' \  'https://api.singlestore.com/v1/jobs/7b68b78d-0000-1000-9000-0864fd331524' \  -H 'accept: application/json'

Status of Job Executions

Status

Description

Scheduled

The next scheduled run for the job. The latest version of the notebook runs at the Start Time associated with the job.

Completed

The notebook in this job run ran to completion.

Failed

The execution failed due to user error. View execution result to debug the failure.

Error

An error unrelated to the notebook code prevented this job from completing. Refer to Troubleshoot Job Runs.

Troubleshoot Job Runs

SingleStore automatically saves an execution result notebook of an execution that fails. Navigate to Jobs in the left navigation, find the job, and download the snapshot associated with the failed job run to diagnose the error.

Error

Solution

Workspace Deleted

Edit the Job and select a deployment.

Workspace Suspended

Resume the workspace, or create a new job schedule with a different deployment.

Database Detached

Reattach the database with the right permissions or create a new schedule job with a different database.

Internal Errors / Misc

Reach out to SingleStore Support or use the chat feature in the Cloud Portal.

Notebook Timed Out

View the snapshot to identify the cells where the notebook is timed out.

Refer to Configurability and Key Considerations for the Execution Time limits set on a job run.

Notebook Deleted/Not present

Create a new scheduled job with a different notebook.

Configurability and Key Considerations

Scheduled notebook jobs run using a snapshot of the notebook captured at the time the job is created or last refreshed. Updates made to the notebook after the snapshot is captured do not affect scheduled job runs.

To apply updates to a scheduled job, explicitly refresh the notebook snapshot. In the Jobs page, select the job and then select Refresh in the top right. Alternatively, select the ellipsis (three dots), select Edit Job, and enable Update snapshot to reflect the updates from the associated notebook in the job.

An execution time limit is set for each job:

  • Maximum allowed execution duration: Specifies the maximum total time a notebook job can run, including all retries. The job is terminated when this limit is reached, even if execution is still in progress. The maximum allowed execution duration limit is 8 hours.

  • Minimum execution interval: Specifies the minimum required time interval between consecutive notebook job runs. Schedules with intervals shorter than this limit are not allowed. The minimum execution interval limit is 60 minutes.

  • Maximum execution interval: Specifies the maximum allowed time between consecutive notebook job runs. Schedules with intervals longer than this limit are not allowed. The maximum execution interval limit is 31 days.

Examples

The following examples demonstrate how maximum allowed execution duration, minimum execution interval, and maximum execution interval are used while creating a scheduled job and how those patterns apply to scheduling notebooks within the SingleStore job service.

Example 1: Hourly Data Refresh Job

Run a notebook every hour to refresh business analytics tables.

Configuration

Cron Expression: 0 * * * *

Execution Time Limits

Execution Time Parameter

Value

Minimum execution interval

60 minutes

Maximum execution interval

31 days

Maximum allowed execution duration

8 hours

Behavior

This configuration allows the notebook to run once every hour, which satisfies the minimum execution interval of 60 minutes and remains within the maximum execution interval of 31 days. Each job run can execute for up to 8 hours, including retries, after which the system terminates the running job automatically. Cron expressions that schedule executions more frequently than once per hour, such as */30 * * * * are not allowed.

Example 2: Monthly Compliance Report

Run a notebook once per month to generate a compliance report.

Configuration

Cron Expression: 0 0 1 * *

Execution Time Limits

Execution Time Parameter

Value

Minimum execution interval

60 minutes

Maximum execution interval

31 days

Maximum allowed execution duration

8 hours

Behavior

This configuration allows the notebook to run approximately once every 31 days, which satisfies both the minimum execution interval of 60 minutes and the maximum execution interval of 31 days. Each execution is limited to 8 hours, including retries, and the system terminates the running job if it exceeds this duration. Cron expressions that schedule executions less frequently than once every 31 days, such as 0 0 1 1 * are not allowed.

Last modified: January 9, 2026

Was this article helpful?

Verification instructions

Note: You must install cosign to verify the authenticity of the SingleStore file.

Use the following steps to verify the authenticity of singlestoredb-server, singlestoredb-toolbox, singlestoredb-studio, and singlestore-client SingleStore files that have been downloaded.

You may perform the following steps on any computer that can run cosign, such as the main deployment host of the cluster.

  1. (Optional) Run the following command to view the associated signature files.

    curl undefined
  2. Download the signature file from the SingleStore release server.

    • Option 1: Click the Download Signature button next to the SingleStore file.

    • Option 2: Copy and paste the following URL into the address bar of your browser and save the signature file.

    • Option 3: Run the following command to download the signature file.

      curl -O undefined
  3. After the signature file has been downloaded, run the following command to verify the authenticity of the SingleStore file.

    echo -n undefined |
    cosign verify-blob --certificate-oidc-issuer https://oidc.eks.us-east-1.amazonaws.com/id/CCDCDBA1379A5596AB5B2E46DCA385BC \
    --certificate-identity https://kubernetes.io/namespaces/freya-production/serviceaccounts/job-worker \
    --bundle undefined \
    --new-bundle-format -
    Verified OK

Try Out This Notebook to See What’s Possible in SingleStore

Get access to other groundbreaking datasets and engage with our community for expert advice.