Embedded BW is the New Reality
When I said goodbye to life as a tenured employee and launched my own business 18 months ago, my driving force was a strong sense that the nature of application development in the enterprise was undergoing a profound change, and I wanted to be a part of that change and drive it forward.
Fig.: Where previously separate things blend
I’m talking about the convergence of operational applications and analytics (hence the name, operatics). These used to be quite separate beasts in many ways: different systems, technology, programming models, data models, instances of the data, experts, users, user interfaces, clients, authorization concepts, and what have you. Two entirely different and separate worlds! Yet with the availability of HANA, this separation was becoming superfluous, and the job at hand was to remove the obsolete separation between the worlds of OLAP and OLTP both in a practical way and also to tear down the walls in people’s heads.
A full BW right under your nose!
I work mostly as a consultant for lead architects, senior developers, and IT department heads – people who know their stuff! In the past year, using BW on HANA in operational applications was a recurring theme at many of my engagements, but interestingly, most people didn’t know that there is a full BW right under their noses in every ABAP system – including ERP and CRM.
It takes just a few configuration steps to set up, and with various types of Virtual Providers at hand, it is easy to start reporting on any data you want. You don’t have to replicate any data into the BW stack, because you can directly access operational data both as transactional data (to replace traditional InfoCubes) and master data (to populate InfoObject texts and attributes), without necessarily creating any redundancies. (Note: If such redundancies serve your purposes, you’re of course free to create them, for example to establish sophisticated processes for managing data flows and data lifecycle management. But the decision is yours entirely.)
These are a few of my favorite things
You can do many things with it, and I will only highlight the best very briefly.
- Create BEx Queries right on top of operational data
Say goodbye to programming ABAP reports and to breaking your fingers creating your own Excel integration. Business Explorer (BEx) is a powerful tool for real-time slicing and dicing, and navigating through large and complex data sets.
- Leverage the power of formulae
Many people see this only at the second glance, but it’s quite a powerful feature and little-known outside the BW community: Part of the power of BEx Queries are complex formulae and structures. These are reusable objects that can be leveraged across multiple queries, and often the BW teams have a functional expert who is not a programmer and knows little about development, but is a wizard with BW formulae. These people know how to implement valuable business logic in BW formulae, and often this treasure is yours for the taking if you know how to tap their BEx queries or integrate their formulae into your own data flows. If the skills and the tools are readily available, you can also consider BW formulae as a building tools when implementing new business logic. It’s right there in the operational system and you can get hold of the data in many different ways.
- Access BW data locally with Easy Query
If you want to access the BW data programmatically from within the ABAP system, there are a number of different ways to achieve this, but Easy Query is probably the simplest. It requires you to tick a checkbox in the Query Builder, and as a result you get a function module that comfortably gives you the data in the query. You can then nicely encapsulate the function module (there are some tricks on how to do it dynamically so you will always be good even if the changes in the query force the function module to be re-generated, a new name is assigned, and so on).
- Publish BW data as OData services
Once the data is available via HTTP and JSON, it is really unlocked, and you can let your developer muscles play.
- Combine classic OData services with BW-based OData services
Maybe you know how OData allows you to create associations between multiple entities. Tools like Web IDE use those associations to simplify the process of building Fiori apps in which the user can navigate across entities. From a developer perspective, that is already pretty fantastic. But it gets better. When you have OData services on top of BW queries, you can use associations to navigate from “normal” operational entities – typically representing single table records – to entities from BW queries, representing aggregations of billions of records that may even have gone through complex formulae. And the user in their Fiori app or freestyle dashboard won’t know the difference!
- Combine with HANA Cloud Platform
I’ve already mentioned how exposing BW queries as OData services really unlocks the data for flexible use in web applications and blending with line-item data. This is greatly facilitated by HANA Cloud Platform and the tooling around it: Just setup HANA Cloud Connector to give your HCP account (and only your HCP account) access to your Gateway services. Then start using Web IDE to build web applications and mobile apps to let your data off the leash and let it loose on your users.
The new reality
Thankfully, in the past few months, I have had several projects in which we used the Embedded BW to blend analytical aspects right into operational applications, locally and without the overhead that comes with having a separate BW system. Embedded BW is still one of the best-kept secrets of the SAP world, but it is in fact the new reality of architecting business applications. That isthe convergence of operational and analytical applications occurring right here, right now.
I always tried to bring this into people's attentions but I was met with great skepticism since the first argument against was load on the main ERP.
With HANA I think people are becoming more open to the embebbed scenario.
This is indeed a very interesting fact, also from the Technical architecture point of view, as you can reduce the overall data footprint and reduce the number of instances.
As you explained, you had a lot of project/client experience before, so could you please give me your view on these matters:
1. How do you see the migration/transition from an existing ECC+BW (separate ABAP and Java) into HANA, when you want to use this embedded BW? Technically it's a MDC/multi-tennant setup, but what about functionally, how do you migrate the content of existing BW to the new embedded-BW?
2. Also if you want to implement SAP HANA Live (for operational reporting) on the ECC on HANA, it means you will have all 3 of them in 1 database/instance. What is your view on this?
3. From the technical point of view, I assume the BI-Java can just be decomissioned, provided that there is some other java-stack in the landscape (EP) and there will be Lumira+Fiori. But starting of 7.40, there is a BI-Java available inside the BSoH. What is your view on this?
Thanks in advance and looking forward to your answer.
Please also watch out the latest information and recommendations on embedded BW here: Embedded Business Warehouse | SCN
Product Management SAP EDW
This presentation needs to be considered when making decisions regarding Embedded BW as there are limitations and guidelines which need to be followed to ensure successful use cases.
That's a great resource, Heiko - thanks for pointing it out!
Thanks for such an informative post. Please help understand one thing. Is it possible to migrate ERP to S/4HANA and let the BW on anyDB remain on that particular DB. New BI related developments should go on top of S/4HANA. Existing analytic reporting should remain on BW on AnyDB. I hope data provisioning to BW (AnyDB) would not be interrupted in case source ERP is migrated to S4/HANA.