Recently I attend some SAP HANA training in Singapore, it would of been rude not to as the fee was waived by SAP, very decent of them.
Whilst I can honestly say that I did not learn too much I did pick up on a new feature introduced in HANA release SP03 which I thought was pretty nice. The DEC, now referred to as DXC basically allows data to be transferred from SAP ECC directly to SAP HANA utilising any datasource available including custom built datasources.
Whilst data cannot be replicated in real-time using this method it does allow SAP customers an alternative to Data Services or SLT. The configuration guide for DXC can be found attached to OSS note number 1665602.
Here I give an overview of how DXC functions and discuss some known limitations and possible workarounds. DEC can be used without having an installation of AP BW as ECC has the BW components built in as standard.
After having applied a raft of SAP notes to my system and following the steps outlined in the configuration guide, which included implementing a custom ‘Z’ table (something I am sure will be standard in future releases), I was able to get DXC up and running in a matter of about 30 minutes.
Typically BW loading goes like this:
Infopackage –> PSA –> DTP –> Data target (DSO, Cube or InfoObject)
The DXC loading follows a slightly different flow:
Infopackage -> SAP HANA
Ok, so that is a simplistic take on the full DXC data flow. When a datasource is marked as an SAP HANA relevant datasource and the datasource itself is activated, 5 tables are automatically generated in the SAP HANA database:
These generated tables in SAP terminology are referred to an in-memory DSO, funny that as standard BW DSO only have 3 tables but SAP HANA DSO (generated via DXC) has 5. Anyone familiar with BW will understand the ‘00’ (activated data) and the ‘40’ (new data) tables but what are the ‘70’, ‘80’ and ‘AO’ tables used for?
Well these are control tables, ‘70’ is the delta table, ‘80’ is the history and ‘AO’ is the status table. The process of activation is not dissimilar to a BW in-memory DSO, a good article on this can be found on SCN:
In-memory DSO activation:
Once you have loaded your master data and transaction data into SAP HANA via DXC you can then build the attribute, analytic or calculation views using the active in-memory DSO tables ‘00’. Using regular BW process chain concepts these In-memory DSO tables can be updated as frequently as is required.
Limitations, once an in-memory DSO has been created via DXC its structure cannot be changed without first deleting all the related in-memory DSO tables, these tables we be regenerated the next time the datasource is activated in SAP ECC or SAP BW. This is a bit of pain if the In-memory DSO contains 10’s of millions of records; make sure you get your design correct before loading!
Another limitation is that your extract structure MUST have a unique semantic key, no key –-> activation failure. You cannot create the table key via HANA studio it must be created as part of the ECC datasource. When creating your own datasources this is not an issue as you can reference a table or table type which has a defined key.
However quite a few standard datasources do not have a defined key, the solution to this lies with program ROSOA_CHANGE_KEY, this is only available from certain Basis / support package releases, refer to OSS note 1677278 for more details.
Overall DXC is a nice addition to the data acquisition toolset from SAP, easy to setup, no additional hardware required and you can reuse your in-house ABAP and BW skill-sets to leverage the capabilities of SAP HANA even further.