Hi Niklas, Am 25.09.2017 um 11:16 schrieb Niklas B: > I've successfully setup everything on my machine and I'm now trying to > generate complete file-based maps[1] up to zoom level 15 for Sweden. I've > written a "offline renderer" using the node-tileserver that accepts a > rectangular range of co-ordinates (i.e only Sweden) and iteratively generates > the tiles. Generating the 715 378 unique tiles (x4 for all bitmap variants > and json) takes roughly a week using 8 cores and 52GB of ram. I'm guessing > I'm doing something super inefficient. > > - Machine: Google Cloud VM, 8 CPU with 52GB ram plus 200 GB of SSD disk > - Only loaded Europe, not entire planet. > - Postgresql: > - 12GB shared buffer > - 1.5GB work_mem > - autovacuum = Off > > The node worker is using Redis and Bull (https://github.com/OptimalBits/bull > <https://github.com/OptimalBits/bull>) and is multi-core. It's a fairly > simple version[2] (see source code), but I'm lacking quite a bit > understanding of which parts of node-tileserver I need to use so it's a bit > of a hack. > > My best guess is that it's the database queries that are slow I need to do > additional tuning. Since the DB is only 6GB for Europe I'm thinking about > moving Postgresql to ramdisk.
I did not try it but partial indexes might help (in addition to the spatial index which is created by osm2pgsql): CREAETE INDEX <name> ON <table> USING gist(way) WHERE <where clause of expensive query>; You can find the SQL queries used for the generation of the vector tiles in the config.json file. That's the only advice I am able to give based on my knowledge (mainly the classic Mapnik toolchain). Best regards Michael -- Per E-Mail kommuniziere ich bevorzugt GPG-verschlüsselt. (Mailinglisten ausgenommen) I prefer GPG encryption of emails. (does not apply on mailing lists)
signature.asc
Description: OpenPGP digital signature
_______________________________________________ Openrailwaymap mailing list [email protected] http://lists.openrailwaymap.org/lists/listinfo/openrailwaymap
