public class ASTSearchInSearchOptimizer extends AbstractJoinGroupOptimizer
BDS.SEARCH_IN_SEARCH
function call (inside a filter) into
an IN filter using the full text index to determine the IN set.
Convert:
filter(To:(?o,"foo")) .
filter(?o IN ("foo", "foo bar", "hello foo", ...)) .This is a way of using the full text index to filter instead of using regex.
Constructor and Description |
---|
ASTSearchInSearchOptimizer() |
Modifier and Type | Method and Description |
---|---|
protected FunctionNode |
convert(AST2BOpContext ctx,
FunctionNode searchInSearch)
Perform the conversion from one function (BDS.SEARCH_IN_SEARCH) to
another (IN).
|
protected IV[] |
getHits(AST2BOpContext ctx,
org.openrdf.model.Literal search,
String match,
String regex)
Collect the hits for the IN filter.
|
protected void |
optimize(AST2BOpContext ctx,
StaticAnalysis sa,
JoinGroupNode group,
FilterNode filterNode)
Optimize a single FilterNode.
|
protected void |
optimizeJoinGroup(AST2BOpContext ctx,
StaticAnalysis sa,
IBindingSet[] bSets,
JoinGroupNode group)
Optimize the join group.
|
optimize
protected void optimizeJoinGroup(AST2BOpContext ctx, StaticAnalysis sa, IBindingSet[] bSets, JoinGroupNode group)
optimizeJoinGroup
in class AbstractJoinGroupOptimizer
protected void optimize(AST2BOpContext ctx, StaticAnalysis sa, JoinGroupNode group, FilterNode filterNode)
protected FunctionNode convert(AST2BOpContext ctx, FunctionNode searchInSearch)
protected IV[] getHits(AST2BOpContext ctx, org.openrdf.model.Literal search, String match, String regex)
Copyright © 2006–2019 SYSTAP, LLC DBA Blazegraph. All rights reserved.