lucene-general mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Michael McCandless <>
Subject Re: [spatial] Cartesian "Tiers" nomenclature
Date Wed, 30 Dec 2009 12:01:01 GMT
Right, NRQ is able to translate any requested range into the union
(OR) of brackets (from the trie) created during indexing.

Can spatial do the same thing, just with 2D instead of 1D?  Ie,
reconstruct any expressible shape (created at query time) as the union
of some number of grids/tiers, at finer & finer levels, created during

Spatial, today, seems to do this, except it must also do "precise"
filtering on each matching doc, because some of the grids may contain
hits outside of the requested shape.

In fact, NRQ could also borrow from spatial's current approach -- ie,
create the union of some smallish number of coarse brackets.  Some of
the brackets will fall entirely within the requested range, and so
require no further filtering, while others will fall part inside /
part outside of the requested range, and so will require precise
filtering.  If NRQ did this, it should have much fewer postings to
enum, at the cost of having to do precise filtering on some of them
(and we'd have to somehow encode the orig value in the index).


On Tue, Dec 29, 2009 at 8:42 PM, Yonik Seeley
<> wrote:
> On Tue, Dec 29, 2009 at 7:13 PM, Marvin Humphrey <> wrote:
>> ... but for this algorithm, different rasterization resolutions need not
>> proceed by powers-of-two.
> Indeed - one way to further generalize would be to use something like
> Lucene's trie-based Numeric field, but with a square instead of a
> line.  That would allow to tweak the space/speed tradeoff.
> -Yonik

View raw message