BPC on HANA by using HANA Objects Part I
Good Day All,
I would like to share my BPC 10.0 on HANA implementation experience which we have developed the business logic via HANA objects.
Our approach has two main advantages;
- Overall significant decrease on development time
- Huge performance increase
The initial phase of the project was implemented in traditional way which was developing the business logic through optimizing the ABAP codes and parallel processes to maximize the performance and decrease the runtime process of packages. The runtime process was taking too much time due to huge amount of data.
The 2nd phase is implemented with the similar concept and additional simulation logic to calculate results based on changed assumptions, on the fly master data creation and other functional logics specific to the client’s requirement. This phase we decided to change the approach of developing the business logic and calculations by using HANA objects.
The flow illustrated as below;
Performance increased by 20 to 100+ times.
In our calculation layer which is handled on HANA, we process all calculations, security check and model update. The approach to implement in HANA is more complicated. Nevertheless, when we compare between ABAP and HANA the package runtime was significantly reduced and performance increased by 20 to 100+ times.
My first BPC on HANA implementation was in 2012. I have implemented several projects using different ways but this was my first implementation fully utilised HANA Objects. I have faced many problems, errors, memory issues, cursor performance problems but all of them are fixed by using different approach on calculation logic with very late night hours :).
I had different results while using ROW and COLUMN type tables based on my scenario as below;
Test is done with a calculation that generates and inserts 26 million records into a table.
Sometimes i received error messages due to my queries and calculations;
and during testing i found a hidden cat in my package log 🙂
Thanks Bilen for posting your experience in HANA. Can you please share some more thought on the integration points between BADI and the HANA layer as you have mentioned in the image above.
Hi Rakesh,
Thank you. Actually this is the cropped edition of my article, later i removed all key techinical parts. We are using AMDP to trigger our HANA objects but inside the HANA there are many technical points that you need to take care, most importantly integrity between BW requests and your records generated inside the HANA DB.
BADI is just sending our scope coming from IT_CV and IT_PARAM to the HANA DB from script logic and also used to populate log.
Thanks Bilen, It is possible to share the detailed article. You can send it my email id ( rakesh.khatai@gmail.com)
Thanks
Rakesh
Hi Bilen,
You are master in ABAP & VB programming. Glad to see your work on HANA objects and part1 article.
Regards,
Kumar Potti
Kumar Potti, thanks! long time no see 🙂 miss you man.hope you are doing well in your new projects 🙂 , hope to work with you again.
Thanks Bilen!
Is it possible to share the detailed article about Badi and Hana integration (norbert.lajos.test@gmail.com)? I have a few very slow script (50 minutes running time) and I try to Hana script. I curious about, how faster the hana based stored procedure.
Thanks,
Norbert
Hi Bilen,
Thanks for your sharing!
Did you use stored procedure to do some calculation for BPC?
If so, how you write the calculation result back to BPC cube?
Regards,
Yi
Hello Yi Y,
I am converting result data to the cube structure and updating directly. But here you need to take care BW requests as well. With a direct update your cube will be updated but in RSA1 you won't see any request after you clicking manage that list will be empty and probably light optimization may not work. So this part also should be handled.(actually i spend some time to manage here correctly)
Hi Bilen,
In your first diagram where you mentioned DB server, is that HANA DB or standard DB2?
Andy
Hello Andy,
First diagram is BPC on HANA implementation also, but on 1st phase, we used standard data read methods by using ABAP. So data is transfered from DB server to APP server for data process.
Hi Bilen,
Ok I see, interesting blog, I wonder how 10.1 will perform between standard BADI and direct HANA access, as 10.1 is optimized for HANA, and BPC 10 is just using HANA as a DB.
Andy
Hi Andy,
Thank you! I am also wondering how will it be. I think they might pass calculation to HANA for some cases and read the result back and trigger writeback.
In one of my project i did same (project before the above one), i pass my calculation to hana layer but after calculation finish, get the result table back and trigger writeback with ABAP . Lets see 🙂
Bilen,
A buddy just passed on a couple links on with your content. I don't typically have time to add content in the SCN/Blog space for SAP. But I'm an old-timer(kid at heart) in the SAP world. I have almost no free time. But I like your bad humor and think we could benefit by connecting.
I have created a dummy email for a one-time initial contact. I will then follow up with my real email. I am not willing to post a real email address on a generic site. Email me at dhuss_pcs@mail.com if you are up for a quick chat. I suspect we could both benefit.
One of my employees will monitor the email address for a couple weeks. If we connect, great. If not, keep up the good work ...
Danny
I have  dadddd
Hi Bilen,
Are you able to share the coding and implementation steps here?
David
Hi David,
It took to much time for me to debug and find some key parts of it 😀 but i might publish soon.
Thanks Bilen. 🙂
Hi Bilen,
Is it possible to share some snippet of your existing coding in HANA Stored Procedure? Understand that this is not released yet but would like to work on it first on our POC. If possible email me to davyee100@gmail.com. Thank You.
Best Regards
David Yee
hi David,
Actually i am implementing this logic to several companies 😀 it is like my mini product so i really don't want to share all key points of this implementation but i might write some helpful ways to implement it to your email.
For an oil & gas company, both consultants from Ernst&Young and me alone trying to improve BPC performance of the company for some certain packages. They achieved %40-60 improvement, above logic made it %98 😀 their optimised package finishing in 180 sec, mine finishing in 6 sec . I will write to your email.
Thank You Bilen. 🙂