Sunteți pe pagina 1din 14

All about Data Transfer Process (DTP) SAP BW 7 Data Transfer Process (DTP)

DTP determines the process for transfer of data between two persistent objects within BI. As of SAP NetWeaver 7.0, InfoPackage loads data from a Source System only up to PSA. It is DTP that determines the further loading of data thereafter. Use
Loading data from PSA to InfoProvider(s). Transfer of data from one InfoProvider to another within BI. Data distribution to a target outside the BI system; e.g. Open HUBs, etc.

In the process of transferring data within BI, the Transformations define mapping and logic of data updating to the data targets whereas, the Extraction mode and Update mode are determined using a DTP. NOTE: DTP is used to load data within BI system only; except when they are used in the scenarios of Virtual InfoProviders where DTP can be used to determine a direct data fetch from the source system at run time. Key Benefits of using a DTP over conventional IP loading 1. DTP follows one to one mechanism between a source and a Target i.e. one DTP sources
data to only one data target whereas, IP loads data to all data targets at once. This is one of the major advantages over the InfoPackage method as it helps in achieving a lot of other benefits. Isolation of Data loading from Source to BI system (PSA) and within BI system. This helps in scheduling data loads to InfoProviders at any time after loading data from the source. Better Error handling mechanism with the use of Temporary storage area, Semantic Keys and Error Stack.

2. 3.

Extraction
There are two types of Extraction modes for a DTP Full and Delta. Full: Update mode full is same as that in an InfoPackage.

It selects all the data available in the source based on the Filter conditions mentioned in the DTP. When the source of data is any one from the below InfoProviders, only FULL Extraction Mode is available.

InfoObjects InfoSets DataStore Objects for Direct Update

Delta is not possible when the source is anyone of the above. Delta: Unlike InfoPackage, delta transfer using a DTP doesnt require an explicit initialization. When DTP is executed with Extraction mode Delta for the first time, all existing request till then are retrieved from the source and the delta is automatically initialized.

The below 3 options are available for a DTP with Extraction Mode: Delta.
Only Get Delta Once. Get All New Data Request By Request. Retrieve Until No More New Data.

Only get delta once:

If this indicator is set, a snapshot scenario is built. The Data available in the Target is an exact replica of the Source Data. Scenario: Let us consider a scenario wherein Data is transferred from a Flat File to an InfoCube. The Target needs to contain the data from the latest Flat File data load only. Each time a new Request is loaded, the previous request needs to be deleted from the Target. For every new data load, any previous Request loaded with the same selection criteria is to be removed from the InfoCube automatically. This is necessary, whenever the source delivers only the last status of the key figures, similar to a Snap Shot of the Source Data. Solution Only Get Delta Once A DTP with a Full load should suffice the requirement. However, it is not recommended to use a Full DTP; the reason being, a full DTP loads all the requests from the PSA regardless of whether these were loaded previously or not. So, in order to avoid the duplication of data due to full loads, we have to always schedule PSA deletion every time before a full DTP is triggered again. Only Get Delta Once does this job in a much efficient way; as it loads only the latest request (Delta) from a PSA to a Data target.

1. Delete the previous Request from the data target. 2. Load data up to PSA using a Full InfoPackage. 3. Execute DTP in Extraction Mode: Delta with Only Get Delta Once
checked.

The above 3 steps can be incorporated in a Process Chain which avoids any manual intervention.
II Get all new data request by request: If you set this indicator in combination with Retrieve Until No More New Data, a DTP gets data from one request in the source. When it completes processing, the DTP checks whether the source contains any further new requests. If the source contains more requests, a new DTP request is automatically generated and processed.

NOTE: If Retrieve Until No More New Data is unchecked, the above option automatically changes to Get One Request Only. This would in turn get only one request from the source. Also, once DTP is activated, the option Retrieve Until No More New Data no more appears in the DTP maintenance.

Package Size The number of Data records contained in one individual Data package is determined here. Default value is 50,000. Filter The selection Criteria for fetching the data from the source is determined / restricted by

filter.

We have following options to restrict a value / range of values: Multiple selections OLAP variable ABAP Routine A on the right of the Filter button indicates the Filter selections exist for the DTP.

Semantic Groups Choose Semantic Groups to specify how you want to build the data packages that are read from the source (DataSource or InfoProvider). To do this, define key fields. Data records that have the same key are combined in a single data package. This setting is only relevant for DataStore objects with data fields that are overwritten. This setting also defines the key fields for the error stack. By defining the key for the error stack, you ensure that the data can be updated in the target in the correct order once the incorrect data records have been corrected.

A on the right side of the Semantic Groups button indicates the Semantic keys exist for the DTP.

Update

Error Handling
Deactivated:

If an error occurs, the error is reported at the package level and not at the data record level. The incorrect records are not written to the error stack since the request is terminated and has to be updated again in its entirety. This results in faster processing.

No Update, No Reporting:

If errors occur, the system terminates the update of the entire data package. The request is not released for reporting. The incorrect record is highlighted so that the error can be assigned to the data record.

The incorrect records are not written to the error stack since the request is terminated and has to be updated again in its entirety.

Valid Records Update, No Reporting (Request Red) :

This option allows you to update valid data. This data is only released for reporting after the administrator checks the incorrect records that are not updated and manually releases the request (by a QM action, that is, setting the overall status on the Status tab page in the monitor). The incorrect records are written to a separate error stack in which the records are edited and can be updated manually using an error DTP.
Valid Records Update, Reporting Possible (Request Green) :

Valid records can be reported immediately. Automatic follow-up actions, such as adjusting the aggregates, are also carried out. The incorrect records are written to a separate error stack in which the records are edited and can be updated manually using an error DTP.

Error DTP Erroneous records in a DTP load are written to a stack called Error Stack. Error Stack is a request-based table (PSA table) into which erroneous data records from a data transfer process (DTP) are written. The error stack is based on the data source (PSA, DSO or Info Cube), that is, records from the source are written to the error stack. In order to upload data to the Data Target, we need to correct the data records in the Error Stack and manually run the Error DTP.

Execute

Processing Mode Serial Extraction, Immediate Parallel Processing: A request is processed in a background process when a DTP is started in a process chain or manually.

Serial in dialog process (for debugging): A request is processed in a dialog process when it is started in debug mode from DTP maintenance. This mode is ideal for simulating the DTP execution in Debugging mode. When this mode is selected, we have the option to activate or deactivate the session Break Points at various stages like Extraction, Data Filtering, Error Handling, Transformation and Data Target updating. You cannot start requests for real-time data acquisition in debug mode.

Debugging Tip:

When you want to debug the DTP, you cannot set a session breakpoint in the editor where you write the ABAP code (e.g. DTP Filter). You need to set a session break point(s) in the Generated program as shown below:

No data transfer; delta status in source: fetched: This processing is available only when DTP is operated in Delta Mode. It is similar to Delta Initialization without data transfer as in an InfoPackage. In this mode, the DTP executes directly in Dialog. The request generated would mark the data found from the source as fetched, but does not actually load any data to the target. We can choose this mode even if the data has already been transferred previously using the DTP.

Delta DTP on a DSO


There are special data transfer options when the Data is sourced from a DTP to other Data Target.

Active Table (with Archive)

The data is read from the DSO active table and from the archived data.

Active Table (Without Archive) The data is only read from the active table of a DSO. If there is data in the archive or in near-line storage at the time of extraction, this data is not extracted.

Archive (Full Extraction Only) The data is only read from the archive data store. Data is not extracted from the active table.

Change Log The data is read from the change log and not the active table of the DSO.

Why Data Transfer Process (DTP) over Info Package (IP) in SAP BI 7.0
Posted by Venkateswarlu Nandimandalam in SAP NetWeaver Business Warehouse on Aug 23, 2011 3:23:54 PM
inShare

DTP (Data Transfer Process): Data transfer process (DTP) loads data within BI from one object to another object with respect to transformations and filters. In short, DTP determines how data is transferred between two persistent objects. It is used to load the data from PSA to data target (CUBE or DSO or Info Object or External systems) thus, it replaced the data mart interface and the Info Package. In BI 7.0 Info Package pulls the data only till data source/PSA from source system, thereafter we need to create the transformation and DTP to pull the data further in BI system and to external systems. IP (Info Package): The Info Package is an entry point for SAP BI to request data from a source system. Info Packages are tools for organizing data requests that are extracted from the source system and are loaded into the BW system. In short, loading data into the BW is accomplished using Info Packages. Where DTP comes in Data Flow:

DTP can be used to load the data in the following situations:

1) Loading data from DSO to DSO/CUBE, CUBE to CUBE 2) Real time Data Acquisition 3) For Data Direct Accessing. 4) Loading data from BI to External systems (for example Open Hub Destinations) Advantages of DTP: 1) Delta Management 2) Handling duplicate records 3) Filters 4) Parallel processing 5) Error Handling 6) Debugging 1) Delta Management: i) DTP follows one to one mechanism, i.e. We have to create one DTP for each data target, whereas IP loads to all data targets at once.

Advantage: Let's take an example where we are loading delta data using IP to 5 data targets. The data was successfully loaded into 4 targets but failed in 1 target. In this case we have to delete the request from all 5 targets and need to re-load the IP to load the data. If we use DTP (one to one mechanism), we need to just delete the request from failed targets and re-load to the failed target, which is very easier than loading to all 5 targets once again. I) One DTP can be used for Full and Delta loads, whereas in IP we have to create different Info Packages for Full and Delta loads, iii) No Full Repair/Repair full request concept in DTP as it has one to one delta mechanism. Note: Data Mart and Delta for DTP is maintained in table RSMDATASTATE. In Table RSMDATASTATE i) Field DMALL is used to keep track of Delta. It increases when Delta completes ii) Field DMEXIST is used to prevent deletion of Source request. Deleting data request deletes the entry in table RSSTATMANREQMAP which keep track of data marts 2) Handling duplicate records: While we perform attributes or text loading, we will get the records with same key fields. Sometimes based on the properties of the fields we have to load this records to the target (Info object).This can be easily achieved by DTP. We have to set the option Handle Duplicate Record Keys indicator in update tab of DTP to get this feature enabled. 3) Filters:

DTP filter's the data based on Semantic Key which is not possible on IP. We can use filters between DSO and CUBE also. 4) Parallel processing: The request of a standard DTP should always be processed in as many parallel processes as possible. There are 3 processing modes for background processing of standard DTPs. i) Parallel extraction and processing (transformation and update) The data packages are extracted and processed in parallel, i.e. The parallel process is derived from the main process for each data package. ii) Serial extraction, immediate parallel processing The data packages are extracted sequentially and processed in parallel, i.e. The main process extracts the data packages sequentially and derives a process that processes the data for each data package. iii) Serial extraction and processing of the source packages The data packages are extracted and processed sequentially. We can change this setting in the execution tab of DTP. The maximum number of background parallel processes we can set for a DTP is 99. 5) Error Handling: The error DTP concept is introduced to handle the error records in DTP. While loading the data using DTP, error records will move to the error stack and the correct records will load to the target. We can edit this error records in error stack and load to the target using Error DTP, which is not possible in IP.

6) Debugging:

Simulating the data update and debugging helps us to analyze an incorrect DTP request. In this way we can also simulate a transformation prior to the actual data transfer if we would like to check whether it provides the desired results. We can define break points for debugging by choosing change break points, which was not available in Info Package. Debugging can be done in 2 ways i) Simple Simulation ii) Expert Mode For more information about DTP, go through the below link http://help.sap.com/saphelp_nw2004s/helpdata/en/84/497e4ec079584ca36b8edba0ea9495/frameset.htm

S-ar putea să vă placă și