Technology Blogs by SAP
Learn how to extend and personalize SAP applications. Follow the SAP technology blog for insights into SAP BTP, ABAP, SAP Analytics Cloud, SAP HANA, and more.
cancel
Showing results for 
Search instead for 
Did you mean: 
former_member205880
Active Participant
20,849
Hi!

In the post I will demonstrate use of Advanced DSO (aDSO) with Snapshot Support Option enabled. There is a description of Snapshot Option from documentation.
If your DataSource only allows full update, you can use the Snapshot Support flag to make sure that deleted requests are still updated. Upon activation, the system recognizes records that are in the active table but not in the load request. These are written to the change log as reverse images.

Make sure that all records are contained during every load, as data could otherwise be lost.

For demo I am using BW/4 SP04 system. This option was not appeared in BW/4, it was available is NW BW 7.5 already.

Demo Scenario


I am going to demonstrate functionality of this options.

For this purpose I created my own table similar to HR Personal Actions table (PA0001).



I created also:

  • Generic DataSource based the table

  • Advanced DSO with the same structure based on fields

  • Transformation (1:1) and DTP (with FULL) for data provisioning





Demo Functionality


1.Create demo records in HR Actions table, execute DTP, activate data and check aDSO tables.


















Source Table and Inbound Table*

*had the same data before activation

Active Table (after activation)


Change Log (after activation)


2. Change records in HR Action table, execute DTP, activate data and check aDSO tables.
















Change data in Source Table:

  • For employee 1 - change non-key fields

  • For employee 2 - delete record completely

  • For employee 3 - add new record


Active Table (after activation)
Change Log (after activation)


Snapshot Option functionality is working fine:

  • Active Table contain last snapshot data

  • Change Log Table contain both type of records:

    • reverse for deleted records (R)

    • before image(X) and after image (' ') for changed records.




Performance Test


1.HR Actions table was refilled with new dataset, that had about 1 Million number of records.



Initially we had 10 employees with 1 action each at 01.01.2010. Then I created and appended from this initial 10 records by increasing calendar day in future 1 Million records.

2. Data was loaded and activated.

3. Data in HR Action table changed, each 31.12.YYYY action was deleted.

4. Changed Data was loaded and activated.

5. All requests was activated successfully.

6. Loading process and activation process each performed in 3 sec. Seems for me normal result at test system.



7. Change log had 2700 records for second request with record mode 'R'.

Summary


In the post I demonstrated functional and performance part of aDSO Snapshot options.

I have to say one word about use-cases:

  • If you have only full option to load data, you could use this option and don't case anymore about deleted records in source system.

  • I think it is better then full deletion and reloading of BW Models, because it could make a delta records for up-flow BW Models.


 

Thank you for attention!
9 Comments