SAP HANA : THROUGH THE EYES OF AN ABAP NEWBIE
So with all these blogs going around I felt out of place and I also decided to write a blog post. But then came the real problem. What would I write about? All the topics seemed taken. So I decided to write about SAP HANA which seems like the new iPhone 5s in apple ecosystem or like Kitkat in case of android. SAP HANA is the coolest topic in SAP right now. Or it seems like to me. So I went through some blogs written by some good people and whatever I understood I am putting everything in one place. Experts please forgive if I am wrong. So let’s start by the basic question.
So what is this SAP HANA stuff?
Well according to Wikipedia “SAP HANA, short for ‘High Performance Analytic Appliance’ is an in-memory, column-oriented, relational database management system developed and marketed by SAP AG”.
Good so it’s a database. So what’s so special about it? Well it not just a database it’s an in memory, column oriented and a relational database system. I know what you guys are thinking. So what? It’s just another
Database system. You can put all the jargons in the definition but in the end it’s just a database. Even ORACLE is a relational database system. So why would anyone bother about it. And who is going to use it anyway. We already have proven trustworthy databases.
Well it’s not a normal database system. It’s much more than that. It’s the next step in database technology. Let begin by looking into what this in memory stuff is okay?
In memory basically means that all data in stored in RAM. That means there is no loading of data from disk to RAM. There is no storing of some data temporarily in disk and reading required data according to requirement and all that mess that comes with it. Everything is there in the memory available to you all the time which means faster access to data by the CPU. All that’s nice to hear but what’s the use of it all? Why do I need all the data in the memory all the time?
Well if you have all the data available all the time then you can do real time analytics. Which means there is no wait time between the data being entered and data being available to you. Still don’t see why it’s good? Let me give you an example. Imagine there are two sellers A and B selling same phone on a site like flipkart or amazon. Company B suddenly offers a free cover with the phone and at that instant you are there to buy the phone. You look for the options and from which vendor are you going to buy the phone from. Unless there is a guy working in company A always looking at the competitors offers and price Company A is at disadvantage. Now imagine this at a larger scale where you are selling large amount of products and there are many competitors competing with you by offering different offers, discounts. So to gain advantage you need the current data at that time not one hour after. By that time your customer would have purchased his product and left. Here is where real time analytics comes into picture and hence SAP HANA. And HANA is designed in such a way that it can process large amount of data. So you or the customer of SAP HANA gets his or her data at the right time which is NOW.
Now what is this Column storage stuff going to affect the database. How does it matter whether I store it in columns or rows? Well for that let’s look at following table.
In row based technology data will be stored like
And column base technology it will look like
Amit-Sachin 24-25 181-183
Now imagine if I wanted to calculate the average age of all people present in the database which one would take less time to read. Obviously the column one right? Because it doesn’t need to go through the name and height every time it accesses age. It can just zero in AGE and do the required calculation without bothering about anything else. This is exactly why SAP HANA is fast.
But what about writing new data. This exactly was the biggest problem with column based technology. To modify or add new data you need to do a lot of work than in row based database. But SAP HANA overcomes somehow by using delta merge technology (Don’t know what that it is. But apparently it works and that’s all we care about right 🙂 ?).
And regarding the relational part I guess most of you are already aware what a RDBMS 🙂 not just google it: 😛 .
All that seem cool. How is going to affect me? I am not the customer
Well SAP HANA has some advantages over the existing data warehouse technologies like SAP BW for instance. In SAP BW it is IT administrator who decides which all information might be needed for analysis and not the end user. The performance will drastically get affected in case the user decide to something new that may not have occurred to the administrator. This problem is not present in HANA. The user can perform any type of aggregation and the performance will not get affected. So I think if it catches on SAP HANA is going to BW in many cases and this is my simple unexperienced opinion.
And now to the favourite part:
Good to know but Database or No Database,I am an ABAPER. Not going to bother. Thank you!
Apparently SAP is planning for 3 stages in implementing:
Stage 1: ABAP can access SAP HANA
At present ABAP can access SAP HANA like traditional database by means of secondary data connection.
Step 2: ABAP runs on SAP HANA
With the release of SAP Net weaver 7.3 the SAP HANA database can be used as the primary instance.
Step 3: ABAP optimized for SAP HANA
In the next stage SAP will allow other solutions to access SAP HANA as primary instance. In particular the SAP business suite. And during this process SAP is planning to optimize ABAP for the use in SAP HANA.
So whether you like it or not SAP HANA is coming and it looks like it’s here to stay. But hopefully it also bring lots of new opportunities to the ABAPER. So to all the newbies like me “The cycle is never going to end”.
On an interesting note go through the success stories of SAP HANA. Did you know that they used it in FOOTBALL for real time data? That my friend is amazing
Disclaimer: I hear by pledge that I am an ABAP newbie and might say some stupid stuff in this blog. Kindly forgive the mistakes and please provide your valuable insights. Good day to all of you 🙂