Knowledge Sharing from TechEd Bangalore – SAP Business Application Accelerator – SAP HANA DB as Secondary DB
Introduction:
This topic will explain the advantages of SAP Business Application Accelerator which Allows leveraging HANA for current programs without changing them or without disruption or without changing the code. SAP Business Application Accelerator allows redirection of database queries (like select, open cursor) to a secondary database connection. In this case we are going to use HANA as secondary DB.
This blog doesn’t explains you the HANA Specific Application Accelerators like CO-PA or Moving data intensive operations down to HANA, rather a simple use case to see the advantages of using SAP Business Application Accelerator and HANA Database on the current existing programs without changing the code by calculating the runtime of the program.
How it works:
Runtime intensive table selects can be redirected to the HANA database instead being selected from the primary database.
- Selected tables are replicated using SLT in near real-time to the HANA database
- The following parameters identify the program context for reading from the HANA database:
- Tables / DB Views
- Main program
- Batch job name (wildcards supported)
- On kernel level a select statement within this configuration is redirected to HANA – no changes on program required
Use Cases:
- Reports reading data from very large ERP tables
- Reports that evaluate large tables by different characteristics – so that there is no index on all access path
- Batch Jobs that often reports that run during period end closing
System prerequisite:
Kernel version 7.21 and the SAP Business Application Accelerator Add On.
Demo – Overview:
Demo – Step-by-Step:
- Establishing a Connection a connection between ERP system and HANA DB. In this case we are connecting our ERP System to HANA Database (System – HDB). We can also check available DB Connections, Indicated with arrow in the screen shot.
2. SLT: SLT is a process to replicate the data from primary to secondary database. In this case we will identify time intensive – tables / program combinations to be redirected to HANA and not to the primary database for read access.
3. In this demo program: ZR_COEP is used which uses the ZCEOP table. This table will be replicated in HANA DB using SLT.
4. Maintaining the Configuration by preparing the XML with scenario, program and table names after identifying the program and table.
5. Configuration is maintained by using RDA_MAINTAIN program. First XML will be upload using the ‘Upload Scenario’. Once the XML is uploaded, a database connection has to be maintained (second screen shot) and last we will Activate the Scenario. Configuration entries are maintained in RDA_CONTROL, RDA_CONFIG and RDA_CONTEXT table. You can validate your configuration entries here.
6. Profile Parameters rsdb/rda is used to redirect the DBs using RZ11 transaction Code. It acts like a switch between two databases. Please see the prerequisite to avail the profile parameters. Please make sure the scenario which we have uploaded in previous step has to in active status, only then the redirection of DBs works.
7. Analyzing the Runtime by testing the runtime of the program in both DBs by setting profile parameter values as on/off.
Test program is written with a select statement using aggregate functions.
It takes an average of 25 seconds to pick the data from primary database.
Now turn on the profile parameter and execute. Total number of records in HANA DB is more than Primary DB (an additional record was added).
It only took 4 seconds to run the program.
Limitations:
- SAP Business Application Accelerator can not be used for programs where delayed replication of a table could lead to inconsistencies
- No update scenarios during interactive reporting on replicated tables possible
- SAP Business Application Accelerator does not leverage all HANA capabilities and does therefore not reach the same performance as possible with modeling in HANA Modeling Studio or with HANA Application Accelerators (e.g. COPA Accelerator)
- Check Note 1694697
Nice Try Shahid Mohammed. SAP had explained in PPT about this topic and you have showed by making us go through SAP Screens. Thanks for sharing. Keep it up.
Hi,
Could you elaborate 'No update scenarios during interactive reporting on replicated tables possible' ?
Thanks.
Interesting!!! The same we have done and getting an good performance on Y reports
Let me know how we can configure for function modules.
Say for an example we have few SE37 function modules under a function group. Actually we can make the scenario, maintain, activate to HANA through RDA_Maintain or any other way to run the function module with HANA as a DB to read the tables.
Hi Vasanth,
Did you find solution to your problem of
"Let me know how we can configure for function modules.
Say for an example we have few SE37 function modules under a function group. Actually we can make the scenario, maintain, activate to HANA through RDA_Maintain or any other way to run the function module with HANA as a DB to read the tables."
Please suggest as i am too stuck with similar problem.
Thanks Much,
Abhishek
Not yet Abhishek Kumar Singh. We are finding a solution. I look forward your help also. Do you have any idea on SWT2DB addon?
Vasanth S
Vasanth,
SWT2DB add on is a downloadable software only when SAP Client submits the proof of concept letter must be produced to SAP.
This is risky one!! Once you install.. I think SAP do not support !
Thank you
Regards
Kiran
The configuration is based on the calling program, and it will work with any function module called, even SAP standard.
For example, if I have a ZTEST program that just does this
CALL FUNCTION 'MD_CONVERT_MATERIAL_UNIT'
EXPORTING
I_MATNR = '0-500'
I_IN_ME = 'CS'
I_OUT_ME = 'EA'
I_MENGE = '10'
I would add configuration via the XML file, for main program "ZTEST" and a table that is needed in the function module (MARM in this case).
This would allow database redirects for anythin running under that main program, which can be see with the SY-CPROG variable during debugging.
Regards,
Justin
Hi Shahid,