Technical Articles
Discovering HANA Database – Part 1
Hello Everyone,
How are you? It’s been a long time since I wrote my last blog. My intent in writing is to always explain the technology in the simplest of language.
For this blog let us try to understand HANA Database terminologies, that we may or may not know while we get busy with our day-to-day tasks.
So below are the terms I am planning to explore. In this blog, I will cover the first 5 terms. The rest will be covered in part 2.
- Database
- HANA Database
- Scale-out
- Scale-up
- Data Tiering
- Persistence Memory
- MDC, MCOD
- HANA Server Components
- High Availability
- Disaster Recovery
Database
So if I say I am storing a lot of data in Excel in the form of rows and columns, can I call this data as a database. Technically yes.
DBMS stands for Database Management System, and RDBMS is the acronym for the Relational Database Management system. In DBMS, the data is stored as a file, whereas in RDBMS, data is stored in the form of tables.
Below will give you a glimpse of the difference.
HANA Database
Our HANA Database falls under the category of RDBMS. So when we say that we have a HANA database, we are referring to the software used to access the database. So there can be any database software Oracle or HANA; its primary goal is to access the data most efficiently.
Below is the diagrammatic illustration for the same
HANA Database is the database instance that is installed to manage your data. Its primary task is to fetch the data from the storage data and provide you a computed results.
But as HANA is an in-memory database it holds your data in persistence memory and DRAM (Volatile Memory). We will cover this topic later.
The operating system serves as a platform where the database is installed and the data is stored in the form of relational tables. Currently, SAP HANA is available on SUSE Linux and Red Hat Linux.
Physical Machine storage has your data and log files. It is basically your SSD or hard disk.
Scale-out
Scale-out means combining multiple independent servers into one large SAP HANA database system. The main reason for distributing an SAP HANA database system across multiple hosts (scaling out) is to overcome the hardware limitations of a single physical server. This allows an SAP HANA database system to distribute the load between multiple servers.
Scale-up
Scale-up means increasing the size of one physical machine by increasing the amount of RAM available for storing and processing data. Increasing the RAM also means increasing the number of CPUs, which means increasing the processing power of SAP HANA.
Scale-out and scale-up are the two general approaches you can take to increase the processing power and storage capacity of your SAP HANA system.
Data Tiering
Data tiering means arranging or organising something in tiers. Seats in the theatre are arranged in a tiered fashion. So we can segment our data as hot, warm, and cold.
Hot Tier –
Data classified as hot is accessed frequently and/or needs very high performance. The storage basis for hot data is the HANA memory. This includes both DRAM- Dynamic Random Access Memory (Volatile Memory/Hot+++) and PMEM-Persistence Memory (Non-Volatile Memory/Hot++)
Warm Tier –
For warm data, the SAP HANA solution is a native storage extension (NSE) such as SSD or hard disk. NSE is a general-purpose, built-in warm data store in SAP HANA that lets you manage less-frequently accessed data without fully loading it into memory.
Cold Tier –
Cold data can be stored on the lowest cost storage tiers but still remain accessible to SAP HANA via SQL on request. A number of options are available such as SAP IQ.
I hope I was able to provide some meaningful explanations for all terms, technology itself is not very typical, if we try to understand it’s all ifs and buts.
Please stay connected for Part 2.
I will update the link in the same blog as well.
Please provide your feedback on the quality of the content and the understanding.
It takes me a lot of time to get these minute details and then simplify it.
Happy Learning !!
Nice and simply put , waiting for the second part. Would request you to cover on some topics like sap IQ
Sure , thanks for the feedback.
Thanks for sharing.
Thanks for sharing!
Sorry, DBMS/RDBMS information doesn't seem to be entirely accurate.
RDBMS is a specific type of DBMS, hence drawing a comparison of one vs another just doesn't make sense. One is a subset of the other. "Higher software / low software" - where did this information come from? I'm not a Basis person but this doesn't seem to be right at all.
The statement "In DBMS, the data is stored as a file, whereas in RDBMS, data is stored in the form of tables" is the same as in the second website found by Google when searching for "what is difference between dbms and rdbms". All data is stored in some file in the end. DBMSs just make data "look" differently. That's the "M" part of it.
The first website found by the same search has much better and more accurate information IMHO. I wouldn't view it as an ultimate authority but it sounds reasonably legit. I'd encourage to read it.
I'm not a Basis person but some information in HANA DB section also seems misleading and potentially inaccurate. "primary task is to fetch the data" - what about all the CRUD operations? I get it that read makes most of it but still, this just sounds like gross simplification. "The operating system serves as a platform where the database is installed and the data is stored in the form of relational tables". Data is not stored in OS. And presenting data in relational form is the DB function.
I understand completely that the purpose of this post is to provide a high-level overview. And some fine details can be sometimes lost in simplification, which is fine. But there seems to be rather fundamental inaccuracies in explaining the role of each part.
Thanks Jelena, i appreciate your feedback.
Firstly my mindset is to simplify the SAP technologies and technical stuff to the very basic level.
Let me provide my clarifications.
Now "primary task is to fetch the data" ; there is no denying its utmost tasks is to provide you with the output, database can do all sort of gizmo calculations and tasks but it's of no use unless it gives you a result of data.
"The operating system serves as a platform where the database is installed and the data is stored in the form of relational tables" - Here i am just trying to explain as how data is stored but i have not given it location please check the next line of the same para.
Physical Machine storage has your data and log files. It is basically your SSD or hard disk.
Also i have tried to explain that data resides at the disk level (NSE) + DRAM + (PMEM for HANA DB).
The intension of blog is not for the BASIS person of any other particular stream, my only intension is to simplify the stuff that has been molded as super tough,
On DBMS, i was just trying to portray how excel can be your database if you are potentially a startup, and how HANA or Oracle serves a higher purpose by being an expert in relational data logic and retrieval.
But thanks for taking time out and provide me with the feedback, i sincerely appreciate the same,