DSO – Step by Step (Part 1 of 2) : Creation, Extraction, Transformation
Note: This document applies to BW 7.x over traditional RDBMS, targeting beginners in BW space, providing them a quick step-by-step visual reference for creation, extraction, transformation, loading, activation and maintenance of a DSO. (If the images in this document are blurry/not clear, click on the image to open it in high resolution)
DataStore Object (DSO) is used to store data at the most granular form, i.e. at document level. This data can be used for reporting as well as for passing on to other data targets like InfoCubes. Steps described in this document applies to the most commonly used type – Standard DSO. (These steps also apply to Write-Optimized DSOs, except the data activation step)
This document is divided into 2 parts due to the length of the content.
- Part 1 – Creation, Extraction and Transformation
- Part 2 – Loading, Activation and Maintenance. (click here to go to part 2)
1. Creation & Configuration
- Load Data Warehouse Workbench (DWW) using transaction code RSA1
- Under Modeling section select InfoProvider. This will list all the InfoProviders in the right side of the screen grouped by InfoAreas.
- Right-Click the InfoArea where the DSO needs to be created and select Create DataStore Object option
- In the pop-up window, provide a Name (not more than 8 chars) and Description. You can see the ObjectType set to DataStore Object. (You have the option to change this to other InfoProvider type. Be careful not to change the type). If you need to use a structure similar to an existing DSO, you can enter the Technical Name of that DSO in the Template field. After filling in the required field click the Create icon.
- In the Edit DataStore Object screen, under Settings section you can specify various configuration settings. Click on the Edit Button () to open a pop-up window where you can specify DSO type and Create SIDs option. Check the Set Quality Status to ‘OK’ option as this is required to activate the DSO data and make it available for reporting and loading it to other data targets.
- Under Key fields add the fields that uniquely identify a record, and under Data fields add the fields that carry information for this DSO. You can do so by right-clicking Key fields/Data fields and select InfoObject Direct Input option as shown below.
- In the Insert InfoObjects pop-up, type in the required list of InfoObjects for both Key fields and Data fields.
- Once all the required fields are added, Save(Ctrl+S), Check(Ctrl+F2 or ) and Activate(Ctrl+F3 or ) the DSO. Once successfully activated, the status changes to Saved and Active and the final screen will be as shown below. The DSO is now ready for data to be loaded into it.
2.1 Create a DataSource – DataSource is the staging area where a copy of the data from the source system(Flat file/SAP ERP/other DB) is stored in a flat table. It is also referred as persistent staging area, shortly PSA. Below are the steps to create and configure a DataSource.
(To keep it simple and focus on ETL process, a .csv file is used as data source. Normally SAP ERP System will be the data source.)
- In DWW > Modelling > DataSources, select the Source System type to a Flat file system as shown below.
- List of DataSources will be displayed in the right pane grouped under Application Components. Right Click the Application Component where the DataSource needs to be created and select Create Data Source… option
- In the Create DataSource pop-up, provide the DataSource name, Source System name and the type of Data. Since the data to be loaded is transaction data we select Transaction Data as DataSource Data Type. After filling in the required details, click the Create button ().
- Change DataSource screen opens up. In the General Info. tab fill in the short, medium and long description for the DataSource. Leave other data unchanged.
- In the Extraction tab, specify the .csv file path from which the data is to be extracted. Also specify other details like Header Rows to be Ignored and Data Format accordingly as shown below. Leave the Delta Process options with the default value. Since source system is an .csv file, delta load is not possible, but only full upload.
- In Proposal tab, click the Load Example Data button. This will read/parse the .csv file and will propose the column name and corresponding length and data type for each column. This is just a proposal by the BW system which may not be 100% correct.
- The Fields tab is where the structure of the PSA/DataSource is finalized. The proposed metadata appears here and it can be edited to suit the needs. You can enter the InfoObject name in the InfoObjects column to copy the defaults from that InfoObject’s metadata definition. This will ensure the correct technical specifications for the fields proposed.
- The Preview tab allows you to see the data in PSA/DataSource format before actually loading the data into BW system. Click on the Read Preview Data button to preview the data.
2.2 Create an InfoPackage – InfoPackage is a scheduler object in BW system, that extracts data from the source system and saves the copy in to PSA/DataSource. Below are the steps to create, configure and execute an InfoPackage.
- In DWW > Modeling > DataSources, locate the DataSource you have created. Right click the DataSource and select Create infoPackage… option
- In the Create InfoPackage pop-up, provide the InfoPackage Description.
- Maintain InfoPackage screen opens up. In the Data Selection tab, you’ll see the list of fields along with filtering criteria used while extracting data from source system. Since we haven’t configured any field in DataSource for filtering, the below screen lists none.
- Extraction tab has the data auto-populated from the Extraction tab in DataSource definition. This lists the source file name, file type and format. The auto-populated data can be edited if required.
- Processing tab specifies how the extraction is processed by BW system and where it is stored. As shown below, select Only PSA. This enable to edit the data in PSA before it is loaded into a data target.
- Update tab has options to specify whether the update is a delta update or a full update. Since a flat file is used for this illustration, it is not delta capable and Full Update is the only listed option as shown below.
- Schedule tab allows you to specify when to start the execution of extraction, either immediately or at a scheduled time. To follow this Illustration, choose Start Data load Immediately option and click the Start button. This will now extract data from .csv file and load it into the DataSource/PSA table.
- Now click on the Monitor icon ( or F6) to check the status of data extraction. This opens up the Monitor InfoPackage screen which lists a variety of information related to the extraction like status, no. of records, time taken etc. The Details tab shows the extraction details broken into various steps as shown below. You can also click on PSA Maintenance icon ( or Ctrl+F8) to view/edit the actual data loaded into PSA.
3.1 Create a Transformation – Transformation object specifies the rules on how the source object fields should map to data target fields. There are multiple transformation options. For this illustration Direct Assignment is used. Below are the steps to create a transformation.
- In DWW > Modeling > InfoProvider, locate & right click the DSO and select Create Transformation… option
- In the Create Transformation pop-up, specify the source and the target for the transformation. Source being the DataSource we just created and the target being the DSO. Then click the Continue button ().
- Change Transformation screen opens up. On the left is the source object and on the right is the target object for the transformation. BW system automatically matches the InfoObject fields. For those unmapped, click & drag the field from source and drop it on appropriate field at the target. The default transformation rule is Direct Assignment. This can be changed to required type by right clicking on the line and providing alternate options in the pop-up that opens.
This completes the Creation, Extraction and Transformation steps for a DSO.
Click here to go to Part 2 where Loading, Activation and Maintenance of a DSO are Illustrated.