SAP HANA is the latest, in-memory database, and platform which can be deployed on-premises or cloud. SAP HANA is a combination of hardware and software, which integrates different components like SAP HANA Database, SAP SLT (System Landscape Transformation) Replication server, SAP HANA Direct Extractor connection, and Sybase replication.
HANA has unprecedented adoption by the SAP customers. SAP HANA is capable of processing a large amount of real time data in a short time period.
SAP HANA Database & Platform
- SAP HANA Database – SAP HANA Database is a hybrid in–memory database. SAP HANA Database is the heart of SAP in-memory technology. In SAP HANA, Database table are of two types –
- Row Store
- Column Store
- SAP HANA Platform – SAP HANA Platform is a development platform with an in-memory data store which allows the customers to analyze a large volume of data in real time. SAP HANA Platform works as a development platform, which provides infrastructure and tools for building a high-performance application based on SAP HANA Extended Application Services (SAP HANA XS).
SAP HANA Architecture
Data is compressed by different compression techniques (e.g. dictionary encoding, run length encoding, sparse encoding, cluster encoding, indirect encoding) in SAP HANA Column store.
When main memory limit is reached in SAP HANA, the whole database objects (table, view,etc.) that are not used will be unloaded from the main memory and saved into the disk.
These objects names are defined by application semantic and reloaded into main memory from the disk when required again. Under normal circumstances SAP HANA database manages unloading and loading of data automatically.
However, the user can load and unload data from individual table manually by selecting a table in SAP HANA studio in respective Schema- by right-clicking and selecting the option “Unload/Load”.
SAP HANA Server consists of
- Index Server
- Preprocessor Server
- Name Server
- Statistics Server
- XS Engine
- SAP HANA Index ServerSAP HANA Database Main server are index server. Detail of each server is as below-
- It’s the main SAP HANA database component
- It contains actual data stores and the engine for processing the data.
- Index Server processes incoming SQL or MDX statement.
Below is the architecture of Index Server.
SAP HANA Index Server overviewSession and Transaction Manager: Session Component manage sessions and connections for SAP HANA database. Transaction Manager coordinates and control transactions.SQL and MDX Processor: SQL Processor component queries data and send to them in query processing engine i.e. SQL/SQL Script / R / Calc Engine. MDX Processor queries and manipulates Multidimensional data (e,g. Analytic View in SAP HANA).SQL / SQL Script / R / Calc Engine: This Component executes SQL / SQL script and calculation data convert in calculation model.Repository: Repository maintain the versioning of SAP HANA metadata object e.g.(Attribute view, Analytic View, Stored procedure).Persistence layer: This layer uses in-built feature “Disaster Recovery” of SAP HANA database. Backup is saved in it as save points in the data volume.
- Preprocessor Server
This server is used in Text Analysis and extracts data from a text when the search function is used.
- Name Server
This Server contains all information about the system landscape. In distributed server, the name server contains information about each running component and location of data on the server. This server contains information about the server on which data exists.
- Statistic Server
Statistic server is responsible for collecting the data related to status, resource allocation / consumption and performance of SAP HANA system.
- XS Server
XS Server contains XS Engine. It allows external application and developers to use SAP HANA database via the XS Engine client. The external client application can use HTTP to transmit data via XS engine for HTTP server.
SAP HANA Landscape
“HANA” mean High Performance Analytic Appliance is a combination of hardware and software platform.
- Due to change in computer architecture, the more powerful computer is available in terms of CPU, RAM, and Hard Disk.
- SAP HANA is the solution for performance bottleneck, in which all data is stored in Main Memory and no need to frequently transfer data from disk I/O to main memory.
Below are SAP HANA Innovation in the field of Hardware/Software.
There are two types of Relational data stores in SAP HANA: Row Store and Column Store.
- It is same as Traditional database e.g. (Oracle, SQL Server). The only difference is that all data is stored in row storage area in memory of SAP HANA, unlike a traditional database, where data is stored in Hard Drive.
- Column store is the part of the SAP HANA database and manages data in columnar way in SAP HANA memory. Column tables are stored in Column store area. The Column store provides good performance for write operations and at the same time optimizes the read operation.
Read and write operation performance optimized with below two data structure.
Main Storage contains the main part of data. In Main Storage, suitable data compression Method (Dictionary Encoding, Cluster Encoding, Sparse Encoding, Run Length encoding, etc.) is applied to compress data with the purpose to save memory and speed up searches.
- In main storage write operations on compressed data will be costly, so write operation do not directly modify compressed data in main storage. Instead, all changes are written in a separate area in column storage known as “Delta Storage.”
- Delta storage is optimized for a write operation and uses normal compression. The write operations are not allowed on main storage but allowed on delta storage. Read operations are allowed on both storages.
We can manually load data in Main memory by option “Load into Memory” and Unload data from Main memory by “Unload from Memory” option as shown below.
Delta storage is used for a write operation and uses basic compression. All uncommitted modification in Column table data stored in delta storage.
When we want to move these changes into Main Storage, thenuse “delta merge operation” from SAP HANA studio as below –
- The purpose of delta merge operation is to move changes, which is collected in delta storage to main storage.
- After performing Delta Merge operation on sap column table, the content of main storage is saved to disk and compression recalculated.