One question that I often hear from customers is why one must look at SAP BW4HANA when they already have BW on HANA. In this series of blogs, let us look at some of the key differences between BW4HANA and BW on HANA from various perspectives.
The way BW4HANA handles query execution is quite different from how SAP BW on HANA handles it. A BW system running on HANA executes queries through the following three (3) layers.
BICS – Business Intelligence Consumer Services
BICS is SAP’s proprietary service layer that services query requests from all SAP systems. When a Data request is made to a BW system, say, through BusinessObjects, BICS kicks in and connects the requester to the ABAP engine. BICS has two parts – a JAVA component and an ABAP component and these components communicate with the back end BW system respectfully through RFC or JCo.
BW OLAP Processor
The OLAP processor in BW translates query requests to SQL that the backend database can understand. This is where queries are translated into their SQL counterparts using ‘group by’ and ‘where’ clauses. This step is needed because BW by nature is database agnostic. It is for the same reason that BW does not automatically optimize the code for HANA
HANA OLAP Processor
The HANA OLAP engine is part of the HANA database and it optimizes the SQL to get the most performance out of it. This engine is invoked in the backend whenever and queries are run on analytic views or SQL. The OLAP engine takes care of simple aggregations. Since the request is in SQL, the calculation engine or the join engine does not get used.
Query Execution in SAP BW4HANA
In a BW4HANA system, a key difference is that BW Queries utilize the calculation engine. When a BW query is created, a corresponding calculation view is created in the backend. As you may already know, SAP HANA database understands calculation views very well where it makes the best use of all the resources and engines available. Because of this, calculations and aggregation happen at the database level instead of the application level thereby driving performance.
Since the calculation algorithms are pushed down to the database level, it is known as “Algorithm Pushdown“. And this is how BW4HANA has better query execution performance compared to a BW system on HANA.
Since the BW runtime has been rewritten for SAP HANA, it delivers many other features and benefits that bring the best of both worlds – BW and HANA – in one platform.
Got questions? Click here to get in touch with us.