Reactive execution
#
Reactive graph-based execution modelHex projects are backed by a graph which links cells together and defines how they re-execute. This graph can be visualized in the Graph View, activated by pressing the Graph button.
This differs from a traditional code notebook, and offers several advantages:
- Interpretability: it's easy to see how cells relate to each other, and how re-computes flow through the project. The Graph View is a visual "mind map" of the complexity you'd previously have to keep track of in your head.
- Reproducibility: Hex projects are reproducible by default, in that a given change will trigger a predictable, consistent set of re-computes through the graph.
- Performance: in logic development, but especially in published apps, this new DAG model is a massive leap forward. Input parameters will only trigger downstream, dependent logic, without any additional overhead or complexity.
#
How cells link togetherThe graph is built automatically based on parameter references in Python and SQL code. In the simple example below, we can see that x
and y
are both defined in and then referenced down in cells 2 and 3. These linkages are automatically inferred, without any need for user definition.