Closed 0e1 closed 2 years ago
Foi decidido fazer a ingestão dos building junto com os pontos em geoaddress por meio da função ST_PointOnSurface.
A consulta a seguir ilustra a quantidade de pontos resultante:
ingest88=# SELECT count(*) FROM (
SELECT way, tags - ARRAY['addr:housenumber','addr:street'] || jsonb_objslice(ARRAY['addr:housenumber','addr:street'], tags, ARRAY['house_number','via_name']) AS tags FROM jplanet_osm_point WHERE tags ?| ARRAY['addr:housenumber','addr:street']
UNION ALL
SELECT ST_PointOnSurface(way) AS way, tags - ARRAY['addr:housenumber','addr:street'] || jsonb_objslice(ARRAY['addr:housenumber','addr:street'], tags, ARRAY['house_number','via_name']) AS tags FROM jplanet_osm_polygon WHERE tags ?| ARRAY['addr:housenumber','addr:street'] AND tags ?& ARRAY['building']
) t
;
count
---------
1101237
(1 row)
A consulta a seguir informa a quantidade de building nos dados do OpenStreetMap (_pk0004.03). Essa tag possui uma variedade de valores possíveis, descritos em Buildings.
Nos dados, 363 valores estão presentes. Os principais, acima de 1000 geometrias, são listados a seguir.
É válido fazer uma filtragem desses valores antes da ingestão dos dados? Eu acho que não.
A view utilizada na ingestão é: