Get Even More Visitors To Your Blog, Upgrade To A Business Listing >>

In-Memory Technology and SAP HANA


Overview of SAP HANA

The purpose of this Article is to give an overview of SAP HANA in order to understand the key ideas and concepts behind SAP Simple Finance. We will start with the master plan of SAP HANA. We then investigate some fundamental concepts of SAP HANA, incorporating its in-Memory data storage dictionary encoding and data compression, parallel execution capabilities, and the concept of using the delta store to optimize write operations. We will summarize the overall vision of SAP HANA as the single unified platform for mixed enterprise workloads to be specific, value-based and analytical data processing. At the core of SAP HANA is a massive parallel database management system (DBMS) that runs completely in Main Memory.

As opposed to traditional DBMSs, which are designed for optimizing performance on hardware with constrained main memory, the SAP HANA database is designed starting from the earliest stage around the possibility that memory is accessible in abundance to keep all business data and that input/ output (I/O) access to the hard disk is not a constraint. While traditional data- base systems put the most effort into enhancing hard disk I/O, SAP HANA concentrates on improving memory access between the CPU cache and the main memory. Figure 2.1 illustrates a conceptual overview of SAP HANA, which first and foremost incorporates a full DBMS into a standard SQL interface, transactional isolation and recovery, and high availability.

SAP Business suite for SAP HANA
The DBMS is capable of handling row store, column store, and graph store of data. It facilitates massive parallelization of database access threads through a dedicated engine and comes with integrated services, such as search and application extension. It is good with standard interfaces, for example, SQL, MDX, and others. Here, we will concentrate on the DBMS aspects of SAP HANA. In order to process massive quantities of data in main memory and provide immediate results for both analysis and transaction.

SAP HANA employs the ensuing basic concepts: 

Keep data in memory

Although non-volatile storage is still expected to ensure that write operations are durable, read operations can anticipate that all relevant data resides permanently in main memory and in this way can be executed without disk I/O.

Optimize in-memory data access

With all data readily available in main memory, data movement between the CPU cache and main memory becomes the new performance bottleneck. SAP HANA resolves this by using columnar store and effective data compression techniques to effectively reduce the overall size of data in memory and achieve high hit ratios in the different caching layers of the CPU.

Support massive parallel data processing

Modern computer systems have a continuously increasing number of processing cores. To natively take advantage of massively parallel multicore processors, SAP HANA manages the SQL processing commands into an improved model that allows parallel execution and scales incredibly well with the number of cores. The optimization incorporates partitioning the data in segments for which the calculations can be executed in parallel.

Optimize also for writes

The many points of interest of the columnar store for fast read execution have their cost. Write operations, especially inserts and updates to a columnar store, are more complicated and less effective. To overcome this disadvantage, SAP HANA presents the idea of the delta store. Incoming updates are collected in compose improved delta partition, which is converged into the main partition at suitable times. 
The following sections investigate each of these basic concepts of SAP HANA in more detail.
This article is formed by SAPVITS. We are SAP Online Training Company. We offer SAP HANA Course, SAP Simple finance Online Training

1.1 Keeping Data in Memory

Computer designs have changed over the last few decades. Dramatic drops in cost go with the unprecedented growth of main memory limit that can be prepared on a single computer. Today, a single enterprise class server can hold terabytes of data in main memory. The main memory is the quickest storage medium that can hold a lot of data, making it a reasonable way to deal with for permanently house the entire business data of an enterprise. The advantage of keeping data in main memory is most clear if we look at the storage hierarchy of a computer system.

As far as execution, two components become possibly the most important factor while getting to data from a storage layer. One, performance, is identified with the physical speed of the capacity medium itself. The other is latency, which is the time defer experienced by the system to load data from a storage medium until it is available in a CPU register. At last, every operation happens inside the CPU, and in turn, the data must be in a register of the CPU in order to be processed. Hard disks are at the very bottom of the storage hierarchy. Since they are cheap, it is reasonable to have a lot of capacity at this level, but the trade-off is performance.  Not only it is the slowest medium, but also (because there are typically four layers between the hard disk and CPU register) it has the highest latency.

Main memory is the primary level of storage by CPU caches, and it is directly accessible. Compared with accessing data on hard disks, typically data in main memory can be accessed more than 100,000 times faster. Compared with conventional DBMSs, which utilize disks as the primary data store and utilize main memory as a buffer for data processing, keeping data in memory can enhance database execution just by the advantage in access time.

1.2 Columnar Data Organization

In the column-based format, all attributes of a tuple (or ordered set of values) are stored consecutively and consecutively in memory. On the contrary, in a columnar layout, the values of individual columns are stored together. Both storage models have their advantages, these can be traced back to the different memory access patterns required when performing data operations on row- oriented and column-oriented data layouts.
Not surprisingly, the row-based layout is suitable for row operations, as in the following cases:

  • The application needs to handle just a single record at once (many selects and/ or updates of single records). 
  • The application regularly needs to get to the entire record.
  • The columns contain mainly distinct values so the data compression rate would be low.
  • Neither aggregations nor fast searching is required.
  • The table has a small number of rows (e.g., configuration tables).
 The column-based layout has advantages for column operations, as in the following cases:
  • Calculations are commonly executed on single or few columns only.
  • The table is searched based on values of a few columns. 
  • The table has an extensive number of columns.
  • The table has a large number of records, and for the most part, columnar operations are required (aggregate, scan, etc.). 
  • The majority of the columns contain few distinct values (compared to the number of rows).

1.3 Data Encoding and Compression 

Data compression is a set of techniques used to decrease the quantity of bits utilized for data representation in memory. It reduces the overall memory requirement (and in this manner the cost) of keeping business data completely in main memory.
Additionally, read operations can be performed all the more efficiently on the compressed data since data development between the main memory and the CPU is limited.

You can Also Visit our SAP Fiori Online Training Page.

1.4 Parallel Execution                             

Another key part of SAP HANA is its capability to achieve optimal parallelism in processing data in memory. This is particularly important in order to take advantage of modern multicore computing systems. It is also key for multi-node scale out implementation and for ensuring scalability in such distributed systems. SAP HANA is engineered for parallel data processing that scales with the number of cores, even across multiple computing nodes in a distributed setup.
Specifically for DBMSs, optimization for multicore platforms accounts for the following key considerations:
partitioning the data and executing operations on individual partitions in parallel 
avoiding sequential processing wherever possible to ensure scalability

1.5 Delta Store and Merge

 This brings us to the final key SAP HANA concept: using delta store to address potential performance issues in column store during data insert and merge operations.
We will start with the issues faced during an insert operation, before moving to how delta store and merge help resolve them.
 for more Information please visit our SAP HANA Online Training Page. 

contact us:

Website: http://www.sapvits.com/
IND: +91 880 532 2100
USA: +1 912 342 2100
UK: +44 141 416 8898







This post first appeared on SAP HANA Online Training, please read the originial post: here

Share the post

In-Memory Technology and SAP HANA

×

Subscribe to Sap Hana Online Training

Get updates delivered right to your inbox!

Thank you for your subscription

×