You are viewing a plain text version of this content. The canonical link for it is here.
Posted to solr-user@lucene.apache.org by "Karsten F." <ka...@fiz-technik.de> on 2009/06/16 13:43:18 UTC
Re: Count of facet count
Hi,
Some questions about an integer with numFacetFound for facets in solr:
Our application "tecfinder" has a faceted browsing with paging for each
facet
(see "Fachgebiete" in
http://tecfinder.fiz-technik.de/tecfinder/faces/facelets/search/search.jsp?query=Laser
).
Currently I am integrating solr in "tecfinder". So I need the number of
terms that have a non zero count.
e.g. if I search with
facet=true&facet.field=LG&f.LG.facet.limit=4
we need something like numFacetFound=19 for field LG (see example below).
To program an addition for SimpleFacets should be easy,
because I only have to change three methods:
- getFacetTermEnumCounts (with respect to the line "if (--lim<0) break;")
- getFieldCacheCounts (count non zero values of "int[] counts")
- UnInvertedField.getCounts (again "int[] counts")
It will not be easy to change DistribFieldFacet, but I hope this can wait
("This API is experimental and subject to change").
So my questions:
Is there already an "numFacetFound" addition programed for solr?
Did I miss something? Is there more to change then this three methods?
What is an accurate place to expand the response with "numFacetFound"?
(Should I derive a subclass "SubList" or "OffsetList" of NamedList with an
attribute "totalAmount").
Any advice is welcome
Karsten
p.s. the example for
facet=true&facet.field=LG&f.LG.facet.limit=4
<result name="response" numFound="18614" start="0">
<lst name="facet_counts">
<lst name="facet_queries"/>
<lst name="facet_fields">
<lst name="LG">
<int name="_numFacetFound">19</int>
<int name="ru">592</int>
<int name="fr">191</int>
<int name="ja">82</int>
<int name="pl">32</int>
</lst>
</lst>
<lst name="facet_dates"/>
</lst>
</response>
hossman wrote:
>
>
> : > : how I can get count of distinct facet_fields ?
> : > :
> : > : like numFacetFound in this example:
> : >
> : > There's currently no way to do that.
>
> : I need to do the same thing. Any pointers on how one would go about
> : implementing that? (in Java) Thanks.
>
> The change would be in the SimpleFacets class, and there are a couple of
> differnet code paths to worry about (because two different hueristics are
> used depending on the field type) but the first step would be to define
> what the count represents: is it just the number of terms being returned?
> the number of terms that have a non zero count? or all of the terms in the
> field?
>
> the first and the last are pretty trivial, the middle one requires
> maintaining a new count as the terms are scanned (and if i'm not mistaken,
> there's an optimization in there to stop once we know we won't find any
> terms better then theones we already have, and in order to return that
> count you'd need to prevent that optimization)
>
>
> -Hoss
>
>
>
--
View this message in context: http://www.nabble.com/Count-of-facet-count-tp16678811p24052214.html
Sent from the Solr - User mailing list archive at Nabble.com.