Automated Tools for SAP HANA Performance Optimization

Similar documents
SAP EDUCATION SAMPLE QUESTIONS: Questions. 1. Which of the following are characteristics of an external view?

Beginner s Guide. Programming with ABAP on HANA. by Pallavi Gupta, Accrete Solutions. What does this document have to offer?

E_HANAAW_12. SAP ABAP for HANA Certification Questions & Answers. E_HANAAW_12

Implement and consume your first ABAP Managed Database Procedure on HANA

SAP HANA Leading Marketplace for IT and Certification Courses

ABAP Platform 7.4/7.5 Overview. Technology Core Platform Product Management, SAP SE March 22 th, 2017

Custom Code Analyse für HANA Projekte

Zero Downtime Migrations

HA400 ABAP Programming for SAP HANA

Exadata Implementation Strategy

COURSE LISTING. Courses Listed. with HANA Programming. 13 February 2018 (04:51 GMT) HA100 - SAP HANA

RDP203 - Enhanced Support for SAP NetWeaver BW Powered by SAP HANA and Mixed Scenarios. October 2013

Jyotheswar Kuricheti

HABS1 Business Suite on HANA

HA400 ABAP Programming for SAP HANA

<Insert Picture Here> DBA s New Best Friend: Advanced SQL Tuning Features of Oracle Database 11g

SAP ABAP ONLINE TRAINING COURSE

How to get the most out of BW 7.30 on HANA with Analysis Office 1.3? Tobias Kaufmann/Customer Solution Adoption

Planning Applications Kit - In Memory Planning in Action. Dr. Gerd Schöffl / CSA Technology

MongoDB Schema Design for. David Murphy MongoDB Practice Manager - Percona

Simplifying your upgrade and consolidation to BW/4HANA. Pravin Gupta (Teklink International Inc.) Bhanu Gupta (Molex LLC)

Optimizing and Modeling SAP Business Analytics for SAP HANA. Iver van de Zand, Business Analytics

Data Consistency Management for Hybrid Scenarios

Executing Remote Static Checks in Context of HANA Migration

SAP HANA SAP HANA Introduction Description:

How to Move Your Oracle Database to The Cloud. Clay Jackson Database Solutions Sales Engineer

Configuration changes such as conversion from a single instance to RAC, ASM, etc.

Perform scalable data exchange using InfoSphere DataStage DB2 Connector

BW C SILWOOD TECHNOLOGY LTD. Safyr Metadata Discovery Software. Safyr User Guide

Migration Methodologies for SAP on Azure

DB Export/Import/Generate data tool

BW Workspaces Data Cleansing during Flat File Upload

Informatica Power Center 10.1 Developer Training

Armor Training offers a 10 days SAP HANA course. The SAP HANA enables you to implement the main processes of HANA.

Preface Introduction... 23

SAP- ABAP/4 ADVANCED COURSE CONTENT

qwertyuiopasdfghjklzxcvbnmqwertyui opasdfghjklzxcvbnmqwertyuiopasdfgh jklzxcvbnmqwertyuiopasdfghjklzxcvb nmqwertyuiopasdfghjklzxcvbnmqwer

Dr. Stephan Bühne Senior Principal Technical Consultant. SAP Solution Center Walldorf

COURSE LISTING. Courses Listed. Training for Database & Technology with Development in ABAP Dialog Programming. Beginner. Intermediate.

Advancing your SAP Solutions A review of future options around SAP on IBM i and SAP HANA

Oracle Warehouse Builder 10g Release 2 Integrating Packaged Applications Data

Integration Services. Creating an ETL Solution with SSIS. Module Overview. Introduction to ETL with SSIS Implementing Data Flow

Session id: The Self-Managing Database: Guided Application and SQL Tuning

SQL Gone Wild: Taming Bad SQL the Easy Way (or the Hard Way) Sergey Koltakov Product Manager, Database Manageability

Foreword 7. Acknowledgments 9. 1 Evolution and overview The evolution of SAP HANA The evolution of BW 17

Deccansoft Software Services. SSIS Syllabus

Leveraging SAP HANA and ArcGIS. Melissa Jarman Eugene Yang

Evolution of Capabilities Hunter Downey, Solution Advisor

Part 1: Indexes for Big Data

Things I Learned The Hard Way About Azure Data Platform Services So You Don t Have To -Meagan Longoria

/ / SAP BODS TRAINING

Segregating Data Within Databases for Performance Prepared by Bill Hulsizer

Moving Databases to Oracle Cloud: Performance Best Practices

Informatica Developer Tips for Troubleshooting Common Issues PowerCenter 8 Standard Edition. Eugene Gonzalez Support Enablement Manager, Informatica

This is the forth SAP MaxDB Expert Session and this session covers the topic database performance analysis.

This download file shows detailed view for all updates from BW 7.5 SP00 to SP05 released from SAP help portal.

This course is suitable for delegates working with all versions of SQL Server from SQL Server 2008 through to SQL Server 2016.

Module 1.Introduction to Business Objects. Vasundhara Sector 14-A, Plot No , Near Vaishali Metro Station,Ghaziabad

Copy Data From One Schema To Another In Sql Developer

COPYRIGHTED MATERIAL. Contents. Introduction. Chapter 1: Welcome to SQL Server Integration Services 1. Chapter 2: The SSIS Tools 21

SAP ABAP Training Course Content :

Oracle Forms and Oracle APEX The Odd Couple

Migrating Oracle Databases To Cassandra

Benchmarking in the Cloud

SAP NLS Update Roland Kramer, SAP EDW (BW/HANA), SAP SE PBS Customer Information Day, July 1st, 2016

SAP TechEd. Open Sesame: How Lockheed Paved the Way to Enterprise Procurement Analytics. Pit C. Tan Session DMM218

In-Memory Computing EXASOL Evaluation

DumpsQuestion. Professional Dump Collection & Excellent Exam Questions & Latest Questions

1Copyright 2012, Oracle and/or its affiliates. All rights reserved.

SAP Assurance and Compliance Software Release 1.2 SP04

DESIGNING FOR PERFORMANCE SERIES. Smokin Fast Queries Query Optimization

Welcome! Power BI User Group (PUG) Copenhagen

Query and How it Can Be Used in Finance. Daniel del Val Winshuttle

SAP HANA Inspirience Day

Reading Sample. Optimization of ABAP Programs. Contents. Index. The Authors. SAP Performance Optimization Guide: Analyzing and Tuning SAP Systems

Performance Innovations with Oracle Database In-Memory

Designing High-Performance Data Structures for MongoDB

Key to A Successful Exadata POC

The road to BW/4HANA. Wim Van Wuytswinkel & Carl Goossenaerts May 18, 2017

Get the Skinny on Minimally Logged Operations

MaintMaster Technical White Paper

Toad for Oracle Suite 2017 Functional Matrix

AWS Database Migration Service

SAP-ABAP Training Program. Topics Covered. ABAP Dictionary Concepts

Scylla Open Source 3.0

Making the Most of Hadoop with Optimized Data Compression (and Boost Performance) Mark Cusack. Chief Architect RainStor

ITdumpsFree. Get free valid exam dumps and pass your exam test with confidence

DVM Analysis & Monitoring Cloud Solution

SQL Server Integration Services Management Considerations and Best Practices

Transformer Looping Functions for Pivoting the data :

ColdFusion Summit 2016

Manual Trigger Sql Server 2008 Insert Multiple Rows At Once

INFORMATICA PERFORMANCE

SAP ABAP. Introduction to SAP ABAP

SAP NetWeaver BI. Unicode Compliance. Product Management SAP NetWeaver BI. Version 7.0 December, 2008

SAP and SAP HANA on VMware

Modern Data Warehouse The New Approach to Azure BI

Switching to Innodb from MyISAM. Matt Yonkovit Percona

COURSE LISTING. Courses Listed. with ABAP Dialog Programming. 25 December 2017 (08:57 GMT) NW001 - SAP NetWeaver - Overview

SAP C_TS4FI_1610 Exam

Transcription:

Automated Tools for SAP HANA Performance Optimization Webinar Presenters: Albrecht Gass, Chris Hanshew www.smartshifttech.com

Agenda 1. Introduction smartshift Technologies 2. SAP HANA Overview 3. SAP HANA Enhancements 4. HANA Code Compatibility 5. HANA Performance Optimization (HPO) ABAP Code Pushdown 6. Q & A Note: You can also continue the discussion via Twitter @smartshifttech with #smarthana 12/4/2013 2

1 About smartshift Technologies www.smartshifttech.com

About smartshift Tech 12/4/2013 4

Select Customers 12/4/2013 5

We Partner with the Best of the Breed! 12/4/2013 6

Presenters Albrecht Gass Chief Architect smartshift Technologies Chris Hanshew Senior Solution Architect smartshift Technologies 12/4/2013 7

2 SAP HANA Overview www.smartshifttech.com

HANA Objectives Does not impact transaction processing Enables reporting without fear by increasing reporting speeds dramatically Eliminates SAP as Access Loader Keeps processing within SAP and not Excel Avoid using old and/or partial data Convert batch processes to real-time operations Enable new big data processes 12/4/2013 9

HANA Implementation Considerations Side-car vs. Primary DB Instance Size o Memory o CPU Table Partitioning Consider Changes in Query Result Ordering Incompatible Native SQL Code Unicode Requirement On-premise or Cloud Deployment 12/4/2013 10

Why Code Optimization Data intensive programming logic in application server o Reversal of complete HW/SW abstraction, everything in ABAP Change in data architecture forces changes to application structure o SELECT * o SORT vs. ORDER BY o CHECK within SELECT / END SELECT New HANA / NetWeaver framework functionality o List Display o Code Maintainability 12/4/2013 11

smartscale for HANA Offering smartscale for HANA will consist of the appropriate components with newly added HANA code optimization rules. Analyze o SaaS Analysis Upgrade & Unicode o Unicode Enablement o Change Impact Analysis o Automated Code Changes Develop o On-going ABAP Code Remediation Management o Migration Support o Monitor and Manage of Cloud Environment 12/4/2013 12

Benefits for Automated Solution Get benefits quickly Resource Requirements Low Hanging Fruit Accuracy Repeatability Coverage Cost 12/4/2013 13

2 SAP HANA Enhancements www.smartshifttech.com

NetWeaver 7.4 ABAP Enhancements ABAP Managed Database Procedures (AMDP) Integrated Data Access List Grid (IDA-ALV) Inline Declarations Table Expressions New Internal Table Functions ABAP Objects (Exporting, Importing and Changing, Partially Implemented Interfaces for Testing) Reference Operator Value Operator Constructor Operator Conditional Operators Conversion Operators Lossless Operator EXACT Internal Tables with Empty Keys Expressions 12/4/2013 15

Pushing code to DB layer - Step 1 Define procedure 12/4/2013 16

Pushing code to DB layer Step 2 SQL script that implements reading from relevant tables 12/4/2013 17

Pushing code to DB layer Step 3 Generated interface object, to be used in application logic 12/4/2013 18

Pushing code to DB layer - Step 4 Modify code to use interface / call procedure 12/4/2013 19

ABAP Managed Database Procedures (AMDP) CLASS zcl_amdp DEFINITION. INTERFACES if_amdp_marker_hdb. METHODS: pushdown_code IMPORTING VALUE(iv_client) TYPE mandt EXPORTING VALUE(et_result) TYPE tt_result. ENDCLASS. CLASS zcl_amdp IMPLEMENTATION. METHOD pushdown_code BY DATABASE PROCEDURE FOR HDB LANGUAGE SQLSCRIPT USING snwd_so_i snwd_so_sl snwd_pd. -- SQLScript goes here ENDMETHOD. ENDCLASS. 12/4/2013 20

Use of Integrated Data Access List Grid (IDA-ALV) 12/4/2013 21

3 Performance Guidelines and Rules www.smartshifttech.com 12/4/2013 22

HANA Optimization Guidelines Reduce result set Reduce amount of data transfer Reduce number of DB round trips Index/Query optimization Text search for F4 help and type-ahead search Avoid native SQL Use buffering on application server Existing best practices still apply Don t overload HANA server 12/4/2013 23

New HANA Rule Concepts These patterns focus on the push-down paradigm as well as on restrictions that HANA is imposing. Locate joins on transactional table Locate SELECT FOR ALL ENTRIES statements Locate SQL on SAP index tables (i.e. VAPMA) Clusters of related table SQL (i.e. VBAK, VBUK, VBAP) Custom read cluster tables Sort of internal tables sourced from SQL Processing of internal tables sourced from SQL Perform unit conversion ALV Optimization DB Migration rules 12/4/2013 24

4 Optimized ABAP Code Examples www.smartshifttech.com 12/4/2013 25

New HANA Rules HCC HPO Only a subset of rules are referenced here o #600 SELECT on former cluster/pool tables o #601 SELECT with PACKAGE SIZE option o #602 SELECT/ENDSELECT are indicators for code optimization o #610 HANA Performance Optimization using code push-down o #712 SELECT * --> Reduce selected column set o #719 SELECT with IF/CHECK o #723 OpenSQL modifications inside LOOPS o #727 SELECT followed by DELETE ADJACENT DUPLICATES o #728 Index Table Access 12/4/2013 26

Rule #600 - SELECT on former cluster/pool tables Cluster and Pool tables return data implicitly sorted by the primary key In HANA cluster/pool tables are converted into transparent tables this might changed in future SPs Not all cases need adjustment, only where ordering is important Customer case (via Code Inspector) o 4,500 instances o Interestingly there are 1,500 instance where no ordering is specified but the code might rely on order 12/4/2013 27

Rule #600 - SELECT on former cluster/pool tables Code Comparison 12/4/2013 28

Rule #712 SELECT * --> Reduce column set In row based RDBMS the penalty for not restricting the selected column set is small. For column tables in HANA, there are multiple reasons why this becomes important o Reduced processing on DB server o Reduced data transfer o Reduced overhead in result set realization on app server Needs the ability to detect access to columns in result set and related data structures. Many pit falls and conditions that cannot be easily investigated manually. 12/4/2013 29

Rule #712 SELECT * --> Reduce column set Code Comparison 12/4/2013 30

Rule #719 SELECT/LOOP with IF/CHECK Checks that filter out data that has been sourced from the DB should be pushed to the DB Applies to many constructs o SELECT o SELECT/ENDSELECT o LOOP o OPEN CURSOR Existing restrictions for OpenSQL must be considered HANA benefits o Reduced data transfer o Reduced overhead in result set realization on app server 12/4/2013 31

Rule #719 SELECT/LOOP with IF/CHECK Code Comparison 12/4/2013 32

Rule #723 OpenSQL modifications inside LOOPS Data modifications that are done record by record are very expensive in. Approach is to gather up the data modifications in the loop and then execute a single OpenSQL statement to perform bulk processing. 12/4/2013 33

Rule #723 OpenSQL modifications inside LOOPS Code Comparison 12/4/2013 34

Rule #610 HANA Performance Optimization using code push-down Column based, parallelized processing in HANA with SQLScript Row 1 Row 2 Row 3 Row 4 Row 5 Row 6 Row 7 12/4/2013 35

Rule #610 HANA Performance Optimization using code push-down Large ABAP code segments to be moved to DB Funnel use case o A lot of data coming in, only small amount of data is the result Take advantage of HANA capabilities and strengths o Parallization o Fast in memory operations o Reduce data transfer Very resource intensive if attempted manually Highest level of difficulty 12/4/2013 36

Rule #610 HANA Performance Optimization using code push-down Code Comparison 12/4/2013 37

Rule #610 HANA Performance Optimization using code push-down Column based, parallelized processing in HANA Row 1 Row 2 Row 3 Row 4 Row 5 Row 6 Row 7 12/4/2013 38

smartscale for HANA Automation is your friend! Decide your HANA needs, and choose the right tools at the right steps: Analyze the scope Achieve HANA pre-requisites - Upgrade & Unicode Develop new code for HPO Manage in the Cloud 12/4/2013 39

Request a Demo Request a Custom Demo http://info.smartshifttech.com/demo-automated-abap-code-remediationtool-by-smartshift 12/4/2013 40