Uploaded image for project: 'Lucene - Core'
  1. Lucene - Core
  2. LUCENE-7618

Hypothetical perf improvements in DocValuesRangeQuery: reducing comparisons for some queries/segments

    Details

    • Type: Improvement
    • Status: Open
    • Priority: Major
    • Resolution: Unresolved
    • Affects Version/s: None
    • Fix Version/s: None
    • Component/s: None
    • Labels:
      None
    • Lucene Fields:
      New

      Description

      In reviewing the DocValuesRangeQuery code, it occured to me that there might be some potential performance optimizations possible in a few cases relating queries that involve explicitly specified open ranges (ie: min or max are null) or in the case of SortedSet: range queries that are effectively open ended on particular segments, because the min/max are below/above the minOrd/maxOrd for the segment.

      Since these seemed like semi-common situations (open ended range queries are fairly common in my experience, i'm not sure about the secondary SortedSet "ord" case, but it seemd potentially promising particularly for fields like incrementing ids, or timestamps, where values are added sequentially and likeley to be clustered together) I did a bit of experimenting and wanted to post my findings in jira – patch & details to follow in comments.

        Attachments

          Activity

            People

            • Assignee:
              Unassigned
              Reporter:
              hossman Hoss Man
            • Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

              • Created:
                Updated: