Page tree
Skip to end of metadata
Go to start of metadata

Core Features of Analytic/OLAP Engine


Introduction to OLAP Processor/Analytic Engine 

Here the core features like calculation of formulas of the OLAP engine are discussed. In the following its normally necessary that you are already familiar with the content of the online documentation, please see link below. Since there are also lots of good SAP notes/KBAs to many of the most important features we tried to point to them in the text whenever reasonable. A comprehensive list of them is given below.
A good introduction and overview to this topic is available in the following note:

OLAP Engine

1151957 Interesting facts about the OLAP Processor/Analytic Engine


SAP Online Documentation

OLAP Engine/Analytic Processor

Transaction RSFC

In order to better understand the OLAP features, it is also recommended to play around with the delivered sample queries in transaction RSFC (How to use RSFC, see KBA 1508237).

SAP Consulting Notes at a glance

Check out if you know all of them:

Top 10: all of them highly recommended
  • 1591837 How to analyze query results
  • 1151957 Interesting facts about the OLAP Processor/Analytic Engine
  • 351827 Incorrect data with multiple selection?
  • 1385580 Formula Variables
  • 1681396 Query Performance
  • 1967896 Basic recipe for troubleshooting memory problems with Bex queries
  • 1717880 Virtual Key Figures & Characteristics
  • 1732026 Understand the result for key figures using 'Constant Selection'
  • 1240163 Amount too high by factor of 100 for HUF, JPY currencies
  • 1592982 VC: Query selections not passed to virtual cube

Features / Topics

List of Features / Topics

OLAP Core Search

SAP Support Troubleshooting Guideline

Main Processing Layers

 Basically there are three main processing blocks which we call Frontend, OLAP Engine and DataManger:

              OLAP Engine (or Analytic Engine, OLAP Processor) is the layer responsible for receiving and processing requests from the Frontend. Depending on the navigation state, the frontend sends information what characteristics are in the drill-down, what values have been filled into variables and what dynamic filters might have been set. This information is summarized into an OLAP request and handed over to the DataManager. The DataManager then retrieves the data from the respective InfoProvider, and hands it back to the OLAP Engine which can then perform the calculations, currency translations, exception aggregations etc defined in the query. The following info graphic (flow chart) gives an rough overview about the various processing steps (see also Query Performance where you can find more details):

Processing Blocks

OLAP features: many OLAP features are processed here, e.g. exception aggregations, unposted values (access type master data) are carried out and formulas are calculated

Checking Selections: data is sorted according to structure element selections or restricted key figures, virtual key figures are calculated, currency conversion is carried out

Data Sets

DM Data Set: data set transferred from data base/BWA/Virtual Provider to the Data Manger

SP Data Set: internal table which is used to interact (read/write) with the OLAP cache

Query Result Set: final query result

 From the OLAP Engine perspective, the following list of processing steps are the most important ones. Please see also the SAP Online documentation Aggregation Steps and the SAP note 1151957 for further details.

  1. the OLAP Engine gets data from the DataManager (data base, BWA)
  2. standard aggregation is carried out for the characteristics in the drilldown
  3. if Exception Aggregation is used, the aggregation regarding the Reference Characteristic (invisibly drilled down) is done
  4. Formulas/CKF(Calculated Key Figures) are processed
  5. if Exception Aggregation for Formulas is used, the aggregation regarding the Reference Characteristic is carried out after the calculations
  6. Operations on the Result Set like e.g. 'Local calculations'& Conditions and Zero Suppression are carried out. This last processing block depends on the frontend used. E.g. if the query is executed with th BEx Analyzer the processing is done in ABAP on the application server (as in RSRT). If the query is run in the BEx Java runtime, in some cases the processing is done on the Java server.