Feb 12, 2015

Share the Knowledge - Optimizing SAP BW on SAP HANA Part 2

Via Content in SCN

Hi Everyone,


Best Practice # 7: Avoid Issues During Migration by  Using Automated Task Lists

We were told about optimizing System Migration
1.) Use the Checklist tool:It is recommended to run it before, during, and after migration for optimal insights
2.) Setup Task lists: use task lists for system preparation and system copy
3.) Run Post Migration Program

Go to Migration tab
M.JPG

After that a little bit intro about DMO was given
DMO(Data Migration Option) is an option of SUM (Software Update Manager) for a combined update and migration: update an existing SAP system to a higher Software Release and migrate to SAP HANA database.
To learn more about DMO check the below documents:
Also check SAP Note 1799545 - Using DMO of SUM for SAP BW systems

Best Practice # 8: Validate SAP HANA Configuration,  Check Table Consistency and  Monitor Delta Merge

Use the Checking Tab of BW Migration Cockpit:
Rerun the checklist tool
CHC.JPG
Run Table Consistency check
   TC.JPG
Run Delta Merge Check
DM.JPG
To learn more about Delta Merge process, check the below document:
Also check SAP Note 1663501 - Log for BW merge trigger

Check if Secondary indexes are required to be created
SD.JPG
Also check SAP Note 1740373 - DSO: Maintenance of database indexes in SAP HANA

Best Practice # 9: Improve Performance and  Simplify Administration and Infrastructure by  Converting Data Flows and InfoProviders

Go to Conversion tab
IP.JPG
Optimize Data Flows: Convert 3.x Data Flows to 7.x Data Flows
DF.JPG
For migration, also check the below link:

Optimize InfoProviders: Conver Infocubes to HANA Optimized Infocubes
OC.JPG

Learn more about InfoProviders in BW on HANA:
Also check SAP Note 1849497 - SAP HANA: Optimizing standard DataStore objects

Optimize Data Layers:
LA.JPG
To learn more about LSA++, check the below documents:

Use BW Transform Finder to quickly find transformations in SAP NetWeaver BW systems - for example to identify InfoProviders that can potentially be retired when using SAP HANA.
Check SAP Note 1908367 - SAP NetWeaver BW Transformation Finder


Best Practice # 10: Tune Custom Code According to  Best Practices for ABAP on SAP HANA

Go to Optimization tab
Use ABAP Routine Analyzer that automates the check of best practice guidelines for ABAP routines in SAP NetWeaver BW systems focused on statements that can potentially be optimized for SAP HANA
RA.JPG
To learn more about ABAP Code optimizzation for SAP HANA, check the below documents:

The tools mentioned above do most of the tasks but still there can be few activities that we might have to perform manually.
For knowing more about BW on HANA migration and steps involved in it, we should also check SAP BW on HANA Cookbook

Additionally, we can learn more about BW on HANA from the below documents:

Jan 12, 2015

Optimizing SAP BW on SAP HANA Part 1

Optimizing SAP BW on SAP HANA Part 1


Hi Everyone,

During the TechEd I attended lecture RDP303 - "Master Class for Optimizing SAP Netweaver Business Warehouse on SAP HANA"
It was only a 1 hour session but there were many things to learn.
The session was aimed at Optimizing SAP BW on SAP HANA and best practices to be followed
I would like to share learning from the session.

Also check Part 2: Share the Knowledge - Optimizing SAP BW on SAP HANA Part 2

Best Practice #1: Master The Basics and Understand the Path to BW on HANA

The session started with migration options for implementing BW on HANA
There are three options available for implementing BW on SAP HANA and they have their own advantages and disadvantages as shown below:
Capture1.JPG
To learn more about migration, check the below document:

Best Practice #2: Know the Tools That Do the Work For You

After that we were told about BW Migration Cockpit for SAP HANA tool that can  be used for migration and a demo was shown for it
Check SAP Note 1909597 - SAP NetWeaver BW Migration Cockpit for SAP HANA for this and install attached ABAP program - "ZBW_HANA_MIGRATION_COCKPIT"
Once you have installed the program and you execute it, you get the below screen
Checking.JPG
Best Practice # 3: Ch eck Your BW System : Before and After Migrating to SAP HANA

The first tab is checking
It has three main tools "Checklist Tool", "Consistency Checks" and "Planning Function Check"
Checklist Tool automates the check of best practice guidelines for operations and pre-requisites for migration of an existing SAP NetWeaver
BW deployment to the SAP HANA platform.
Once you click on checklist tool, the below screen appears and you can select which all checks you want to perfo rm
Checking1.JPG
Once the checklist is completed you get the below screen:
Checking2.JPG
To learn more about the checklist tool, check th e SAP Note 1729988 - SAP NetWeaver BW powered by SAP HANA - Checklist Tool
Planning Function Check tool determines whether planning functions are executed in ABAP or in SAP HANA
It uses program RSPLS_PLANNING_ON_HDB_ANALYSIS and it should be installed in your system otherwise you will see the below screen stating "Program RSPLS_PLANNING_ON_HDB_ANALYSIS does not exist"
Checking3.JPG
Check the below blog to learn more about it:

Best Practice # 4: Size Your BW System  Using a Fully Automated Sizing Tool

Go to Sizing tab
Sizing.JPG
In this tab, we can determine memory requirements for SAP HANA using the Sizing tool, can configure NLS, set up Data Archive Process and execute Data Archiving process
Capture2.JPG
To learn more about sizing, check SAP Note 1736976 - Sizing Report for BW on HANA
Also check the below blog on Sizing BW on HANA:

Best Practice # 5: Lower TCO by Leveraging  Non-active Data Concept and Off-loading Data to  Near-line Storage (or Archive)

As we all know that non-active data concept was introduced for BW on HANA last year

Non active tables are loaded into RAM only when they are accessed and are displaced from the RAM with highest priority in case of RAM shortage
In BW on HANA, PSA tables and Write Optimized DSO tables are automatically marked as "Non-Active"

To learn more, check the SAP Note 1767880 - Non-active data concept for BW on SAP HANA DB
After that we were told a bit about Near Line Storage with Sybase IQ
To learn more about it, check the below documents
Also check SAP Note 1796393 - SAP BW near-line solution with Sybase IQ

Best Practice # 6: Keep Your System Lean and Fast by Performing Housekeeping Task Regularly

Go to Housekeeping tab
HouseKeeping.JPG
As we all know Housekeeping activities are an integral part of BW as they ensure optimum utilization of system resources and increase system performance
Some of t he most common activities are:
Capture4.JPG
To learn more about Housekeeping activities, check the below document:
We can set automated Housekeeping using Task Manager and use "Housekeeping Tasks"
Check SAP Note 1829728 - BW Housekeeping Task List to generate a a task list with several common tasks associated with housekeeping/upkeeping an BW system
We can also extend this task list
Check the below document on how to install Housekeeping task list:
Also check the below document:
For Task Manager Configuration, check SAP Note 1589145 - Task Manager for Technical Configuration

We can also perform few housekeeping tasks manually present in the cockpit as shown above, such as
IDoc Archiving
Idoc.JPG
OLAP Statistic Deletion
BWStatic.JPG
For cleaning Large tables, check SAP Note 706478 - Preventing Basis tables from in creasing considerably

Jan 7, 2015

How to optimize Reporting Performance in SAP BI


Via Content in SCN

Introduction
We face many challenges in our BI projects in terms of Reporting Performance. Users always expect outstanding performance of our BI reports. No matter what ever we do in the backend (Modeling and Query Designer). I am going to share very important tips & techniques which I have learned through out my experience which consists of some standard thumb rules too.

It is recommended to use Inclusions Instead of Exclusions wherever possible as Exclusions cant access DB indices and will impact performance. Because, when huge no. of RKFs & CKFs are Included in a Query, Restricting, Conditioning and Computations are done for each of them during query execution. This is very time consuming and a high number of RKFs & CKFs can seriously hurt Query Performance that means, please open your query definition and pick up the fields which are used in the query while defining Aggregates. Delete the unused Aggregates 

If the aggregates are too Large, those not only degrades the Query performance but also loading performance by longer times to roll up and Attribute Change runs also takes longer times. 
Make sure you get good valuation indicators for your Aggregates, but not like below 


It is recommended to to Suppress Result rows Wherever possible. 


It is recommended to use SAP Exits whe re ever possible and bring down the Customer Exits
SAP Suggests free characteristics in reports should be limited to 8-10. 

In RSRV checks, free characteristics usage is marked in red which has very high impact on reports


It is recommended to reduce RKFs & CKFs in the Query to as few as possible.
It is recommended to redefine your Aggregates in an optimized way by taking Statistics(BI Admin Cockpit should be in place) & Query definitions into Consideration.



Archiving (NLS) is recommended to archive unused data.

a. Reduction of online disk storage

b. Improvement in BW query performance

c. Increased data availability as rollup, change runs and backup times will be shorter

d. Reduced hardware consumption during loading and querying

Reports should be designed on Multiproviders wherever possible.

Logical and physical partitioning is recommended for bet ter performance.

Extensive use of Filters at Query level is recommended.

Select appropriate Read mode settings for Multiproviders with "H" and Infosets with "X" in RSDIPROP t-code

Reporting on Infosets should be considered below tips :

a. Do not select all the fields which are part of Infoset definition like below. You can select the fields which we want to use in query only.



b. You should select "Use Selection of Structure Elements" in RSRT-->Properties



c. Do not make too many joins as it cause high runtimes to fetch data after the joins

Statistical Reports performance can be improved by broadcasting query result to cache and prefilling cache.
Deletion of unused Queries is recommended
Delete temporary Query Views is recommended.

It is recommended to be careful while creating Cell Structures as they require high query run times and will lead to performance degradation.

Program RSR_CACHE_RSRV_CHECK_ENTRIES can be scheduled to run on regular basis to remove the unused Cache entries .< /p>

Make proper Query read mode and Cache mode settings in RSRT-->Properties. The recommended Cache mode could be 1 or 5.
Conclusion :
It is always better to keep an eye on above points while developing our Business models and Queries. This blog will help us to satisfy our users with good reporting performance.

Oct 18, 2014

SAP Hana Series - 5

HANA Overview - 5

How is HANA licensed?

SAP tried to keep licensing simple with HANA.

HANA is available in the Cloud as Infrastructure as a Service (IaaS), Platform as a Service (PaaS) and as an application platform (AaaS), and it is possible to buy all those options now, on a monthly basis, from the SAP Website.

For on-premise customers, HANA is licensed in one of two major ways:

First, is as a proportion of your Software Application value (SAV), just like you can license other databases from SAP. This could be for your whole estate, or for a specific product like BPC.


Second, is by the unit, which is 64GB of RAM. There are a few editions of HANA, depending on your need, that bundle other software and allow more, or less, restrictive usage. The pricing is tiered, depending on the number of units you buy, and accretive.


In all cases, HANA licensing includes a lot of functionality that you would pay extra for in other databases. For example, Dev, Test, HA, DR licensing are always included. And if you buy HANA Enterprise, you have access to all functionality at no additional cost – including Predictive Libraries, Spatial, Graph, OLAP, Integration and Web. HANA contains a huge amount of functionality that would require 20-30 different SKUs from Oracle.

For those customers who need the base functionality of HANA but not the bells and whistles, there is now a HANA Base Edition, on which you can add other functionality as required, at a lower cost point.

FeatureHANA BaseHANA PlatformHANA Enterprise
Partitioning, Compression, Security
Calculation Engine, Aggregation Engine
XS Engine, River, SQLScript, HANA Studio
BRM, BFL
Smart Data Access
Predictive Analytics Library
Geospatial
Planning
Graph
Search, Text Analysis
System Landscape Transformation, Data Services

~~~Contd.

Oct 13, 2014

SAP HANA Series - 4

HANA Overview - 4

Is SAP HANA a database, platform, appliance, or cloud?


SAP HANA was designed to be a truly modern database platform, and as a result the answer is: all of the above. A modern database should be a database, platform and be available on-premise or in the cloud.

SAP has a large installed-base of on premise ERP customers, and the HANA platform supports their needs, especially the need for an enterprise-class database. Many of those customers are looking for an on-premise database to replace the traditional RDBMS.

The demanding needs of an in-memory database mean that SAP elected to sell SAP HANA as an appliance, and it comes pre-packaged by the major hardware vendors as a result.

However the future of business is moving into the cloud, and SAP HANA is available as Platform as a Service (PaaS) and Infrastructure as a Service (IaaS) with HANA Cloud Platform and Managed Cloud as a Service (McaaS) with secured HANA Enterprise Cloud and via 3rd party cloud vendors. Customers can also choose Hybrid deployment model that combines on premise and cloud. More details on this are available here.


How does SAP HANA compare to Oracle or IBM?

SAP HANA was designed to be a replacement to Oracle or IBM databases, either for net new installations or for existing customers. In most cases it is possible to move off those databases easily, and gain reporting performance benefits out of the box. Then it is possible to adapt the software to contain functions that were not possible in the past.

All three of the major RDBMS vendors have released in-memory add-ins to their databases in the last year. All of them support taking an additional copy of data in an in-memory cache, or in IBM’s case columnar tables.  All of them provide improved performance for custom data-marts.  But make no mistake; caching data has been around for a long time, while an in-memory database platform to run transactions and analytics together in the same instance is a new innovation.

Traditional database caching solutions are similar to the GM and Ford response to hybrid cars – take their existing technology and bolt new technology to it. SAP HANA is more akin to Tesla, who rebuilt the car from the ground up based on a new paradigm.

And so HANA’s capabilities from a business application perspective are 3 years ahead in technology from what others have.

~~~Contd.

Oct 8, 2014

SAP HANA Series - 3

HANA Overview - 3

What SAP Applications run on SAP HANA?

SAP CEO Bill McDermott said “HANA is attached to everything we have”.

Almost all the major SAP Applications now run on the SAP HANA platform. This includes the SAP Business Suite (ERP, CRM, PLM, SCM) and the SAP BW Data Warehouse.

The BI Suite including BusinessObjects Enterprise, Data Services and SAP Lumira are all designed to run on the HANA platform.

There are a set of Applications Powered by SAP HANA including  SAP Accelerated Trade Promotion Planning, SAP Collection Insight, SAP Convergent Pricing Simulation, SAP Customer Engagement Intelligence, SAP Demand Signal Management, SAP Assurance and Compliance Software, SAP Liquidity Risk Management, SAP Operational Process Intelligence, and SAP Tax Declaration Framework for Brazil.

In addition, SAP runs much of its cloud portfolio on HANA, including the HANA Cloud Platform and SAP Business ByDesign. The Ariba and SuccessFactors apps are in the process of migration.

What’s the business case for SAP HANA?

We’ve built business cases for HANA deployments of all sizes and whilst they vary, there at a few common themes:

  • TCO Reduction. In many cases HANA has a lower TCO. It reduces hardware renewal costs, frees up valuable enterprise storage and mainframes and requires much less maintenance
  • Complexity to simplicity.  HANA simplifies landscapes by using the same copy of data for multiple applications.  Our implementations have shown that adding additional applications to a HANA dataset are very fast and easy, delivering business benefits quickly.
  • Differentiation. HANA’s performance, advanced analytics (Predictive, Geospatial, Text analytics) and simplicity often mean a business process can be changed to be differentiating compared to competitors. Customer scenarios like loyalty management, personalized recommendations and anything where speed or advanced analytics capabilities are differentiating are all candidates.
  • Risk Mitigation. Many customers know that in-memory technologies are changing the world and so want to put an application like SAP BW on HANA or LOB Datamarts as a first step, so they can react quickly for future business demands.

~~~Contd.

Oct 3, 2014

SAP HANA Series - 2

HANA Overview - 2

Where does SAP HANA come from?

SAP built SAP HANA from the ground up, including research from the Hasso Plattner Institute in Potsdam, the acquisition of the IP from the p*Time database, the TREX search engine, BWA in-memory appliance and MaxDB relational database. It has been extended with intellectual property from the Business Objects and Sybase acquisitions with products like Sybase IQ and Business Objects Data Federator.

Whilst HANA has a legacy and some code from other products, the bulk of the database and platform has been written from the ground up.


What makes SAP HANA fundamentally different?

SAP HANA is different by design. It stores all data in-memory, in columnar format and compressed. Because HANA is so fast, sums, indexes, materialized views and aggregates are not required, and this can reduce the database footprint by 95%. Everything is calculated on-demand, on the fly, in main memory.  This makes it possible for companies to run OLTP and analytics applications on the same instance at the same time, and to allow for any type of real-time, ad hoc queries and analyses.

On top of this SAP built solutions to all the problems of columnar databases, like concurrency (HANA uses MVCC) and row-level insert and update performance (HANA uses various mechanisms like a delta store).

If this wasn’t enough SAP added a bunch of engines inside HANA to provide virtual OLAP functionality, data virtualization, text analysis, search, geospatial, graph (will be available soon) and web. It supports open standards like REST, JSON, ODBO, MDX, ODBC and JDBC. There is as much functionality in there as a whole Oracle or IBM software stack, in one database.


What kinds of use cases does SAP HANA support?

The first HANA deployments were all analytical use cases like Datamarts and Data Warehouses because the benefits are there right out the box. EDWs like SAP BW run like lightening with a simple database swap.

With a transactional application like Finance or Supply Chain, most things run a little better from a simple database swap (SAP claim 50% faster for their own core finance).  The real benefits come when logic from the applications are optimized and pushed down to the database level, from simplification of the apps (SAP is building a simplified version of their Business Suite), or from ancillary benefits like real-time operational reporting, real-time supply chain management or real-time offer management.

Best of all, unlike the other database systems in the market, HANA supports all applications on the same instance of data at the same time.  No more copying, transforming and re-organizing data all over the enterprise to meet the needs of different applications. HANA perfectly serves the needs of all applications with one “system of record” instance.

~~~ Contd.