cancel
Showing results for 
Search instead for 
Did you mean: 

Question about HANA storage

dustin_self2
Participant
0 Kudos

Thanks for any insight that can be provided!
Dustin

Accepted Solutions (1)

Accepted Solutions (1)

lbreddemann
Active Contributor

Hi Dustin,

I'll try to answer your questions one by one:

1. What's the difference between the information displayed in the "HANA database" and the "Hosts" section?

That's easy: the HANA DB part refers to the memory consumed by the indexserver process or processes when running a multi-node setup.

The Hosts part displays the total memory consumption on OS-level, regardless of which process allocated this.

2. What's the difference between Virtual and Physical memory?

Simple one again: physical memory is just what's available as RAM in your HANA box.

Virtual memory is the physical memory PLUS the swap memory - basically this is the total memory what the operating system is able to provide to the processes including doing things like paging/swapping.

3. Why is the memory usage of HANA higher than what's on the disk?

And easy answer again: HANA doesn't store everything on disk

Obviously the actual data is fully stored and saved on disk.

What's not part of the persistence is the large amount of in-memory structures that are created on the fly.

These include index structures (mainly used for unique/primary key indexes), concatenated join columns, intermediate result sets, intermediate join mapping vectors and the like.

All this is handled internally and most of these structures can't be inspected by the end-user/administrator.

Another huge memory consumer can be the delta log of column store tables - these information aren't stored in the data area but in the log area and read back into memory upon loading of the columns to the memory.

Hope that answers your questions.

Best regards,

Lars    

Answers (1)

Answers (1)

Former Member
0 Kudos

Hi Dustin,

I couldn't send this earlier due to network problems and Lars answered already. I'd still like to send my reply, as it contains slightly more information about the disk size.

The data in panel "SAP hana database" refers to what hana is using, while the information in "host(s)" refers to what would be seen at os level.

Memory:

For the memory in "SAP hana database" it shows what is currently used by the database. The database might have allocated more memory beeing flagged as free as 'free' within hana, so you might see a higher usage when looking at the hana processes' memory allocation on the OS. The allocation limit refers to the maximum amount of memory hana might allocate, which is 90% of the physical memory available, by default setting.

In "host(s)" the memory usage shows what is allocated by all processes running on that machine, not only hana processes. Virtual memory should include the amount of swap space, as far as I know.

The same is true for the CPU usage. While the upper panel shows the cpu load caused by the hana processes, the bottom panel shows the CPU load for all processes running on that host.

Disk usage:

Same as for memory, "SAP hana database" shows the usage by files managed by hana, like log files, persistence etc, while "host(s)" shows the amount of other files as well.

The difference between the data files value in "SAP hana database" and the size of the persistence can be caused by hana, as the persistence file is usually larger than the actual required space because hana marks free areas internally as free, so that it does not have to rearrange the data within the data files every time an area is deleted. Hana can than just reuses the free areas later. You could check this in the Volumes tab by checking the processes' Data volume. In the details view you can see the size of the data file itself and the amount of used space within that data file.

Regards,

Markus