Castor: A Constraint-Based SPARQL Engine with Active Filter Processing

  • Vianney le Clément de Saint-Marcq
  • Yves Deville
  • Christine Solnon
  • Pierre-Antoine Champin
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 7295)


Efficient evaluation of complex SPARQL queries is still an open research problem. State-of-the-art engines are based on relational database technologies. We approach the problem from the perspective of Constraint Programming (CP), a technology designed for solving NP-hard problems. Such technology allows us to exploit SPARQL filters early-on during the search instead of as a post-processing step. We propose Castor, a new SPARQL engine based on CP. Castor performs very competitively compared to state-of-the-art engines.


Search Tree Resource Description Framework Constraint Programming Graph Pattern SPARQL Query 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


  1. 1.
    Abadi, D.J., Marcus, A., Madden, S.R., Hollenbach, K.: SW-Store: a vertically partitioned DBMS for semantic web data management. The VLDB Journal 18, 385–406 (2009)CrossRefGoogle Scholar
  2. 2.
    Angles, R., Gutierrez, C.: The Expressive Power of SPARQL. In: Sheth, A.P., Staab, S., Dean, M., Paolucci, M., Maynard, D., Finin, T., Thirunarayan, K. (eds.) ISWC 2008. LNCS, vol. 5318, pp. 114–129. Springer, Heidelberg (2008)CrossRefGoogle Scholar
  3. 3.
    Baget, J.-F.: RDF Entailment as a Graph Homomorphism. In: Gil, Y., Motta, E., Benjamins, V.R., Musen, M.A. (eds.) ISWC 2005. LNCS, vol. 3729, pp. 82–96. Springer, Heidelberg (2005)CrossRefGoogle Scholar
  4. 4.
    Bessiere, C.: Handbook of Constraint Programming, ch. 3. Elsevier Science Inc. (2006)Google Scholar
  5. 5.
    Broekstra, J., Kampman, A., van Harmelen, F.: Sesame: A Generic Architecture for Storing and Querying RDF and RDF Schema. In: Horrocks, I., Hendler, J. (eds.) ISWC 2002. LNCS, vol. 2342, pp. 54–68. Springer, Heidelberg (2002)CrossRefGoogle Scholar
  6. 6.
    Erling, O., Mikhailov, I.: RDF Support in the Virtuoso DBMS. In: Pellegrini, T., Auer, S., Tochtermann, K., Schaffert, S. (eds.) Networked Knowledge - Networked Media. Studies in Computational Intelligence, vol. 221, pp. 7–24. Springer, Heidelberg (2009)CrossRefGoogle Scholar
  7. 7.
    Harris, S., Lamb, N., Shadbolt, N.: 4store: The design and implementation of a clustered RDF store. In: 5th International Workshop on Scalable Semantic Web Knowledge Base Systems (SSWS 2009), at ISWC 2009 (2009)Google Scholar
  8. 8.
    Hose, K., Schenkel, R., Theobald, M., Weikum, G.: Database foundations for scalable RDF processing. In: Polleres, A., d’Amato, C., Arenas, M., Handschuh, S., Kroner, P., Ossowski, S., Patel-Schneider, P. (eds.) Reasoning Web 2011. LNCS, vol. 6848, pp. 202–249. Springer, Heidelberg (2011)CrossRefGoogle Scholar
  9. 9.
    Klyne, G., Carroll, J.J., McBride, B.: Resource description framework (RDF): Concepts and abstract syntax (2004),
  10. 10.
    Neumann, T., Weikum, G.: RDF-3X: a RISC-style engine for RDF. Proc. VLDB Endow. 1, 647–659 (2008)Google Scholar
  11. 11.
    Piatetsky-Shapiro, G., Connell, C.: Accurate estimation of the number of tuples satisfying a condition. In: Proceedings of the 1984 ACM SIGMOD International Conference on Management of Data, SIGMOD 1984, pp. 256–276. ACM, New York (1984)CrossRefGoogle Scholar
  12. 12.
    Prud’hommeaux, E., Seaborne, A.: SPARQL query language for RDF (January 2008),
  13. 13.
    le Clément de Saint-Marcq, V., Deville, Y., Solnon, C.: An Efficient Light Solver for Querying the Semantic Web. In: Lee, J. (ed.) CP 2011. LNCS, vol. 6876, pp. 145–159. Springer, Heidelberg (2011)CrossRefGoogle Scholar
  14. 14.
    Schmidt, M., Hornung, T., Lausen, G., Pinkel, C.: SP2Bench: A SPARQL performance benchmark. In: Proc. IEEE 25th Int. Conf. Data Engineering, ICDE 2009, pp. 222–233 (2009)Google Scholar
  15. 15.
    Solnon, C.: Alldifferent-based filtering for subgraph isomorphism. Artificial Intelligence 174(12-13), 850–864 (2010)MathSciNetzbMATHCrossRefGoogle Scholar
  16. 16.
    Steinbrunn, M., Moerkotte, G., Kemper, A.: Heuristic and randomized optimization for the join ordering problem. The VLDB Journal 6, 191–208 (1997)CrossRefGoogle Scholar
  17. 17.
    Stocker, M., Seaborne, A., Bernstein, A., Kiefer, C., Reynolds, D.: SPARQL basic graph pattern optimization using selectivity estimation. In: Proceeding of the 17th International Conference on World Wide Web, WWW 2008, pp. 595–604. ACM, New York (2008)CrossRefGoogle Scholar
  18. 18.
    Van Hentenryck, P., Deville, Y., Teng, C.M.: A generic arc-consistency algorithm and its specializations. Artificial Intelligence 57(2-3), 291–321 (1992)MathSciNetzbMATHCrossRefGoogle Scholar
  19. 19.
    Weiss, C., Karras, P., Bernstein, A.: Hexastore: sextuple indexing for semantic web data management. Proc. VLDB Endow. 1, 1008–1019 (2008)Google Scholar
  20. 20.
    Zampelli, S., Deville, Y., Solnon, C.: Solving subgraph isomorphism problems with constraint programming. Constraints 15, 327–353 (2010)MathSciNetzbMATHCrossRefGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2012

Authors and Affiliations

  • Vianney le Clément de Saint-Marcq
    • 1
    • 2
    • 3
  • Yves Deville
    • 1
  • Christine Solnon
    • 2
    • 4
  • Pierre-Antoine Champin
    • 2
    • 3
  1. 1.ICTEAM instituteUniversité catholique de LouvainLouvain-la-NeuveBelgium
  2. 2.Université de Lyon, LIRIS, CNRS UMR5205VilleurbanneFrance
  3. 3.Université Lyon 1VilleurbanneFrance
  4. 4.INSA LyonVilleurbanneFrance

Personalised recommendations