Andreas
03/12/2024, 1:30 PMScout
03/12/2024, 1:30 PMdefine_asset_job
function in combination with the AssetSelection
API. The AssetSelection.groups
method allows you to specify one or more asset groups to include in the job. Here's an example from the documentation on how to use AssetSelection.groups
to target all assets in a specific group: python from dagster import define_asset_job, AssetSelection # Define a job that targets all the assets in a group called "marketing": marketing_job = define_asset_job( name="marketing_job", selection=AssetSelection.groups("marketing") )
You can also combine multiple groups using the |
operator, which represents the union of selections: python # Define a job that targets all assets in both "marketing" and "sales" groups: combined_job = define_asset_job( name="combined_job", selection=AssetSelection.groups("marketing") | AssetSelection.groups("sales") )
The AssetSelection
API provides flexibility in how you select assets for a job, allowing for unions, intersections, and differences of selections using operators like |
, &
, and -
, respectively. Remember that resources are supplied to the assets, not the job itself, so you would define resources at the asset level. For more complex selection logic, you can refer to the AssetSelection
API in the documentation, which provides a variety of methods to create custom selections based on your needs.