Module mz_transform::dataflow

source ยท
Expand description

Whole-dataflow optimization

A dataflow may contain multiple views, each of which may only be optimized locally. However, information like demand and predicate pushdown can be applied across views once we understand the context in which the views will be executed.

Structsยง

  • Extra information about the dataflow. This is not going to be shipped, but has to be processed in other ways, e.g., showing notices to the user, or saving meta-information to the catalog.
  • IndexUsageContext ๐Ÿ”’
    This struct will save info about parent nodes as we are descending down a MirRelationExpr. We always start with filling in usage_type when we see an operation that uses an arrangement, and then we fill in requested_keys when we see an ArrangeBy. So, the pattern that we are looking for is

Functionsยง