Uploaded image for project: 'Solr'
  1. Solr
  2. SOLR-1165

use skipping on filters to improve search performance

    Details

    • Type: Improvement
    • Status: Closed
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: 1.4
    • Component/s: None
    • Labels:
      None

      Description

      Solr should use filters to skip scorers to improve search performance.

      1. SOLR-1165.patch
        12 kB
        Yonik Seeley

        Issue Links

          Activity

          Hide
          gsingers Grant Ingersoll added a comment -

          Bulk close for Solr 1.4

          Show
          gsingers Grant Ingersoll added a comment - Bulk close for Solr 1.4
          Hide
          yseeley@gmail.com Yonik Seeley added a comment -

          committed.

          Show
          yseeley@gmail.com Yonik Seeley added a comment - committed.
          Hide
          yseeley@gmail.com Yonik Seeley added a comment -

          OK, here's the patch to use Lucene Filters with the search methods so that filtering is done before score() is called and filter/scorer leapfrogging is done, lowering the cost for expensive scorers.

          I'll commit soon.

          Show
          yseeley@gmail.com Yonik Seeley added a comment - OK, here's the patch to use Lucene Filters with the search methods so that filtering is done before score() is called and filter/scorer leapfrogging is done, lowering the cost for expensive scorers. I'll commit soon.
          Hide
          yseeley@gmail.com Yonik Seeley added a comment -

          OK, now that the two sub-issues related to DocSets and Filters are ironed out, we can move on to restructuring the search code in SolrIndexSearcher to use lucene Filters and the new Lucene Collector classes.

          Show
          yseeley@gmail.com Yonik Seeley added a comment - OK, now that the two sub-issues related to DocSets and Filters are ironed out, we can move on to restructuring the search code in SolrIndexSearcher to use lucene Filters and the new Lucene Collector classes.
          Hide
          yseeley@gmail.com Yonik Seeley added a comment - - edited

          Leapfrogging a filter and a scorer has been done in Lucene since 2.4.
          We'll get it for free if we start using a Lucene Filter (which means we need the docids in sorted order)

          The other benefit of using Filter is that score() won't be called for items that don't match the filter... important for expensive functions (like geo distance functions, etc).

          Show
          yseeley@gmail.com Yonik Seeley added a comment - - edited Leapfrogging a filter and a scorer has been done in Lucene since 2.4. We'll get it for free if we start using a Lucene Filter (which means we need the docids in sorted order) The other benefit of using Filter is that score() won't be called for items that don't match the filter... important for expensive functions (like geo distance functions, etc).

            People

            • Assignee:
              yseeley@gmail.com Yonik Seeley
              Reporter:
              yseeley@gmail.com Yonik Seeley
            • Votes:
              2 Vote for this issue
              Watchers:
              1 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved:

                Development