[
https://issues.apache.org/jira/browse/LUCENE-8368?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16521798#comment-16521798
]
Robert Muir commented on LUCENE-8368:
-------------------------------------
Attached is a hacky way of doing the grid-by-ID. it records ID of polygon for
the box, or -1 if its ambigous (and will go to the tree). It bumps the
benchmark up to 5M hits/sec at least... feel like it should be better.
I pushed my benchmark mods to
https://github.com/rmuir/luceneutil/tree/LUCENE-8368 and you can index/run with
{{-facet -points}} arguments to IndexAndSearchOpenStreetMaps
> facet by polygon
> ----------------
>
> Key: LUCENE-8368
> URL: https://issues.apache.org/jira/browse/LUCENE-8368
> Project: Lucene - Core
> Issue Type: New Feature
> Components: modules/facet
> Reporter: Robert Muir
> Priority: Major
> Attachments: LUCENE-8368.patch, LUCENE-8368_hacky_grid.patch
>
>
> This can give some nice flexibility if you are working with search results on
> a map. Of course if everything about your use-case is static, its better to
> compute this up-front and index string values, but its not always the case.
> Also it can be helpful if your polygons are changing often, since you don't
> have to reindex.
> Polygon2D already supports multipolygons, but today it only returns a boolean
> value. This patch adds a {{find}} method that returns the polygon that
> actually matched, or -1 if it doesn't match. {{contains}} is then just
> written as {{find >= 0}}.
> Then we can solve the problem with just some sugar over the existing range
> faceting, as each multipolygon is just a range of ids coming back from
> {{find}} that correspond with it. e.g. if you were faceting by country, you
> might have ~200 countries with 100,000 total polygons, and polygons
> 22,000-32,000 correspond to Canada or whatever.
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]