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.