William
08/10/2022, 3:54 PMmaterialize
operation refreshes and overwrites an existing asset
. Is it possible to materialize to a different asset each time I provide a different materialize run config?claire
08/10/2022, 5:50 PMassets
argument of materialize
must be run in this call. You could make this call dynamic and pass in a variable list of assets, or you could with an existing job call execute_in_process(asset_selection=[...])
William
08/11/2022, 8:17 AMclaire
08/11/2022, 10:24 PMmaterialize
with a certain selection of assets:
config_by_asset = {"asset_1": {"config": 3}, "asset_2": {"config": 2}}
all_assets = load_assets_from_current_module()
def materialize_selected_assets(asset_names):
materialize(
[asset for asset in all_assets if asset.op.name in asset_names],
run_config={"ops": {asset_name: config_by_asset[asset_name] for asset_name in asset_names}},
)
or you can define an asset job and pass in an asset selection with config:
assets_job = define_asset_job("all_assets_job").resolve(all_assets, [])
assets_job.execute_in_process(
asset_selection=[AssetKey("asset_1")], run_config={"ops": config_by_asset}
)
claire
08/11/2022, 10:24 PM