DataPower XA35 XML Accelerator: An accelerator capable of greatly increasing the performance of many aspects of XML data processing
As XML continues to gain in popularity as a data exchange medium, network managers are discovering that in return for the ease of exchanging data with customers and partners, they are facing higher loads on Web servers, application servers, and even database servers as companies such as Oracle start to provide native XML databases. Network loads are also increasing since traffic formerly sent as compressed binary data is now being sent as plain text, thus producing files that can be up to 20 times the size of an equivalent database file.
The XA35 XML Accelerator from DataPower can help with these issues and others, like security. The product is a layer-seven appliance that examines data and provides a number of services for dealing with XML data. It can route traffic based on XML content, filter incoming XML based on its validity to prevent malicious code from entering a network, and compress/decompress XML data. It can also accelerate eXtensible Stylesheet Language Transform (XSLT) processing of XML data by a substantial factor -- 47 times, in our testing. Finally, it can perform SSL encryption/decryption, off-loading another compute-intensive task from overburdened application servers.
The XA35 is a 1U appliance with four 10/100 Ethernet interfaces plus a 10/100 management interface and a console serial port. It uses a combination of custom hardware and software to produce XML acceleration. It compiles XSL stylesheets and creates code that runs directly on hardware to parse or transform XML, rather than the more typical interpreted code running on top of the operating system that would be found on a Web server or application server.
The DataPower XA35 XML Accelerator
Since DataPower includes installation support in the price of its product, we allowed the company to send a member of their technical staff, Steven Korobkin, to perform the installation. He brought the device and an Apache Web server running on a Pentium III 1.13 GHz system with 512 MB RAM. The Apache server was running Tomcat and Xalan, an open source XSLT processor. The script we used simulated 10 simultaneous users using an 80 KB XSLT stylesheet to transform a 415 KB XML document 50 times on both the Apache server using Xalan and on the XA35. The results were the following:
|Total Elapsed Time||141.622 seconds||2.976 seconds|
|Requests per second||.35||16.8|
|Time per request in ms||28324.4||595.2|
|Transfer rate in Kbytes/sec||30.24||1395.47|
The XA35 finished processing 47 times faster than the Xalan software.
The Xalan server consisted of the Xalan XSLT engine, the Tomcat servlet, the IBM JVM, and Apache 1.3.23-11.
The XA35 was set up in proxy mode for our tests, so it intercepted all traffic directed at the Web server and performed the transforms automatically. There is also an application co-processor mode that uses the Java API for XML parsing (JAXP) that allows an application server or Web server to send traffic to the XA35 to be transformed.
Each mode has advantages: Proxy mode requires changing the address of the actual Web server and giving the XA35 the old address, while co-processor mode requires modifying a configuration file on the server and can add to network traffic, since all traffic is sent to the XA35 and then back to the Web server.
Since the XA35 may be used to deliver XML-based data to customers and partners, it incorporates a number of high-reliability features, including rollback of firmware, failover with a second device, nine fans, and flash storage rather than hard disk storage. It supports load balancers and persistent connections, as well as routing based on data inserted into a URL, and re-writing of URLs during processing.
Vendor Home Page: DataPower
Sever Home Page: DataPower XA35 XML Accelerator v.18.104.22.168.2 Build: 1.6009.2.234
Price: Starts at $55,000
URL for sample reports on performance increases with the XA35 using your data: http://www.datapower.com/xml_community/performance_reports.html
Pros: Provides enormous increases in transformation and parsing of XML data;
Can validate and filter XML data to protect against malicious embedded code;
SSL acceleration offloads encryption/decryption from web servers;
Routes traffic based on XML content
Cons: No GUI for configuration or management -- only a command line interface