1 2 3 67 Previous Next

SAP HANA and In-Memory Computing

996 Posts

Introduction

In the summer of 2014, I wrote a blog about the SAP Certified Technology Specialist - SAP HANA Installation certification. The blog has received over 20.000 views - many thanks to all of my readers! - and judging by the comments and messages I have received it has helped quite a few students to pass the exam.

 

At the time, the certification matched SAP HANA SPS 06 and 07. Today, the most recent SAP HANA release is SPS 11. So I figured it to be a good time to provide an update for this blog and yesterday I dropped by the certification test center and managed to pass the certification (). In this blog, I will share with you my experiences.

 

As for my background, I have performed countless installations of SAP HANA as of SPS 02 and upgraded many revisions for the SAP HANA Academy. I also write the What's New series for the SAP HANA Academy, e.g.What's New with SAP HANA SPS 11 - by the SAP HANA Academy.

 

This blog is part of a series:

 

About the Certification

 

Below the editions of the SAP Certified Technology Specialist - SAP HANA Installation certification

  • Edition 2013 (SPS 06) - no longer available, expired in 2015
  • Edition 2014 (SPS 07) - E_HANAINS141 will expire in 2016
  • Edition 2014 (SPS 08) - E_HANAINS142
  • Edition 2015 (SPS 09) - E_HANAINS151
  • Edition 20xx (SPS xx) - E_HANAINSxxx

 

For the latest information about SAP HANA training, see the blog by Haythem OUESLATI on SCN: SAP HANA Education - Course & Certification Program 2015. Haytham writes that the SAP HANA SPS11 courses and certification program 2016 will be posted soon.

 

Number of questions: 40

Cut Score: 68% (141), 65% (142), 60% (151)  => Note that the cut score is going down. This exam is getting easier!

Duration: 90 minutes

 

The prerequisite for the Technology Specialist certification is ownership of the Technology Associate certificate: E_HANATEC141, E_HANATEC142, or E_HANATEC151; it sits on top. They are not linked, so any combination is fine, e.g. a combination of TEC141 and INS151 is valid.

 

Topic Areas

 

There are 40 questions divided over 6 topic areas with the relative weight. I will discuss each topic area in more detail below.

 

  • System Landscape Planning (6 -10 questions)
  • Installation and Uninstall Procedures (6 -10 questions)
  • Post-installation (6 -10 questions)
  • Hardware and Operating System Verification (3-5 questions)
  • Scale Out Scenarios (3-5 questions)
  • Administration Tools (3-5 questions)

 

Resources

 

As main resource training HA200 - SAP HANA - Installation & Operations is listed. This 5-day training covers not only installation but also architecture, administration tools, backup and recovery, operations, security, user management, etc. The training is also the main resource for the Technology Associate certification, so it probably is a good investment of your time. However, it is not a requirement.

 

The prerequisite for the HA200 training is the training HA100 SAP HANA – Introduction (2 days).

 

Both HA200 and HA100 are also available as e-learning.

 

Additional resources mentioned as preparation for the exam:

 

Note that the SAP Help Portal on http://help.sap.com/hana_platform only shows the latest documentation, SPS 11 at the time of writing. For earlier editions, you need to go to the SAP Service Marketplace on http://service.sap.com/hana.

 

SAP HANA Academy

 

To help you prepare for the exam, I have recorded a number of tutorial videos about SAP HANA installations. The playlist SAP HANA Installations SPS 11 discusses concepts and shows how to install and update the SAP HANA server, studio and client, add components, and perform post-installation configuration.

 

Sample questions

 

On the certification page, a link to a PDF with sample questions is included. Unfortunately, the questions are still the same as for the 2013 edition, so I will not repeat them here. If you are not familiar with these questions yet, see the previous of this blog SAP Certified Technology Specialist: SAP HANA Installation - by the SAP HANA Academy.

 

More Questions?

 

Unfortunately, but very reasonably, those that have passed the exam are not allowed to share the questions with anyone else, so I can't share any particular question with you here. However, a close study of the mentioned resources should provide you with enough knowledge to successfully pass the exam.

 

Product Availability Matrix

 

The Product Availability Matrix (PAM) on the SAP Support Portal provides information about SAP software product versions, including availability and end of maintenance dates, upgrade paths, and technical release information (database platforms, Java version, operating systems, etc.).

 

For SAP HANA, PAM provides links to the Certified SAP HANA Hardware Directory, the latest SAP Road Map presentation, important documentation (Master Guide, Server Installation Guide), release notes, and the SAP Help Portal for the SAP HANA Platform.

PAM also list supported operating system for the SAP HANA server, for SAP HANA studio, and for the SAP HANA client.

 

QUESTION ALERT: Make sure, you know on which operating systems the different components are supported.

pam.png

 

QUESTION ALERT: Make sure you are familiar with the notion of T-Shirt sizing and the relevant components.

 

For more information about SAP HANA sizing, see the SCN blog: Sizing SAP HANA - by the SAP HANA Academy

 

Below a video from the SPS 11 Installation and Update playlist that demonstrates how to navigate the Matrix.

 

 

 

SAP HANA Server Installation Guide

 

This guide grows with every release. The SPS 11 version counts 197 pages, of which 50 pages are parameter reference.

 

 

Chapter 1 - SAP HANA Installation and Update Overview

 

The first chapter lists the different editions and options, and where to download the software.

 

QUESTION ALERT: Make sure you know what's in the box. Base edition, platform edition, enterprise edition: what components are included?

 

For more information about the options, see SAP HANA Options and Additional Capabilities – SAP Help Portal Page

 

QUESTION ALERT: Make sure you are familiar with the different deployment models: appliance and tailored data center integration (TDI).

 

For more information about TDI, see SAP HANA Tailored Data Center Integration - SAP HANA Technical Operations Manual - SAP Library and SAP HANA Tailored Datacenter Integration (TDI)

 

Below a video that shows how you can download SAP HANA software from the SWDC (Software Download Center).

 

 

 

This video shows where to find documentation and some of the key topics from the Master Guide.

 

 

 

Chapter 2 - Concepts and Requirements for an SAP HANA System

 

The second chapter discusses system concepts and system types, deployment types, hardware and software requirements, and recommended file system layout.

 

QUESTION ALERT: Make sure you understand what's a host, a system, an instance, and a distributed system. What has to be the same on a distributed system?

 

QUESTION ALERT: Make sure you know what purpose the SAP HANA Storage Connector API serves; read for example SAP HANA TDI - Storage Requirements.

and SAP HANA TDI - Network Requirements

 

QUESTION ALERT: Make sure you know what purpose the hardware check tool serves (what it does, how it works, you do not have to known all the parameters); see SAP Note 1943937 - Hardware Configuration Check Tool - Central Note

 

Below a video that discusses these concepts and shows default file system layout.

 

 

 

Chapter 3 - Using the SAP HANA Platform LCM Tools

 

The third chapter introduces the different flavours of the lifecycle management (LCM) tools: command line, windows, and web; and how they can be used; interactive, batch, or a combination. This clearly is an important chapter and you can expect a few question on this tool.

 

QUESTION ALERT: Make sure you understand what tasks can be performed by the different versions of the lifecycle manager installer (installation medium and resident HDBLCM); where are they located?

 

QUESTION ALERT: Make sure you understand the different program interaction modes and what takes precedence: parameter file or call options?

 

QUESTION ALERT: Make sure you understand how the web version of HDBLCM works, how to access it (URL, ports), how to troubleshoot (e.g. under what account it runs and required privileges), what lifecycle management tasks it supports, etc.

 

QUESTION ALERT: Make sure you understand how to perform a centralised execution of platform LCM tasks.

 

QUESTION ALERT: Make sure you understand what role the SAP Host Agent has for LCM tasks.

 

QUESTION ALERT: Make sure you understand the difference between platform lifecycle management with HDBLCM and application lifecycle management with HALM.

 

QUESTION ALERT: Make sure you understand the difference between the platform lifecycle management tool HDBLCM - the wrapper tool - and the different command line tools that are called by HDBLCM, e.g. hdbinst, hdbuinst, hdbupd, etc.

 

Below a video that shows the different versions of the SAP HANA Platform Lifecycle Management tool (command-line, windows, web).

 

 

Below a video that shows the lifecycle management tool in batch mode with a parameter file.

 

 

 

Chapter 4 - Installing an SAP HANA System

 

The fourth chapter documents the actual SAP HANA installation. This obviously is also an important chapter!

 

QUESTION ALERT: Make sure you understand how to run HDBLCM with a parameter file, minimum required parameters and which parameters do not have a default value.

 

QUESTION ALERT: Make sure you understand how you can specify passwords with a batch installations.

 

Below a video that shows the SAP HANA installation in command line and Windows mode.

 

 

 

Chapter 5 - Updating the SAP HANA System

 

The fifth chapter documents the update of the SAP HANA system and SAP HANA system components like the SAP HANA client, SAP HANA studio, Application Function Libraries (AFL) ,etc.

 

QUESTION ALERT: As of SPS 09, updating the SAP HANA system can be performed as the system administrator user <sid>adm.

 

Below a video that shows an update of the SAP HANA system in command line, Windows, and web mode.

 

 

 

Chapter 6 - Managing SAP HANA System Components

 

The sixth chapter documents how to install, update or uninstall SAP HANA system components.

 

QUESTION ALERT: Make sure you understand what tasks can be performed by the different versions of the lifecycle manager installer (installation medium and resident HDBLCM).

 

Below a video that shows how to add the AFL component using the platform lifecycle management tool in command line, Windows, and web mode.

 

 

Chapter 7 - Uninstalling the SAP HANA System

 

The seventh chapter documents how to uninstall SAP HANA components.

 

QUESTION ALERT: Make sure you know the prerequisites to uninstall an SAP HANA system.

 

QUESTION ALERT: How do you uninstall the SAP Host Agent or the SMD agent?

 

Below a video that shows how to uninstall an SAP HANA system.

 

 

 

Chapter 8 - Managing the SAP HANA System After Installation

 

The eighth chapter documents some common post-installation tasks like enabling data volume encryption.

 

QUESTION ALERT: Make sure you understand what you can encrypt with data volume encryption.

 

Below a video that shows how DVE works.

 

 

 

SAP HANA Studio Installation Guide

 

This is a small guide compared with the server installation guide and documents what is SAP HANA studio and how to install, update, or uninstall it on the three supported platforms: Linux, Microsoft Windows and Mac OS.

 

QUESTION ALERT: Make sure you know on which platforms SAP HANA studio is supported.

 

QUESTION ALERT: Make sure you are familiar with the featured installation option and what purpose it serves.

 

QUESTION ALERT: Make sure you know how you can perform an installation using an update site.

 

The video below shows how to install SAP HANA studio on the Windows platform.

 

 

The video below shows how to install SAP HANA studio on the Mac OS X platform.

 

 

The video below shows how to install SAP HANA studio using an update site.

 

 

The video below shows how to install SAP HANA studio as a plugin for Eclipse

 

 

 

SAP HANA Administration Guide

 

This is very complete and therefore voluminous guide: 1175 pages for the SPS 11 release.

On the topics list for the installation certification it listed, however, as an additional resource only for the topic Scale Out Scenarios, which has a relative weight of 8-12% (± 4 questions). So I would not recommend to spend too much time on this guide.

 

Chapter 5 - Availability and Scalability

 

QUESTION ALERT: Understand (high-level) the concepts of system and storage replication and the tool used (hdbnsutil)

 

QUESTION ALERT: Understand (high-level) the concepts of backup and (disaster) recovery.

 

QUESTION ALERT: Understand how you can configure the network for multiple hosts.

 

 

The video below explains SAP HANA system replication concepts. There is a full playlist on this topic here: SAP HANA System Replication - YouTube

 

 

The video below explains SAP HANA system replication concepts. There is a full playlist on this topic here: Database Backup and Recovery - YouTube

 

 

Additional Resources

SCN Docs

 

SCN Blogs

SAP Notes

 

 

Did you pass?

 

Post a comment about how the exam went. If there is any information missing, please let me know. Thank you.

 

Success!

Are you looking for a high-level overview of the functionality provided with SAP HANA editions and options?

 

The new feature scope description for SAP HANA describes which features, capabilities, and documentation are available for SAP HANA SPS 11.

 

It covers the following SAP HANA editions and options (full-use license):

  • SAP HANA, base edition
  • SAP HANA, platform edition
  • SAP HANA, enterprise edition
  • SAP HANA dynamic tiering
  • SAP HANA smart data streaming
  • SAP HANA, information management option
  • SAP HANA, real-time replication option
  • SAP Operational Process Intelligence powered by SAP HANA
  • SAP HANA accelerator for SAP ASE option

 

The feature scoope description for SAP HANA is not part of the official SAP HANA product documentation, but it is helpful if you’re looking for a summary of the main capabilities of SAP HANA. You’ll find links to the main guides and references for all SAP HANA editions and options mentioned above.

 

Your SAP HANA platform documentation team

In a trio of tutorial videos the SAP HANA Academy's Tahir Hussain "Bob" Babar details how to setup and use the Camel Facebook Adapter. The Camel Facebook Adapter is used to connect SAP HANA to Facebook. These videos are part of the SAP HANA Academy's What's New in SAP HANA SPS 11 series, with a specific focus on the new features of Smart Data Integration.


How to Setup the Data Provisioning Agent


The first video in the series shows how to setup the Data Provisioning Agent. Follow along with the video below.

Screen Shot 2016-01-29 at 8.08.39 AM.png

Apache Camel is a framework for creating custom adapters using a few configuration files and spring domain specific language. Hardly any coding is necessary to set one up but you will need to know Apache Camel and Spring framework to preform advanced tasks.


Bob will be using the Camel Facebook Adapter, which is a pre-delivered component based upon the Camel adapter. You can use the Apache Camel Facebook Component to connect to and retrieve data from Facebook.


A few tasks must be preformed on the data provisioning machine so you can use the Camel Facebook Adapter. First, a pair of files must be downloaded. The initial file is the Facebook4J API, which basically provides the ability to connect to Facebook via its API.


In a browser navigate to the Facebook4J page from the Apache Camel Facebook component page. Here you have the option to download the latest version of Facebook4J. However, to follow along with this series you need an earlier version of Facebook4J. So Bob right clicks on the latest version listed on the webpage (facebook4J-core-2.4.2.jar) and selects to copy the link address. Bob then pastes the copied address in a new tab after http://facebook4j.org/download/ and changes the version number to 1.1.12. So Bob's web address bar displays http://facebook4j.org/download/facebook4j-core-1.1.12.jar before he hits enter to download the file.

Screen Shot 2016-01-29 at 8.44.29 AM.png

The second file that must be downloaded is the Apache Camel Facebook jar file. Navigate to the Camel downloads page and select the latest release 2.15.5 at the top of the page. If you would like an older version click on the see download archive link. Scroll down the page, click to download the apache-camel-2.15.5.zip file and then select one of the mirrors on the page you're directed to. Bob downloads http://apache.mirror.iphh.net/came/apache-camel/2.15.5/apache-camel-2.15.5.zip.

Screen Shot 2016-01-29 at 10.04.01 AM.png

Bob moves both of the files to his desktop. Bob opens the Apache Camel zip file and navigates to the lib folder. The only file that you need from the lib folder is camel-facebook-2.15.5.jar. Bob drags this file to his desktop and then deletes the zip file.

Screen Shot 2016-01-29 at 8.48.10 AM.png

Next Bob opens the Camel folder located in his data provisioning agent folder on his Windows machine. Inside the Camel folder Bob creates a new folder called lib and moves the recently downloaded camel-facebook-2.15.5.jar and facebook4j-core-1.1.12.jar files into it.

Screen Shot 2016-01-29 at 8.50.40 AM.png

You must also enable the adapter so that when you login to your data provisioning agent you will be able to see the Camel Facebook component. To accomplish this right click on the adapters.xml file in your Camel folder and choose to Edit with Notepad++. Bob moves the comment originally on line 18 to line 5. Now the lines below line 5 are visible.

Screen Shot 2016-01-29 at 8.52.18 AM.png

Original

Screen Shot 2016-01-29 at 8.53.38 AM.png

Revised


Next you must register the Camel Facebook Adapter. Launch your Data Provisioning Agent and choose to connect to your SAP HANA box. In this video Bob covers the necessary rights that must be given when configuring your DP Agent including create agent, adapter admin, agent admin and create remote source. Once you successfully connect you should be able to see the CamelFacebookAdapter.

Screen Shot 2016-01-29 at 9.05.37 AM.png

With CamelFacebookAdapter selected click on the Register Adapter button to register it on your DP Agent. Now we will be able to access the Camel Facebook Adapter in SAP HANA.


Setting proxies is not necessary. Bob demonstrates this by showing the blank screen for the CamelFacebookAdapter in the Preferences. The proxy can be configured in your remote source.

Screen Shot 2016-01-29 at 9.11.33 AM.png

How to Create a Facebook Application and Generate the Keys to Connect to the Facebook API


In the second video in the series Bob shows how to create a Facebook application. This Facebook application will generate the keys that are needed to connect to the Facebook API.

Screen Shot 2016-01-29 at 8.09.45 AM.png

Bob has created a sample Facebook account called Ryan Cantona. Bob will show how to extract data from this profile, specifically the Television Programmes Ryan has liked. At the moment Ryan likes four TV programmes.

Screen Shot 2016-01-29 at 9.15.15 AM.png

The idea behind the application is that whenever Ryan likes a new show (or book, or gains a new friend) then that information will be registered instantly in SAP HANA.


When you connect through the Camel Facebook Adapter you won't use your regular Facebook login credentials. So you must create an application which will generate four key. Those keys in turn will be used to authenticate your connection.


When logged into Facebook navigate to developers.facebook.com. Click on the My Apps button at the top and select the Add a New App. Choose Website, name the app and choose a Facebook ID. For Bob's app he choose Entertainment as the Category before clicking create App ID.

Screen Shot 2016-01-29 at 9.17.42 AM.png

On the setup SDK page scroll down to the bottom and enter your website URL (can be any URL) and click next. Bob's URL is ryanssap.com. Now that the application is registered if you refresh the page you can view your app.

Screen Shot 2016-01-29 at 9.19.05 AM.png

Select the newly created application and then copy the App ID number to a notepad. Then click on the Show button next to App Secret and record the App Secret number as well.

Screen Shot 2016-01-29 at 9.20.22 AM.png

Next click on the Tools & Support tab and choose the Graph API Explorer tool. Then select your recently created app as the application and click on the Get Tokens button. On the Select Permissions window that pops up you can choose what categories of information you want to allow access to. In the User Data Permissions section Bob chooses user_about_me and user_likes. Bob doesn't select any Extended Permissions.

Screen Shot 2016-01-29 at 9.36.19 AM.png

Bob advises to not select the user_friends permission. Due to Facebook's excellent security, your friends would have to use your application in order for it to access their information. The idea behind a similar product would be that a business would design a game or application on Facebook. The only way for people to play the game or access the application would be to agree to give the game/application permission to access their friends' information.


Bob clicks the Get Access Token button and confirms what it will access. The access token is then listed and Bob records it for future use.

Screen Shot 2016-01-29 at 9.38.56 AM.png

Back in the Tools & Support tab Bob clicks on the Access Token Tool. Next Bob selects Debug next to the User Token to display the User ID on the subsequent page.

Screen Shot 2016-01-29 at 9.39.13 AM.png

After recording this key Bob now has his Facebook application's App ID, App Secret, User ID and User Access Token. These four keys will be used when creating the remote source in SAP HANA.


How to Create a Remote Source in SAP HANA to Connect to Facebook


In the series' third and final video Bob shows how to create a remote source in SAP HANA. This remote source will connect to Facebook using Smart Data Integration.

Screen Shot 2016-01-29 at 8.11.00 AM.png

Log into the Catalog on the SAP HANA Web-based Development Workbench and navigate to the Remote Sources Folder in the Provisioning Folder. Right click and choose New Remote Source. Bob names his new remote source MyFacebook and chooses CamelFacebookApapter as his Adapter name. Bob's Location is agent and his Agent (Group) Name is SHA_DP_Agent.


Next Bob configures his HTTP Proxy Host and Port. Then Bob sets his Credentials Mode as Technical User and then enters the four keys he got from the Facebook application he created in the last video.

Screen Shot 2016-01-29 at 9.45.32 AM.png

After entering the four keys, Bob saves the remote source and clicks refresh to access his newly created MyFacebook remote source. Drilling down into the MyFacebook remote source shows the various objects from which you can create virtual tables.

Screen Shot 2016-01-29 at 9.46.21 AM.png

Bob right clicks on TELEVISION and selects New Virtual Table. Bob names the table MyFacebook_TV and puts it in his SHA schema. Bob then opens the content of his MyFacebook_TV virtual table located in the SHA schema in his catalogue folder. The table lists the four programmes that Ryan Cantona likes and the date and time in which he liked each one.

Screen Shot 2016-01-29 at 9.47.20 AM.png

To test the connection Bob likes a new TV show (Bugs Bunny) on Ryan Cantona's Facebook profile and then refreshes the virtual table to see that Bugs Bunny Show is now listed and time stamped.

Screen Shot 2016-01-29 at 9.49.54 AM.png

Note that the User Access Token you generate from your Facebook application only lasts for one hour.


This series showed how to use the Camel Facebook Adapter to connect SAP HANA to Facebook using Smart Data Integration in SAP HANA SPS 11.


For more tutorial videos about What's New with SAP HANA SPS 11 please check out this playlist.


SAP HANA Academy - Over 1,300 free tutorials videos on SAP HANA, SAP Analytics and the SAP HANA Cloud Platform.


Follow us on Twitter @saphanaacademy and connect with us on LinkedIn to stay abreast of our latest free tutorials.

Introduction

 

On one hand HANA Variables are easy to use and, mostly, perform well on well-modeled HANA views. There are always exceptions with big tables where join happens at a very granular level, then it is smarter to use Input Parameters, mapped through nested layers of HANA views instead of just a Variable in the topmost one. Performance-wise you can achieve a saving of 20-50% (personal observations), but then it comes a little tricky with introducing both keys and texts in Value Help.

 

Exactly this situation is discussed in more detail by this how-to post. Some content here originates from idea exchange with Joaquin Grau, whom I have to say big thanks.

 

An example:

  • You have a basic view joining the tables BSEG & BKPF
  • This basic view is used in Reporting view

 

   Blog2 Picture010.jpg

Basic view

 

Blog2 Picture020.jpg

Reporting view, using the Basic view

 

Given the amount of data and knowing business requirement to make this selection, it is a smart idea to create an Input Parameter on Company Code on both of the views, add a filter on the basic view (as seen on the screenshot above) and map it in the upper reporting view for execution (as seen on the screenshots below).

Blog2 Picture030.jpg

 

It is also nice if you provide Value Help by changing the Parameter Type to Column

  Blog2 Picture040.jpg

 

Works good, but – no texts here. Even if you map Company Code Text as a label in the view, it will not get populated

 

Quick solution with Input Parameters

 

Open an Input Parameter settings, change it to Column and scroll down to define, which view should be used for Value Help. In my example I will use a SAP-delivered HANA Live view CompanyCode

Blog2 Picture050.jpg

 

Limitations you will notice:

  • It uses just the MasterData tables, wherein you might have unwanted / unused entries
  • There is no option to “switch” it to work based on Transaction Data view (I am missing BEx sometimes too J )

Customization

 

1. Create a dedicated view that you will use for Value Help for Company Codes. It can be even based on Transaction Data, but mind the performance.

2. Set the filters (as many as you can). I was lucky to be able to use Chart of Accounts for filtering the relevant Company Codes from table T001

Blog2 Picture060.jpg

3. Map your texts as Label column in the Semantics (otherwise texts will not show up in F4 Value Help!!!)

Blog2 Picture070.jpg


4. Use your custom Value Help view in the Input Parameter as a custom Column

Blog2 Picture080.jpg

The End result looks like this:

Blog2 Picture090.jpg

Today, I face a problem regarding to invalid username and password for DB system user whereas the password was never changed or forgot (not sure if somebody has input a wrong password several times before).

 

Background Information: Our HANA version: SPS 10 Rev.102.02

 

As I check with SAP HANA Administration Guide of SPS 10, it mentions that the SYSTEM user will not be locked regardless of the number of failed logon attempts in Number of Allowed Failed Logon Attempts. However, the user information page shows a warning like that the system user with status: suspicious Too many invalid connect attempts.

 

At that time, I had no idea about how to fix this situation but to try ALTER USER SYSTEM RESET CONNECT ATTEMPTS. The warning information of system user disappears and I successfully logon the system with the known password of user SYSTEM.

 

I take sometimes to search note regarding to the password of user SYSTEM, then get the following note 2251556 - SAP HANA SYSTEM user can now be locked for too many failed logon attempts

 

Starting from SAP HANA Revision 102, the SYSTEM user can be locked if logon attempts fail for too many times, just like the other database users.

 

Solution:

1. ALTER USER SYSTEM RESET CONNECT ATTEMPTS (create a backup user with the "USER ADMIN" system privilege before)

2. Set parameter password_lock_for_system_user to false (Not recommended)

 

Hopes this blog will help to fix this kind of password problem.

 

Regards,

Ning Tong

In this blog, I would discuss how can we load data from HANA models/Database Procedure  to BW DataSource based on Function Module.

 

Scenario 1 : 

You have a HANA model which gives you  every day snapshot of open order / delivered order in real time . You want to store the data somewhere  to see trend over time.  Reporting security is implemented in BW side and you want to reuse that .You also want to use Master Data / Text available in BW .


Scenario 2: 

You have BW on HANA and HANA native in same database , and there is hybrid data model which uses data from both BW Schema and HANA native schema.  If the tables are small , you might pull the data by  some way and build your model in BW . However, if the tables are big and requirement is not straight forward, a calculation view can be handy and comes with great performance benefit by using Input Parameter.  We can also model very complex requirement by using  stored  procedure or Script Based Calcuation view.  But , for some reasons we want data to be persisted in BW , like business wants Key and Text side by side for variable help values which still does not work well in native HANA .



In our case, we have two large tables ( ~ 1 B records )  , one in BW Schema , another in HANA schema along with some moderate size tables.  I need to build a data model on top of these tables to get the output and then store it for some time . Because of the data volume, I created Calculation View with Input Parameter to filter these two big tables as early as possible before implementing business logic.  Now, for the above mentioned reasons, I want to store the data in BW DSO and then have a BEx query on top of it.

 

There are multiple ways how HANA models can be consumed in BW , viz. Composite Provider , Analytic Index, Virtual Provider , OpenODS views , External View ( to be accessed within ABAP ) , Database proxy procedure etc.  I used function module based extractor with database proxy procedure to have flexibility in data loading.  Function Module would call HANA models/Procedure  repetitively  with different input parameters and store the data in PSA.

 

Implementation: 

We can access any Stored Procedure in HANA ( created from HANA studio) within ABAP via Proxy Procedure. We can access this Proxy procedure within our Function Module via automatically generated interface.  Below figures shows  overall design.

 

                                capture.png

                                                                                      Figure1: Design diagram

 

Step 1 :  Create Analytic / Calculation View ( with Input Parameter ) . Without Input Parameter filter, it is much easier to expose them via External View.

How to Consume HANA View in ABAP Using External View and Open SQL

 

 

Step 2 : Create Stored Procedure in HANA to access Objects created in Step 1.  Here my procedure select all fields from Calculation View ZSCN_BILLING , but you can add more fields, calculation if you want.

procedure.PNG

Test the procedure once to see if it is returning correct data.

 

test.PNG

 

Step 3 :  Create Proxy Procedure for Stored Procedure created in Step 2 . This has to be done from ABAP perspective of Eclipse Modeling tool

Login to Eclipse tool , open a ABAP project.  Navigate through the package where you want to create Database proxy procedure. "Package" here means Transport package, for this demo I choose $TMP , as I do not want to transport it. Right click on DB Procedure Proxy folder and Select New Database Procedure Proxy

 

proxy1.PNG    proxy2.PNG

 

Name your Proxy Procedure, select your Database procedure ( Use Ctrl + space key to get a list ) and enter name for the interface to be created.

 

proxy3.PNG

Click Next and then Finish, if everything is fine Proxy Procedure would be created. You can change some of the data types( like C to N  )  as well  if required and activate the Proxy Procedure.  Once activated, this can be called from ABAP ( here we would call this proxy procedure inside our function module ) .

proxy4.PNG

 

More detail regarding Proxy Procedure can be found here. ProxyProcedure

 

 

Step 4:  Create a Function Module based DataSource in BW and implement your logic within the function module .

Function module based extractor gets called repeatedly and load data to PSA table.  In the first call, it initializes all parameters and then in every subsequent call it fetches the data.  When it cannot fetches any more data, it raises an exception NO_MORE_DATA and your info package gets finished.  FM based extractor does all these things by using a cursor .  In our case, we have to achieve all these via custom coding.

 

First I created a list of Input Parameter ( list of Customer)  which would be passed while calling the Proxy Procedure. By default it would fetch all the customer; we can also use InfoPackage selection.

 

In the second step, we would loop through this list of parameter and call our Proxy procedure in loop.

 

Once we complete our Input Parameter list, in the next call , we would raise NO_MORE_DATA to send message to InfoPackage that data load completed.

 

Extractor Checker ( RSA3) without Selection :

 

Ext1.PNG

 

With Customer Selection :

Ext2.PNG

Ext3.PNG

 

For complete code, Click Here

 

 

Please share your feedback and ideas for improvement.

 

Regards

Anindya

Software Development on SAP HANA returns to openSAP with updates on SPS 11. This course, Software Development on SAP HANA (Delta SPS 11),  is aimed at those of you who have previously joined our Software Development on SAP HANA courses or if you already have other baseline knowledge of SAP HANA development. SAP HANA SPS 11 was released in Q4, 2015 and this course will bring you up to date with the newest features, focusing on an overview of the new architecture and the various expanded capabilities it makes possible.

 

Here are just some features now available with SPS 11:

  • Benefit from extended scalability and a broader support of programming languages. SAP HANA Extended Application Server (XS) can now scale independently from database services allowing you to optimize the use of system resources and ensure optimal application performance.
  • Your choice of programming languages has also been expanded since XS can now support JAVA on Apache TomEE or JavaScript on Node.js, allowing you to architect your applications using microservices, for greater flexibility.
  • Take advantage of standard tools to leverage your existing expertise and expedite development. SAP HANA SAP 11 adds support for open source code management tools such as Git, GitHub and Maven. .

 

Join this free openSAP course to continue your journey with SAP HANA SPS 11 and find out how you can use these new features. The course, Software Development on SAP HANA (Delta SPS 11), starts March 2, is just 3-4 hours effort in total, and will be open for five weeks. The course will be delivered through videos with transcripts and pdfs, along with self-tests and the support of the discussion forum where you can ask questions and chat with the experts and other learners. However there is just one assignment, which you can take at any point throughout the five weeks. Once you earn over 50% in the assignment, you will earn a Record of Achievement.


For those of you who also add your SAP ID to your openSAP profile before the course closes, you’ll receive an openSAP badge on your SCN profile as an added bonus!



I didn't write enough blogs last year, and felt like I abandoned SCN a bit. Lately a few people have kindly commented that they enjoyed reading my content, which is being nicer to me than I deserve. So here's a little gift to the year off.

 

This script is only useful if you have a HANA system which was installed with an older revision (SPS01-07) and you have upgraded it a bunch of times and it's now on a newer release (SPS08-10).


In that scenario, it's possibly the most useful thing you will see all year for a HANA devop. In a productive HANA system we saw disk footprint reduction from 2.9TB to 1.89TB and in-memory footprint reduction by over 100GB. It will also substantially decrease startup time, decrease backup time, and increase performance.

 

What happens is that HANA chooses the compression type of a column store object when it creates it, and only occasionally re-evaluates the compression type. In older databases that have a lot of data loaded since the initial installation, it can mean that the compression is suboptimal. In addition, objects can be fragmented and use more disk space than is really required.

 

This script takes care of all that and cleans up the system. It takes some time to run (18h in our case).

 

A few caveats (these are general best practices, but I have to point them out)!

 

  • Run this script in a QA system before production, for test purposes and so you know how long it will take
  • Run it at a quiet time when data loads are not running
  • Ensure you have a full backup
  • Use this script at your own risk, like any DDL statement it could cause issues
  • Do not restart HANA during this operation
  • Complete a full backup after the script, and restart HANA to reclaim memory

 

Thanks to Lloyd Palfrey, who actually wrote it.

 

-- -----------------------------------------------------------------

--  HANA Reorg Script - 2015

-- -----------------------------------------------------------------

--  HOW TO RUN:

--  After creating the procedure you can run it with this statement:

--  call "_SYS_BIC"."dba_reorg"('INSERT_SCHEMA_NAME_HERE');

-- -----------------------------------------------------------------

 

CREATE PROCEDURE "_SYS_BIC"."dba_reorg"(IN pi_schema VARCHAR(60)) LANGUAGE SQLSCRIPT AS

CURSOR c_cursor1 FOR

SELECT TABLE_NAME

FROM M_CS_TABLES

WHERE SCHEMA_NAME = :pi_schema;

 

-- Recompress Tables

BEGIN

   FOR cur_tablename AS c_cursor1() DO

   EXEC 'UPDATE "' || :pi_schema || '"."' || cur_tablename.TABLE_NAME || '" WITH PARAMETERS ('OPTIMIZE_COMPRESSION'='FORCE')';

END FOR;

END;


-- End of stored procedure

 

-- Reorg Rowstore

EXEC 'ALTER SYSTEM RECLAIM DATA SPACE';

 

-- Trigger Rowstore GC

EXEC 'ALTER SYSTEM RECLAIM VERSION SPACE';

 

-- Create Savepoint

EXEC 'ALTER SYSTEM SAVEPOINT';

 

-- Reclaim LOG space

EXEC 'ALTER SYSTEM RECLAIM LOG SPACE';

 

-- Reclaim DATA space

EXEC 'ALTER SYSTEM RECLAIM DATAVOLUME 110 DEFRAGMENT';

Problem description: when you try to replace node in graphical calculation view, SAP HANA Studio function “Replace with” do not offer all possible options. If you delete bottom node of calculation view from top node, all reference columns will be also removed from all connected top nodes.


First of all you should use development perspective. If you use Modeler perspective you can easily migrate your views to development perspective. If you try to apply “Check Out and Import Projects” operation (Development perspective->Repositories) on package created in Modeler

 

1.png

you will get an error “No projects are found to import”:

2.png

To fix it you should open Development perspective->Repositories, add .project file (in attachment) to your package, fix package name inside .project file and

activate .project file:


<?xml version="1.0" encoding="UTF-8"?>

<projectDescription>

  <name>A00_MOD_PERSP_PROJ</name>


Package cannot be structural.  You can unmark this option using edit package.


After these actions you can Check Out and Import Project and use Project explorer for development:

3.png

Let’s consider the next graphical calculation view that includes projections and join:

4.png

But what if now you need to aggregate Projection_2 data and include result in Join_1:

5.png

You are not able to use “Replace with” functionality:

6.png


But you can open Calculation view with text editor:

7.png

Find Join_1 metadata:

 

    <calculationView xsi:type="Calculation:JoinView" id="Join_1">

      <viewAttributes>

        <viewAttribute id="id"/>

        <viewAttribute id="name_firstName"/>

        <viewAttribute id="name_middleName"/>

        <viewAttribute id="name_lastName"/>

        <viewAttribute id="orgUnit"/>

        <viewAttribute id="address_id"/>

        <viewAttribute id="street"/>

        <viewAttribute id="city"/>

      </viewAttributes>

      <calculatedViewAttributes/>

      <input node="#Projection_1">

        <mapping xsi:type="Calculation:AttributeMapping" target="id" source="id"/>

        <mapping xsi:type="Calculation:AttributeMapping" target="name_firstName" source="name_firstName"/>

        <mapping xsi:type="Calculation:AttributeMapping" target="name_middleName" source="name_middleName"/>

        <mapping xsi:type="Calculation:AttributeMapping" target="name_lastName" source="name_lastName"/>

        <mapping xsi:type="Calculation:AttributeMapping" target="orgUnit" source="orgUnit"/>

        <mapping xsi:type="Calculation:AttributeMapping" target="address_id" source="address_id"/>

      </input>

      <input node="#Projection_2">

        <mapping xsi:type="Calculation:AttributeMapping" target="street" source="street"/>

        <mapping xsi:type="Calculation:AttributeMapping" target="city" source="city"/>

        <mapping xsi:type="Calculation:AttributeMapping" target="address_id" source="id"/>

      </input>

      <joinAttribute name="address_id"/>


Replace “Projection_2” on “Aggregation_1”

 

      <input node="#Aggregation_1">

        <mapping xsi:type="Calculation:AttributeMapping" target="street" source="street"/>

        <mapping xsi:type="Calculation:AttributeMapping" target="city" source="city"/>

        <mapping xsi:type="Calculation:AttributeMapping" target="address_id" source="id"/>

        </input>


And activate the view (you can use “Reset to active version” if something goes wrong). Then open the view with SAP HANA View editor:

8.png

9.png

Another very useful approach concerning new view development – add Technical Union before final Aggregation:

10.png

So you can easily add another final node (or nodes) in place of Join_1 and then remove Join_1 without losing any metadata.

Hello all,

 

I thought I would write this short blog on what exactly is needed when opening an incident for SAP HANA.

 

Each day I see many incidents losing valuable processing time because the correct information is not provided from the beginning.

 

I would like think this has already been covered here in the past but I think this is something that should be refreshed every now and again.

 

Looking at this note each time before opening an incident could decrease the time spent processing:

1758890 - SAP HANA: Information needed by Product/Development Support.

 

Also, having remote connection open (successfully tested) for the engineer also saves valuable time. If you could please refer to Notes 1592925 and 1635304. These notes will guide you through the process of opening valid remote connections. In all this leads to a better support for the user.

https://ideas.sap.com/SAPHANAPlatform/

 

It happens all the time - you're using a product and an idea which has the potential to make that product better comes to mind. Wouldn't it be great if you could submit your product enhancement ideas directly to the product team and potentially having it added to a future release?

 

SAP HANA on Idea Place gives you this opportunity. At this user community site you can submit product enhancement ideas or vote on ideas from others. SAP HANA product team will consolidate and track all ideas, but the most popular ideas will be directly reviewed by the SAP HANA Product Management and Develpment team on a regular basis. When accepted, an idea will be considered for inclusion in future releases.

 

 

A place to share your ideas with the SAP HANA product team

 

Continously listening to, co-innovating with, and learning from customers is crucial for the success of SAP HANA. Product enhancement ideas are one way we listen to and co-innovate with customers and partners. But how are enhancement requests chosen and will an idea become part of the product one day? And what are the most wanted product enhancements being at the list for many customers?

 

Any customer or partner can submit ideas, comment, and vote. We will accept product ideas based on the value they deliver to our customers and our product strategy. We prioritize reviews of popular ideas because the number of votes an idea receives represents its value for our customers. The voting on ideas allows us to understand which ideas are of the highest interest to the most users. It gives every user a voice.

 

Hana on Idea Place.png

 

 


Desirability, viability, and feasibility

 

A good idea should have three attributes: desirability, viability, and feasibility and we generally consider ideas based on those criteria.

 

Desirability means "do customers want it?". We evaluate the desirability of an idea based on the number of community votes on the website. We also take into consideration if the same idea has been brought up before by other customers through other means.

 

The viability expresses the degree of business sense that an idea has for SAP. It is determined by its alignment with the future direction of the product, if it fit with SAP market strategy and how it compares with other ideas that might have a higher priority because they provide more business value to more customers.

 

Feasibility means that the idea needs to be technically feasible. Is it technically possible to build it? Will it destabilize the core product or other features? How much time will it take to build? Is resource time available with all other requirements needing to be built?

 

Ideas requirements.jpg

 

To make sure your idea is understood by the SAP HANA Idea Place community, you should describe the product enhancement as detailed as possible. Also explain the business reason for requesting the idea. Further, information about the landscape, settings, and applications might be helpful. If applicable, make aware of any other dependencies.

 

We track submitted ideas and get actively involved at the point when an idea has been prioritized by a good number of users. Both the owner and follower of the idea get notified every time the status of an idea has been changed. In this way, you get informed when ideas are being reviewed and if they've been delivered.

 

Check out the SAP HANA Idea Place today. Give your vote to potential product enhancements, submit your ideas and help us make SAP HANA even better!

 

 

 

Note: submissions are conditional on acceptance of the Term of Use (ToU) agreement. SAP has the exclusive right to make the final determination on whether/when/how a feature will be added to the product.

Hi everyone,

 

My name is Man-Ted Chan and I’m from the SAP HANA Product Support team, today I wanted to discuss is row store data that remains in memory.

 

 

First thing we will need to discuss is that row store data is loaded into memory upon SAP HANA start up, it'll look like this:

Reattaching RS shared memory for RowStore segments

....

RS segments loaded from Persistency

 

 

Users who experience a slow start up should look into the amount of row store data in your system (You can run the query HANA_RowStore_Overview from SAP Note 1969700)

 

 

However, starting with SPS 07 you might have noticed that the start up time of a HANA system might a lot quicker (especially if your environment has a lot of row store data). The reason for this is that with SPS 07 row store data can be stored in shared memory. Shared memory is used to "share" data between process and is not represented in total memory used by resident memory (displayed memory usage in HANA Studio Admin Panel).

 

 

If you run the following on the OS level ipcs -m to view the shared memory you will see the shared memory will have segments set to DEST status and do not go away, even after the HANA services are stopped (Soft shutdown). The reason for this is because the row store data is still in shared memory so that when your HANA services are restarted it won't have to reload the data.

 

 

SPS07-08 (deprecated in SPS09 and higher)

indexserver.ini -> [row_engine] -> reuse_shared_memory_for_restart

Is set to true or false, if true the row store data will stay in shared memory.

 

 

indexserver.ini -> [row_engine] -> reuse_shared_memory_for_restart_timeout

This parameter sets the number of seconds the row store information is stored in shared memory after shutdown

 

 

SPS09 and higher

indexserver.ini -> [row_engine] -> keep_shared_memory_over_restart

Is set to true or false, if true the row store data will stay in shared memory.

 

 

indexserver.ini -> [row_engine] -> keep_shared_memory_over_restart_timeout

This parameter sets the number of seconds the row store information is stored in shared memory after shutdown

 

 

For more information on this please refer to SAP note 2159435

Hi,

 

SAP Predictive Analytics 2.4 was released at the end of November 2015 and introduced some significant new capabilities - especially regarding the Automated Predictive Library (APL) in SAP HANA and how SAP Predictive Analytics 2.4 desktop can exploit it.

 

To complement this, the HANA Academy has now published a major refresh of the hands-on video tutorials series covering the APL.

 

The series goes all the way from first steps in get started with the APL to how to install and configure SAP Predictive Analytics 2.4 and delegate processing down to the APL in HANA.

 

For the full playlist on YouTube - please click here.

 

Here are direct links to the new video tutorials:

 

Getting Started - Reference Guide & Download [2.4]

 

Getting Started - Import Sample Data & Check Installation [2.4]

 

Getting Started - Create APL User & Test [2.4]

 

Predicting Auto Insurance Claim Fraud [2.4]

 

Getting Started - SAP Predictive Analytics Desktop [2.4]

 

Predicting Auto Insurance Claim Fraud - Desktop [2.4]

 

I hope these help you get going with the combination of SAP Predictive Analytics 2.4 and SAP HANA SPS 10 - or perhaps discover something new if you already have some experience.

 

Have fun!

 

Philip

Fresh out of the Christmas/New Year vacation I yesterday received this question from one of my colleagues:

 

Hi Lars

 

I am trying to set up a demo to show MDC at FKOM. I am trying to configure MDC via the Python script method – although I have an issue where I am missing a file – the error from the convertMDC.Py script says “no module named ConfigMgr.Py"

I remember you demoed this method at the Architecture Summit in Sydney – did you come across this issue?"

 

(He was talking about this nice event and the Multi Database Container feature of SAP HANA.)

 

Now as I was on my way to see the very nice Andy Warhol - Ai Weiwei exhibition currently on display in Melbourne, I couldn't logon to my test system to look into the issue.

Due to my "root-cause-analysis reflex" from my stint in SAP support, I followed up today and was able to verify my initial hypothesis: there must be a search path setting not quite right.

 

These are the steps I took:

 

1. check the convertMDC.py file:

The first two lines in this Python file are

 

import os, time, sys, subprocess, getopt
import ConfigMgrPy

which is where the error message comes from.

 

Python is trying to load the listed modules but fails with the ConfigMgr module.

Checking the Python documentation I figured out that there are a couple of places Python looks for the modules.

One option to specify these places is the environment variable PYTHONPATH. Therefore I checked this variable on my system:

 

2. check PYTHONPATH environment variable:

 

>echo $PYTHONPATH
  /usr/sap/T07/SYS/global/hdb/custom/python_support:/usr/sap/T07/HDB07/exe/python_support:/usr/sap/T07/HDB07/dewdftzldc05:/usr/sap/T07/HDB07/exe:/usr/sap/T07/HDB07/exe/testscripts

Reformatting this string gave me this list:

 

/usr/sap/T07/SYS/global/hdb/custom/python_support
/usr/sap/T07/HDB07/exe/python_support
/usr/sap/T07/HDB07/dewdftzldc05
/usr/sap/T07/HDB07/exe
/usr/sap/T07/HDB07/exe/testscripts

Nice, but didn't really gain a lot of insight here...

 

3. Checking the path from within Python:

In hindsight this should have been the first thing to do, but hey, I am thinking and learning on my feet here...

 

> python
Python 2.7.10 (sap:1, Jul  6 2015, 10:21:20)
[GCC 4.7.2 20130108 [gcc-4_7-branch revision 195014]] on linux2
Type "help", "copyright", "credits" or "license" for more information.
Traceback (most recent call last):
File "/etc/pythonstart", line 7, in <module>
import readline
ImportError: No module named readline

I decided to ignore this error message. Not sure why this happens on my system!

From the Python documentation I knew that I need the sys module for further investigation, so I load this and print the current search path via sys.path:

 

>>> import sys
>>> sys.path
['', '/usr/sap/T07/SYS/global/hdb/custom/python_support', '/usr/sap/T07/HDB07/exe/python_support', '/usr/sap/T07/HDB07/dewdftzldc05', '/usr/sap/T07/HDB07/exe', '/usr/sap/T07/HDB07/exe/testscripts', '/usr/sap/T07/HDB07/exe/Python/lib/python27.zip', '/usr/sap/T07/HDB07/exe/Python/lib/python2.7', '/usr/sap/T07/HDB07/exe/Python/lib/python2.7/plat-linux2', '/usr/sap/T07/HDB07/exe/Python/lib/python2.7/lib-tk', '/usr/sap/T07/HDB07/exe/Python/lib/python2.7/lib-old', '/usr/sap/T07/HDB07/exe/Python/lib/python2.7/lib-dynload', '/usr/sap/T07/HDB07/exe/Python/lib/python2.7/site-packages']
>>>

Ok, so there we find all our PYTHONPATH folders as well as some other folders that seem to belong to the Python installation.

 

4. Load the missing module

Now I thought: "Hey, lets try and load this module manually!"

 

>>> import ConfigMgr

Ok, no error message so far.

Then the following should work!

 

>>> dir (ConfigMgrPy)
['CUSTOMER', 'Configuration', 'ConfigurationException', 'HOST', 'LayeredConfiguration', 'READONLY', 'RemoteConfig', '__doc__', '__file__', '__name__', '__package__', 'createUUID', 'expandProfileVars', 'getDaemonInfo', 'getLinkInfo', 'getRootPath', 'sapgparam', 'stringToBool']

Geeze, I am such a great Python hacker... *cough*

But where does the module come from?

 

Easy as pie:

 

>>> ConfigMgrPy
<module 'ConfigMgrPy' from '/usr/sap/T07/HDB07/exe/ConfigMgrPy.so'>

5. ALL WRONG - this only works on a system where you DON'T have the problem!

Clearly, my fancy schmanzy root cause analysis would not have helped my colleague, because on his system Python didn't find the module in the first place.

 

So what to do in this case?

I'd say, looking for the ConfigMgrPy file or folder or whatever Python loads for modules might be a good idea.

Since there is no hint in the Python documentation that ConfigMgr belongs to the standard Python stuff, I have to assume that it belongs to SAP HANA.

Which limits the search area for the object to the SAP HANA installation folders.

 

On my system that would be the /usr/sap/<SID>/ folder.

Searching for files on Linux always makes me google for examples and this is what I came up with this time:

 

find -L /usr/sap/T07 -name 'ConfigMgr*'

"So far so good, but what's the -L for?" you might ask.

When trying this thing out on my system, I didn't use the -L immediately and found... nothing at all.

 

Only after trying a couple of name pattern that definitively should have yielded some hits it dawned on me that there might be something else preventing the find program to find the files.

And in fact, find does not follow symbolic links in files systems by default.

Looking into the installation folder on my system I can see that symbolic links are what we use for SAP HANA:

 

ls -la /usr/sap/T07
total 16
drwxr-xr-x  4 t07adm sapsys 4096 Apr 15  2015 .
drwxr-xr-x 17 root   sapsys 4096 Dec 10 18:30 ..
lrwxrwxrwx  1 t07adm sapsys   22 Apr 15  2015 HDB07 -> /hana/shared/T07/HDB07
[...]

Means: without the -L option, find doesn't go down this path.

 

Having figured this out, find of course gave me what I was looking for:

 

find -L /usr/sap/T07 -name 'ConfigMgr*'
/usr/sap/T07/SYS/exe/hdb/ConfigMgrPy.so
/usr/sap/T07/HDB07/exe/ConfigMgrPy.so

And with this information my colleague could have modified the PYTHONPATH variable on his system to fix the problem (which he wrote me is what he has done meanwhile anyhow...).

 

 

There you go - now you know.

Happy New Year everyone and have a great 2016!

DB Refresh using HANA Studio DB Restore  with SID Modification -  NON SAPinst

 

HANA Studios DB restore option and hdbuserstore there after makes the whole process of a  System copy a lot simpler . The only limitation would be that the target schema would still remain as source.

 

The idea of this blog is to explain the process of performing  a simple homogeneous system copy of a HANA based system using the recovery of the source backup on the target HANA DB using HANA Studio.

 

In this case ,we will be  considering a situation of copying a Prod backup and refreshing it in a already running quality system

 

These are the salient steps involved in achieving this

 

Step 1 ) Take a complete DB backup of the source Database

Step 2) Move the database backup to the Target system

Step 3) Using HANA Studio recover the source db in the target HANA box

Step 4) Supply the license text so that the HANA Studio can automatically apply the license after install

Step 5) Modification of Schema access at the target DB

Step 6) Modify the default key  using the hdbuserstore on the application servers  and DB instance.

Step 7 ) Start sap

Step 8 ) Post activities.



Activities in the Source System :

 

Step 1 - Backup of the source DB .

 

Use the HANA studio backup studio to take a complete DB backup either at the disk level or using Backint.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 



image Courtesy : SAP HANA Backup/Recovery Overview by Andrea Kristen in SCN

 

Usually this should be sufficient to perform a DB Refresh but if you are looking for a  point in time recovery you may want the backups from the log area as well to include them post the recovery.



Step 2 ) : Move the database backup to the Target system

 

Once the backup is completed you will have to move the backup to a location in the target system , you should have 4 separate files with the your backup prefix . In this case the prefix is “COMPLETE_DATA_BACKUP_20122015”

 

 

 





Activities in the Target system

 

Step 3 ) Using HANA Studio recover the source db in the target HANA box

 

→ Shutdown SAP Application alone

 

→ Open HANA Studio and right click on the SID ( target) where you want to perform the recovery.

You will have to specify the destination location and the Backup Prefix for the HANA studio to recognize the backups .

 

 

 

 

 

 

 

 

 

 

 

 

If you just have a Complete data backup and not planning to recover log segments you can select the option “ Initialize Log area”... This is something like reset logs in oracle.


Step 4) Supply the license text so that the HANA Studio can automatically apply the license after install


  Post recovery your existing HANA License will be invalid , so here is a opportunity to mention the license text so that that can be installed automatically. If not this can be performed manually later.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Proceed with the recovery . Please note that the Target and source version must have the same configuration. Is there are specific configuration thats required in the target system that can be done manually as part of the Post steps.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Post recovery you should be able to see the Overview tab in HANA Studio with the Memory and Host Details.

 

However you may expect to see all the schemas under Catalog but it will error out as below. Same would occur when you try to expand Content.

 

 

 

 

 

 

 

 

 

 

 

 

The reason being the new SID will probably be looking for a schema name as SAPSID and it cannot find it , so there are few changes that need to be done in the target system

 

Step 6) Modify the default key hdbuserstore on the application servers and the DB instance.

 

  • Go to /usr/sap/<SID>/hdbclient   and execute the below

 

hdbuserstore set default <dbhost>:<dbport> <dbuser> <dbpassword>

 

Let say for example our target host is : host01 and Source SID is  PRD and System No : 00  and lets assume that the source schema is SAPPRD and its password is sapprd#!

 

hdbuserstore set default host01:30015 SAPPRD sapprd#!


The above example is for the Unix system for Windows its a bit different (Refer SAP Note 1709838)



Execute a hdbuserstore list you should find the new Key set as below

 

KEY DEFAULT

   ENV:host01:30015

User: SAPPRD

 

This confirms that the key is set .

 

This has to be done on the appservers , else R3trans -d would fail.



Go back to HANA Studio and you should be able to see the contents under Catalog and Contents. You should also find the source Schema under Catalog.

 

At this point there is one more thing that needs to be done before we start the apps on the target system.

 

go to the DEFAULT profiles and modify the /dbs/hdb/schema to SAPPRD ( or whatever your source schema is ) .

 

At this point you are good to start SAP.

 

Follow the standard Post Refresh activities from there..

 

Few points to remember

 

- > You may want to disable the btc processes before starting SAP

→ Perform standard post steps like SE06/STMS/BDLS etc and activities specific to your case.

Actions

Filter Blog

By author:
By date:
By tag: