Skip to content
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

[Experimentation] Make Kedro-Viz flowchart filterable #1784

Closed
NeroOkwa opened this issue Mar 4, 2024 · 2 comments
Closed

[Experimentation] Make Kedro-Viz flowchart filterable #1784

NeroOkwa opened this issue Mar 4, 2024 · 2 comments

Comments

@NeroOkwa
Copy link
Contributor

NeroOkwa commented Mar 4, 2024

Description

Users want to filter and focus on a particular section of the flowchart e.g. downstream assets and nodes and generate a unique run definition. This ticket investigates how to achieve this using kedro pipeline slicing.

As mentioned in #1744:

As a user I want to filter Kedro-Viz to match the run definition of my pipeline only showing the nodes which will be executed as part of the run configuration

This was highlighted in the competitor benchmark #1750: The two key examples were dbt and Dagster which expanded the filter query of their lineage graphs using special operators such as select and exclude in the case of dbt.

dbt:

dbt achieves this using special graph operators like "+mymodel+", which means running upstream & downstream of a node.

Dagster:

Dagster also achieves this using special operators. This can be combined with other filters for a more personalised lineage graph focused on the upstream/downstream dependencies of a particular node or asset.

Context

For example, in the Kedro-Viz below the node name is create_derived_features, you can filter the highlighted pipeline using kedro pipeline slicing and a union of pipeline.filter with 'to nodes' and 'from nodes'.

FilterNok

This would provide greater flexibility to transform and investigate the flowchart.

Acceptance Criteria

A user is able to easily filter their Kedro-Viz pipeline from the flowchart by:

  1. Selecting 'from_node' and 'to_node'.
  2. The visualisation changes instantly and he sees the selected area.
  3. As the filtering and hence visualisation changes, the URL should change Extending stateful URLS  #1736.
@NeroOkwa NeroOkwa changed the title Make Kedro-Viz flowchart filterable Make Kedro-Viz flowchart filterable [WIP] Mar 4, 2024
@rashidakanchwala rashidakanchwala changed the title Make Kedro-Viz flowchart filterable [WIP] [Experimentation] Make Kedro-Viz flowchart filterable [WIP] Mar 4, 2024
@rashidakanchwala rashidakanchwala moved this to Backlog in Kedro-Viz Mar 4, 2024
@rashidakanchwala rashidakanchwala moved this from Backlog to Todo in Kedro-Viz Mar 4, 2024
@rashidakanchwala rashidakanchwala self-assigned this Mar 4, 2024
@NeroOkwa NeroOkwa moved this from Todo to In Progress in Kedro-Viz Mar 4, 2024
@rashidakanchwala rashidakanchwala moved this from In Progress to Todo in Kedro-Viz Mar 4, 2024
@rashidakanchwala rashidakanchwala moved this from Todo to In Progress in Kedro-Viz Mar 5, 2024
@NeroOkwa NeroOkwa changed the title [Experimentation] Make Kedro-Viz flowchart filterable [WIP] [Experimentation] Make Kedro-Viz flowchart filterable Mar 7, 2024
@noklam
Copy link
Contributor

noklam commented Mar 12, 2024

For example, in the Kedro-Viz below the node name is create_derived_features, you can filter the highlighted pipeline using kedro pipeline slicing and a union of pipeline.filter with 'to nodes' and 'from nodes'.

While I think this is useful, there are immediate questions:

  • How do I run this in kedro? The answer is impossible, see this blog I wrote last week. (It's not entirely impossible, but I think not possible to run this with kedro run is sufficient to conclude that this doesn't work)

I throw a question in #random in the Slack group, https://linen-slack.kedro.org/t/16648352/kedro-mini-kedro-challenge-let-say-the-node-name-is-create-d#5d37c750-5ca2-4388-b3ec-f11222f76b54, and it doesn't seem that people need this.

@Huongg
Copy link
Contributor

Huongg commented Jun 13, 2024

We've completed some Spike work and held an ideation workshop. Based on these activities, we've decided to build the MVP1 for this feature so we'll be closing this ticket. For more context, you can refer to our Miro Board and the video recording to see our discussion and the milestones related to this ticket.

Next Steps: We're now working on MVP1, which includes:

@Huongg Huongg closed this as completed Jun 13, 2024
@github-project-automation github-project-automation bot moved this from In Progress to Done in Kedro-Viz Jun 13, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
Status: Done
Development

No branches or pull requests

5 participants