-
Notifications
You must be signed in to change notification settings - Fork 1.5k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[docs] on multi-asset concept page, use AssetSpec, not AssetOut #23111
Conversation
Deploy preview for dagster-docs ready! Preview available at https://dagster-docs-pf5s2w9qy-elementl.vercel.app Direct link to changed pages: |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
overall looks good to me!
one thing i noticed is that when i read the "conditional materialization" and "subsettting" section right after each other i had a moment of confusion about the difference between the two and why can_subset
isn't required in the conditional materialization case. I think part of it is that these two paragraphs are pretty dense https://github.com/dagster-io/dagster/pull/23111/files#diff-212b6a0eff6255e40aa72e669a5843113f3f2512e889ddd6e08749231ad34d6bR78-R80 which makes it hard to understand when you would use each strategy. Not required for this PR, but it would be good to revisit this section in the future. maybe an example of when you would use each one would be helpful
``` | ||
|
||
### Subsetting multi-assets | ||
|
||
By default, it is assumed that the computation inside of a multi-asset will always produce the contents all of the associated assets. This means that attempting to execute a set of assets that produces some, but not all, of the assets defined by a given multi-asset will result in an error. | ||
|
||
Sometimes, the underlying computation is sufficiently flexible to allow for computing an arbitrary subset of the assets associated with it. In these cases, set the `is_required` attribute of the outputs to `False`, and set the `can_subset` parameter of the decorator to `True`. | ||
Sometimes, the underlying computation is sufficiently flexible to allow for computing an arbitrary subset of the assets associated with it. In these cases, set the `skippable` attribute of the asset specs to `True`, and set the `can_subset` parameter of the decorator to `True`. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Sometimes, the underlying computation is sufficiently flexible to allow for computing an arbitrary subset of the assets associated with it. In these cases, set the `skippable` attribute of the asset specs to `True`, and set the `can_subset` parameter of the decorator to `True`. | |
Sometimes, the underlying computation is sufficiently flexible to allow for computing an arbitrary subset of the assets associated with it. In these cases, you should set the following to `True`: | |
- The asset spec's `skippable` attribute | |
- The decorator's `can_subset` parameter |
Similar suggestion here to make this less dense. I'm not sure I formatted 'spec' (or 'specs'?) here correctly, but overall, wdyt of this approach?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Mind if I punt this suggestion to a separate change? Seems like a reasonable change to make, but out of scope of what I'm trying to fix in this PR.
87a3aef
to
d976b9f
Compare
Going to merge this because I got the approve from Jamie, and the changes are primarily to code snippets. @erinkcochran87 - let me know if there are any followups to the text that you think are important for me to address. |
Summary & Motivation
How I Tested These Changes