Skip to main content
Version: 1.2.0

Jobs API

Listing jobs

The List Jobs API returns your currently initiated jobs. By default, only active jobs, which means the jobs that are currently executing, are returned.

You can provide an additional argument active=False to return all jobs. You can also retrieve a specific type of job by specifying the job_type parameter.

from featurestore.core.job_types import INGEST, RETRIEVE, EXTRACT_SCHEMA, REVERT_INGEST, MATERIALIZATION_ONLINE
client.jobs.list()
client.jobs.list(active=False, job_type=INGEST)
note

The active parameter indicates that the job is currently executing.

Getting a job

job = client.jobs.get("job_id")

Cancelling a job

To request cancel without waiting for cancellation to complete you need to call

job.cancel()
To request cancel and wait for cancellation to complete you need to call
job.cancel(wait_for_completion=True)

Checking job status

job.is_done()

Checking if job is cancelled

job.is_cancelled()

Getting job results

job.get_result()

Checking job metrics

job.get_metrics()

How to download using RetrieveJob

Unlike other job types, RetrieveJob also has a download method which gives you the option to download retrieved data created by the backend job.

You can also make use of the download_async method that downloads the files asynchronously. More information about asynchronous methods is at Asynchronous methods.

retrieve_job = client.jobs.get("job_id")
data_path = retrieve_job.download()

Job metadata

Field NameUser ModifiableValues
idNo-
jobTypeNoIngest, Retrieve, ExtractSchema, Revert, MaterializationOnline, ComputeStatistics, ComputeRecommendationClassifiers, CreateMLDataset, Backfill
doneNotrue, false
cancelledNotrue, false
childJobIdsNoChild job ids
note

The done parameter indicates that the job has completed its execution and the results are available.


Feedback