open source routing machine - foss4g 2016 bonn
TRANSCRIPT
PipelineProcessing
• OSM planet
• AWS EC2: r3.8xlarge with 32 CPUs & 244 GB RAM
• car 9 hours
• bike 13 hours
• walk 18 hours
6
GuidanceAdditional instruction types
depart new namecontinue end of roadturn forkroundabout mergearrive on ramp off ramp use lane rotary roundabout turn
13
Dynamic SpeedsCurrent Design
• Speeds assigned by profiles
• OSM tag maxspeed
• Type of road, e.g. primary
• car 65 km/h
• bike 15 km/h
• walk 5 km/h
21
Dynamic SpeedsExternal speed data
• During processing
• Load external csv file with format
from_node,to_node,speed
22
Dynamic SpeedsExternal speed data
1. Freeflow
• Uncongested speed
2. Historical buckets
• In a typical week, speed for this 15 minute window
3. Realtime
• Speed "right now"23
Dynamic SpeedsExternal speed data
Mapbox SF office to SFO x: time UTC y: ETA seconds blue: static speed from profile orange: external speed data is dynamic with rush hour
25
Dynamic SpeedsFaster processing: Caching
• Cache major parts of processing
• On speed update: only execute the speed relevant processing
29
Dynamic SpeedsFaster processing: Do less work
• Eventually: smaller geographical areas process faster.
31
Dynamic SpeedsFaster processing
• Turnaround time for processing: 3 hours -> 10 minutes 1
• Route request time: 20ms -> 200ms
1 Shuttling of data between processing and api instance not included
32