real world experience oracle in-memory and sap bw sap bw object collect current performance data of...
TRANSCRIPT
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.|
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