[newbie] - Customized map usage


I building an android application based on a map, but I need to edit the map.

I already saw some tools for editing maps but I’m confused how I use them on my application.

another question is, what is the max concurrent users that can request a map from OSM servers?



This depends on what you want to edit. If you want to add things that will be useful for others, then you can use the usual editing software (JOSM or Potlatch etc), and it to Openstreetmap in the usual way.
If you want to edit things specifically for your application, then you can use JOSM and save to a local .osm file, without uploading your changes. Then use that file to render maps from, or use it in your application etc.

If you just want to change what the map looks like, you can do this by rendering your own maps, and changing the rendering rules/styles, without actually editing the map data.

If you mean for map tiles, you should check the Tile usage policy. http://wiki.openstreetmap.org/wiki/Tile_usage_policy
Its not exactly a matter of concurrent users, but bulk downloading is strongly discouraged. If you are expecting heavy usage, you should setup your own tile server, or use another provider.
If you mean the API server, see http://wiki.openstreetmap.org/wiki/API_usage_policy
Note it says: “The editing API is provided in order to edit the map data, not for read-only purposes or projects”.

thats exactly what I need, a server providing usres map tiles, in the same way osm server provides(same url format) but no editing required.

I started building a server following this guide:http://weait.com/content/build-your-own-openstreetmap-server

but I’m not sure what are the hardware requirements for the server that I need.

the requirements described in the guide aren’t detailed enough.

plus, I need to know what server bandwidth requirement.



Hardware requirements will depend on just what you want to do. ie How large an area do you need a map for? And what zoom levels do you need?

If you need a map of the whole world, than I think you will need a lot of RAM to cope with processing the Planet file etc. And if you are rendering tiles for the whole world to a high zoom you will need a lot of disk space. See How large (in disk size) is a current complete tile set? and Tile Disk Usage.
Instead of pre-rendering all of the tiles, you could set your tileserver to render tiles on request, that wouldn’t require as much storage space. Though maybe more complicated to setup.

Or you could render the tiles on your own PC, then upload them to the server. That way the tile server is just a simple web server, so doesn’t have to be particularly powerful.

In terms of bandwidth, that depends on how many users you will have, and how many tiles they will each be using. The number of tiles used will presumably depend on your application, eg whether it caches tiles, and what zoom levels it uses.