Skip to content

Configuration

Daniel Tischner edited this page Aug 18, 2018 · 15 revisions
Table of Contents

Overview

The configuration of the backend is located at backend/res/config.ini which is automatically created on start, filled with default values:

#Configuration settings for Cobweb.
#Sun May 20 14:48:42 CEST 2018
useExternalDb=true
jdbcUrl=jdbc\:sqlite\:res/cache/db/routing.db
dbInfo=res\\cache\\db\\db.info
initDbScript=res\\cache\\db\\scripts\\initDb.sql
cleanDbScript=res\\cache\\db\\scripts\\cleanDb.sql
routingModelMode=GRAPH_WITH_TIMETABLE
accessNodesMaximum=3
abortTravelTimeToAccessNodes=900
amountOfLandmarks=20
transferDelay=180
footpathReachability=1000
useGraphCache=true
graphCache=res\\cache\\graph\\graphCache.ser
graphCacheInfo=res\\cache\\graph\\graphCache.info
gtfsDirectory=res\\input\\gtfs
osmDirectory=res\\input\\osm
osmRoadFilter=res\\filter\\osm\\road.filter
nearestSearchServerPort=2847
nameSearchServerPort=2846
nameSearchServerMatchLimit=1000
routingServerPort=2845

Structure

The file contains the following key-value pairs:

  • Database:
    • useExternalDb - Boolean indicating whether an external database should be used or not. If not the backend falls back to an internal in-memory database.
    • jdbcUrl - The JDBC URL used to connect to the external database, if used. Must be adjusted if the database driver is exchanged
    • dbInfo - Path to the file which contains information about the contents of the external database, if used (see Info Format)
    • initDbScript - Path to the SQL script which is executed when connecting to the database for the first time
    • cleanDbScript - Path to the SQL script which is executed when the database is to be cleared
  • Model:
    • routingModelMode - The mode to use for the routing model, determines models and algorithms. One of the following:
      • GRAPH_WITH_TIMETABLE - Usage of a road graph together with a timetable for transit data. Using a graph-based algorithm for the road network and a timetable-based algorithm for the transit network.
      • LINK_GRAPH - Usage of a combined graph that links a road and transit graph together. Using a graph-based algorithm for the whole network at once.
    • accessNodesMaximum - The maximal allowed amount of access nodes to use when transferring from a road node to a transit stop. When requesting a route query from a road source to destination node, the computation will consider transit routes starting and ending at those access nodes.
    • abortTravelTime - The travel time in seconds after which to abort shortest path computation.
    • amountOfLandmarks - The amount of landmarks to use for the landmark heuristic.
    • transferDelay - The amount in seconds a transfer at the same transit stop takes.
    • footpathReachability - The range in meters stops should get connected by footpaths. Only used for GRAPH_WITH_TIMETABLE mode.
    • useGraphCache - Boolean indicating whether the backend use serialization for its graph or not. This can greatly reduce initialization time.
    • graphCache- Path to the serialized graph, if used
    • graphCacheInfo - Path to the file which contains information about the contents of the graph cache, if used (see Info Format)
  • Data:
    • gtfsDirectory - Path to the directory of GTFS files to include by the backend
    • osmDirectory - Path to the directory of OSM files to include by the backend
    • osmRoadFilter - Road-filter to use for filtering relevant ways out of OSM files (see Filter Format)
  • Server:
    • nearestSearchServerPort - Port to use by the nearest search server
    • nameSearchServerPort - Port to use by the name search server
    • routingServerPort - Port to use by the routing server

Notes

The template provided in the project is configured for Windows. If launching from a different OS the file should be deleted first. The backend will then create a new file with correct path separators on the first startup.

Depending on the used database driver the jdbcUrl must be adjusted, refer to the documentation of the corresponding driver.