digraph "Compression steps" { node [shape = none]; orc_dataset [label="ORC Graph\nDataset"]; nodes_csv [label="graph.nodes.csv.zst"]; labels_csv [label="graph.labels.csv.zst"]; graph_mph [label="graph.mph"]; subgraph { node [fontcolor=darkgray]; graph_base [label="graph-base.graph"] graph_bfs_order [label="graph-bfs.order"] graph_bfs [label="graph-bfs.graph"] graph_bfs_transposed [label="graph-bfs-transposed.graph"] graph_bfs_simplified [label="graph-bfs-simplified.graph"] graph_llp_order [label="graph-llp.order"] } graph_llp [label="graph.graph"] graph_llp_transposed [label="graph-transposed.graph"] graph_order [label="graph.order"] graph_obl [label="graph.obl"] graph_transposed_obl [label="graph-transposed.obl"] stats [label="graph.stats"] swhidmap [label="graph.node2swhid.bin"] typemap [label="graph.node2type.bin"] persons_csv [label="graph.persons.csv.zst"]; persons_mph [label="graph.persons.mph"]; node_properties [label="graph.property.*"]; labels_mph [label="graph.labels.mph"]; labels_fcl [label="graph.labels.fcl"]; graph_labelled [label="graph-labelled.*"]; graph_transposed_labelled [label="graph-transposed-labelled.*"]; graph_labelled_obl [label="graph-labelled.labelobl"]; graph_transposed_labelled [label="graph-transposed-labelled.labelobl"]; subgraph { node [shape=box, fontname="Courier New"]; EXTRACT_NODES; MPH; BV; BFS; PERMUTE_BFS; TRANSPOSE_BFS; SIMPLIFY; LLP; PERMUTE_LLP; COMPOSE_ORDERS; STATS; TRANSPOSE; OBL; TRANSPOSE_OBL; NODE_MAP; EXTRACT_PERSONS; MPH_PERSONS; NODE_PROPERTIES; MPH_LABELS; FCL_LABELS; EDGE_LABELS; EDGE_LABELS_OBL; EDGE_LABELS_TRANSPOSE_OBL; } orc_dataset -> EXTRACT_NODES; EXTRACT_NODES -> nodes_csv; EXTRACT_NODES -> labels_csv; nodes_csv -> MPH -> graph_mph; graph_mph -> BV; orc_dataset -> BV -> graph_base; graph_base -> BFS -> graph_bfs_order; graph_bfs_order -> PERMUTE_BFS; graph_base -> PERMUTE_BFS -> graph_bfs; graph_bfs -> TRANSPOSE_BFS -> graph_bfs_transposed; graph_bfs_transposed -> SIMPLIFY; graph_bfs -> SIMPLIFY -> graph_bfs_simplified; graph_bfs_simplified -> LLP -> graph_llp_order; graph_llp_order -> PERMUTE_LLP; graph_bfs -> PERMUTE_LLP -> graph_llp; graph_bfs_order -> COMPOSE_ORDERS; graph_llp_order -> COMPOSE_ORDERS -> graph_order; graph_llp -> TRANSPOSE -> graph_llp_transposed; graph_llp -> OBL -> graph_obl; graph_llp_transposed -> TRANSPOSE_OBL -> graph_transposed_obl; graph_llp -> STATS -> stats; graph_llp -> NODE_MAP; nodes_csv -> NODE_MAP; graph_mph -> NODE_MAP; graph_order -> NODE_MAP; NODE_MAP -> swhidmap; NODE_MAP -> typemap; orc_dataset -> EXTRACT_PERSONS -> persons_csv; persons_csv -> MPH_PERSONS -> persons_mph; orc_dataset -> NODE_PROPERTIES; persons_mph -> NODE_PROPERTIES; graph_mph -> NODE_PROPERTIES; graph_order -> NODE_PROPERTIES; NODE_PROPERTIES -> node_properties; labels_csv -> MPH_LABELS -> labels_mph; labels_mph -> FCL_LABELS; labels_csv -> FCL_LABELS -> labels_fcl; orc_dataset -> EDGE_LABELS; labels_mph -> EDGE_LABELS; graph_llp -> EDGE_LABELS; graph_mph -> EDGE_LABELS; graph_order -> EDGE_LABELS; EDGE_LABELS -> graph_labelled; EDGE_LABELS -> graph_transposed_labelled; graph_labelled -> EDGE_LABELS_OBL -> graph_labelled_obl; graph_transposed_labelled -> EDGE_LABELS_TRANSPOSE_OBL -> graph_transposed_labelled_obl; }