Skip to main content
Version: v1.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