You are on page 1of 21

CNG TY GII PHP PHN MM TI

CHNH

SAP Data Service


Performance Optimization
08/2015

www.fssc.com.v
n

Committed Professional - Understanding

Page 1

Contents
Quick Tips for Job Performance
Optimization in BODS
Push down
Data Transfer
Bulk loading
Note

www.fssc.com.v
n

Committed Professional - Understanding

Page 2

Quick Tips
- m bo rng hu ht tt c cc Dataflows
c ti u ha. Ti a ha vic y hot
ng (push-down operations) xu ng
database cng nhiu cng tt. C th ki m
tra vic ti u ha bng cch s dng ty
chn Display Optimized SQl bn trong
Dataflow. SQL nn bt u bng INSERT
INTOSELECT statements
www.fssc.com.v
n

Committed Professional - Understanding

Page 3

Quick Tips
- Chia nh Dataflow thnh nhiu Dataflow
nu c th. iu ny gip cho vic bo tr
hoc ti s dng trong tng lai c d
dng hn; cng nh m bo vic hu ht
cc Dataflow c th c push down.
- Nu khng th thc hin pushdown trong 1
Dataflow th c th kch hot tnh nng Bulk
Loader target table. Click p v target
table, chn Bulk Loader Options. Tuy nhin
ch kch hot c trong trng hp target
table khng phi l bng tm.
- Select Distinct: Trong BODS Select ->
www.fssc.com.v
n

Committed Professional - Understanding

Page 4

Quick Tips
- Lookup: S dng Lookup table nh l
source table. K thut ny c li th h n
vic s dng lookup function vi n y ho t
ng thc thi join xung bn di database.
Ngoi ra n s d dng cho vic bo tr,
sa cha dataflow. Thm na lookup s
truy xut vo bng, n tng record lm
tng hot ng I/O trong DS.
- S dng Query Transform chia d liu
thay v s dng Case transforms v n t n
ti nguyn chuyn i trong BODS.
- Hn ch s dng cc tnh nng nng cao
www.fssc.com.v
n

Committed Professional - Understanding

Page 5

Push down
- To Before runnoptimize performance, the
software pushes down as many SELECT
operations as possible to the source
database and combines as many operations
as possible into one request to the
database.
- Before runing a job, you can view the SQL
that is generated and adjust your design to
maximize the SQL that is pushed down to
improve performance.
www.fssc.com.v
n

Committed Professional - Understanding

Page 6

Full push-down operations


- The Optimizer always first tries to do a full
push-down operation.
- A full push-down operation is when all
transform operations can be pushed down
to the databases.
- SAP Data Services sends SQL INSERT
INTO... SELECT statements to the target
database where SELECT retrieves data
from the source
www.fssc.com.v
n

Committed Professional - Understanding

Page 7

Full push-down Conditions


- All of the operations between the source
table and target table can be pushed down.
- The source and target tables are from the
same datastore, they are in datastores that
have a database link defined between them,
or if the datastore has linked remote
servers.
- If the source and target are not in the same
datastore, the software can also do a full
push-down operation if you use one of the
www.fssc.com.v
n

Committed Professional - Understanding

Page 8

Full push-down Ways


- To enable a full push-down from the source
to the target, you can also use the following
features:
Data_Transfer transform
Database links ?
Use Linked Remote Servers option ?

www.fssc.com.v
n

Committed Professional - Understanding

Page 9

Partial push-down operations

- When a full push-down operation is not


possible, SAP Data Services still pushes
down the SELECT statement to the source
database.
- Operations within the SELECT statement
that the software can push to the database
include:
Aggregations: GROUP BY statement,
Distinct rows
Filtering
www.fssc.com.v
n

Committed Professional - Understanding

Page 10

Operations that cannot be pushed down

- Conditional, Merge, Table Comparison,


Pivot, UnPivot, History Preservation, and
Hierarchy Flattening will not push down.
- Data Quality transforms wont push down.
- Many built-in functions, like decode, will
push down properly. Custom functions will
not push down.
- Joins between sources that are on different
database servers that do not have database
links defined between them.
www.fssc.com.v
n

Committed Professional - Understanding

Page 11

Operations that cannot be pushed down


Job_NO_SQL: Full Push Down

Tt c operations u c x l di datasource
www.fssc.com.v
n

Committed Professional - Understanding

Page 12

Data Transfer
Data transfer transformation is used
extensively to optimize the performance of
the job by pushing down operations to the
Database level.
Data transfer transformation insures the
operations for push down.
Data transfer transformation creates a
temporary Database table that is used as
staging table for operation
By pushing down operations to the source
www.fssc.com.v
n

Committed Professional - Understanding

Page 13

Data Transfer - Exemple


- Job_NO_TR: Join 2 bng khc datastore(1
bng Sybase, 1 bng oracle)

www.fssc.com.v
n

Committed Professional - Understanding

Page 14

Data Transfer - Exemple


Job_TR_BL: S dng Data Transfer

www.fssc.com.v
n

Committed Professional - Understanding

Page 15

Bulk Loading (for Sybase IQ)

- Bulk loading is the fastest way to insert


large numbers of rows into a Sybase IQ
table
1. First, Data Services loads the data into its
memory. In this step it will also perform all
kind of error handling that is specified at the
level of the file format!
2. Second, Data Services writes the just
loaded data to another file into its bulk
www.fssc.com.v
n

Committed Professional - Understanding

Page 16

Bulk Loading (for Sybase IQ)

So snh thi gian thc thi khi s dng Bulk Load


www.fssc.com.v
n

Committed Professional - Understanding

Page 17

Bulk Loading (for Sybase IQ)

So snh thi gian thc thi khi s dng Bulk Load

www.fssc.com.v
n

Committed Professional - Understanding

Page 18

Note
- Trong 1 DF, khng c set 2 bulk load.

www.fssc.com.v
n

Committed Professional - Understanding

Page 19

Note
Trng hp chn 2 bulk load trong cng 1
DF

www.fssc.com.v
n

Committed Professional - Understanding

Page 20

Note
Trng hp chn duy nht 1 bulk load trong cng 1 DF

www.fssc.com.v
n

Committed Professional - Understanding

Page 21

You might also like