mirror of
https://github.com/osm-search/Nominatim.git
synced 2026-02-26 11:08:13 +00:00
increase splitting for large geometries
When computing the address parts for a geometry, we need to do a ST_Relates lookup in the location_area_large_* tables. This is potentially very expensive for geometries with many vertices. There is already a funtion for splitting large areas to reduce the impact. This commit reduces the minimum area of a split, effectively increasing the number of splits. The effect on database size is minimal (around 3% increase), while the indexing speed for streets increases by a good 60%.
This commit is contained in:
@@ -429,7 +429,7 @@ DECLARE
|
|||||||
geo RECORD;
|
geo RECORD;
|
||||||
BEGIN
|
BEGIN
|
||||||
-- 10000000000 is ~~ 1x1 degree
|
-- 10000000000 is ~~ 1x1 degree
|
||||||
FOR geo IN select quad_split_geometry(geometry, 0.25, 20) as geom LOOP
|
FOR geo IN select quad_split_geometry(geometry, 0.01, 20) as geom LOOP
|
||||||
RETURN NEXT geo.geom;
|
RETURN NEXT geo.geom;
|
||||||
END LOOP;
|
END LOOP;
|
||||||
RETURN;
|
RETURN;
|
||||||
|
|||||||
Reference in New Issue
Block a user