Skip to content

Toolchain file overview

Jay Zhang edited this page Nov 6, 2020 · 21 revisions

Files Format

All the files generated by OSRM are standard tar format, so it's possible to extermine/extract the contents of the files using tar tvf <filename>.osrm.* or tar xvf <filename>.osrm.*.
E.g.

tar -tvf nevada-latest.osrm.nbg_nodes 
-rw-rw-r--  0 0      0           8 Jan  1  1970 osrm_fingerprint.meta
-rw-rw-r--  0 0      0           8 Jan  1  1970 /common/nbn_data/coordinates.meta
-rw-rw-r--  0 0      0     9137888 Jan  1  1970 /common/nbn_data/coordinates
-rw-rw-r--  0 0      0           8 Jan  1  1970 /common/nbn_data/osm_node_ids/number_of_elements.meta
-rw-rw-r--  0 0      0           8 Jan  1  1970 /common/nbn_data/osm_node_ids/packed.meta
-rw-rw-r--  0 0      0     8995392 Jan  1  1970 /common/nbn_data/osm_node_ids/packed

Files produced by osrm-extract

File type Consumer Description
.ebg_nodes osrm-contract,osrm-customize,osrm-partition, osrm-routed Uncontracted edge-based graph used as input for contractor (EdgeBasedNodeDataContainer indexed by EBG NodeID)
.edge_penalties osrm-contract,osrm-customize Gone in OSRM >5.6 Lookup file contains static edge penalties. Only created when --generate-edge-lookup is passed.
.turn_weight_penalties osrm-contract,osrm-customize, osrm-routed Contains turn weight.
.turn_duration_penalties osrm-contract,osrm-customize, osrm-routed Contains turn duration.
.edge_segment_lookup osrm-contract,osrm-customize Gone in OSRM >5.7. Lookup file that translates between OSM ids and internal segment ids. Only created when --generate-edge-lookup is passed.
.enw osrm-contract,osrm-customize Contains the edge weights of the compressed EdgeBasedNodes
.geometry osrm-contract,osrm-customize, osrm-routed Geometry that was removed from the original graph. Used for returned API response.
.nbg_nodes osrm-contract,osrm-customize, osrm-routed Original graph nodes (coordinates and OSM node IDs indexed by NBG NodeID)
.edges osrm-routed,osrm-customize Original graph edges (compressed geometry)
.fileIndex osrm-routed Leaves of the R-Tree that are loaded on-demand to memory
.icd osrm-routed Data used to generate representations of all intersections for routing steps.
.names osrm-routed Street names and index
.properties osrm-routed Lua profile properties that affect run time queries
.ramIndex osrm-routed Index of the R-Tree to to segment lookups
.timestamp osrm-routed Contains the timestamps of the OSM extract if the header is set.
.tld osrm-routed Contains a map of turn lane tuples and ids
.tls osrm-routed Holds turn lane descriptions which are stored as a vector of masks
.osrm Temporary Original filtered graph data (nodes and edges)
.restrictions osrm-contract,osrm-customize Conditional restrictions are saved to disk, later to be parsed by osrm-contract or osrm-customize for validity and application to a given processing time.
.cnbg_to_ebg osrm-partition Maps node based graph to edge based graph
.cnbg Contains compressed node based graph edges
.ebg Contains Edge-expanded Graph Edges.
.turn_penalties_index osrm-customize Contains turns, each turn represents by FromNodeID,ViaNodeID,ToNodeID.
.maneuver_overrides

Files produced by osrm-contract

File type Consumer Description
.core osrm-routed Indicates which nodes of the graph have been contracted
.datasource_indexes osrm-routed Gone in OSRM >5.7. Contains index corresponding to datasource_names file indicating from where a segment's data was derived
.datasource_names osrm-routed List of datasources input to generate the final graph
.hsgr osrm-routed Contracted edge-expanded graph (nodes and edges)
.level osrm-contract Cache of the contraction level, speeds up subsequent osrm-contract runs

Files produced by osrm-partition

File type Consumer Description
.cells .osrm-customize, osrm-routed Cell data structure for MLD
.partition .osrm-customize, osrm-routed Partition information for MLD

Files produced by osrm-customize

File type Consumer Description
.mldgr osrm-routed Search graph for MLD
.cell_metrics osrm-routed Metrics for MLD

More details

osrm-toolchain-files provides more details and insights of these files.