FAQ
I'm trying to figure out what the best practice is in term of using sorting
or customized scoring.

For example, if I have want to index some static pages and rank them by how
many times a page is viewed. I can get the page view counters and store
them in the index document as a field COUNTER. I want to be able to sort
query result in the order of most viewed pages. I see three ways to do it:

1. Search result sorting

Search.search(query, sort);

2. Use the counter itself as the score

FieldScoreQuery("COUNTER", FieldScoreQuery.Type.INT);

3. Customize scoring

Set boost on COUNTER field during index time



I haven't got the last one working yet. Somehow, when I query, boost value
on the COUNTER field is ignored.



Any inputs?



Thanks,

John X.

Search Discussions

  • Erick Erickson at Apr 2, 2008 at 6:12 pm
    The problem here is that you'll have to keep deleting and
    adding your documents in order to update the counter field for
    all of these solutions, and I doubt that's what you really want
    to do. There is much discussion of updating a document that's
    already in the index, but I don't think it's there yet.

    I know this has been discussed in the mailing list, so you might
    want to search the searchable archive on this...

    Best
    Erick
    On Wed, Apr 2, 2008 at 12:01 PM, John Xiao wrote:

    I'm trying to figure out what the best practice is in term of using
    sorting
    or customized scoring.

    For example, if I have want to index some static pages and rank them by
    how
    many times a page is viewed. I can get the page view counters and store
    them in the index document as a field COUNTER. I want to be able to sort
    query result in the order of most viewed pages. I see three ways to do
    it:

    1. Search result sorting

    Search.search(query, sort);

    2. Use the counter itself as the score

    FieldScoreQuery("COUNTER", FieldScoreQuery.Type.INT);

    3. Customize scoring

    Set boost on COUNTER field during index time



    I haven't got the last one working yet. Somehow, when I query, boost
    value
    on the COUNTER field is ignored.



    Any inputs?



    Thanks,

    John X.
  • John Xiao at Apr 2, 2008 at 6:32 pm
    Updating index is easy, I can have a background thread to do it.

    Someone mentioned the "searchable archive" before, where do I find it?

    Thanks,

    -----Original Message-----
    From: Erick Erickson
    Sent: Wednesday, April 02, 2008 11:12 AM
    To: java-user@lucene.apache.org
    Subject: Re: Sorting VS Scoring

    The problem here is that you'll have to keep deleting and
    adding your documents in order to update the counter field for
    all of these solutions, and I doubt that's what you really want
    to do. There is much discussion of updating a document that's
    already in the index, but I don't think it's there yet.

    I know this has been discussed in the mailing list, so you might
    want to search the searchable archive on this...

    Best
    Erick
    On Wed, Apr 2, 2008 at 12:01 PM, John Xiao wrote:

    I'm trying to figure out what the best practice is in term of using
    sorting
    or customized scoring.

    For example, if I have want to index some static pages and rank them by
    how
    many times a page is viewed. I can get the page view counters and store
    them in the index document as a field COUNTER. I want to be able to sort
    query result in the order of most viewed pages. I see three ways to do
    it:

    1. Search result sorting

    Search.search(query, sort);

    2. Use the counter itself as the score

    FieldScoreQuery("COUNTER", FieldScoreQuery.Type.INT);

    3. Customize scoring

    Set boost on COUNTER field during index time



    I haven't got the last one working yet. Somehow, when I query, boost
    value
    on the COUNTER field is ignored.



    Any inputs?



    Thanks,

    John X.

    ---------------------------------------------------------------------
    To unsubscribe, e-mail: java-user-unsubscribe@lucene.apache.org
    For additional commands, e-mail: java-user-help@lucene.apache.org
  • Erick Erickson at Apr 2, 2008 at 7:04 pm
    Try

    http://www.nabble.com/Lucene---Java-Users-f45.html

    Updating may not be as easy as you think. You'll be
    changing your index *every* time a user accesses it. And your
    changes won't be seen until you close/reopen the searcher.

    But maybe you've worked it out already....

    Erick
    On Wed, Apr 2, 2008 at 2:36 PM, John Xiao wrote:

    Updating index is easy, I can have a background thread to do it.

    Someone mentioned the "searchable archive" before, where do I find it?

    Thanks,

    -----Original Message-----
    From: Erick Erickson
    Sent: Wednesday, April 02, 2008 11:12 AM
    To: java-user@lucene.apache.org
    Subject: Re: Sorting VS Scoring

    The problem here is that you'll have to keep deleting and
    adding your documents in order to update the counter field for
    all of these solutions, and I doubt that's what you really want
    to do. There is much discussion of updating a document that's
    already in the index, but I don't think it's there yet.

    I know this has been discussed in the mailing list, so you might
    want to search the searchable archive on this...

    Best
    Erick
    On Wed, Apr 2, 2008 at 12:01 PM, John Xiao wrote:

    I'm trying to figure out what the best practice is in term of using
    sorting
    or customized scoring.

    For example, if I have want to index some static pages and rank them by
    how
    many times a page is viewed. I can get the page view counters and store
    them in the index document as a field COUNTER. I want to be able to sort
    query result in the order of most viewed pages. I see three ways to do
    it:

    1. Search result sorting

    Search.search(query, sort);

    2. Use the counter itself as the score

    FieldScoreQuery("COUNTER", FieldScoreQuery.Type.INT);

    3. Customize scoring

    Set boost on COUNTER field during index time



    I haven't got the last one working yet. Somehow, when I query, boost
    value
    on the COUNTER field is ignored.



    Any inputs?



    Thanks,

    John X.

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

Related Discussions

Discussion Navigation
viewthread | post
Discussion Overview
groupjava-user @
categorieslucene
postedApr 2, '08 at 3:57p
activeApr 2, '08 at 7:04p
posts4
users2
websitelucene.apache.org

2 users in discussion

John Xiao: 2 posts Erick Erickson: 2 posts

People

Translate

site design / logo © 2022 Grokbase