cancel
Showing results for 
Search instead for 
Did you mean: 

HANA Node vs Host and Table Partitioning

BenedictV
Active Contributor
0 Kudos

Hi,

1) Do the terms 'Node' and 'Host' mean the same thing when talking about a HANA system?

2) I was reading about table partition in HANA and came across these two blog posts,

     https://blogs.saphana.com/2013/04/15/bw-on-hana-and-very-large-tables/

          ( see section - 2) Optimizing the data model)

     In both blogs, the master node is shown as empty, with the partition spread across the slave nodes. Is a table automatiaclly moved from the master node when a ALTER TABLE...PARTITION command is executed? If yes, why isn't the master node included when partitioning tables.

Thanks,

Benedict

Accepted Solutions (1)

Accepted Solutions (1)

Former Member
0 Kudos

Hi,

OK let's get into a bit more detail.

A node is an installation of a HANA indexserver. A host is a physical machine, which has one or more HANA indexservers on it. These have a port number of 3xx15, where xx is the HANA system number.


In practical implementations, there is a ratio of 1:1 node:host, but architecturally you could have multiple HANA nodes on one host.

Table partitions are put on a single node, or distributed on multiple nodes via a partition system which specifies what table rows go on what partition. Partitions are located on a specific node, and can be moved.

In practical BW scale-out environments you have a minimum of 3+1=4 nodes. One is configured as a master, 2 as slaves and 1 as standby.

BW also takes care of both how tables are partitioned and how they are located, and this process works (mostly) well and is called Landscape Redistribution. Here's the basic rules:

1) All row tables go on the master node. Actually row tables on a slave node have poor performance for various reasons. This is typically 10-30GB.

2) All system column tables go on the master node. This is typically 20-100GB on a well maintained system.

3) All dimension tables for a specific fact tables are put on a single partition and co-located on the same slave node. This reduces intra-node traffic for joins.

3) All PSA, DSO, and Fact tables are distributed on all slave nodes evenly via a HASH on the primary key. This ensures as much performance as possible for number crunching.

Note I've simplified it, the details are in the SAP Notes below.

The above also explains why Suite on HANA is not supported for scale-out: how do you determine partition location? It also explains why a minimum of 4 servers are required for a BW scale-out environment.

To answer your question - why isn't the master served used? It is used for system processing and interim calculations. This caused quite large memory balloons in the past, leaving SAP to leave the master quite empty. Also in older versions of HANA, a lot of data in the master node was in the row store, which had to reside in-memory.

In BW 7.4 SPS08+ and HANA SPS08+, we now find the master node is being used less and less, meaning quite a bit of space is unused. We shall see how that affects hardware configurations in the future.

John

1908073 - BW on SAP HANA: Table distribution and table partitioning

1908075 - BW on SAP HANA: Table placement and landscape redistribution

BenedictV
Active Contributor
0 Kudos

Thanks much John. That made things very clear for me.

Answers (2)

Answers (2)

Former Member
0 Kudos

For me host and node are basically the same in SAP HANA environments. Host includes more the OS / hardware aspect while node is more the SAP HANA perspective.

In BW the master node already has to take over specific, unique tasks like row store, statistics server and master nameserver. That's the main reason why table partitions are generally only distributed across the slave nodes.

A manual partitioning with ALTER TABLE will not automatically move a table away from the master. Only the BW table placement mechanism (SAP Note 1908075) takes care for these details.

Former Member
0 Kudos

Hi Benedict,

Technically, node and host are nothing but same .  If you look at system monitor screen , Landscape->Host -> node1, node2....  Here you will see different nodes with unique name under the column HOST in a distributed system.

for your 2nd question, I don't think tables will move away from Master node when they are partitioned, they are just distributed to all nodes.

Thanks

Siva