cancel
Showing results for 
Search instead for 
Did you mean: 

HANA - Workload class thread limit modification

former_member201054
Contributor
0 Kudos

Hi Experts,

What factors must be considered for modifying the existing workload classes' total thread and memory limits?

Where can it be seen the queued and rejected threads of workload classes...How can it help in analyzing the statements executions need?

Thanks in advance

Accepted Solutions (1)

Accepted Solutions (1)

Cocquerel
Active Contributor
0 Kudos

You have to identify which types of activities (OLAP, OLTP, batches,...) you have on your system and cluster them using workload class mapping. Then, you have to tune memory and thread limit for each workload class in order to spread the activity to use the maximum of ressources available without the system being overloaded. For this, you have to monitor the number of active threads and the used memory figures. There should be neither column unloads (system view "SYS"."M_CS_UNLOADS" ) with "REASON"='LOW MEMORY' nor waiting threads due to CPU peaks.

There is queued/rejection mechanism at statement level (not thread level) that is called "Admission control". You can monitor it using the system view M_ADMISSION_CONTROL_EVENTS, M_ADMISSION_CONTROL_QUEUES and M_ADMISSION_CONTROL_STATISTICS. Starting with SAP HANA 2.0 SPS 06 it is possible to define admission control at workload class level.

former_member201054
Contributor
0 Kudos

Can you please tell me the exact columns to be considered for knowing the exceeded threads and memory from the total thread limit defined in the workload class?

for example, total thread limit -100 and memory 400 GB

HANA_Threads_ThreadSamples_StatisticalRecords_2.00.060+ and

HANA_Threads_ThreadSamples_FilterAndAggregation_2.00.060+

Thanks in advance

Cocquerel
Active Contributor
0 Kudos

I'm sorry but there is no simple calculation that can be done. In addition, decreasing memory/thread limit of workload classes may not be the best solution. Admission control is an other mechanism to avoid peak situations. You can also look at expensive statements that were running at that time and check if you could improve them to reduce their resource consumption or schedule them in an other time slot if it was related to a batch. It could also be that your system is not sized enough to handle the volume of activities.

Answers (1)

Answers (1)

SriKrishna
Active Participant
0 Kudos

To know that, we need to find out the peak and average thread usage using HANA_Threads_ThreadSamples_StatisticalRecords_2.00.060+ and HANA_Threads_ThreadSamples_FilterAndAggregation_2.00.060+

former_member201054
Contributor
0 Kudos

Can you please tell me the columns to be considered for knowing the exceeded threads from the total thread limit defined in the workload class?

for example, total thread limit -100

HANA_Threads_ThreadSamples_StatisticalRecords_2.00.060+ and

HANA_Threads_ThreadSamples_FilterAndAggregation_2.00.060+

Thanks in advance