본문 바로가기

Database

[HANA] Admission control

2019/05/06 - [Database] - [HANA] 2222250 - FAQ: SAP HANA workload Management

2019/05/01 - [Database] - [HANA] Workload Management (internal)

 

 

Overview

  • Load 정도를 위한 임계치 설정
    • Host CPU
    • Used memory / memory limit (GAL)
  • Overload protextion behaviors
    • Queueing incomming requests
    • Rejecting incomming requests

  • 예외
    • Admin-privileged session (예. SESSION_ADMIN, WORKLOAD_ADMIN 등)
    • 자원의 소비를 줄이도록 도와주는 요청 들 (예. Commit, Rolback, Disconnect 등)

 

 

적용 및 모니터링

  • Configuring addmission control
구분 Parameter Default Detail
indexserver.ini -> [admission_control] enable True turn on/off entire features
queue_cpu_threshold 90 % threshold to en/dequeue using CPU
queue_memory_threshold 90 % threshold to en/dequeue using memory
reject_cpu_threshold 0 (disabled) threshold to reject using CPU
rejext+memory_threshold 0 (disabled) threshold to reject using memory
averaging_factor 70 % weight in calculating load indicator
statistics_cllection_interval 1000 ms interval to collect load

 

  • Queue management
구분 Parameter Default Detail
indexserver.ini -> [admission_control] max_queue_size 10000 max number of requests to enqueue
dequeue_interval 1000 ms interval to dequeue
dequeue_size 50 number of request to dequeue by once
queue_timeout 600 sec default timeout for enqueued requests
queue_timeout_check_interval 10000 ms interval to check timeout requests

 

  • 모니터링
    • M_ADMISSION_CONTROL_STATISTICS
    • M_ADMISSION_CONTROL_QUEUES
    • M_ADMISSION_CONTROL_EVENTS
    • M_LOAD_HISTORY_SERVICE
    • M_CONNECTIONS.CONNECTION_STATUS
      • Connection의 요청이 enqueued 되면 status는 'QUEUEING'로 나타남
  • 제약사항
    • 현재 수행중인 Request가 아닌 새로운 request에만 적용 됨
    • Session layer에서 요청을 평가함 = 내부 요청은 언제나 수행 됨
    • Rejection isn't enabled by default since it requires proper handling in client side
    • In A-A (Read only)
      • Secondary를 사용할 수 있는 상태에서 Primary에 높은 부하가 있는 경우
        secondary에서 요청이 실행되는 경우에도 request는 primary에서 대기하게 됨