Q
Get started Bring yourself up to speed with our introductory content.

What is the SAP HANA XS Engine, and how does it work?

Ethan Jewett explains how the SAP HANA XS Engine is used to run lightweight applications on the SAP in-memory database platform.

The XS in SAP HANA XS Engine stands for Extended Application Services. While the acronym itself may not entirely...

make sense, the role of the SAP HANA XS Engine is fairly clear. It is a lightweight application server embedded in SAP HANA that can be used to layer procedural logic and Web services on top of HANA tables and views. Applications that run on the SAP HANA XS Engine can be written by developers in HANA Studio, and they also can be generated by SAP's River Rapid Development Environment. XS Engine allows for the creation of applications on HANA using only HANA and a front-end application library, such as SAPUI5. No separate application server is necessary.

More specifically, XS Engine is a JavaScript application server based on the Mozilla SpiderMonkey engine. This is the same engine used in the Firefox Web browser. The Node.js application server takes a similar approach, namely, using an embedded browser Javascript runtime as an application server, though Node.js uses the V8 engine that is used in Chrome.

XS Engine provides a few Javascript APIs for accessing the capabilities and data stored in the HANA system it runs on. XS Engine applications can query and update HANA tables and views using standard SQL statements. Applications can also make external HTTP requests to destinations that are properly configured in HANA, and they can schedule jobs (also defined in JavaScript) to run in the background, outside the context of a request.

Primarily, XS Engine works on the level of incoming HTTP requests and outgoing responses. A request comes in to a given XS Engine service (which lives at a URL on the HANA system), and the service has complete control over evaluating the request and building the response it wants to send back.

While the functionality of the XS Engine is limited, it can be supplemented with libraries. Most server-side Javascript libraries are written for Node.js and rely on Node.js APIs, so using those libraries on XS Engine will be hit-or-miss. But small, pure-Javascript libraries should work, and customers can develop their own utility libraries.

That said, the design and vision of XS Engine are very clearly that it be used to support the development of lightweight services and applications in HANA. Developers considering heavier-weight applications should consider using a standalone application server running alongside their HANA system.

Next Steps

The SAP River Rapid Development Environment and beyond: Tools for SAP HANA application development

Not sure of the difference between the HANA Enterprise Cloud and the HANA Cloud Platform? You're not alone

How to prepare for a HANA installation

This was last published in September 2014

Dig Deeper on Business Objects and SAP business intelligence

PRO+

Content

Find more PRO+ content and other member only offers, here.

Have a question for an expert?

Please add a title for your question

Get answers from a TechTarget expert on whatever's puzzling you.

You will be able to add details on the next page.

Start the conversation

Send me notifications when other members comment.

By submitting you agree to receive email from TechTarget and its partners. If you reside outside of the United States, you consent to having your personal data transferred to and processed in the United States. Privacy

Please create a username to comment.

-ADS BY GOOGLE

SearchManufacturingERP

SearchOracle

SearchDataManagement

SearchAWS

SearchBusinessAnalytics

SearchCRM

SearchContentManagement

SearchFinancialApplications

Close