hotosm / tech

Resources and issue tracking for Technical Working Group and all things Tech within HOT. Start here to get more information about how to get involved in HOT.
68 stars 13 forks source link

OpenMapTiles for HDM Style in HOT apps #87

Open cgiovando opened 7 years ago

cgiovando commented 7 years ago

https://openmaptiles.org offers free CDN vector tiles for non-commercial (non-profit?) users.

They explain the schema and the process how they are created: https://openmaptiles.org/schema

All open source and extensible, so could be a starting point for easily implementing a custom style of the Humanitarian Data Model that's been discussed for a while.

The result can be used across HOT applications (TM, OAM, Export Tool, OSMA, etc) as basemap layer.

cc @bgirardot @PaulUithol

skorasaurus commented 7 years ago

I've had this in the back of my mind for some time now and was unsure the direction that HOT wanted to take regarding vector tiles. The OMT vector schema omits a few tags that are used in the HDM-CartoCSS (intermittent for waterways and surface of highways on first glance) . I likely cannot commit to porting that over but would be advise where I have the time.

Another alternative (although I've only used them in limited manners and don't know if their tag coverage is better than OMT) is Mapzen's vector tile schema where HOT could use Mapzen's vector tiles or HOT could build and host their own tiles based on Mapzen's vector tile schema.

bgirardot commented 7 years ago

Are there downsides to vector tiles? Does it increase the client requirements or cause the browsers to use more ram etc?

Otherwise, I have to think vector tiles are much less bandwidth, a serious consideration in many environments, but also lower end hardware is a reality in many of those same environments.

klokan commented 7 years ago

@skorasaurus - we would be keen to assist in helping to improve the http://openmaptiles.org/schema to add the missing osm tags which HOT needs. Could you please be more specific which tags are required and ideally create for them individual issues on https://github.com/openmaptiles/openmaptiles/issues ?

jj0hns0n commented 7 years ago

Hi @cgiovando et al. Thought I would also bring tegola to your attention. http://tegola.io/ and https://github.com/terranodo/tegola ... We are using imposm3 to do imports and mapboxgl json type styles. Our development endpoint is up here http://terranodo.io/tegola-osm/mapbox/ and you'll note it largely follows the Humanitarian style. We have more schema/carto and clipping issues to work through, but almost there. HOT could certainly run their own tegola server to serve MVT which I would argue is better than relying on an external service.

bgirardot commented 7 years ago

Getting active again on the HDM would be great. We have been trying to review and revise the HDM itself for a long time now. It needs additions and deletions.

jj0hns0n commented 7 years ago

Would be nice to have an imposm3 mapping file that had the HDM specified. Does that already exist?

cgiovando commented 7 years ago

@jj0hns0n can you give us some details of minimum specs for implementing this and enough to support workload for requests coming from e.g. Tasking Manager?

Did you mention we could run Tegola on Lambda? Would that - coupled with some systematic caching of lower Z levels - be more cost-effective than running on a dedicated server?

cc: @dalekunce @mojodna @bgirardot @david-hotosm

jj0hns0n commented 7 years ago

@cgiovando go is not yet supported on lambda, rumor is its being beta tested. I asked @jedsundwall if we might get access. Would certainly be more cost effective than a dedicated server.

cc: @arolek

mojodna commented 7 years ago

apex (apex.run) unofficially supports go using a node shim.