Vector Tiles é uma novidade no PostGIS, permitindo que grandes quantidades de dados dinâmicos sejam enviadas para renderização diretamente em clientes da Web e dispositivos móveis e possibilitando mapas muito bonitos e altamente interativos.
Desde a introdução da função ST_AsMVT(), as pessoas têm gerado cada vez mais seus blocos diretamente no banco de dados e, como resultado, desejam que a geração dos tiles seja cada vez mais rápida.
Cada consulta de geração de tiles deve executar as seguintes etapas:
- Reunir todas as linhas relevantes para o tile
- Simplificar os dados adequadamente para corresponder à resolução do tile
- Recorte os dados nos limites do tile
- Codificar os dados no formato MVT protobuf
Para o PostGIS 3.0, o desempenho da geração de tiles foi bastante aprimorado.
- Primeiro, o processo de recorte foi acelerado e tornado mais confiável ao integrar o algoritmo de recorte wagyu diretamente no PostGIS. Isso acelerou o recorte de polígonos, em particular, e reduziu instâncias de geometrias inválidas.
- Segundo, as etapas de simplificação e redução de precisão foram simplificadas, para evitar cópias desnecessárias e trabalhar em casos simples, como pontos e linhas curtas. Isso acelerou o manuseio de pontos e linhas simples.
- Finalmente, o agregado ST_AsMVT() foi tornado paralelamente agradável, para que todo o trabalho acima possa ser paralelizado em várias CPUs, acelerando drasticamente a geração de tiles com muita geometria de entrada.
O suporte a vector tiles no PostGIS ficou tão bom que mesmo projetos com requisitos de geração massiva de blocos, como o projeto OpenMapTiles, padronizaram seus tiles no PostGIS.
Fonte: Clever Elephant Blog