Stream Execution of Object Queries

  • Piotr Tabor
  • Krzysztof Stencel
Part of the Communications in Computer and Information Science book series (CCIS, volume 121)


We show a novel execution method of queries over structural data. We present the idea in detail on SBQL (a.k.a. AOQL)—a powerful language with clean semantics. SBQL stands for the Stack-Based Query Language. The stack used in its name and semantics is a heavy and centralised structure which makes parallel and stream processing unfeasible. We propose to process stack-based queries without a stack. The stack-less execution of stack-based queries is done by a network of components connected by streams. Source streams of the network are populated with necessary fragments of objects retrieved from the database. Output streams produce results of the query. This paper focuses on methods of construction, optimisation and effective execution of such a networks. Although this research was inspired by SBQL/AOQL, eventually we achieved a universal execution method for other object-oriented, object-relational and semi-structured language. Especially promising are the optimisation and parallelisation possibilities offered by the presented execution model.


Distributed query processing databases structural data SBQL AOQL XML 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Brownell, D.: SAX2. O’Reilly, Sebastopol (2002)Google Scholar
  2. 2.
    Golab, L., Ozsu, M.T.: Issues in data stream management. ACM Sigmod Record 32, 5–14 (2003)CrossRefGoogle Scholar
  3. 3.
    Boncz, P.A., Zukowski, M., Nes, N.: MonetDB/X100: Hyper-Pipelining Query Execution. In: Proceedings of the Biennial Conference on Innovative Data Systems Research (CIDR), Asilomar, CA, USA, pp. 225–237 (2005)Google Scholar
  4. 4.
    Subieta, K., Kambayashi, Y., Leszczylowski, J.: Procedures in object-oriented query languages. In: Dayal, U., Gray, P.M.D., Nishio, S. (eds.) VLDB, pp. 182–193. Morgan Kaufmann, San Francisco (1995)Google Scholar
  5. 5.
    Subieta, K.: Teoria i konstrukcja obiektowych języków zapytań. Monografie naukowe. Wydawnictwo PJWSTK, Warszawa (2004)Google Scholar
  6. 6.
    Subieta, K.: Stack-based approach and stack-based query language (2008-2010),
  7. 7.
    Subieta, K.: Omg next-generation object database standarization white paper (2007) (dostęp: 2009-02-29 21:58Z)Google Scholar
  8. 8.
    McHugh, J., Abiteboul, S., Goldman, R., Quass, D., Widom, J.: Lore: A database management system for semistructured data. SIGMOD Record 26, 54–66 (1997)CrossRefGoogle Scholar
  9. 9.
    Stencel, K.: Półmocna kontrola typów w językach programowania baz danych. Monografie naukowe, vol. 207. Wydawnictwo PJWSTK, Warszawa (2006)Google Scholar
  10. 10.
    Płodzień, J., Kraken, A.: Object query optimization through detecting independent subqueries. In: Inf. Syst. (2000)Google Scholar
  11. 11.
    Płodzień, J.: Optimization Methods in Object Query Languages. PhD thesis, The Instititue of Computer Science, The Polish Academy of Sciences (2000)MATHGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2010

Authors and Affiliations

  • Piotr Tabor
    • 1
  • Krzysztof Stencel
    • 1
    • 2
  1. 1.Institute of InformaticsUniversity of WarsawPoland
  2. 2.Faculty of Mathematics and Computer ScienceNicolaus Copernicus UniversityPoland

Personalised recommendations