Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

seek_exact + cost based intersection #2538

Open
wants to merge 3 commits into
base: main
Choose a base branch
from
Open

seek_exact + cost based intersection #2538

wants to merge 3 commits into from

Commits on Nov 7, 2024

  1. seek_exact + cost based intersection

    Adds `seek_exact` and `cost` to `DocSet` for a more efficient intersection.
    Unlike `seek`, `seek_exact` does not require the DocSet to advance to the next hit, if the target does not exist.
    
    `cost` allows to address the different DocSet types and their cost
    model and is used to determine the DocSet that drives the intersection.
    E.g. fast field range queries may do a full scan. Phrase queries load the positions to check if a we have a hit.
    They both have a higher cost than their size_hint would suggest.
    
    Improves `size_hint` estimation for intersection and union, by having a
    estimation based on random distribution with a co-location factor.
    
    Refactor range query benchmark.
    
    Closes #2531
    
    *Future Work*
    
    Implement `seek_exact` for BufferedUnionScorer and RangeDocSet (fast field range queries)
    Evaluate replacing `seek` with `seek_exact` to reduce code complexity
    PSeitz committed Nov 7, 2024
    Configuration menu
    Copy the full SHA
    7235d4d View commit details
    Browse the repository at this point in the history

Commits on Nov 12, 2024

  1. Apply suggestions from code review

    Co-authored-by: Paul Masurel <[email protected]>
    PSeitz and fulmicoton authored Nov 12, 2024
    Configuration menu
    Copy the full SHA
    32b0d86 View commit details
    Browse the repository at this point in the history

Commits on Nov 13, 2024

  1. add API contract verfication

    PSeitz committed Nov 13, 2024
    Configuration menu
    Copy the full SHA
    ec6f5b3 View commit details
    Browse the repository at this point in the history