Efficient maintenance techniques for views over active documents

Many Web applications are based on dynamic interactions between Web components exchanging flows of information. Such a situation arises for instance in mashup systems or when monitoring distributed autonomous systems. Our work is in this challenging context that has generated recently a lot of attention; see Web 2.0. We introduce the axlog formal model for capturing such interactions and show how this model can be supported efficiently. The central component is the axlog widget defined by one tree-pattern query or more, over an active document (in the Active XML style) that includes some input streams of updates. A widget generates a stream of updates for each query, the updates that are needed to maintain the view corresponding to the query. We exploit an array of known technologies: datalog optimization techniques such as Differential or MagicSet, constraint query languages, and efficient XML filtering (YFilter). The novel optimization technique we propose is based on fundamental new notions: a relevance (different than that of MagicSet), satisfiability and provenance for active documents. We briefly discuss an implementation of an axlog engine, an application that we used to test the approach, and results of experiments.

[1]  Kotagiri Ramamohanarao,et al.  A Generalization of the Differential Approach to Recursive Query Evaluation , 1987, J. Log. Program..

[2]  Ioana Manolescu,et al.  OptimAX: efficient support for data-intensive mash-ups , 2008, 2008 IEEE 24th International Conference on Data Engineering.

[3]  Takashi Honishi,et al.  Incremental maintenance for materialized XPath/XSLT views , 2005, WWW '05.

[4]  Patrick E. O'Neil,et al.  ORDPATHs: insert-friendly XML node labels , 2004, SIGMOD '04.

[5]  David Gay,et al.  User-friendly functional programming for web mashups , 2007, ICFP '07.

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

[7]  Laurent Vieille,et al.  Recursive Query Processing: The Power of Logic , 1989, Theor. Comput. Sci..

[8]  L. Vielle,et al.  Recursive query processing: the power of logic , 1989 .

[9]  Georg Gottlob,et al.  Monadic queries over tree-structured data , 2002, Proceedings 17th Annual IEEE Symposium on Logic in Computer Science.

[10]  Michael J. Carey,et al.  The BEA/XQRL Streaming XQuery Processor , 2003, VLDB.

[11]  Catriel Beeri,et al.  On the power of magic , 1987, J. Log. Program..

[12]  Robert Moore,et al.  Inventory Decisions in Dell's Supply Chain , 2004, Interfaces.

[13]  Ying Xing,et al.  The Design of the Borealis Stream Processing Engine , 2005, CIDR.

[14]  Michael Stark,et al.  XQuery Streaming a la Carte , 2007, 2007 IEEE 23rd International Conference on Data Engineering.

[15]  V. S. Subrahmanian,et al.  Maintaining views incrementally , 1993, SIGMOD Conference.

[16]  Jennifer Widom,et al.  Deriving Incremental Production Rules for Deductive Data , 1994, Inf. Syst..

[17]  Serge Abiteboul,et al.  Incremental Maintenance for Materialized Views over Semistructured Data , 1998, VLDB.

[18]  Jun'ichi Tatemura,et al.  Incremental maintenance of path-expression views , 2005, SIGMOD '05.

[19]  Floris Geerts,et al.  Constraint Query Languages , 2008, Encyclopedia of GIS.

[20]  Haim Kaplan,et al.  Compact labeling schemes for ancestor queries , 2001, SODA '01.

[21]  Gabriel M. Kuper,et al.  Constraint query languages (preliminary report) , 1990, PODS '90.

[22]  Serge Abiteboul,et al.  Satisfiability and relevance for queries over active documents , 2009, PODS.

[23]  Alfons Kemper,et al.  StreamGlobe: adaptive query processing and optimization in streaming P2P environments , 2004, DMSN '04.

[24]  Serge Abiteboul,et al.  Distributed Monitoring of Peer-to-Peer Systems , 2008, 2008 IEEE 24th International Conference on Data Engineering.

[25]  Oded Shmueli,et al.  Evaluation of datalog extended with an XPath predicate , 2007, WIDM '07.

[26]  Gabriel M. Kuper,et al.  Constraint Query Languages , 1995, J. Comput. Syst. Sci..

[27]  Wolfgang Nejdl,et al.  Evaluating Recursive Queries in Distributed Databases , 1993, IEEE Trans. Knowl. Data Eng..

[28]  Stefanie Scherzinger,et al.  FluXQuery: An Optimizing XQuery Processor for Streaming XML Data , 2004, VLDB.

[29]  Serge Abiteboul,et al.  Diagnosis of asynchronous discrete event systems: datalog to the rescue! , 2005, PODS.

[30]  Ravi B. Konuru,et al.  An Algebraic Approach to View Maintenance for XQuery , 2008, PLAN-X.

[31]  James Cheney,et al.  Provenance management in curated databases , 2006, SIGMOD Conference.

[32]  Dan Suciu,et al.  Containment and equivalence for a fragment of XPath , 2004, JACM.

[33]  Ioana Manolescu,et al.  A Framework for Distributed XML Data Management , 2006, EDBT.

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

[35]  Surajit Chaudhuri,et al.  Maintenance of Materialized Views: Problems, Techniques, and Applications. , 1995 .

[36]  Alfons Kemper,et al.  StreamGlobe: Processing and Sharing Data Streams in Grid-Based P2P Infrastructures , 2005, VLDB.

[37]  Serge Abiteboul,et al.  The Active XML project: an overview , 2008, The VLDB Journal.

[38]  Ioana Manolescu,et al.  Lazy query evaluation for Active XML , 2004, SIGMOD '04.

[39]  Serge Abiteboul,et al.  Active XML , 2009, Encyclopedia of Database Systems.

[40]  Serge Abiteboul,et al.  Foundations of Databases , 1994 .

[41]  Pierre Bourhis Distributed Monitoring of Peer−to−Peer Systems (Demonstration) , 2008, ICDE 2008.

[42]  Qiang Chen,et al.  Aurora : a new model and architecture for data stream management ) , 2006 .