Skip to Content
Author's profile photo Bilen Cekic

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;

  1. Overall significant decrease on development time
  2. 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 🙂

Assigned Tags

      19 Comments
      You must be Logged on to comment or reply to a post.
      Author's profile photo Former Member
      Former Member

      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.

      Author's profile photo Bilen Cekic
      Bilen Cekic
      Blog Post Author

      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.

      Author's profile photo Former Member
      Former Member

      Thanks Bilen, It is possible to share the detailed article. You can send it my email id ( rakesh.khatai@gmail.com)

      Thanks

      Rakesh

      Author's profile photo Former Member
      Former Member

      Hi Bilen,

      You are master in ABAP & VB programming. Glad to see your work on HANA objects and part1 article.

      Regards,

      Kumar Potti

      Author's profile photo Bilen Cekic
      Bilen Cekic
      Blog Post Author

      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.

      Author's profile photo Norbert Lajos
      Norbert Lajos

      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

      Author's profile photo Former Member
      Former Member

      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

      Author's profile photo Bilen Cekic
      Bilen Cekic
      Blog Post Author

      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)

      Author's profile photo Former Member
      Former Member

      Hi Bilen,

      In your first diagram where you mentioned DB server, is that HANA DB or standard DB2?

      Andy

      Author's profile photo Bilen Cekic
      Bilen Cekic
      Blog Post Author

      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.

      Author's profile photo Former Member
      Former Member

      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

      Author's profile photo Bilen Cekic
      Bilen Cekic
      Blog Post Author

      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 🙂

      Author's profile photo Danny Huss
      Danny Huss

      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

       

       

      Author's profile photo David, Choong Poey Yee
      David, Choong Poey Yee

      Hi Bilen,

      Are you able to share the coding and implementation steps here?

      David

      Author's profile photo Bilen Cekic
      Bilen Cekic
      Blog Post Author

      Hi David,

      It took to much time for me to debug and find some key parts of it 😀 but i might publish soon.

       

      Author's profile photo David, Choong Poey Yee
      David, Choong Poey Yee

      Thanks Bilen. 🙂

      Author's profile photo David, Choong Poey Yee
      David, Choong Poey Yee

      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

      Author's profile photo Bilen Cekic
      Bilen Cekic
      Blog Post Author

      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.

       

      Author's profile photo David, Choong Poey Yee
      David, Choong Poey Yee

      Thank You Bilen. 🙂