Graph Features Recipe

The Graph features recipe computes node-level graph metrics on selected node groups and edge groups. It can write either a dataset of nodes or an enriched edge dataset.

Use this recipe for new PageRank computations. The standalone Compute PageRank recipe is deprecated and kept for compatibility.

The recipe runs on a graph database. See graph database recipe settings and algorithm execution and sampling.

Algorithms

The following table summarizes algorithm support by execution engine and graph database backend.

Algorithm

Dataiku execution

In database, Neo4j

In database, built-in graph database

Degree

Directed and undirected

Directed and undirected

Not supported

Eigenvector centrality

Directed and undirected

Directed and undirected

Not supported

Clustering coefficient

Directed and undirected

Not supported

Not supported

Count of triangles

Undirected only

Not supported

Not supported

Closeness centrality

Directed and undirected

Directed and undirected

Not supported

PageRank

Directed and undirected

Directed and undirected

Directed only

Square clustering

Directed and undirected

Not supported

Not supported

Connected components

Undirected only

Undirected only

Undirected only

For the built-in graph database, PageRank is available in In database execution only when Directed graph is enabled. Use Dataiku execution to compute PageRank on an undirected built-in graph.

Input / Output

Input
  • Graph folder (Optional): Dataiku Folder that contains your materialized graph database. Leave it empty to run on an unmanaged Neo4j database directly.

Output
  • Output dataset: Dataset containing the computed graph features.

If the recipe fails while running, the output dataset may contain partial results.

Settings

Node groups

Choose one or more node groups to include in the computation.

Edge groups

Select the edge groups that define the relationships to consider.

Directed graph

Enable this option to treat relationships as directed. Some algorithms are hidden when directed graphs are selected because they only support undirected graphs, or because the selected backend only supports them for directed graphs.

Output type

Choose Dataset of nodes to write one row per node, or Dataset of edges to keep an edge dataset enriched with graph feature values for both endpoints.

Graph features algorithms

Use Select all to compute all algorithms supported by the current graph settings, or select individual algorithms.

Algorithm-specific parameters

Eigenvector centrality
  • Max iterations: Maximum number of iterations. This parameter applies during In database execution on Neo4j only.

  • Tolerance: Convergence tolerance. This parameter applies during In database execution on Neo4j only.

Dataiku execution uses python-igraph for eigenvector centrality. It does not expose these convergence controls, so these values are ignored during Dataiku execution.

PageRank
  • Damping factor: Probability of following outgoing relationships at each step.

  • Max iterations: Maximum number of iterations.

  • Tolerance: Convergence tolerance.

  • Normalize initial scores to sum to 1: Normalize the initial PageRank score vector.

For edge output, node-level graph features are computed on nodes and then joined back to both endpoints of each output relationship.

Advanced parameters

  • Output batch size: Number of result rows written at a time. This only controls output writing and does not change the graph used for computation. With Dataiku execution, the graph is loaded in memory independently of this value.