SlideShare une entreprise Scribd logo
1  sur  56
Confidential - Do not duplicate or distribute without written permission from Techedge
Techedge Way
Migration to SAP ECC on HANA Demystified
Silvano Ucci
Sergio Ferrari
May 19 𝑡ℎ, 2016
On the Line
2
Sergio Ferrari
Partner, Customer Engagement Director
Sergio is a Partner and the Director of the Customer Engagement
Practice at Techedge.
He is a world leading expert with over 25 years of experience in
Enterprise Solutions with a particular focus in the SAP Business
Suite, of which he has an intimate knowledge both at the
technology and process level.
A Partner and the Director of Technology, Silvano has been with
Techedge since the startup of the company.
With 20 years of experience in the industry, he is an advisor to CIOs
and CTOs with whom he collaborates on strategic transformation
projects, focusing on maximizing the adoption of technology
standards and leading edge solutions to provide value to the business.
Silvano Ucci
Partner, Technology Director
Agenda
▪ Migration to ECC on HANA:
▪ Basis
▪ Application
▪ Challenges/Lessons Learned
▪ Q&A
3
Run1 Run 2 (DEV) Run3 (QAS) Run 4 Run 5 Run 6 (PRD)
Sample Migration Plan
Test upgrade and migration
steps with copy from
production
Create upgrade / migration
cookbook
Execute multiple technical
iterations to familiarize with
process
Establish SAP HANA dev
environment
Upgrade & migration steps
will differ from production
Perform mandatory code
adaptations and simple code
optimizations
Establish SAP HANA QA
environment
Integration Testing
Functional Regression
Testing
Operational Readiness
UAT
Mock cutover
Optimize/verify business
downtime
Finalize cutover plan
Infrastructure testing
Post-cutover operational
performance testing
Final dress rehearsal
Validate business downtime
Validate cutover plan
Execute technical steps as
defined in previous cycles
Execute end-to-end business
downtime precisely as
defined within cutover plan
Utilize downtime-minimized
approach
Establish new SAP HANA
PRD env
4
Agenda
▪ Migration to ECC on HANA:
▪ Basis
▪ Application
▪ Challenges/Lessons Learned
▪ Q&A
5
The path to Migration
ExecutionPlanning
Strategy
Definition
Architecture
Definition
Sizing
Validation &
Preparation
6
Validation & Preparation
▪ ERP 6.0 EHP7 is the minimum release for SAP Suite on HANA
▪ Evaluate if dual-stack split is required:
▪ SAP removed optional dual stacks as useful deployment option
▪ Dual stacks are not supported on SAP HANA
▪ Evaluate if Unicode conversion is required:
▪ Only Unicode systems supported on SAP HANA
▪ Standalone Unicode conversion procedure similar to system copy offered by software provisioning
manager
▪ Can optionally be combined with other procedures (update, migration, or DMO), but requires
preparatory activities (including transformation of custom code)
▪ OS and database versions
▪ >= Oracle 11.2 (Note 2161396)
▪ >= SUSE Linux 11 SP1
▪ Archiving:
▪ it is recommended to archive obsolete data in order to reduce the size of the database
7
Sizing (1/2)
▪ Memory:
▪ The SAP report /SDF/HDB_SIZING gives an estimate of the required memory for SAP HANA
calculating the overall database tables footprint for both row store and column store
▪ Processor:
▪ CPU resources for SAP HANA are implicitly defined by the certified hardware platforms that satisfy
the memory requirements and are available from your hardware vendor
▪ According to SAP, the average resource requirement is of 0.2 cores per active user
8
Sizing (2/2)
▪ Storage:
Source: SAP
9
Architecture
Application Servers & Frontends:
▪ Re-use of available application servers
▪ Sizing of current application servers remains valid
▪ No change of frontends
10
Architecture: Appliance vs TDI
SAP Appliance:
▪ Solution validation done by SAP and partner
▪ Pre-installed software
▪ Pre-configured hardware set-up
▪ Support fully provided by SAP
Tailored Datacenter Integration (TDI):
▪ More flexibility + reduced HW and operation costs
▪ Installation and validation needs to be done by customer
SAP Appliance vs Tailored Datacenter Integration
Source: SAP
11
Architecture: Appliance vs TDI
▪ Common scenario:
▪ Use of Appliance for Production environment
▪ Use of TDI for Development and Quality systems in order to reduce costs
SAP Appliance vs Tailored Datacenter Integration
12
Strategy: HANA Migration options
Option A: New Installation
▪ Install new system on SAP HANA
▪ Either without changing existing solutions
(greenfield)
▪ Or for transforming existing solution to SAP HANA by
performing (selective) data migration
Option B: Classical Migration
▪ Perform update/upgrade (if required) to bring
original system on release supported by SAP HANA
▪ Then, migrate the database to SAP HANA
Option C: One Step Upgrade + Migration with DMO
▪ Use of the database migration option (DMO) of SUM
that combines upgrade and database migration in
one step
1
2
Source: SAP
New
installationA
Classical
MigrationB
One Step
Upgrade +
Migration
with DMO
C
Any
DB
install
HANAMigrate data
Selectively
2 HANAMigrate
1
Any
DB
Upgrade
Any
DB
1 HANAUpgrade +
Migrate
13
Strategy: HANA Migration options
Option C: One step upgrade + migration with DMO
Source: SAP
HANA
Any
DB
14
What’s new for SAP Basis
 HANA Studio is the graphical tool for the administration of the HANA database
15
What’s new for SAP Basis
 hdblcmgui is the tool for updating the version of the HANA database and for installing/updating
add-on on HANA
16
What’s new for SAP Basis
 DBACOCKPIT for monitoring HANA
17
What’s new for SAP Basis
 Database Maintenance
 lower administration: no need to extend database, no need to rebuild indexes, no need to
reorganize the database
 HANA skills
 It is recommended to create HANA skills before the go-live. The SAP course “HA200 SAP
HANA Operations & Administration” covers the most important tasks for working with
HANA (HANA concept & architecture, administrative tools, performance analysis,
operations)
18
Real Life Feedback
▪ Techedge has performed a migration to HANA of an ECC landscape using Option B
(Classical Migration) and the main figures are:
▪ Classical Migration with Export/Import:
▪ Parallel export/import
▪ Table splitting
▪ Custom indexes on Oracle DB
▪ Use of the HANA stand-by DB server for R3load processes of export/import
SOURCE TARGET
DB Version Oracle 11.2.0.4 HANA 1.00.097.00.1434028111
DB Size 18TB 3900GB HANA Used Memory
Server HP ProLiant DL980 G7 SGI UV 300H
CPU 40 Xeon E7-4870 2.4 Ghz 180 Intel(R) Xeon(R) CPU E7-8890 v2 2.80 GHz
RAM 200GB 9TB
19
Real Life Feedback
▪ We performed several runs in order to improve the performance
▪ Performance Tests: no performance degradation, in some cases better
performance:
▪ Tuning of HANA parameters required
▪ Custom code adjustments required
Export
[hours]
Import
[hours]
Action
Run 1 120 45 ---
Run 2 42 39 Storage change
Run 3 25 37 Indexes creation on Oracle; table splitting tuning; use of the stand by server
Run 4 27 37 table splitting tuning; tuning of export table order
Go-live 25 37 ---
20
Agenda
▪ Migration to ECC on HANA:
▪ Basis
▪ Application
▪ Challenges/Lessons Learned
▪ Q&A
21
What’s happened and what to do (in a nutshell)
Code pushdown means delegating data intense calculations to the database layer
Paradigm Shift
Calculation
Calculation
AS ABAP
SAP HANA
Database
22
What’s happened and what to do (in a nutshell)
SAP Business Suite
SAP Standard Code
Custom CodeP
Main Challenges of the App Team
Functional: Adjust ABAP custom
code to behave as before
Performances: performance
improvements are welcome but at
least no degradation is accepted.
ABAP custom code is to be verified
and in case improved to run at
least as fast as beforeHANA DB
F
To Be
Optimized
23
Tools - ABAP Test Cockpit (ATC)
The Powerful enterprise-ready tool to perform
static program analysis of Custom ABAP Code
(based on Code Inspector).
 Superior integration with ABAP
Workbench (even ABAP in Eclipse) and
Software Lifecycle (Change Request)
 Landscape awareness that support result
distribution from QAS to DEV
 Superior User Interface that supports
filters and statistics
 Powerful out-of-the box exemptions
workflow (“4 eyes”) that helps
conveniently suppressing “false-positives”
findings
 Ten time faster scanning engine thanks to
the ABAP Parallel Processing
24
Tools - ABAP Test Cockpit (ATC)
Two Variants: FUNCTIONAL_DB and PERFORMANCE_DB
25
Tools - ABAP Test Cockpit (ATC)
ATC – This check highlights
nested reading so the program
should be corrected normally
with a Join statement. This
makes a significant difference
when reading a lot of records.
Local Nested Reading DB
PERFORMANCE_DB
26
Tools - ABAP Test Cockpit (ATC)
Reading just once the DB
Inner Join - In HANA it is much faster to use
Select Inner Join, accessing the DB just once.
Perform all the calculations in the select
statement, for example SUM, group by and all
filters.
In this example the select was inside a loop
(nested DB loop).
Example: Open SQL – Inner JOIN PERFORMANCE_DB
27
Tools - ABAP Test Cockpit (ATC)
ATC – This check says which fields
are used. So the program should
be corrected, selecting just used
fields instead *(all of them). This
makes a significant difference
when reading a lot of data.
28
Select-Statement can be transformed. ...% of fields used PERFORMANCE_DB
Tools - ABAP Test Cockpit (ATC)
29
Example: Select * - Select just used fields instead
of all them
Before HANAWith HANA
PERFORMANCE_DB
Tools - ABAP Test Cockpit (ATC)
FAE – For all entries is much
faster in HANA, still better
using HDB hint for EQUI-JOIN
30
Example: FAE – For all entries
Tools - SQL Monitor
3131
Business process list ranked by total DB time
Drill down to the SQL profile of report ZSQLM_TEST
Navigate to the code
New SQL Monitor allows to get performance data for each and every OPEN SQL executed in production...
Tools - SQL Performance Tuning Worklist
3232
SWLT
Very flexible tool to evaluate
ATC and SQL Monitor results
Tools - SQL Performance Tuning Worklist
SWLT – Result List – In order to decide which correction should be done, we do a match between
SQLM and ATC and follow the suggestion of the ATC
33
How this program was called.
Example transaction ZISR_INVOICE_DELIVR
ATC – Suggestion from ATC,here is saying that
there is a “Local Nested Reading DB OP (..) found”.
Optimization Methodology
 ATC - ABAP Test Cockpit
 SQLM - SQL Monitor
 SWLT – SQL Performance
Worklist List(Intersection
between ATC and SQLM)
34
Problematic
ABAP statements
SQL Monitor
(relevant ABAP
SQL statements)
ATC SQLM
SWLT
Minimum 5 minutes per day
Wrong Used
Optimization Methodology
35
Evaluate
SWLT
Top N Critical
Object
Execute ATC
With variant
FUNCTIONAL_DB
Execute SQLM
for 3 weeks
Production
Execute ATC
With variant
PERFORMANCE_DB
Development
Development
Object To Be
ADJUSTED
Optimization Methodology
36
Evaluate
SWLT
Top N Critical
Object
Execute ATC
With variant
FUNCTIONAL_DB
Top N Critical
Object To Be
OPTIMIZED
Execute SQLM
for 3 weeks
Production
Execute ATC
With variant
PERFORMANCE_DB
Development
Evaluate the
Degradation
Coefficient K
Sand Box
Development
Object To Be
ADJUSTED
Optimization Methodology
37
Approach Description Prerequisites Accuracy Planning
Standard Best-Practice To evaluate thought the SWLT the
40 most critical statements to be
adjusted
• Run the SQL
Monitor on PRD (for
3 weeks or more)
Low Before NRT
Standard Best-Practice with
Empirical Degradtion
Coefficients
To evaluate thought the SWLT the
40 most critical statements to be
adjusted and calculate the
degradation with empirical
coefficients
• Run the SQL
Monitor on PRD (for
3 weeks or more)
Medium Before NRT
Standard Best-Practice with
the test sys. performance
data
To evaluate thought the SWLT the
most critical statements
comparing the performance data
(obtained with SQLM) of Sandbox
and Production systems
• Run the SQL
Monitor on PRD (for
3 weeks or more)
• Run the SQL
Monitor on QAS
during the NRT
phase
High After NRT
Real Life Feedback - System and Size
 As is: SAP ECC EhP7 on ORACLE
 Uncompressed DB Size 15TB in Oracle
38
Real Life Feedback - Standard Optimized Object
39
OSS note 1761546 - SAP ERP powered by SAP HANA - Optimizations
Real Life Feedback - Program RFBNUM10
The prog. RFBNUM10
(Duplicate Invoices)
was optimized
replacing “Local Nested
Reading DB OP” with
Inner join BSEG, BKPF,
KNA1, including all the
where condition in a
unique select.
40
With HANABefore HANA
Real Life Feedback - Program RFBNUM10
With SAP HANA, now
it´s possible to do a
inner join and read
billions of records from
BSEG/BKPF in few
seconds.
Avoid accessing the DB
many times.
Use Select Single.
41
With HANABefore HANA
Real Life Feedback - FBL3N vs FBL3H
42
CDS View
Real Life Feedback - ABAP Development Tools
 Example:
Standard CDS View
43
Eclipse
Real Life Feedback - Friends of ABAP Custom Code
 Goodbye to secondary indexes
It’s possible to test the performance when
browsing the huge table BSEG by a field that
is not a key. It takes few seconds. In Oracle it
will never finish.
161.000.000 records
44
Real Life Feedback - Friends of ABAP in HANA
Friends of ABAP Custom Code in HANA
 Reading DB table without worrying about index/sec-index
 CDS VIEWs in Eclipse
 INNER JOIN - New Open SQL Syntax - Inner join with Millions of records
read in few seconds, can be done also for BSEG/BKPF
 FAE – For all entries much faster in HANA – OSS note 1662726 -
Optimization of selection with FOR ALL ENTRIES on SAP HANA database –
DB HINT for Equal-join
45
Real Life Feedback - Enemies of ABAP in HANA
Enemies of ABAP Custom Code in HANA
Search problematic SELECT * statements
 SELECT *
Nested Reading
 SELECT … FROM MKPF or loop at
 SELECT … FROM MSEG
 Select single inside a loop/do/Select/Endselect
46
Agenda
▪ Migration to ECC on HANA:
▪ Basis
▪ Application
▪ Challenges/Lessons Learned
▪ Q&A
47
SAP Basis
▪ Match required downtime with maximum allowed downtime can be extremely
time consuming and might require several dry run / mock cycles
▪ The coexistence of AMS and Project Landscapes require well defined processes
for change management; in this case, Solution Manager ChaRM and Retrofit
provided the change management framework required.
▪ Similarly the integration with other systems (e.g. BW, PI, EWM, CRM, SRM)
introduces an additional level of complexity both in terms of architectural
design and end to end test governance.
48
Main Challenges of the Dev & App Team
▪ Functional: Adjust ABAP custom code to behave as before
▪ Performances: performance improvements are welcome but at least no
degradation is accepted. ABAP custom code is to be verified and in case
improved to run at least as fast as before
49
Methodology and tools - PERFORMANCE_DB Findings
▪ Forecast computation tool
Check Message Total DB Execution Time [ms] Days running Total DB Execution Time [MINUTES] Delta K After HANA
Local Nested Reading DB OP (..) found 3.695.457,63 10 6,15909605 10 61,59096
Delta K: Based on performance tests made in SANDBOX, we found that “Local Nested Reading DB OP
(..) found” can be slower by 10 or more times in HANA.
We limit adjustments to objects with a forecasted degradation of more than 5 minutes per day.
50
Methodology and tools - FUNCTIONAL_DB Findings
▪ Fixes have been implemented only when really required
▪ Exemptions have been created for “False positives”
▪ In order to manage “False positives” we used Exemptions instead of pseudo-
comments (E.g.EC CI_HINTS) to reduce the number of objects changed
Example
ORDER BY PRIMARY KEY – The table does not come sorted by the primary key if it is not
informed with this command
51
Methodology and tools - PERFORMANCE_DB Findings
▪ Fixes have been performed only when truly relevant as indicated by our
forecast computation tool
▪ Exemptions do not work in SWLT and we managed exemptions in a shared
project spreadsheet
▪ Many performance tests were done in Sand Box (copy of production)
52
Agenda
▪ Migration to ECC on HANA:
▪ Basis
▪ Application
▪ Challenges/Lessons Learned
▪ Q&A
53
54
Q&A
techedgegroup.com
http://www.techedgegroup.com/hana
info@techedgegroup.com
Copyright © 2016 Techedge All Rights Reserved.
 This document and the information contained herein are proprietary to Techedge.
 This document, either in whole or in part, may not be reproduced in any form or by any
means without Techedge’s prior written permission.
 Any third-party names, trademarks and copyrights contained in this document are the
property of their respective owners.
Disclaimer

Contenu connexe

En vedette

20140409 sap innovation forum staples bi road to hana
20140409 sap innovation forum staples bi road to hana20140409 sap innovation forum staples bi road to hana
20140409 sap innovation forum staples bi road to hana
Alexander Steegers
 

En vedette (16)

Introducción ABAP 7.51
Introducción ABAP 7.51Introducción ABAP 7.51
Introducción ABAP 7.51
 
HANA SPS07 App Function Library
HANA SPS07 App Function LibraryHANA SPS07 App Function Library
HANA SPS07 App Function Library
 
What Can Coconut Oil Do For Your Skin?
What Can Coconut Oil Do For Your Skin?What Can Coconut Oil Do For Your Skin?
What Can Coconut Oil Do For Your Skin?
 
HANA SPS07 Text Analysis
HANA SPS07 Text AnalysisHANA SPS07 Text Analysis
HANA SPS07 Text Analysis
 
SAP TechEd 2016 - Deployment Options with Business Continuity for SAP HANA (H...
SAP TechEd 2016 - Deployment Options with Business Continuity for SAP HANA (H...SAP TechEd 2016 - Deployment Options with Business Continuity for SAP HANA (H...
SAP TechEd 2016 - Deployment Options with Business Continuity for SAP HANA (H...
 
ISYX HANA MIGRATION SERVICES
ISYX HANA MIGRATION SERVICESISYX HANA MIGRATION SERVICES
ISYX HANA MIGRATION SERVICES
 
New gl migration 1
New gl migration 1New gl migration 1
New gl migration 1
 
20140409 sap innovation forum staples bi road to hana
20140409 sap innovation forum staples bi road to hana20140409 sap innovation forum staples bi road to hana
20140409 sap innovation forum staples bi road to hana
 
SAP HANA Use Cases
SAP HANA Use CasesSAP HANA Use Cases
SAP HANA Use Cases
 
SAP s/4 HANA - sFIN Accelerated Implementation, Upgrade & Migration
SAP s/4 HANA - sFIN Accelerated Implementation, Upgrade & MigrationSAP s/4 HANA - sFIN Accelerated Implementation, Upgrade & Migration
SAP s/4 HANA - sFIN Accelerated Implementation, Upgrade & Migration
 
TheValueChain Beyond Simple 10-05-16 - HANA migration
TheValueChain Beyond Simple 10-05-16 - HANA migrationTheValueChain Beyond Simple 10-05-16 - HANA migration
TheValueChain Beyond Simple 10-05-16 - HANA migration
 
SAP HANA SPS10- Text Analysis & Text Mining
SAP HANA SPS10- Text Analysis & Text MiningSAP HANA SPS10- Text Analysis & Text Mining
SAP HANA SPS10- Text Analysis & Text Mining
 
SAP HANA Interactive Use Case Map
SAP HANA Interactive Use Case MapSAP HANA Interactive Use Case Map
SAP HANA Interactive Use Case Map
 
SAP Platform & S/4 HANA - Support for Innovation
SAP Platform & S/4 HANA - Support for InnovationSAP Platform & S/4 HANA - Support for Innovation
SAP Platform & S/4 HANA - Support for Innovation
 
SAP HANA SPS1- SAP HANA Hardware Platforms
SAP HANA SPS1- SAP HANA Hardware PlatformsSAP HANA SPS1- SAP HANA Hardware Platforms
SAP HANA SPS1- SAP HANA Hardware Platforms
 
SAP S/4HANA: Everything you need to know for a successul implementation
SAP S/4HANA: Everything you need to know for a successul implementationSAP S/4HANA: Everything you need to know for a successul implementation
SAP S/4HANA: Everything you need to know for a successul implementation
 

Plus de Techedge Group

Plus de Techedge Group (6)

Techedge Culture Code
Techedge Culture CodeTechedge Culture Code
Techedge Culture Code
 
How Chatbots Can Transform Your Business
How Chatbots Can Transform Your BusinessHow Chatbots Can Transform Your Business
How Chatbots Can Transform Your Business
 
Change Control Management in SAP Solution Manager 7.2
Change Control Management in SAP Solution Manager 7.2Change Control Management in SAP Solution Manager 7.2
Change Control Management in SAP Solution Manager 7.2
 
Design for Customer Engagement - Monetization in a B2C Company
Design for Customer Engagement - Monetization in a B2C CompanyDesign for Customer Engagement - Monetization in a B2C Company
Design for Customer Engagement - Monetization in a B2C Company
 
Design for Customer Engagement: Digital Marketing Strategy
Design for Customer Engagement: Digital Marketing StrategyDesign for Customer Engagement: Digital Marketing Strategy
Design for Customer Engagement: Digital Marketing Strategy
 
Techedge Solution for Procurement - One View
Techedge Solution for Procurement - One ViewTechedge Solution for Procurement - One View
Techedge Solution for Procurement - One View
 

Dernier

Dernier (20)

Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
Tech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfTech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdf
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 

Techedge HANA Webinars - Migration to SAP ECC on HANA - Episode 1

  • 1. Confidential - Do not duplicate or distribute without written permission from Techedge Techedge Way Migration to SAP ECC on HANA Demystified Silvano Ucci Sergio Ferrari May 19 𝑡ℎ, 2016
  • 2. On the Line 2 Sergio Ferrari Partner, Customer Engagement Director Sergio is a Partner and the Director of the Customer Engagement Practice at Techedge. He is a world leading expert with over 25 years of experience in Enterprise Solutions with a particular focus in the SAP Business Suite, of which he has an intimate knowledge both at the technology and process level. A Partner and the Director of Technology, Silvano has been with Techedge since the startup of the company. With 20 years of experience in the industry, he is an advisor to CIOs and CTOs with whom he collaborates on strategic transformation projects, focusing on maximizing the adoption of technology standards and leading edge solutions to provide value to the business. Silvano Ucci Partner, Technology Director
  • 3. Agenda ▪ Migration to ECC on HANA: ▪ Basis ▪ Application ▪ Challenges/Lessons Learned ▪ Q&A 3
  • 4. Run1 Run 2 (DEV) Run3 (QAS) Run 4 Run 5 Run 6 (PRD) Sample Migration Plan Test upgrade and migration steps with copy from production Create upgrade / migration cookbook Execute multiple technical iterations to familiarize with process Establish SAP HANA dev environment Upgrade & migration steps will differ from production Perform mandatory code adaptations and simple code optimizations Establish SAP HANA QA environment Integration Testing Functional Regression Testing Operational Readiness UAT Mock cutover Optimize/verify business downtime Finalize cutover plan Infrastructure testing Post-cutover operational performance testing Final dress rehearsal Validate business downtime Validate cutover plan Execute technical steps as defined in previous cycles Execute end-to-end business downtime precisely as defined within cutover plan Utilize downtime-minimized approach Establish new SAP HANA PRD env 4
  • 5. Agenda ▪ Migration to ECC on HANA: ▪ Basis ▪ Application ▪ Challenges/Lessons Learned ▪ Q&A 5
  • 6. The path to Migration ExecutionPlanning Strategy Definition Architecture Definition Sizing Validation & Preparation 6
  • 7. Validation & Preparation ▪ ERP 6.0 EHP7 is the minimum release for SAP Suite on HANA ▪ Evaluate if dual-stack split is required: ▪ SAP removed optional dual stacks as useful deployment option ▪ Dual stacks are not supported on SAP HANA ▪ Evaluate if Unicode conversion is required: ▪ Only Unicode systems supported on SAP HANA ▪ Standalone Unicode conversion procedure similar to system copy offered by software provisioning manager ▪ Can optionally be combined with other procedures (update, migration, or DMO), but requires preparatory activities (including transformation of custom code) ▪ OS and database versions ▪ >= Oracle 11.2 (Note 2161396) ▪ >= SUSE Linux 11 SP1 ▪ Archiving: ▪ it is recommended to archive obsolete data in order to reduce the size of the database 7
  • 8. Sizing (1/2) ▪ Memory: ▪ The SAP report /SDF/HDB_SIZING gives an estimate of the required memory for SAP HANA calculating the overall database tables footprint for both row store and column store ▪ Processor: ▪ CPU resources for SAP HANA are implicitly defined by the certified hardware platforms that satisfy the memory requirements and are available from your hardware vendor ▪ According to SAP, the average resource requirement is of 0.2 cores per active user 8
  • 10. Architecture Application Servers & Frontends: ▪ Re-use of available application servers ▪ Sizing of current application servers remains valid ▪ No change of frontends 10
  • 11. Architecture: Appliance vs TDI SAP Appliance: ▪ Solution validation done by SAP and partner ▪ Pre-installed software ▪ Pre-configured hardware set-up ▪ Support fully provided by SAP Tailored Datacenter Integration (TDI): ▪ More flexibility + reduced HW and operation costs ▪ Installation and validation needs to be done by customer SAP Appliance vs Tailored Datacenter Integration Source: SAP 11
  • 12. Architecture: Appliance vs TDI ▪ Common scenario: ▪ Use of Appliance for Production environment ▪ Use of TDI for Development and Quality systems in order to reduce costs SAP Appliance vs Tailored Datacenter Integration 12
  • 13. Strategy: HANA Migration options Option A: New Installation ▪ Install new system on SAP HANA ▪ Either without changing existing solutions (greenfield) ▪ Or for transforming existing solution to SAP HANA by performing (selective) data migration Option B: Classical Migration ▪ Perform update/upgrade (if required) to bring original system on release supported by SAP HANA ▪ Then, migrate the database to SAP HANA Option C: One Step Upgrade + Migration with DMO ▪ Use of the database migration option (DMO) of SUM that combines upgrade and database migration in one step 1 2 Source: SAP New installationA Classical MigrationB One Step Upgrade + Migration with DMO C Any DB install HANAMigrate data Selectively 2 HANAMigrate 1 Any DB Upgrade Any DB 1 HANAUpgrade + Migrate 13
  • 14. Strategy: HANA Migration options Option C: One step upgrade + migration with DMO Source: SAP HANA Any DB 14
  • 15. What’s new for SAP Basis  HANA Studio is the graphical tool for the administration of the HANA database 15
  • 16. What’s new for SAP Basis  hdblcmgui is the tool for updating the version of the HANA database and for installing/updating add-on on HANA 16
  • 17. What’s new for SAP Basis  DBACOCKPIT for monitoring HANA 17
  • 18. What’s new for SAP Basis  Database Maintenance  lower administration: no need to extend database, no need to rebuild indexes, no need to reorganize the database  HANA skills  It is recommended to create HANA skills before the go-live. The SAP course “HA200 SAP HANA Operations & Administration” covers the most important tasks for working with HANA (HANA concept & architecture, administrative tools, performance analysis, operations) 18
  • 19. Real Life Feedback ▪ Techedge has performed a migration to HANA of an ECC landscape using Option B (Classical Migration) and the main figures are: ▪ Classical Migration with Export/Import: ▪ Parallel export/import ▪ Table splitting ▪ Custom indexes on Oracle DB ▪ Use of the HANA stand-by DB server for R3load processes of export/import SOURCE TARGET DB Version Oracle 11.2.0.4 HANA 1.00.097.00.1434028111 DB Size 18TB 3900GB HANA Used Memory Server HP ProLiant DL980 G7 SGI UV 300H CPU 40 Xeon E7-4870 2.4 Ghz 180 Intel(R) Xeon(R) CPU E7-8890 v2 2.80 GHz RAM 200GB 9TB 19
  • 20. Real Life Feedback ▪ We performed several runs in order to improve the performance ▪ Performance Tests: no performance degradation, in some cases better performance: ▪ Tuning of HANA parameters required ▪ Custom code adjustments required Export [hours] Import [hours] Action Run 1 120 45 --- Run 2 42 39 Storage change Run 3 25 37 Indexes creation on Oracle; table splitting tuning; use of the stand by server Run 4 27 37 table splitting tuning; tuning of export table order Go-live 25 37 --- 20
  • 21. Agenda ▪ Migration to ECC on HANA: ▪ Basis ▪ Application ▪ Challenges/Lessons Learned ▪ Q&A 21
  • 22. What’s happened and what to do (in a nutshell) Code pushdown means delegating data intense calculations to the database layer Paradigm Shift Calculation Calculation AS ABAP SAP HANA Database 22
  • 23. What’s happened and what to do (in a nutshell) SAP Business Suite SAP Standard Code Custom CodeP Main Challenges of the App Team Functional: Adjust ABAP custom code to behave as before Performances: performance improvements are welcome but at least no degradation is accepted. ABAP custom code is to be verified and in case improved to run at least as fast as beforeHANA DB F To Be Optimized 23
  • 24. Tools - ABAP Test Cockpit (ATC) The Powerful enterprise-ready tool to perform static program analysis of Custom ABAP Code (based on Code Inspector).  Superior integration with ABAP Workbench (even ABAP in Eclipse) and Software Lifecycle (Change Request)  Landscape awareness that support result distribution from QAS to DEV  Superior User Interface that supports filters and statistics  Powerful out-of-the box exemptions workflow (“4 eyes”) that helps conveniently suppressing “false-positives” findings  Ten time faster scanning engine thanks to the ABAP Parallel Processing 24
  • 25. Tools - ABAP Test Cockpit (ATC) Two Variants: FUNCTIONAL_DB and PERFORMANCE_DB 25
  • 26. Tools - ABAP Test Cockpit (ATC) ATC – This check highlights nested reading so the program should be corrected normally with a Join statement. This makes a significant difference when reading a lot of records. Local Nested Reading DB PERFORMANCE_DB 26
  • 27. Tools - ABAP Test Cockpit (ATC) Reading just once the DB Inner Join - In HANA it is much faster to use Select Inner Join, accessing the DB just once. Perform all the calculations in the select statement, for example SUM, group by and all filters. In this example the select was inside a loop (nested DB loop). Example: Open SQL – Inner JOIN PERFORMANCE_DB 27
  • 28. Tools - ABAP Test Cockpit (ATC) ATC – This check says which fields are used. So the program should be corrected, selecting just used fields instead *(all of them). This makes a significant difference when reading a lot of data. 28 Select-Statement can be transformed. ...% of fields used PERFORMANCE_DB
  • 29. Tools - ABAP Test Cockpit (ATC) 29 Example: Select * - Select just used fields instead of all them Before HANAWith HANA PERFORMANCE_DB
  • 30. Tools - ABAP Test Cockpit (ATC) FAE – For all entries is much faster in HANA, still better using HDB hint for EQUI-JOIN 30 Example: FAE – For all entries
  • 31. Tools - SQL Monitor 3131 Business process list ranked by total DB time Drill down to the SQL profile of report ZSQLM_TEST Navigate to the code New SQL Monitor allows to get performance data for each and every OPEN SQL executed in production...
  • 32. Tools - SQL Performance Tuning Worklist 3232 SWLT Very flexible tool to evaluate ATC and SQL Monitor results
  • 33. Tools - SQL Performance Tuning Worklist SWLT – Result List – In order to decide which correction should be done, we do a match between SQLM and ATC and follow the suggestion of the ATC 33 How this program was called. Example transaction ZISR_INVOICE_DELIVR ATC – Suggestion from ATC,here is saying that there is a “Local Nested Reading DB OP (..) found”.
  • 34. Optimization Methodology  ATC - ABAP Test Cockpit  SQLM - SQL Monitor  SWLT – SQL Performance Worklist List(Intersection between ATC and SQLM) 34 Problematic ABAP statements SQL Monitor (relevant ABAP SQL statements) ATC SQLM SWLT Minimum 5 minutes per day Wrong Used
  • 35. Optimization Methodology 35 Evaluate SWLT Top N Critical Object Execute ATC With variant FUNCTIONAL_DB Execute SQLM for 3 weeks Production Execute ATC With variant PERFORMANCE_DB Development Development Object To Be ADJUSTED
  • 36. Optimization Methodology 36 Evaluate SWLT Top N Critical Object Execute ATC With variant FUNCTIONAL_DB Top N Critical Object To Be OPTIMIZED Execute SQLM for 3 weeks Production Execute ATC With variant PERFORMANCE_DB Development Evaluate the Degradation Coefficient K Sand Box Development Object To Be ADJUSTED
  • 37. Optimization Methodology 37 Approach Description Prerequisites Accuracy Planning Standard Best-Practice To evaluate thought the SWLT the 40 most critical statements to be adjusted • Run the SQL Monitor on PRD (for 3 weeks or more) Low Before NRT Standard Best-Practice with Empirical Degradtion Coefficients To evaluate thought the SWLT the 40 most critical statements to be adjusted and calculate the degradation with empirical coefficients • Run the SQL Monitor on PRD (for 3 weeks or more) Medium Before NRT Standard Best-Practice with the test sys. performance data To evaluate thought the SWLT the most critical statements comparing the performance data (obtained with SQLM) of Sandbox and Production systems • Run the SQL Monitor on PRD (for 3 weeks or more) • Run the SQL Monitor on QAS during the NRT phase High After NRT
  • 38. Real Life Feedback - System and Size  As is: SAP ECC EhP7 on ORACLE  Uncompressed DB Size 15TB in Oracle 38
  • 39. Real Life Feedback - Standard Optimized Object 39 OSS note 1761546 - SAP ERP powered by SAP HANA - Optimizations
  • 40. Real Life Feedback - Program RFBNUM10 The prog. RFBNUM10 (Duplicate Invoices) was optimized replacing “Local Nested Reading DB OP” with Inner join BSEG, BKPF, KNA1, including all the where condition in a unique select. 40 With HANABefore HANA
  • 41. Real Life Feedback - Program RFBNUM10 With SAP HANA, now it´s possible to do a inner join and read billions of records from BSEG/BKPF in few seconds. Avoid accessing the DB many times. Use Select Single. 41 With HANABefore HANA
  • 42. Real Life Feedback - FBL3N vs FBL3H 42 CDS View
  • 43. Real Life Feedback - ABAP Development Tools  Example: Standard CDS View 43 Eclipse
  • 44. Real Life Feedback - Friends of ABAP Custom Code  Goodbye to secondary indexes It’s possible to test the performance when browsing the huge table BSEG by a field that is not a key. It takes few seconds. In Oracle it will never finish. 161.000.000 records 44
  • 45. Real Life Feedback - Friends of ABAP in HANA Friends of ABAP Custom Code in HANA  Reading DB table without worrying about index/sec-index  CDS VIEWs in Eclipse  INNER JOIN - New Open SQL Syntax - Inner join with Millions of records read in few seconds, can be done also for BSEG/BKPF  FAE – For all entries much faster in HANA – OSS note 1662726 - Optimization of selection with FOR ALL ENTRIES on SAP HANA database – DB HINT for Equal-join 45
  • 46. Real Life Feedback - Enemies of ABAP in HANA Enemies of ABAP Custom Code in HANA Search problematic SELECT * statements  SELECT * Nested Reading  SELECT … FROM MKPF or loop at  SELECT … FROM MSEG  Select single inside a loop/do/Select/Endselect 46
  • 47. Agenda ▪ Migration to ECC on HANA: ▪ Basis ▪ Application ▪ Challenges/Lessons Learned ▪ Q&A 47
  • 48. SAP Basis ▪ Match required downtime with maximum allowed downtime can be extremely time consuming and might require several dry run / mock cycles ▪ The coexistence of AMS and Project Landscapes require well defined processes for change management; in this case, Solution Manager ChaRM and Retrofit provided the change management framework required. ▪ Similarly the integration with other systems (e.g. BW, PI, EWM, CRM, SRM) introduces an additional level of complexity both in terms of architectural design and end to end test governance. 48
  • 49. Main Challenges of the Dev & App Team ▪ Functional: Adjust ABAP custom code to behave as before ▪ Performances: performance improvements are welcome but at least no degradation is accepted. ABAP custom code is to be verified and in case improved to run at least as fast as before 49
  • 50. Methodology and tools - PERFORMANCE_DB Findings ▪ Forecast computation tool Check Message Total DB Execution Time [ms] Days running Total DB Execution Time [MINUTES] Delta K After HANA Local Nested Reading DB OP (..) found 3.695.457,63 10 6,15909605 10 61,59096 Delta K: Based on performance tests made in SANDBOX, we found that “Local Nested Reading DB OP (..) found” can be slower by 10 or more times in HANA. We limit adjustments to objects with a forecasted degradation of more than 5 minutes per day. 50
  • 51. Methodology and tools - FUNCTIONAL_DB Findings ▪ Fixes have been implemented only when really required ▪ Exemptions have been created for “False positives” ▪ In order to manage “False positives” we used Exemptions instead of pseudo- comments (E.g.EC CI_HINTS) to reduce the number of objects changed Example ORDER BY PRIMARY KEY – The table does not come sorted by the primary key if it is not informed with this command 51
  • 52. Methodology and tools - PERFORMANCE_DB Findings ▪ Fixes have been performed only when truly relevant as indicated by our forecast computation tool ▪ Exemptions do not work in SWLT and we managed exemptions in a shared project spreadsheet ▪ Many performance tests were done in Sand Box (copy of production) 52
  • 53. Agenda ▪ Migration to ECC on HANA: ▪ Basis ▪ Application ▪ Challenges/Lessons Learned ▪ Q&A 53
  • 56. Copyright © 2016 Techedge All Rights Reserved.  This document and the information contained herein are proprietary to Techedge.  This document, either in whole or in part, may not be reproduced in any form or by any means without Techedge’s prior written permission.  Any third-party names, trademarks and copyrights contained in this document are the property of their respective owners. Disclaimer