Académique Documents
Professionnel Documents
Culture Documents
- Sudha Paluru
Agenda
Introduction
Evolution and Architecture
ABAP Meets SAP HANA
Persistence Storage
Deployment options
Code-to-data paradigm
Performance guidelines for ABAP Development in SAP HANA
Open SQL enhancements
Considerations for Custom ABAP Code During a Migration to SAP HANA
Required and Recommended Adaptions
SAP HANA is a combination of HANA Database, Data Modelling, HANA Administration and Data Provisioning in single suite.
SAP HANA is an in-memory, column-oriented, relational database management system developed by SAP...
SAP HANA can be used for the purpose of OLAP (On-line Analytical) and OLTP (On-Line Transaction) on a single database.
Contd.,
• It is a combination of hardware and software made to process massive real time data using In-Memory computing.
• It’s best suited for performing real-time analytics, and developing and deploying real-time applications.
Merits
• Data compression
• Aggregations, Computations, calculations.. can be done easily
• Avoid creation of Secondary index
• Avoid buffering
Demerits
• Insertion of a new record is not easier
Persistent Storage
• SAP HANA has an in-memory computing engine and access the data straightaway without any backup.
• Since it is a volatile memory, still need to use disk, here comes the concept of Persistent Storage
• To avoid the risk of losing data since it a volatile, persistence layer comes as a savior and stores all the data in the hard
drive which is not volatile.
Deployment options
Note:
• In release SAP HANA 1511: 15 year and 11 month
Code-to-Data paradigm
Outline
Classical Approach
Code to Data
Data to code
HANA Approach
Contd.,
• Code-to-data by means of
• Native SQL
Performance improvements
Code-to-Data paradigm
Performance Improvement vs. Code Adjustments
Performance guidelines for ABAP Development in SAP HANA
Contd..
OpenSQL aspires to
Enable the application of code-to-data paradigm
Provide (more) standard SQL features
• SELECT list enhancements
- Conditional expressions
• Expressions in
- GROUP BY clause
- HAVING clause
• JOIN statements
Enable the consumption of SAP HANA specific features
CASE Expression
Contd..
Contd..
Using COALESCE and Logical operators like GE / GT/ LE / LT etc in JOIN which was originally not available
Contd..
1. SQL Monitor
Activate/deactivate SQL Monitor via transaction
SQLM
SQL Monitor can be activated either for all
application servers or just selected ones
Different views on results:
System-oriented view - analysis of the entire
system
Request-oriented view - analysis focuses on single
request entry points (eg: SQL profile for a
transaction XYZ look like?)
Contd..
Scenario 2: Identify the Most Frequently Executed Database Accesses in (By Source code Position)
Detect the SQL statements reading or writing most of the database data in the system
Contd..
To reduce data volume, basic filter criteria can be applied before snapshot creation
Contd..
FUNCTIONAL_DB
Native SQL, Database (DB) hints, Finding ADBC Usages
Finding usages of special DDIC function modules that check or return
the existence or technical properties of certain DB indexes.
Note: On SAP HANA, most DB indexes are not in use and therefore
these checks are generally obsolete.
Finding accesses of a pool/cluster table
Finding non-robust ABAP code w/o ORDER BY
Note: In the course of an SAP HANA migration, most pool and cluster tables are converted into transparent tables of the same name.
After this step, access to these technical pools/clusters that are no longer used does not serve any purpose.
Contd..
FUNCTIONAL_DB_ADDITION
Checking SQL Operations without a WHERE Clause,
Checking initial table is not empty before using FOR ALL ENTRIES
PERFORMANCE_DB
The variant contains all the essential static SQL performance checks.
The essential tool for an overall view of the custom code with regard to performance optimization is the new SQL Monitor.
Tools and Prerequisites - SWLT
The SQL Performance Tuning Worklist (transaction code SWLT) is a tool Combining the result of a code analysis with relevant
runtime data. e.g. from a productive system.
Contd..
Recommended Procedure
Frequently Asked Questions
Contd..
Other Information/Links
• https://www.sap.com/products/hana/features.html#pdf-asset=ac1e84d4-697c-0010-82c7-eda71af511fa&pdf-page=1
• http://saphanatutorial.com/sap-hana-basic-course-1-1/
• http://www.sapyard.com/sap-hana-from-space-level/
• http://www.sapyard.com/abap-on-sap-hana-part-xvi-hanatization/
• http://www.sapyard.com/abap-for-sap-hana-points-to-remember/