An important limitation of relational calculus/algebra is that it cannot express queries involving “paths” through an instance, such as taking the transitive closure over a binary relation. Datalog extends conjunctive queries with recursion to support such queries. A Datalog program consists of a set of rules, each of which is a conjunctive query. Recursion is introduced by allowing the same relational symbols in both the heads and the bodies of the rules. A surprising and elegant property of Datalog is that there are three very different but equivalent approaches to define its semantics, namely, the model-theoretic, proof-theoretic, and fixpoint approaches. Datalog inherits these properties from logic programming and its standard language Prolog. The main restriction that distinguishes Datalog from Prolog is that function symbols are not allowed.
Several techniques have been proposed for the efficient evaluation of Datalog programs. They are...
- 2.Bidoit N. Bases de Données Déductives: Présentation de Datalog. Armand Colin; 1992.Google Scholar
- 3.Ullman JD. Principles of database and knowledge-base systems, vol. I. Reading: Addison-Wesley; 1989.Google Scholar
- 5.Lenzerini M. Tutorial – data integration: a theoretical perspective. In: Proceedings of the 21st ACM SIGACT-SIGMOD-SIGART Symposium on principles of Database Systems; 2002.Google Scholar
- 8.Green TJ, Karvounarakis G, Ives ZG, Tannen V. Update exchange with mappings and provenance. In: Proceedings of the 33rd International Conference on Very Large Data Bases; 2007.Google Scholar
- 9.Loo B.T., Condie T., Garofalakis M.N., Gay D.E., Hellerstein J.M., Maniatis P., Ramakrishnan R., Roscoe T., Stoica I. Declarative networking: language, execution and optimization. In: Proceedings of the ACM SIGMOD International Conference on Management of Data; 2006. p. 97–108.Google Scholar
- 10.Green TJ, Aref M, Karvounarakis G. LogicBlox platform and language: a tutorial. In: Datalog 2.0 workshop. Vienna; 2012.Google Scholar
- 11.LogicBlox. http://www.logicblox.com/technology.html