Database query evaluation with the STARBASE method

  • Estrella Pulido
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 1154)


This paper presents STARBASE, a new method for database query evaluation which advances the state of the art in deductive database technology by providing an automatic method for reordering the literals in the body of a rule so that the next literal to be processed is guaranteed to be one of the most instantiated ones. A prototype implementation of a STARBASE system is described and its performance compared to XSB and Prolog for a range of examples. The prototype implementation is restricted to Datalog programs, but can be extended to stratified programs. The main features of STARBASE which guarantee high performance are (1) it focuses on data relevant to the query, (2) it avoids redundant computation and looping by storing partial results, and (3) it replaces subsumption checking with syntactic equality checking.


Function Symbol Equality Check Predicate Symbol Query Evaluation Database Graph 
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.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    A.V. Aho and J.D. Ullman. Universality of data retrieval languages. Proc. Symp. Principles of Programming Languages, 110–120, 1979.Google Scholar
  2. 2.
    C. Beeri and R. Ramakrishnan. On the power of magic. JLP, 10(10):255–299, 1991.Google Scholar
  3. 3.
    W. Chen and D.S. Warren. Query evaluation under the well founded semantics. PODS'93, 168–179.Google Scholar
  4. 4.
    S.W. Dietrich and D.S. Warren. Dynamic programming strategies for the evaluation of recursive queries. Technical Report 85/31, SUNY at Stony Brook, 1985.Google Scholar
  5. 5.
    G. Gazdar and C. Mellish. Natural Language in Prolog. An Introduction to Computational Linguistics. Addison-Wesley Publishing Company, 1989.Google Scholar
  6. 6.
    G. Grahne, S. Sippu, and E. Soisalon-Soininen. Efficient evaluation for a subset of recursive queries. JLP, 10:301–332, 1991.Google Scholar
  7. 7.
    L.J. Henschen and S.A. Naqvi. On compiling queries in recursive first-order databases. Journal of the ACM, 31(1):47–85, 1984.Google Scholar
  8. 8.
    M. Kifer and E. Lozinskii. Filtering data flow in deductive databases. ICDT'86. LNCS 243, 186–202.Google Scholar
  9. 9.
    J.V. Leeuwen. Handbook of Theoretical Computer Science. Algorithms and Complexity. Elsevier — The MIT Press, 1990.Google Scholar
  10. 10.
    E.L. Lozinskii. Evaluating queries in deductive databases by generating. IJCAI'85, 173–177.Google Scholar
  11. 11.
    E. Minieka. Optimization Algorithms for Networks and Graphs. Marcel Dekker, Inc., 1978.Google Scholar
  12. 12.
    K.A. Morris. An algorithm for ordering subgoals in NAIL! PODS'88, 82–88.Google Scholar
  13. 13.
    W. Nejdl. Recursive strategies for answering recursive queries — the RQA/FQI strategy. VLDB'87, 43–50.Google Scholar
  14. 14.
    F.C.N. Pereira and D.H.D. Warren. Parsing as deduction. 21st Annual Meeting of the Association for Computational Linguistics, 137–144, 1983.Google Scholar
  15. 15.
    E. Pulido. Recursive query processing in deductive databases using graph traversal and rule compilation techniques. PhD thesis, University of Bristol, 1996.Google Scholar
  16. 16.
    R. Ramakrishnan, D. Srivastava, and S. Sudarshan. CORAL — control, relations and logic. VLDB'92, 238–250.Google Scholar
  17. 17.
    D.A. Rosenblueth. Chart parsers as proof procedures for fixed-mode logic programs. To be published in New Generation Computing.Google Scholar
  18. 18.
    K. Sagonas, T. Swift, and D.S. Warren. XSB as an efficient deductive database engine. SIGMOD Record, 23(2):442–453, 1994.Google Scholar
  19. 19.
    N.K. Simpkins and P. Hancox. Chart parsing in Prolog. New Generation Computing, 8:113–138, 1990.Google Scholar
  20. 20.
    H. Tamaki and T. Sato. OLD resolution with tabulation. ICLP'86, 84–98.Google Scholar
  21. 21.
    S. Tsur and C. Zaniolo. LDL: a logic-based data language. VLDB'86, 33–41.Google Scholar
  22. 22.
    J.D. Ullman. Principles of Database and Knowledge-base Systems. Computer Science Press, 1988.Google Scholar
  23. 23.
    L. Vieille. Recursive query processing: the power of logic. Theoretical Computer Science, 69:1–53, 1989.Google Scholar
  24. 24.
    D.H.D. Warren. Efficient processing of interactive relational database queries expressed in logic. VLDB'81, 272–281.Google Scholar
  25. 25.
    P.T. Wood. Queries on graphs. Technical Report CSRI-223, Computer Systems Research Institute. University of Toronto, December 1988.Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 1996

Authors and Affiliations

  • Estrella Pulido
    • 1
  1. 1.University of BristolBristolUK

Personalised recommendations