BW Development Standards Part 2: LSA

LSA stands for ‘Layered Scalable Architecture’. This is followed as a general thumb rule in BW systems running on Oracle database. With the advent of HANA, LSA is now replaced with LSA++

Below is the generic LSA architecture details and guidelines.

Data Acquisition Layer

This layer is the first layer of write-optimized DSOs which have raw data coming from the source.

This  layer can be skipped if not required as PSA will have source data. Here, you have to set the proper retention time of the PSA.

Standards of Data Acquisition layer

  • Data Model:

    The data structure of the first layer DSO should match as far as possible with the source.

  • Data Transformation:

    Transformation should perform straightforward one to one mapping to the first layer. There should not be any filters and manipulation on the data.

  • Content:

    You should extract all data currently available in the source system to the first layer DSO, regardless of whether it is required or not by the business reporting.

  • Referential Integrity and Performance:

    Do not generate SIDs on the first layer DSO. Do not create secondary indexes on it.


Business Transformation Layer

This layer will mostly have DSOs. If the datasource supports direct update to infocubes, this layer can also consists of Infocubes.


  • Data model:

Use this layer to store transformed, cleansed and harmonized detail data.

  • Data Transformation:

All the business logic, filtering and derivations should occur here.

  • Referential Integrity and Performance:

Standard DSO consume database space as they have 3 tables. Also the change log table store persistent copies of the data.. Do not turn on SID generation upon Activation.

If queries are based on the integration layer DSO, you can consider creating secondary indexes on them.

Reporting Layer


  • Data Transformation:

Necessary derivations can be performed and using start/end or field routines.

  • Data Selection:

Load only required data to infocubes. Use start routine to delete the unwanted rows while loading to the cube.

  • Performance:

You should use delta load while loading from DSO to cube. If the delta extractions are having small data, and cube is large, no need to drop and rebuild indexes while loading.

Virtual Layer: Multiproviders

All queries must access data through multiproviders. No query should directly be based on infocube, DSO or infoset.

PS: All these are generic standards and may vary based on your client and the BW system.

More on standards in Part 3…