-
-
Notifications
You must be signed in to change notification settings - Fork 77
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
Reorder subpatterns in BGP #58
Comments
I checked, it's not the triple patterns that are ordered there but the sets of connected patterns (that is, sets of all triple patterns that share at least 1 variable with at least 1 other pattern in the set). To solve the query one would then have to do a cross join between the results of all those sets. Now why the set with the least free variables gets chosen I'm not a 100% sure. Acoording to the relevant commit this increases the chances of finding patterns with no matching values. Which is good, because then we wouldn't have to do the expensive cross joins. Now I'm actually not a 100% why (and if) this is true. :D I guess having less variables makes the pattern more specific which increases the chances of there being no matches? |
It would be nice if we could make a separate actor for this (in an optimization bus?), and then we can simply test if it makes things faster in certain cases :-) |
In progress in #102, so this can be closed. |
Co-authored-by: Renovate Bot <bot@renovateapp.com>
Co-authored-by: Renovate Bot <bot@renovateapp.com>
The
ReorderingGraphPatternIterator
in the current LDF client seems to reorder triple patterns based on the number of free variables. Investigate what this does exactly, and where we can plug it in. (Either in a/the BGP actor, or in the new SPARQL optimize bus, #46)The text was updated successfully, but these errors were encountered: