Hi Adrien

Thank you very much for your feedback as well!

I just replaced the StringField by KeywordField :-)

Thanks

Michael

Am 20.10.23 um 14:13 schrieb Adrien Grand:
FYI there is also KeywordField, which combines StringField and SortedSetDocValuesField. It supports filtering, sorting, faceting and retrieval. It's my go-to field for string values.

Le ven. 20 oct. 2023, 12:20, Michael McCandless <luc...@mikemccandless.com> a écrit :

    There are some differences.

    StringField is indexed into the inverted index (postings) so you
    can do
    efficient filtering.  You can also store in stored fields to retrieve.

    FacetField does everything StringField does (filtering, storing
    (maybe?)),
    but in addition it stores data for faceting.  I.e. you can compute
    facet
    counts or simple aggregations at search time.

    FacetField is also hierarchical: you can filter and facet by different
    points/levels of your hierarchy.

    Mike McCandless

    http://blog.mikemccandless.com


    On Fri, Oct 20, 2023 at 5:43 AM Michael Wechner
    <michael.wech...@wyona.com>
    wrote:

    > Hi
    >
    > I have found the following simple Facet Example
    >
    >
    >
    
https://github.com/apache/lucene/blob/main/lucene/demo/src/java/org/apache/lucene/demo/facet/SimpleFacetsExample.java
    >
    > whereas for a simple categorization of documents I currently use
    > StringField, e.g.
    >
    > doc1.add(new StringField("category", "book"));
    > doc1.add(new StringField("category", "quantum_physics"));
    > doc1.add(new StringField("category", "Neumann"))
    > doc1.add(new StringField("category", "Wheeler"))
    >
    > doc2.add(new StringField("category", "magazine"));
    > doc2.add(new StringField("category", "astro_physics"));
    >
    > which works well, but would it be better to use Facets for this,
    e.g.
    >
    > doc1.add(new FacetField("media-type", "book"));
    > doc1.add(new FacetField("topic", "physics", "quantum");
    > doc1.add(new FacetField("author", "Neumann");
    > doc1.add(new FacetField("author", "Wheeler");
    >
    > doc1.add(new FacetField("media-type", "magazine"));
    > doc1.add(new FacetField("topic", "physics", "astro");
    >
    > ?
    >
    > IIUC the StringField approach is more general, whereas the
    FacetField
    > approach allows to do a more specific categorization / search.
    > Or do I misunderstand this?
    >
    > Thanks
    >
    > Michael
    >
    >
    >
    >
    ---------------------------------------------------------------------
    > To unsubscribe, e-mail: java-user-unsubscr...@lucene.apache.org
    > For additional commands, e-mail: java-user-h...@lucene.apache.org
    >
    >

Reply via email to