diff options
author | Teodor Sigaev | 2016-03-30 15:42:36 +0000 |
---|---|---|
committer | Teodor Sigaev | 2016-03-30 15:42:36 +0000 |
commit | acdf2a8b372aec1da09370fca77ff7dccac7646d (patch) | |
tree | bbba6257f0428d6a1e7d36e9919429274a75e70a /src/include/utils/geo_decls.h | |
parent | 87545f541278ffde4fa1ccf396affbc4e9d59a23 (diff) |
Introduce SP-GiST operator class over box.
Patch implements quad-tree over boxes, naive approach of 2D quad tree will not
work for any non-point objects because splitting space on node is not
efficient. The idea of pathc is treating 2D boxes as 4D points, so,
object will not overlap (in 4D space).
The performance tests reveal that this technique especially beneficial
with too much overlapping objects, so called "spaghetti data".
Author: Alexander Lebedev with editorization by Emre Hasegeli and me
Diffstat (limited to 'src/include/utils/geo_decls.h')
-rw-r--r-- | src/include/utils/geo_decls.h | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/src/include/utils/geo_decls.h b/src/include/utils/geo_decls.h index 9d8d660d157..acf320207ce 100644 --- a/src/include/utils/geo_decls.h +++ b/src/include/utils/geo_decls.h @@ -426,6 +426,12 @@ extern Datum gist_point_consistent(PG_FUNCTION_ARGS); extern Datum gist_point_distance(PG_FUNCTION_ARGS); extern Datum gist_point_fetch(PG_FUNCTION_ARGS); +/* utils/adt/geo_spgist.c */ +Datum spg_box_quad_config(PG_FUNCTION_ARGS); +Datum spg_box_quad_choose(PG_FUNCTION_ARGS); +Datum spg_box_quad_picksplit(PG_FUNCTION_ARGS); +Datum spg_box_quad_inner_consistent(PG_FUNCTION_ARGS); +Datum spg_box_quad_leaf_consistent(PG_FUNCTION_ARGS); /* geo_selfuncs.c */ extern Datum areasel(PG_FUNCTION_ARGS); |