lucene-java-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Clemens Wyss DEV <clemens...@mysign.ch>
Subject RE: RE: howto: handle temporal visibility of a document?
Date Tue, 13 Jan 2015 07:07:50 GMT
reduced to:
( ( *:* -visiblefrom:[* TO *] AND -visibleto:[* TO *] ) 
	OR (-visiblefrom:[* TO *] AND visibleto:[<now in ms> TO <long max value>])
	OR (-visibleto:[ * TO *] AND visiblefrom:[0 TO <now in ms>])
	OR ( visiblefrom:[0 TO <now in ms>] AND visibleto:[ <now in ms> TO <long max
value>]) )

> also if you index an explicit null value you won't need them at all
Could it then be reduced to
(-visiblefrom:[* TO *] AND visibleto:[<now in ms> TO <long max value>])
	OR (-visibleto:[ * TO *] AND visiblefrom:[0 TO <now in ms>])
	OR ( visiblefrom:[0 TO <now in ms>] AND visibleto:[ <now in ms> TO <long max
value>])
? 
Would I gain a lot more speed if I set visiblefrom to 0 and visibleto  to <long max value>.
The query would then be: 
visiblefrom:[0 TO <now in ms>] AND visibleto:[ <now in ms> TO <long max value>]

And a rather Solr'y question, nevertheless I ask it here:
I intended to use this very query as query filter (qf), but I guess it doesn't make sense
because '<now in ms>' changes at every call ;) 

-----Ursprüngliche Nachricht-----
Von: Clemens Wyss DEV [mailto:clemensdev@mysign.ch] 
Gesendet: Montag, 12. Januar 2015 17:14
An: java-user@lucene.apache.org
Betreff: AW: AW: howto: handle temporal visibility of a document?

Thx, I will simplify/optimize ;)

-----Ursprüngliche Nachricht-----
Von: Michael Sokolov [mailto:msokolov@safaribooksonline.com]
Gesendet: Montag, 12. Januar 2015 14:41
An: java-user@lucene.apache.org
Betreff: Re: AW: howto: handle temporal visibility of a document?

The basic idea seems sound, but I think you can simplify that query a bit.  For one thing,
the *:* clauses can be removed in a few places: 
also if you index an explicit null value you won't need them at all; for visiblefrom, if you
don't have a from time, use 0, for visibleto, if you don't have a to time, use maxlong.

-Mike

On 1/12/15 4:23 AM, Clemens Wyss DEV wrote:
> I'll add/start with my proposal ;)
>
> Document-meta fields:
> + visiblefrom [long]
> + visibleto [long]
>
> Query or query filter:
> (*:* -visiblefrom:[* TO *] AND -visibleto:[* TO *]) OR (*:*
> -visiblefrom:[* TO *] AND visibleto:[ <now in ms> TO *]) OR (*:* 
> -visibleto:[ * TO *] AND visiblefrom:[* TO <now in ms>]) OR (
> visiblefrom:[* TO <now in ms>] AND visibleto:[ <now in ms> TO *])
>
> -----Ursprüngliche Nachricht-----
> Von: Clemens Wyss DEV [mailto:clemensdev@mysign.ch]
> Gesendet: Montag, 12. Januar 2015 09:40
> An: java-user@lucene.apache.org
> Betreff: howto: handle temporal visibility of a document?
>
> We have documents that are not always visible (visiblefrom-visibleto). In order to not
have to query the originating object of the document whether it is currently visible (after
the query), we'd like to put metadata into the documents, so that the visibility can be determined
at query-time (by the query itself or a query filter). Any suggestions on how to index and
query this metadata?
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: java-user-unsubscribe@lucene.apache.org
> For additional commands, e-mail: java-user-help@lucene.apache.org
>


---------------------------------------------------------------------
To unsubscribe, e-mail: java-user-unsubscribe@lucene.apache.org
For additional commands, e-mail: java-user-help@lucene.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: java-user-unsubscribe@lucene.apache.org
For additional commands, e-mail: java-user-help@lucene.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: java-user-unsubscribe@lucene.apache.org
For additional commands, e-mail: java-user-help@lucene.apache.org

Mime
View raw message