In this blog, we are going to look at an overview of what SAP HANA is? some of the features of SAP HANA and why is it considered better than any other databases, the architecture of HANA, and where it fits in the overall business scenario and then we’re going to look into Eclipse-based HANA studio.
Introduction: What is SAP HANA?
So, what is SAP HANA? SAP HANA first and foremost is an in-memory database, so that means that most of the data computations are done in memory instead of reading from the disk as in any other regular database.
So it’s also a platform and it can be offered as an appliance or a cloud offering because it has an embedded application server in it. which is used for control flow logic and because of that it’s not just a database it can also be called a platform. and then it also has a web server attached to it that can be accessed via HTTP. so you can use HANA as an application in and by itself.
Features of SAP HANA
1. So the first feature as I mentioned earlier is it’s an in-memory database all operations read and write happen in memory.
2. And then the next one is column stores: unlike in regular databases the data in HANA is stored in columns, so this actually enables massive data compression partitioning and secondary indexes usually in regular databases we have to go ahead and create secondary indexes but because we use column stores in HANA it’s it already serves the purpose of secondary indexing.
3. Then the next one is parallelism, so what is parallelism? How in HANA? it means that the different CPUs process data in parallel thereby saving a lot of time and space and really increases the performance.
4. Then we have the other feature as projections are nothing but we choose only the data we need only, the data we need to analyze, so we don’t have to bring up all the data, because we have in memory it’s an in-memory database and you can perform operations in memory and get really good performance so you can only choose whatever data you really need.
5. Then comes the dynamic aggregation, which means that we don’t have to have any aggregates on them, so what does it really mean? So in BW and other applications, we have to compute the totals and store them in aggregates, you have to spend a lot of time filling those aggregates and a lot of space which requires to store the data in aggregates, so we don’t have to do all that in HANA. Because you can do dynamic aggregation and totals on the fly because of the high performance of the HANA database.
6. The next is active and passive storage, so what it really means is you only use the data which is active like for current year data can be in active mode and the rest can be stored in cold storage. So you don’t have to have all the data in memory.
7. Then we have real-time analysis because of SLT which is SAP landscape transformation, which is the table to table mapping in HANA which enables our real-time analysis.
8. Then we have SQL script which can perform really complex calculations and you can analyze data in a very complex way because we can use SQL script. so there are many other advantages of HANA as a database it is the database SAP has come up with so and it has been built from scratch,
so it means that you don’t have to build on whatever is there so since you are doing it from scratch. We have this column stores and parallelism and in-memory database whereas the regular databases Operate on row storage and reading from the disk and not that much parallelism, so because it’s built from scratch they enabled and they incorporated all these beautiful features which really enhance the performance of HANA.
As shown in the diagram here this is basic HANA architecture. So here we see that we get data from the different systems such as SAP Business Suite, SAP NetWeaver BW, and other third party.
We get all the data and incorporate it into the SAP HANA and then we use reporting tools like SAP Business Objects which is the official reporting tool of HANA and then other applications will use the information models created on SAP HANA to have complex analyzing of data in the reporting layers.
So as you see in the SAP HANA, you see that you have the in-memory computing engine, you have the modeling studio and then we have real-time replication services and then we see that we have the calculation and planning engine to perform the calculations and data services is another way of transferring data from other databases to SAP HANA. So this is a basic architecture diagram of HANA.
So basically what we are saying is we bring data from other databases into SAP HANA which is an inbuilt application in and by itself it has you can transform data and put it into SAP HANA.
You have the application server and the main feature of SAP HANA is most of the data computations are done in the database itself. You don’t have to bring it to the application layer and do the computations there and send the data back into the database.
Everything is done in the database so that saves a lot of time, that saves a lot of storage. Because you don’t have to bring the data every time to the application server or Every time you have to do a computation. So this is a very wonderful database. Once you have the data in the database or in HANA you have the ability to perform very complex analysis of business information using the reporting tools.
Regular – HANA Architecture
So as I mentioned before about how we need to get data from the database into the application layer but from all the data-intensive logic there and bring it back to the database in a regular database vs in HANA where you have the access engine which is the application server and it has this small layer compared to the database.
Because most of the database logic or the data-intensive logic is done in the database and we need a very small layer for a control flow logic. That’s why the application layer in HANA is called access engine. Also an extra-small engine the other name for it is extended services.
So we need a very small layer for control flow logic in HANA, so that’s why and since the application layer is embedded in HANA, it understands the language of the database very much better than having another application layer physically put on top of your database.
So what I really mean is the application server in HANA knows the database the HANA database and the data types so well that it communicates better than if you have a regular database and you have to have an application layer bought on top of it.
So that’s the main advantage of HANA because it better communicates the application server of HANA which is the access application server communicates better with the database.
SAP Native HANA
What s SAP Native HANA? so this is the same as what we have discussed so far so, Native HANA is nothing but you bring data into HANA from different sources and then build models information models on SAP HANA and then use them in reporting tools.
So you’re basically using the application server and web server of HANA for your application.
Native HANA access which is the extra small or extended services infrastructure. The database the calculation logic is done in the database and then the control flow logic is done in the access application layer and the presentation logic is usually done in the client. Because of the way modern laptops and smartphones work most of the presentation logic can be done on the client devices, whereas the control flow logic which is a very small layer as I have mentioned before can be done in our access application layer.
SAP Native HANA architecture
We have different systems SAP, Non SAP and then the flat file, the flat files which are supported in HANA are the XLS and the CSV. So we get all those data all the data from these systems into HANA using one of the transfer methods here. Transfer methods such as SLT/BODS/DXC/Flatfile
SLT is nothing but the SAP landscape transformation, what it really does is it does a table to table mapping. so whatever tables are in a database it Maps one-to-one into the HANA database.
Business Objects Data services we use this data services to transfer data as well, then we have the DXC which is the Direct Extractor Connection, in SAP we have SAP delivered data sources which are a replica of the database tables. So it’s basically a structure where you can transfer data from Sap to BW so we are using those data services to transfer data from the SAP systems into the HANA database.
We build information models in HANA using the HANA studio and then the information models reside in HANA and then we use those models in our BO and other reporting tools and as I’ve mentioned BO is the official reporting tool of HANA. So this is a bit this is a little bit of detail as to how HANA works. so this is basically what we do from End to end in SAP HANA.
So that was native HANA. So what is Non-Native HANA? Non-Native HANA uses the data-intensive logic and this application server logic from HANA but they also have another application server like a BOB or dot net or Java located outside of HANA and they connect to these applications servers by using open standard interfaces like ODBC and JDBC.
The different ways to upload data to HANA
So the first one as I mentioned earlier is SAP landscape transformation, which is a table to table and real-time and then it’s the BODS – Business Objects Data Services, and then it’s the DXC which is the Direct extractor connection which uses the standard data sources of SAP, which is used to transfer data from SAP to BW. So we use those data sources to extract data from other systems into HANA and then as I mentioned flat file is CSV or XLS.
Advantages of SAP HANA extended services
Mainly it’s used to broaden the implementation base so instead of just the database, we have the application server so which is an added advantage and then it enables application development and then it also enables HTTP based user interface and then better performing applications due to as I’ve mentioned deeper integration with the database itself and then if it runs on SAP HANA which is a very good database and then we don’t need any external application server unless we have something up and running and we want to connect it we don’t really need another application server to have an end-to-end application.
BW on HANA
It’s a non-native application, for example, Oracle is connected to BW in an original scenario and what we do is we transform the Oracle database into SAP HANA using one of the different methods. We discussed before and then we upgrade BW to whatever the current version is or whatever version works on HANA and then we connect the SAP HANA to BW.
So all your models will be your BW models will be there but you’re just using the HANA Database, which is a much better database than the regular databases and you connect that HANA to BW and you still use your BW as well for your modeling and reporting purposes so this is a small scenario for non-native HANA.
SAP HANA studio
So what is SAP HANA studio? it is an eclipse-based application development tool in HANA. So here is where we go and develop the information models.
We have different perspectives here, perspectives are nothing but roles, so we have the model perspective, developer perspective, administrative perspective, debugger perspective.
So according to whatever perform tasks, you’re performing you go into one of these perspectives. There is a whole list of other perspectives as well.
As I have mentioned it’s an Eclipse-based tool but we have also some plugins added into the Eclipse-based tool to perform in a way we should we want HANA studio to perform. If you go into the development perspective that’s where we see the functionality of the plugins in harness to do.
That’s it for this blog. Hope you got clear picture of what is sap hana, If you liked it kindly share it.
Check my other blogs on Whats is SAP S/4HANA?