map routing database on phone
Schmidt András
asch at freemail.hu
Fri Apr 11 18:44:43 CEST 2008
Hi!
I am developing an open source map viewer (GPS) application that will
work on the OpenMoko platform in Java (http://www.yamamap.org/). It has
an own map format, it can convert openstreetmap.org maps and it has a
converter for Garmin img format maps too.
Now I am thinking of implementing routing so that he program could
propose a route and tell the driver where to turn the car. I am only
thinking of offline solutions. I have done some brainstorming on what
must be implemented to let it be usable
(http://yamamap.wiki.sourceforge.net/concept-routing). It would be nice
to generate a storm in your minds too - it is an interesting problem!
My question is how would you implement a routing engine so that it can
work efficient on huge slices of OSM (and other) maps even for big
distances. These maps are cut from the full OSM planet (that is now
about 3G in xml.bz2 format) and one phone owner could have huge areas on
the phone offline. So it is obvious that we have to process that data
clever to be efficient!
In my opinion source and target selection by name and routing itself
would require a database or at least an indexing service. So cities
could be searched by name.
The question is what database or indexer should be used. The aspects are:
- lightweight enough for the limited power of portable devices
- Reachable from Java
- Let the indexes be built on the desktop computer and copied on the
PDA's flash memory card directly
- The PDA can also add indexes (insert custom POI's name or install a
new map without the use of the computer)
- portable: so it can be used on Windows XP or even on Windows Mobile later
What database would you use? I was thinking of:
- Java DB (http://developers.sun.com/javadb/)
- Just an indexer - apache Lucene
- A native database - mysql or postgresql
Happy hacking!
Schmidt András
More information about the openmoko-devel
mailing list