BW - 4HANA - SAP Analytix
BW - 4HANA - SAP Analytix
BW/4HANA
InfoProviders
Key Figure InfoObject
Data Mart DataStore Object Advanced
Data Flow for Transactional Data
Standard DataStore Object
Composite Provider
InfoProvider
InfoProviders store data (DataStore Object (advanced)) or abstract the access to other InfoProviders (like CompositeProvider or OpenODS-
View) so that you can build a query on top.
CompositeProvider – accessing and combining other InfoProviders vie UNION and/or JOIN
(https://sapanalytix.wordpress.com/wp-content/uploads/2021/01/image-24.png)
Scenario Definition
of a
CompositeProvider
OpenODS-Views – accessing data from different sources than BW (HANA or remote sources)
(https://sapanalytix.wordpress.com/wp-content/uploads/2021/01/image-25.png)
Definition
of Open
ODS
View
based on
HANA
table
Key Figures
A Key Figure InfoObject can show different behaviors. It can be connected with an Currency InfoObject and different Aggregation and
Exception Aggregation behaviors can be defined (valid for Data Mart aDSO only).
(https://sapanalytix.wordpress.com/wp-content/uploads/2021/01/image-26.png)
Definition
of a Key
Figure
InfoObject
Properties
High Precision – Internally BW calculates with 34 (instead of 16) digit floating point to reduce rounding differences
Stock Coverage – special scenario about how long a available quantitz will cover planned demand (details
(https://help.sap.com/viewer/0ecf5244825c4742a7b062a89d11c2ac/7.5.17/en-US/51fc71b911a449639baaa9ae117455be.html) & example
(https://visualbi.com/blogs/sap/sap-bw-hana/sap-bw4hana/stock-coverage-key-figure-bw4hana/))
Non-Cumulative – special scenario where you use additional information as Inflow/Outflow key figures or a change key figure to calculate
the value. Well known e. g. in Inventory Management scenarios (details
(https://help.sap.com/viewer/0ecf5244825c4742a7b062a89d11c2ac/7.5.17/en-US/4a8f83b763e138dde10000000a42189b.html)).
DataStore Object
There are 4 kinds of DataStore Objects available (good overview in this Visual BI blog (https://visualbi.com/blogs/sap/sap-bw-hana/sap-
bw4hana/adso-functionalities-bw-4hana/))
Just because if you have experiences with BW powered bz HANA. Definition of aDSOs is a little bit different. A short comparison.
(https://sapanalytix.wordpress.com/wp-content/uploads/2021/01/image-32.png)
Comparison
of aDSO
definition
Data Mart DataStore Object
Following a description of Data Mart aDSO can be found. It can be modeled field-based or using InfoObjects to define structure and further
context.
(https://sapanalytix.wordpress.com/wp-content/uploads/2021/01/image-27.png)
Definition
and
tables of
aDSO
„PBDM“
While all 3 tables are generated, table /BIC/APBDM3 will not be used in this scenario. Reporting happens via a UNION on Active and Inbound
Table. So data is not needed to activate.
Chapter here in BW410 is mainly about ODP – Operational Data Provisioning and using it for a simple Data Flow. More information about ODP
will come in upcoming BW430 blogs.
The Standard aDSO is the equivalent of the classical Standard DSO as introduced with BW 2.0 under the name Operational Data Store
(https://archive.sap.com/kmuuid2/b6009190-0201-0010-47ac-
c351fa4c20e8/Business%20Warehouse%20Operational%20Data%20Store%20for%20SAP%20Business%20Information%20Warehouse%202.0.pdf).
Key Features
Table Logic
All 3 tables are used. Initially all data is updated via DTP into Inbound Table. With an activation process data is writen to the active table.
Depending on the transformation logic, records with same key are updated (overwrite aka move or cumulate aka aggregation). Reporting is
done on the active table. Additonally als changes are written to the cange log where data stay with a technical key. Updated to further data
targets are based on Change Log table.
Example
The lesson includes the creation of a flat file adapter. I will show some aspects using the Data Warehouse Cloud Bike Sales
(https://github.com/SAP-samples/data-warehouse-cloud-content/tree/master/Sample_Bikes_Sales_content/CSV) demo dataset.
So, creating a flat file adapter and a csv datasource is pretty straight forward. I will focus on interesting aspects.
(https://sapanalytix.wordpress.com/wp-content/uploads/2021/01/image-28.png)
Flat File
DataSource
for CSV
file
Using Button „Derive Fields from File…“ I will get a suggestion for the necessary structure.
(https://sapanalytix.wordpress.com/wp-content/uploads/2021/01/image-29.png)
(https://sapanalytix.wordpress.com/wp-
content/uploads/2021/01/image-31.png)
We see we have several additional options. „Write Change Log“ is activated by default. „Snapshot Support“ and „Unique Data Records“ are for
more specific scenarios described above. For this type we additionally could flag Special Properties „Inventory-Enabled“ for scenarios like
Inventory Management and „Planning-Enabled“ for scenarios using SAP Business Planning and Consolidation (BPC).
Additionally I need to define fields as key fields and context like right Data Type, Aggregation and Unit/Currency :
(https://sapanalytix.wordpress.com/wp-content/uploads/2021/01/image-34.png)
(https://sapanalytix.wordpress.com/wp-content/uploads/2021/01/image-36.png)
Load
Request
into
Standard
aDSO
We see, in the first step, only the Inbound Table is filled. Last action is „Loading“. Lets activate the request:
(https://sapanalytix.wordpress.com/wp-content/uploads/2021/01/image-37.png)
Activated
data in
Standard
aDSO
(https://sapanalytix.wordpress.com/wp-content/uploads/2021/01/image-38.png)
Now I have 15 new records in the Inbound Table, 1915 from first load in Active and Change Log Table. I activate.
(https://sapanalytix.wordpress.com/wp-content/uploads/2021/01/image-39.png)
Overview
before
activation
(https://sapanalytix.wordpress.com/wp-content/uploads/2021/01/image-40.png)
Overview
after
activation
Inbound Table – 0
Active Table – 1930
Change Log Table – 1930
As there are only new records with new keys, there are only one entry with Recordmode 0 in Change Log.
Inbound Table – 0
Active Table – 1930
Change Log Table – 1942
As we just changed records with a key still existing in the aDSO we just generate Delta-records in Change Log Table. We see now Recordmode X
(Before Image which negativate former records) and an empty Recordmode (After Image – which set new values).
(https://sapanalytix.wordpress.com/wp-content/uploads/2021/01/image-42.png)
Change
Log
Table
with
Before
and
After
Image
records
CompositeProvider
CompositeProvider is the typical InfoProvider to build Queries and serve as an abstraction layer. It combines different InfoProviders (aDSOs,
InfoObjects, CompositeProvider, Open ODS Views) and HANA Views via UNION and JOIN. UNION is always the default.
CompositeProviders can be simple or complex depending on the scenario. Some design considerations can be checked in SAP Note 2271658
(https://launchpad.support.sap.com/#/notes/2271658/). For enhanced and complex modelin scenarios you can check presentation „Lean and
Dynamic Modeling with SAP BW/4HANA (https://www.sap.com/documents/2017/02/62e0d69e-a77c-0010-82c7-eda71af511fa.html)„
(https://sapanalytix.wordpress.com/wp-content/uploads/2021/01/image-44.png)
Modeling of a
CompositeProvider
scenario.
For the Target-side you can also decide to map several InfoObjects/Fields to give the original field different contexts (split dimensions /
satellites).
In the Output view you have some final modeling options. You can group the InfoObjecs and decide about possible associations with
InfoObjects or Open ODS Views. With InfoObjects you can activate navigational attributes and even transitive navigational attributes (attribute
of an attribute – also called snowflaking).
(https://sapanalytix.wordpress.com/wp-content/uploads/2021/01/image-45.png)
Defining Output of
CompositeProvider
InfoObjects
Generic DataSources
Transformation and Data Transfer Process
Graphical Data Flow Modeling
Hierarchies
Deleting and Activating Master Data
InfoObjects
InfoObjects are modeling objects, used to create structures and underliyng tables to model and store different types of data. In BW/4HANA
InfoObjects are optional (before they have been obligatory, now alternativley you can model field-based
(https://help.sap.com/viewer/107a6e8a38b74ede94c833ca3b7b6f51/2.0.0/en-US/66a0e6908ddf406783807af1cb3e02f8.html)) and can be building
blogs for further modeling objects:
Characteristics (e. g. material) which can include attributes, tests and hierarchies (if so we call it a „master-data-bearing“ characteristic)
Key Figures (e. g. quantity)
Units (e. g. currency like $)
Time Characteristics (e. g. calendar day)
Technical characteristics (e. g. request number)
(https://sapanalytix.wordpress.com/wp-content/uploads/2021/01/image-4.png)
InfoObject InfoObject 0MAT_PLANT
In the „General“ view we can define a lot of context for the InfoObject. Furthermore we see the compounding with 0PLANT which means we
have also an compound key on the generated table and therefore can give more detailed context to the material information specific to the plant
context. High Cardinality (https://help.sap.com/viewer/107a6e8a38b74ede94c833ca3b7b6f51/2.0.7/en-
US/f851415842154e59a5f038e458b97a0b.html) flag will lead to enable the InfoObject overcoming the 2 billion record limitation but leads to some
modeling restrictions. See also 2374652 – Handling Very Large Data Volumes in SAP BW/4HANA
(https://launchpad.support.sap.com/#/notes/2374652)
The example 0MAT_PLANT includes „Texts“ which can be defined in the following view. Texts are depending on the users language here and
only a medium text using up to 40 characters can be used. Using „Long Text“ with option „Long Text is Extra Long“ we can can use a text
containing 1333 characters (https://launchpad.support.sap.com/#/notes/1976953).
(https://sapanalytix.wordpress.com/wp-content/uploads/2021/01/image-5.png)
„Master Data/Texts“ view of 0MAT_PLANT
In the following „Attributes“ view we see all the attributes consist of further InfoObjects which could have similar properties.
(https://sapanalytix.wordpress.com/wp-content/uploads/2021/01/image-6.png)
„Attributes“ view of 0MAT_PLANT
Attributes can have different properties like beeing time dependent, beeing a navigational attribut or having further transitive attributes
(https://blogs.sap.com/2018/10/19/how-to-create-transitive-navigation-attributes-in-bw-modeling-tools/). In further views we can set properties
for the BI client or setting runtime properties.
Because it is nice to compare you can see the generated tables in Tx RSD1 in classical BW.
(https://sapanalytix.wordpress.com/wp-content/uploads/2021/01/image-7.png)
InfoObject definition in classical BW with generated tables
What you can still do in BW/4HANA is going to HANA Modeler perspective filtering for all the tables in your BW schema.
(https://sapanalytix.wordpress.com/wp-content/uploads/2021/01/image-8.png)
For external or HANA native usage you can generate a HANA View.
(https://sapanalytix.wordpress.com/wp-content/uploads/2021/01/image-9.png)
Two Calculation Views are possible. In Tx RS2HANA_VIEW you can define where the view should be generated in HANA.
(https://sapanalytix.wordpress.com/wp-content/uploads/2021/01/image-10.png)
Generation of Calculation Views from InfoObject 0MAT_PLANT
Differences are e. g.
(https://sapanalytix.wordpress.com/wp-content/uploads/2021/01/image-11.png)
Without HANA privileges you can also manage Calculation Views in BW via Tx RS2HANA_ADMIN.
(https://sapanalytix.wordpress.com/wp-content/uploads/2021/01/image-12.png)
0MAT_PLANT administration of generated Calculation View
Beside the generic way to fill attributes, texts and hierarchies of an InfoObject there are other ways
(https://help.sap.com/viewer/107a6e8a38b74ede94c833ca3b7b6f51/2.0.7/en-US/2f78886af9ce4d4196dddcff5fedd321.html) to provider data. One is
to use a HANA Calculation View as a base. This is very common in BI Content of Embedded BW systems like here with Customer InfoObject.
(https://sapanalytix.wordpress.com/wp-content/uploads/2021/01/image-13.png)
InfoObject /ERP/CUSTOMER in Embedded BW Content
Generic DataSources
Generally Transformations are a set of rules how to transfer data from a persistent table to another. Here is not much change from BW and BW
on HANA releases except the handling in BW Cockpit which is first available in BW/4HANA and not in BW on HANA. Therefore I give her just
a short overview.
While the general routines above work on the general dataset or data package, there are also single rules for every field.
(https://sapanalytix.wordpress.com/wp-content/uploads/2021/01/image-15.png)
Transformation in BW/4HANA
There are different ways to apply business logic for each field.
Direct Assignment
Formula
Lookup
Constant
Routine
Initial
For Routine it is the same as in the general tab. Once you decided for a Runtime everything needs to be implemented in HANA SQL or ABAP.
For every Transformation you need a Data Transfer Process to control how data is updated using the Transformation.
(https://sapanalytix.wordpress.com/wp-content/uploads/2021/01/image-16.png)
Data Transfer Process
You can filter the necessary data for and run in Full or Delta Extraction Mode and some further options to control the update process.
(https://sapanalytix.wordpress.com/wp-content/uploads/2021/01/image-17.png)
Management ob the generated Requests by DTPs need to be done in BW Cockpit.
(https://sapanalytix.wordpress.com/wp-content/uploads/2021/01/image-18.png)
Manage Requests in DataStore Object
Some actions are dependent on the target object. In Request Management there are additional information and possibilities like checking the
data in the corresponding tables.
(https://sapanalytix.wordpress.com/wp-content/uploads/2021/01/image-19.png)
Manage Request in BW Cockpit
With BW/4HANA we got a new Data Flow object. As there have been Data Flows before, in BW/4HANA it is a central and practical object to
create and handle Data Flows.
If no Data Flow is available you can just start to generate a Data Flow with the „Explore Data Flow“ option in the context menue of an object.
(https://sapanalytix.wordpress.com/wp-content/uploads/2021/01/image-20.png)
Now you can expand the Data Flow to your need, create and manage objects, create new connections to existing objects.
(https://sapanalytix.wordpress.com/wp-content/uploads/2021/01/image-21.png)
Until now the Data Flow is transient. If we want to reuse it or work on later we can save it as an object.
Hierarchies
As far as I see there is not much new with hierarchies compared to older releases.
No activation necessary
Have to be loaded via ODP
Here I think this is very straight forward and having same problems as someone know from previous releases. Happy to hear something else.
One Remark – In Data Protection Workbench there are functions for supporting consistent deletion of master data but seems to be using mainly
standard functionality.
1 Kommentar
Basis hier ist die Schulung BW410 – Data Warehousing with SAP BW/4HANA – Col 17.
Key Concepts
Master Data
Transactional Data
Integrating Native SAP HANA Models
OpenODS Views
Transformations and Data Transfer Processes
Operating
Glossary
Starten wir evtl. mit ein paar neueren Begriffen aus dem Glossary:
BAdI-Provider – An InfoProvider that is developed using ABAP code and is used as a virtual data source when a standard InfoProvider does
not fit the requirements
Semantic Group – Modeling object used to define data partitioning logic to improve reporting performance
Key Concepts
Starting in the 1990, DWH relieved OLTP systems from reporting tasks by periodically copy the data in the DWH. Modern DWH provide also
live data access and near realtime replication depending on customer needs. Typically transformation take place in the DWH e. g.:
aggregate measures
calculate new values
convert currencies
apply hierachies
…
(https://sapanalytix.wordpress.com/wp-content/uploads/2021/01/image.png)
Characteristics of DWH are Consolidation and Standardization of data to support Decision Making.
Main Tasks of a DWH are defining a Common Semantics, Harmonizing data, SVOT, support the unknown.
About Single Point of Truth/Single Version of Truth (SVOT) we take the following understanding:
…the idyllic notion that you could have a centralized database with which the CEO would get consistent answers to basic questions such as
“How many customers do I have?” or “How many products did I sell last quarter?”
SAP BW/4HANA (https://sapanalytix.wordpress.com/2016/09/04/sap-bw4hana/) – a packaged solution with a complete toolset and highly
optimizes for an SAP world (since around 1998 as SAP BIW/SAP BW/SAP BI/SAP BW powered by HANA – BW/4HANA started 2016)
SAP Data Warehouse Cloud (https://sapanalytix.wordpress.com/2019/06/10/sap-data-warehouse-cloud/) – a new (2019) cloud-based solution
providing more self-service capabilities
SAP SQL Data Warehousing (https://sapanalytix.wordpress.com/sap-hana-sql-data-warehouse/) – a family of SAP tools to develope a SAP
HANA (https://sapanalytix.wordpress.com/2015/08/11/sap-hana-aus-analytics-sicht/)-based DWH on your own (vgl. DSAG Leitfaden
(https://www.dsag.de/sites/default/files/2020-12/2020%20OKt_dsag_tg_hana-sql-dw_orientierungsleitfaden_final.pdf) (german))
For more details about the current SAP DWH strategy see current slides here (https://www.sap.com/documents/2016/06/a2df037d-767c-0010-
82c7-eda71af511fa.html).
Focus here is SAP BW/4HANA where the following key layers are supported within the solution:
Analysis (covered by BusinessObjects, SAP Analytics Cloud or 3rd Party – delivered via BW Queries)
Data Modeling (Physical and virtual layers with business semantics)
Data Acquisition (ETL & Connectivity)
SAP delivers rich SAP BW/4HANA Content via an Add-On. Detailed information can be found in the current slides here
(https://www.sap.com/documents/2017/06/4e8689f9-c17c-0010-82c7-eda71af511fa.html). Content can be used for:
SAP HANA (https://sapanalytix.wordpress.com/sap-hana-plattform/) is not just a database. Several data processing engines are build in like
Machine Learning (APL/PAL (https://sapanalytix.wordpress.com/2019/07/08/sap-hana-whats-new-pal-journey/)) Spatial Analytics, Text
Analytics, Graph Processing, … Via Push-Down Processing also for BW/4HANA most of the data processing is done where the data is – in the
database. No transfer to an application server necessary.
HANA supports classical row table architecture but analytical power comes from column store. Column store tables work on the one side as a
index-like fast read on the compressed column and on the other side only necessary columns need to be read what works well for OLAP
(https://en.wikipedia.org/wiki/OLAP_cube) tasks.
Column store leads also to reduced workload and administration effort in BW as no aggregates are needed and no activation change run for
master data is necessary. Typically there is also no need for indices (even if they are available) to improve performance of reading data.
BW/4HANA Tools
(https://sapanalytix.wordpress.com/wp-content/uploads/2021/01/image-2.png)
BW/4HANA Cockpit (Tx BW4WEB)
Data Warehousing Workbench – for further administrative and operational tasks (not yet transfered to BW/4HANA Cockpit)
(https://sapanalytix.wordpress.com/wp-content/uploads/2021/01/image-3.png)
RSA1 in SAP GUI (formerly Data Warehousing Workbench)
Wrap-Up
With BW/4HANA you have a complete toolset to develop and operate an Enterprise Data Warehouse as an on-premises solution
HANA supports in-memory, column store and data compression
2 Kommentare
Erstelle kostenlos eine Website oder ein Blog auf WordPress.com. (https://wordpress.com/?ref=footer_website)