Font Size: a A A

Trace-based Xquery Just-in-time Compilation Technique

Posted on:2015-01-04Degree:MasterType:Thesis
Country:ChinaCandidate:C Z WuFull Text:PDF
GTID:2298330452453374Subject:Computer Science and Technology
Abstract/Summary:PDF Full Text Request
XML is a description language for semi-structured data. As a W3C standard, XML is simple, cross-platform, self-descriptiveand widely used. XQuery is developed in order to standardize XML data query. XQuery is a functional language with FLWOR expressions and user-defined functions which can describe complex logical structures. Compared with traditional SQL data queries, interpretation execution of XQuery programs is time-consuming. It is necessary to use compilation technique to reduce the overhead of interpretive execution.Since XQuery is wildly used in network, the queries are usually dynamically generated and distributed through the network from one node to another. It’s not pos-sible to compile these queries in advance. In this case, just-in-time (JIT) compilation is suitable, which compiles queries to object code to enhance the overall execution speed. Since XQuery queries are generally short and time-consuming part of a query is usually the query body rather than user-defined functions, traditional method-based JIT compilation can not be applied to this scenario. Futhermore, the greater the gran-ularity of JIT compilation is, the easier it’s to offset the performance improvement brought by this technique.This paper presents a trace-based JIT compilation technique. XQuery programs are interpreted and profiled by an execution engine. Those executed frequently branches are recorded and compiled to object code at runtime. We develop compila-tion technique for XQuery. Compared with the method-based JIT compilation, trace-based JIT compilation is finer and more suitable for XQuery, which can effec-tively reduce unnecessary compilation cost. We also develop a trace-based detection technique. By using of this technique, interconnected traces are merged into a trace tree and compiled at runtime to avoid unnecessary overhead of execution environment alternation between interpretation and compilation. We develop a trace-based JIT sys-tem for XQuery language. Experiment results show that this system basiclly imple-ments XQuery and our trace-based JIT compilation is more efficient than interpreta-tion and method-based JIT compilation.
Keywords/Search Tags:XML, XQuery, SECD, JIT Compilation, Trace-based Compilation
PDF Full Text Request
Related items