NAME
Attean::IDPQueryPlanner - Iterative dynamic programming query planner
VERSION
This document describes Attean::IDPQueryPlanner version 0.009
SYNOPSIS
use v5.14;
use Attean;
my $planner = Attean::IDPQueryPlanner->new();
my $default_graphs = [ Attean::IRI->new('http://example.org/') ];
my $plan = $planner->plan_for_algebra( $algebra, $model, $default_graphs );
my $iter = $plan->evaluate($model);
my $iter = $e->evaluate( $model );
DESCRIPTION
The Attean::IDPQueryPlanner class implements a query planner using the iterative dynamic programming approach.
ATTRIBUTES
METHODS
plans_for_algebra( $algebra, $model, \@active_graphs, \@default_graphs )-
Returns Attean::API::Plan objects representing alternate query plans for evaluating the query
$algebraagainst the$model, using the supplied$active_graph. bgp_join_plans( $bgp, $model, \@active_graphs, \@default_graphs, \@interesting_order, \@plansA, \@plansB, ... )-
Returns a list of alternative plans for the join of a set of triples. The arguments
@plansA,@plansB, etc. represent alternative plans for each triple participating in the join. group_join_plans( $model, \@active_graphs, \@default_graphs, \@interesting_order, \@plansA, \@plansB, ... )-
Returns a list of alternative plans for the join of a set of sub-plans. The arguments
@plansA,@plansB, etc. represent alternative plans for each sub-plan participating in the join.
BUGS
Please report any bugs or feature requests to through the GitHub web interface at https://github.com/kasei/attean/issues.
REFERENCES
The seminal reference for Iterative Dynamic Programming is "Iterative dynamic programming: a new class of query optimization algorithms" by D. Kossmann and K. Stocker, ACM Transactions on Database Systems (2000).
The heuristics to order triple patterns in this module is influenced by The ICS-FORTH Heuristics-based SPARQL Planner (HSP).
SEE ALSO
AUTHOR
Gregory Todd Williams <gwilliams@cpan.org>
COPYRIGHT
Copyright (c) 2014 Gregory Todd Williams. This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.