36

Real World Experience Oracle In-Memory and SAP BW SAP BW Object Collect current Performance Data of SAP BW Object Apply In-Memory to SAP BW Object Collect Performance Data with In-Memory

  • Upload
    dotuyen

  • View
    235

  • Download
    2

Embed Size (px)

Citation preview

Copyright©2016,Oracleand/oritsaffiliates.Allrightsreserved.|

RealWorldExperienceOracle12cIn-MemoryandSAPBWhowtoachievesuperiorperformance,....

JuergenMuellerDirectorSoMwareDevelopmentRealWorldPerformance–SAP,September,2016SESSION–CON6458

Copyright©2016,Oracleand/oritsaffiliates.Allrightsreserved.|

SafeHarborStatementThefollowingisintendedtooutlineourgeneralproductdirecXon.ItisintendedforinformaXonpurposesonly,andmaynotbeincorporatedintoanycontract.Itisnotacommitmenttodeliveranymaterial,code,orfuncXonality,andshouldnotberelieduponinmakingpurchasingdecisions.Thedevelopment,release,andXmingofanyfeaturesorfuncXonalitydescribedforOracle’sproductsremainsatthesolediscreXonofOracle.

3

Copyright©2016,Oracleand/oritsaffiliates.Allrightsreserved.|

•  SessionID:CON6460•  LayeredSo>wareArchitecturesandPerformanceintheRealWorld

•  Monday13:45@MosconeSouth302

•  SessionID:CON6463•  Real-WorldPerformanceMonitoring:CanYouBelievetheCPUNumbers?

•  Monday16:15@MosconeSouth302

•  SessionID:CON6458•  Real-WorldPerformance:OracleDatabaseIn-MemoryforSAP

•  Monday17:30@ParkCentralConcordia

•  SessionID:CON6465•  Real-WorldPerformanceTeam:SQLMonitorReport

•  Tuesday12:15@MosconeSouth302

4September20,2016

RealWorldPerformanceOOW2016WheretoFindUs

Copyright©2016,Oracleand/oritsaffiliates.Allrightsreserved.|

RealWorldPerformanceOOW2016ThisyearsObservaXons

•  Almostobsessivebeliefthatplaaormtuning/selecXonwillsolveallperformanceproblems

•  Almostasmuchfocusonotheraspectsthatdeliverincrementalgains

•  Verylicleworkonalgorithmicandarchitecturechangesthatyieldorderofmagnitudegains

5September20,2016

Copyright©2016,Oracleand/oritsaffiliates.Allrightsreserved.|

RealWorldPerformanceOOW2016WheretoGetmoreRealWorldPerformance

•  Seeonlinevideolibrary

•  hcp://www.oracle.com/goto/oll/rwp

6September20,2016

Copyright©2016,Oracleand/oritsaffiliates.Allrightsreserved.|

ProgramAgenda

Oracle12cIn-MemoryandSAPApps

Oracle12cIn-MemoryToolkitforSAPBW

RealWorldIn-MemoryResults

Summary

1

2

3

4

7

Copyright©2016,Oracleand/oritsaffiliates.Allrightsreserved.|

Oracle12cIn-MemoryandSAPApplicaXons

• Oracle12cIn-MemoryisreleasedforALLSAPApplicaXons– SAPECC,SAPCRM,SAPSCM– SAPBW– Andalltheothers,…

•  SeeSAPNote2178980– UsingOracleDatabaseIn-MemorywithSAPNetWeaverbasedProducts

8

Copyright©2016,Oracleand/oritsaffiliates.Allrightsreserved.|

Real-World-PerformanceOracle12cIn-MemoryandSAPApplicaXons

In-MemoryenablesReal-TimeReporVngonOLTPAppdirectly!–  LikeECC,ECC–COPA,ECC-GL,CRM,SRM,…

–  NoneedtopayforReplicaVonSo>wareLicenses(akaSLT),ExtraSidecarHW,..…

However,

•  KnowyourDatabaseSchema

•  IdenXfy/CreateReal-TimeReportstoansweryourbusinessquesXon

•  MapReporttoTablestobealteredforIn-Memory

•  VerifyQueryexecuXonplansbeforeandaMer-ALWAYS

HowtoapplyIn-MemorytoOLTPlikeApplicaVons?

9

Copyright©2016,Oracleand/oritsaffiliates.Allrightsreserved.|

Oracle12cIn-MemoryandSAPApplicaXons

•  FlatCubes(areONLYIn-Memoryavailable)– ConvertInfoCubesintoFlatCubes–SAPNote2335159– FlatCubesuselesscumbersomeloadprocess– FlatCubesisthesameschemaasHANAuses

• Oracle12cIn-MemoryToolkitforSAPBW– ForanyDataStoreObject(DSO)orFlatCube– ForanyInfoCube(regardlessifInfoCubeisSPOornot)– ForanySAPNetWeaverVersion7.x

HowtoapplyIn-MemorytoOLAPakaSAPBW?

10

Copyright©2016,Oracleand/oritsaffiliates.Allrightsreserved.|

ProgramAgenda

Oracle12cIn-MemoryandSAPApps

Oracle12cIn-MemoryToolkitforSAPBW

RealWorldIn-MemoryResults

Summary

1

2

3

4

11

Copyright©2016,Oracleand/oritsaffiliates.Allrightsreserved.|

Oracle12cIn-MemoryToolkitforSAPBWODS,InfoCubeandFlatCubepriorto7.40SP14–AvailableNOW

AStructuredApproach–OracleIn-MemoryToolkitWhatyouneedtodo:•  IdenXfyBusinessquery/quesXontoaccelerate•  IdenXfyInfo-ProvidersWhattheToolkitdoesforyou:

BasedonSAPBWObject:•  IdenXfiesallfact-,dimension-andSID-tablestoInfo-Provider•  GeneratesallneededSQLscriptstoalterobjectsandloaddatamodel•  GeneratesSQLscripttogeneratequeryexecuXonplans&SQLMonitorfilesofTopqueriesperobject

•  GeneratesQueriesusagestaXsXcs

Copyright©2016,Oracleand/oritsaffiliates.Allrightsreserved.|

Oracle12cIn-MemoryToolkitforSAPBWHowtoworkwiththeToolkit?

DecideonhighestPrioritySAPBW

Object

CollectcurrentPerformanceDataofSAPBWObject

ApplyIn-MemorytoSAPBWObject

CollectPerformanceDatawithIn-Memory

VerifyExecuXonPlanandStaXsXcs

GotonextSAPBWObject

Copyright©2016,Oracleand/oritsaffiliates.Allrightsreserved.|

SAPObjectName

InfoCube:IC13

Generatedscripts:

Oracle12cIn-MemoryToolkitforSAPBWExample

Copyright©2016,Oracleand/oritsaffiliates.Allrightsreserved.|

Oracle12cIn-MemoryToolkitforSAPBW

•  LoadonlyspecificSAPBWObjectIn-Memory• GenerateSQLScriptsto

Features

ALTER SAPBWObject

ByObjectName

GENERATE MaterializedView

ByObjectName

VERIFY AMerVERIFY Before

Copyright©2016,Oracleand/oritsaffiliates.Allrightsreserved.|

Oracle12cIn-MemoryToolkitforSAPBWExample

ALTERforIn-Memory

ALTERforNOIn-Memory

Copyright©2016,Oracleand/oritsaffiliates.Allrightsreserved.|

Oracle12cIn-MemoryToolkitforSAPBWHowtoworkwiththeToolkit

Runcr_plan.sql

•  Xxxx_sm.sqlàgenerateSQLMonitorfiles•  Xxxxx_query_stats.lstàTextfileofquerystats•  Xxxx_plan.sqlàgenerateExecuXonplans

DecideonhighestPrioritySAPBW

Object

CollectcurrentPerformanceDataofSAPBWObject

ApplyIn-MemorytoSAPBWObject

CollectPerformanceDatawithIn-Memory

VerifyExecuXonPlanandStaXsXcs

GotonextSAPBWObject

Runcr_scripts.sql

•  Xxxx_on.sqlàALTERTABLEFORIn-Memory•  Xxxxx_off.sqlàALTERTABLEFORNOIn-Memory•  Xxxxx_crmvf.sqlàCREATEMATERIALIZEDVIEW

Runcr_plan.sql

•  Xxxx_sm.sqlàgenerateSQLMonitorfiles•  Xxxxx_query_stats.lstàTextfileofquerystats•  Xxxx_plan.sqlàgenerateExecuXonplans

Copyright©2016,Oracleand/oritsaffiliates.Allrightsreserved.|

•  GeneratedStaXsXcsforTopQueriesofanInfoCube

Oracle12cIn-MemoryToolkitforSAPBWExample–CapturedQuery InfoCube

QueryAccessXmesSQL-ID

ForTest–VerificaXon:Queryreadytobeexecuted

Copyright©2016,Oracleand/oritsaffiliates.Allrightsreserved.|

InfoCubeQuery/w

BitmapIndexAccessPartI

SeeJoinsbetweenFact–

DIM–SID

Oracle12cIn-MemoryToolkitforSAPBWInfoCube/wBitmapIndexes–partI–CapturedExecuVonPlanbytheToolkit

Copyright©2016,Oracleand/oritsaffiliates.Allrightsreserved.|

InfoCubeQuery/w

BitmapIndexAccessPartII

SeeJoinsbetweenFact–

DIM–SID

Oracle12cIn-MemoryToolkitforSAPBWInfoCube/wBitmapIndexes–partII–CapturedbytheToolkit

Copyright©2016,Oracleand/oritsaffiliates.Allrightsreserved.|

InfoCubeQuery/wIn-

MemoryAccess

Joins

Fact-Dim-SIDTables

Oracle12cIn-MemoryToolkitforSAPBWInfoCubeIn-Memory–CapturedExecuVonPlanbytheToolkit

In-MemoryAccess

Bloom

FilterUsage

Copyright©2016,Oracleand/oritsaffiliates.Allrightsreserved.|

ODSQuery/wIn-

MemoryAccess

Oracle12cIn-MemoryToolkitforSAPBWDSOIn-Memory–CapturedExecuVonPlanbytheToolkit

Copyright©2016,Oracleand/oritsaffiliates.Allrightsreserved.|

InfoCube

Query/w

BitmapAccess

Joinsbetween

Fact-Dim-SID

Oracle12cIn-MemoryToolkitforSAPBWInfoCube/wBitmapIndexes–SQLMonitorfilegeneratedbyToolkit

Copyright©2016,Oracleand/oritsaffiliates.Allrightsreserved.|

Oracle12cIn-MemoryToolkitforSAPBW

•  GenerateMVbySAPObjectname–  InfoCube,DSOandFlatCube

•  GenerateMVSQLScriptsforenXreSAPPrefix(e.g./BIC/,/BI0/,..)

•  GenerateOpXmizedMVby–  JoiningtononSAPBWstandardtables–  ColumnvalidaXon->opXmizesize,minimizeaccessXme

•  RebuildMVaMerDataloadaspartofnormalSAPProcessChain

MaterializedViewIn-Memory

24

DropIndexes LoadData CreateIndexes CreateMV

24

~85%normalSAPLoadProcess

~15%oftotalXme

Copyright©2016,Oracleand/oritsaffiliates.Allrightsreserved.|

Oracle12cIn-MemoryToolkitforSAPBWWhyMaterializedViewIn-Memory?

Fact

D1

D7

Dn

S

S

S S S

S

S

S

S

S

S

S

D3S

S S

SD2

S

SS

S

D4

S

S S

S

D5S

S S

S

D6S

S S

S

SS

S

•  MVpresentaXonde-normalizesextendedStar•  inoneTableandColumnarFormat

•  MostefficientDataAccessviaopXmizedColumnStore

•  MVmakescustomIndexesobsolete•  SaveStorage•  IndexMaintenanceOverhead

Fact-Columns Dim-Col. SID-Col.

OracleColumnStore

Copyright©2016,Oracleand/oritsaffiliates.Allrightsreserved.|

Oracle12cIn-MemoryToolkitforSAPBWInfoCube/wIn-MemoryMV–GeneratedbyToolkit

InfoCubeQuery/wIn-MemoryMV

Access

Copyright©2016,Oracleand/oritsaffiliates.Allrightsreserved.|

ProgramAgenda

Oracle12cIn-MemoryandSAPApps

Oracle12cIn-MemoryToolkitforSAPBW

RealWorldIn-MemoryResults

Summary

1

2

3

4

27

Copyright©2016,Oracleand/oritsaffiliates.Allrightsreserved.|

Oracle12cIn-MemoryforSAPBW

Customer:USbasedFoodmanufacturer

DataStoreObject

28

Object/Query/Rowsprocessed

NoIn-Memory

ElapsedTime[s]

In-MemoryElapsedTime[s] Improvement

FIGL/Q1/68,519,427 303.00 146.80 2x

FIGL/Q2/6,224,938 45.45 13.5 3x

FIGL/Q3/68,519,427 141.63 4.46 32x

FIGL/Q4/6,224,938 35.26 0.48 73x

FIGL/Q5/465,269 31.03 11.05 3x

COPA/Q1/473,488 32.27 .66 49x

COPA/Q2/7,652,596 291.87 9.48 31x

COPA/Q/6,353,578 339.10 8.63 39x

Copyright©2016,Oracleand/oritsaffiliates.Allrightsreserved.|

Oracle12cIn-MemoryforSAPBW

*NoMVresultavailable1Issue:CardinalitymisesXmateonDimensionTable

Customer:USRetailer

InfoCube

29

Query/Rowsreturned

NoIn-Memory

ElapsedTime[s]

In-MemoryElapsedTime[s]

In-MemoryFlatCube

ElapsedTime[s]

In-MemoryMV

ElapsedTime[s]

Q1/903 1061.0 3.8 4.7 4.7

Q2/78,379 119 31 22.2 21.5

Q3/20649 70.5 8.9 7.1 --*

Q4/7231 78 120.01 2.0 1.0

Q5/49 66.0 13.0 2.5 --*

Copyright©2016,Oracleand/oritsaffiliates.Allrightsreserved.|

Oracle12cIn-MemoryforSAPBW

Customer:GlobalFoodManufacturer

InfoCube

30

219.879.8

138.7

1368.2

4.3 4.4 4.3 5.4

17.7 13.421.4

13.5

2.8 2.6 3.6 3.1

1

10

100

1000

10000

Q1/15,594,872

Q2/3,630,348

Q3/12,615,108

Q4/5,517,993

SAPBWviaBitmapIndex

SAPBW/wBWA

In-MemoryFlatCube

In-MemoryMV

[Query/Rowsprocessed]

ElapsedTime[s]

I n -Memo r yMV440x fasterthanStandard SAPBW

Copyright©2016,Oracleand/oritsaffiliates.Allrightsreserved.|

ProgramAgenda

Oracle12cIn-MemoryandSAPApps

Oracle12cIn-MemoryToolkitforSAPBW

RealWorldIn-MemoryResults

Summary

1

2

3

4

31

Copyright©2016,Oracleand/oritsaffiliates.Allrightsreserved.|

Summary-Oracle12cIn-MemoryToolkit• Oracle12cIn-Memory– IdealfortrueReal-TimeReportsdirectlyonERP,ECC,CRM,…•  NoextraSAPLicensecosts(i.e.tocumbersomedatareplicaXonviaSAPSLT)• WorksgreatonCOPAandGL,...

– ExecellentforSAPBWto•  AccellerateOLAPqueries•  ReplaceBWAàNoneedforacumbersomeHANAsidecar

•  In-MemoryToolkitgeneratesessenXalSQLScriptsto– Enable,Disable,VerifyandValidateàQueryPerformance

32

Copyright©2016,Oracleand/oritsaffiliates.Allrightsreserved.|

Oracle12cIn-MemoryToolkitforSAPBW

OnOTNhcp://www.oracle.com/technetwork/indexes/samplecode/in-memory-toolkit-3076228.html

Wheretodownload?

33

Copyright©2016,Oracleand/oritsaffiliates.Allrightsreserved.| 34

Copyright©2016,Oracleand/oritsaffiliates.Allrightsreserved.|

Oracle12cIn-MemoryforSAPBW

Customer:GlobalFoodManufacturer

InfoCube

35

Query/Rowsprocessed

SAPBWElapsedTime

[s]

SAPBW/wBWAElapsedTime[s]

In-MemoryFlatCube

ElapsedTime[s]

In-MemoryMV

ElapsedTime[s]

Q1/15,594,872 219.8 4.3 17.7 2.8

Q2/3,630,348 79.8 4.4 13.4 2.6

Q3/12,615,108 138.7 4.3 21.4 3.6

Q4/5,517,993 1368.2 5.4 13.5 3.1

Q5/17,77,088 609.0 4.4 22.3 2.5