Estoy sirviendo mosaicos vectoriales usando TileStache , tengo todo configurado como quiero. Mis datos se almacenan en Postgres y estoy usando el proveedor VecTiles para servir mosaicos GeoJSON .
Quiero almacenar en caché todos mis mosaicos para que los mosaicos se sirvan más rápido. Estoy usando tilestache-seed.py para sembrar mi caché. Estoy ejecutando tiletache-seed en varias máquinas. Tilestache-seed funcionó muy bien hasta el nivel de zoom 13, pero después de eso, se tarda demasiado en almacenar en caché los mosaicos. Solo para Zoom Level 16, tengo 5023772 mosaicos para almacenar en caché, y solo obtengo 100k-200k mosaicos por día en cada máquina.
¿Cómo puedo hacer que mis teselas se almacenen más rápido ? ¿Hay alguna manera de ajustar tilestache-seed.py y hacer que se siembre más rápido?
Actualización: He intentado construir índices espaciales en mis tablas (en la columna de geometría y las columnas utilizadas para filtrar datos a través de la cláusula where) y todavía no he visto un aumento significativo en la velocidad de mosaico. A este ritmo, solo Zoom 17 me llevará un mes y esta vez solo aumentará exponencialmente a medida que avance hacia Zoom 21
Actualización 2: también intenté hacer vistas materializadas y no hay un cambio apreciable en el rendimiento, por lo que la optimización de la base de datos no funciona. Creo que tendré que optimizar el propio tiletache-seed.py o idear una nueva forma de almacenar en caché los mosaicos.
Información de hardware Estoy ejecutando los procesos de almacenamiento en caché en 8 PC diferentes, uno de los cuales es un i7 con 32 gb de ram y otro es un i3 con 4 gb de ram, pero ambos me dan casi la misma velocidad de almacenamiento en caché (aproximadamente 100k mosaicos por día)