Skip to content
master
Switch branches/tags
Code

Latest commit

 

Git stats

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Driving Distance Algorithm implementation.

Remind: This is a PoC so it's not for production at all.

This PoC is a reasearch to generate create a service to generate "Areas of coverage" or "Driving Distance". The first implementation is using AKKA to implement an in-memory database to represent the Graph and the algorithm to generate the map of nodes.

All information used to generate the network is using info from OpenStreetMap and the library osm4scala to parse the file in Scala.

Information

How to know the way direccion

Basically, all ways with the tag highway are bidirectional, except when the tag oneway is present. Depending of the value:

  • If the value is "yes" the direction the natural drawn direction.
  • If the values is "-1", the direction the opposite to the natural drawn direction.
  • If the value is "no" or the tag is not present, it is a bidirectional way.

Info:

Metrics.

Time transferring all blocks of the full planet

~/apps/hadoop-2.7.4$ time bin/hdfs dfs -put /tmp/blocks osm/planet

real	41m50.689s
user	3m17.480s
sys	2m9.436s

Next steps approachs:

  • Store one street per Actor, instead a node, so we save a lot of calls between nodes and it is necessary only check if we passed before by the street and not be the node.
  • Store a set of streets (per osm block) per Actor.

About

Proof of concept to implement a service to calculate the driving distance using osm network

Topics

Resources

License

Releases

No releases published

Packages

No packages published

Languages