Edge information


(Unless I overlook the obvious)
I’m searching for a way to analyse a graph path.

i.e. find the type of an edge, if it is motorway or motorway_link, etc.

Is this info available with current implementation?

I know graphhopper-osm-id-mapping example, but I need a solution to play with existing graphs.


There is currently no such information stored. You could add the road type for every edge via a customized encoder but the current problem is that this information would then be stored multiple times if you need it for more encoders and that is the reason we need a generic encoder which is done via this future work which follows right after we fixed all current pressing PRs and issues (and probably also after releasing 0.6)

I found in old forum that you had proposed MapDB for parallel storage of OSM tags.

Do you have any other ideas in mind for accomplishing that?

Latest MapDB announcement for a 3 rewrite with Java 8 and large dependencies size, generates second thoughts if it’s future proof for Android, etc.

“MapDB now has dependencies. It needs Guava, primitive GS collections, compression libs, bytecode generators… Total dep size should be under 15 MB.”


If MapDB will be used in GH, then only for the import to make code easier and more flexible. The edge storage itself will probably always be a custom one.

Can you give a real example of adding the road type for every edge via a customized encoder? I cannot figure it out how you make it.

Have a look at graphhopper-osm-id-mapping full example mentioned in first post, for storing custom information on an enhanced graph.

Also there is currently work in that direction in repository, see #730.