|Résumé||The last decade has witnessed a rapid expansion of XML as a format for representing and exchanging data through the web. In order to follow this evolution, many languages have been proposed to query, update or transform XML documents. At the same time, a range set of systems allowing to store and process XML documents have been developed. Among these systems, main‐memory engines are lightweight systems that are the favored choice for applications that do not require complex functionalities of traditional DBMS such as transaction management and secondary storage indexes. These engines require to loading the documents to be processed entirely into main‐memory. Consequently, they suffer from space limitations and are not able to process quite large documents. XML projection is a prominent technique that has been proposed for overcoming the limitations of main‐memory engines in the context of querying. It consists in pruning out, at loading time, the parts of the queried document that are not required to perform the query. As in general queries are selective, the resulting document is likely to be small and fit within main‐memory. The projection technique developed for queries cannot be directly applied for updates. Obviously, updating a projection of a document t is not equivalent to updating the document t itself since the pruned out sub‐trees will be missing. Using projection in the context of updates requires thus a mechanism for propagating, on the original documents, the effects of the updates performed over the projected documents.
This talk consists in two parts. The first part focuses on presenting the projection‐based technique we have developed for optimizing the update of XML documents. This technique relies on a static analysis of the update expression and exploits the schema information. The conducted experiments testify the effectiveness of the method wrt space consumption and execution time as well.
The second part of my talk addresses the issue of efficiently building and maintaining timestamped XML documents encoding the evolution of XML documents. I will present two methods. For the first one, called general method, no restriction is made on the evolution of the XML documents whereas for the second one, called updatebased method, changes are assumed to be specified by updates. For both methods, the issue is to enable processing very large documents, to use existing engines and to comply to XQuery Update Facility. The two methods are compared in terms of space‐efficiency. The update‐based method produces time‐stamped XML documents that are more satisfactory wrt space‐efficiency than the general method. |