ROSIE: Runtime Optimization of SPARQL Queries Using Incremental   Evaluation
  Relational databases are wildly adopted in RDF (Resource Description Framework) data management. For efficient SPARQL query evaluation, the legacy query optimizer needs reconsiderations. One vital problem is how to tackle the suboptimal query plan caused by error-prone cardinality estimation. Consider the schema-free nature of RDF data and the Join-intensive characteristic of SPARQL query, determine an optimal execution order before the query actually evaluated is costly or even infeasible, especially for complex queries on large-scale data. In this paper, we propose ROSIE, a Runtime Optimization framework that iteratively re-optimize SPARQL query plan according to the actual cardinality derived from Incremental partial query Evaluation. By introducing an approach for heuristic-based plan generation, as well as a mechanism to detect cardinality estimation error at runtime, ROSIE relieves the problem of biased cardinality propagation in an efficient way, and thus is more resilient to complex query evaluation. Extensive experiments on real and benchmark data show that compared to the state-of-the-arts, ROSIE consistently outperformed on complex queries by orders of magnitude. 
Lei Gai, Wei Chen, Tengjiao Wang
cs.DB