An XML Publish/Subscribe Algorithm Implemented by Relational Operators

An XML publish/subscribe algorithm needs to store large numbers of XPath or XQuery subscriptions and match subscriptions with published XML documents. Since the number of the subscriptions may be very large, the performance and the scalability of the algorithm may be critical. The scalability of the method of constructing a large finite state automata or decision tree for all subscriptions is limited by amount of available physical memory. In this paper, we will introduce an XML publish/subscribe algorithm which is consisted of the publish algorithm, subscribe algorithm, and matching algorithm. The matching algorithm uses relational operators to match subscriptions with publications inside a relational database, so the scalability of the algorithm is no longer limited by amount of available physical memory. Experimental results show that the matching algorithm has very good performance and scalability.

[1]  Dan Suciu,et al.  Processing XML Streams with Deterministic Automata , 2003, ICDT.

[2]  Edith Cohen,et al.  Labeling dynamic XML trees , 2002, SIAM J. Comput..

[3]  Dan Suciu,et al.  Stream processing of XPath queries with predicates , 2003, SIGMOD '03.

[4]  Praveen Seshadri Building Notification Services with Microsoft SQLServer. , 2003, SIGMOD 2003.

[5]  Hansjörg Zeller NonStop SQL/MX Publish/Subscribe: Continuous Data Streams in Transaction Processing , 2003, SIGMOD Conference.

[6]  Yanlei Diao,et al.  YFilter: efficient and scalable filtering of XML documents , 2002, Proceedings 18th International Conference on Data Engineering.

[7]  Gabriel M. Kuper,et al.  Structural Properties of XPath Fragments , 2003, ICDT.

[8]  Toshiyuki Amagasa,et al.  QRS: a robust numbering scheme for XML documents , 2003, Proceedings 19th International Conference on Data Engineering (Cat. No.03CH37405).

[9]  Jussi Myllymaki,et al.  Implementing a scalable XML publish/subscribe system using relational database systems , 2004, SIGMOD '04.

[10]  Chun Zhang,et al.  Storing and querying ordered XML using a relational database system , 2002, SIGMOD '02.

[11]  Rajeev Rastogi,et al.  Efficient filtering of XML documents with XPath expressions , 2002, The VLDB Journal.

[12]  Denilson Barbosa,et al.  The XML web: a first study , 2003, WWW '03.

[13]  Sudarshan S. Chawathe,et al.  XPath queries on streaming data , 2003, SIGMOD '03.

[14]  Mong-Li Lee,et al.  A Prime Number Labeling Scheme for Dynamic Ordered XML Trees , 2004, ICDE.

[15]  Michael J. Franklin,et al.  Efficient Filtering of XML Documents for Selective Dissemination of Information , 2000, VLDB.

[16]  Marcos K. Aguilera,et al.  Matching events in a content-based subscription system , 1999, PODC '99.

[17]  David J. DeWitt,et al.  NiagaraCQ: a scalable continuous query system for Internet databases , 2000, SIGMOD '00.

[18]  Toshiyuki Amagasa,et al.  XRel: a path-based approach to storage and retrieval of XML documents using relational databases , 2001, ACM Trans. Internet Techn..