Shane Keller
03/09/2024, 10:32 PMScout
03/09/2024, 10:32 PMMaterializeResult
in Dagster, it is a class that can be optionally returned from an @asset
to report metadata, code version, and other information about the asset. The MaterializeResult
can include a value
field that you specify as the return value. This is useful when you want to pass scalar values to access in downstream assets. Here's an example from the documentation that illustrates how you might use MaterializeResult
with a `value`: python @asset def table_1(): full_table_name = "my_schema.table_1" snowflake.query(f"CREATE TABLE {full_table_name} ...") return MaterializeResult(value=full_table_name)
In this example, table_1
is an asset that creates a table in Snowflake and returns a MaterializeResult
with the value
set to the full table name. This value can then be accessed by downstream assets that depend on table_1
. Please note that the ability to store scalar values in MaterializeResult
and how to access them in downstream assets is a feature that has been discussed and may be subject to change. Always refer to the latest Dagster documentation for the most up-to-date usage patterns.