Case studies in hardware XPath acceleration
Abstract
The high increase in usage of XML in electronic data exchange introduces new challenges for efficient processing of XML data. Applications that heavily use XML need to be able to quickly extract the relevant parts of the XML data, often using the XPath language for addressing XML document parts. High speed execution of XPath requests and queries is therefore becoming a critical requirement in many application domains, including XML databases and event processing. This work explores the potential for accelerating XPath processing in these domains using specialized hardware. This in turn poses the challenges of integrating specialized hardware with general-purpose application code. We present the design decisions behind building an integration layer to bridge between applications and the hardware, and describe our implementation. We discuss the factors that affect the acceleration potential, and show that despite the transmission overheads associated with off-loading XPath processing to the specialized co-processor, significant speedups can be obtained, ranging from modest 11% improvements in the event-processing domain, to over 6x speedup factor in the healthcare domain. Copyright 2011 ACM.