Para que essa soma seja proporcional à quantidade de bytes consumidos pelo GeoJSON das geometrias, elegeu-se o ST_NPoints... Mas, apesar da correlação grosseiramente confirmada, desconfia-se que pode superestimar ou subestimar a métrica-alvo.
Relembrando: para avaliar se um score é pior ou melhor no balanceamento de carga para publicação no git, comparamos quantidade de arquivos gerados e se o desvio padrão em bytes foi maior ou menor. ls -l pt_*.geojson | awk '{...} .
Conclusão: a melhor função, cujo custo de CPU (performance) será maior, porém ainda proporcional a ST_NPoints, é a transformação length(ST_AsGeoJSON(geom,maxDigits)), com o mesmo valor maxDigits que o adotado na publicação, e somada a uma constante (ex. 200) que é a estimativa de bytes acescentados pelo objeto properties.
Conforme
hcode_distribution_reduce()
,geohash_GeomsMosaic()
etc. podemos balancear pelo número de items ou por outro grandeza qualquer somada dos intens.Para que essa soma seja proporcional à quantidade de bytes consumidos pelo GeoJSON das geometrias, elegeu-se o ST_NPoints... Mas, apesar da correlação grosseiramente confirmada, desconfia-se que pode superestimar ou subestimar a métrica-alvo.
Relembrando: para avaliar se um score é pior ou melhor no balanceamento de carga para publicação no git, comparamos quantidade de arquivos gerados e se o desvio padrão em bytes foi maior ou menor.
ls -l pt_*.geojson | awk '{...}
.Conclusão: a melhor função, cujo custo de CPU (performance) será maior, porém ainda proporcional a ST_NPoints, é a transformação length(ST_AsGeoJSON(geom,maxDigits)), com o mesmo valor maxDigits que o adotado na publicação, e somada a uma constante (ex. 200) que é a estimativa de bytes acescentados pelo objeto properties.
Ver também issue 64 e #66.