본문 바로가기

Database

[HANA] Load 측정 KPI - Current Load

Current Load 

ivan_Current_Stats.sql
0.01MB

select left(now()||'',19) Time
     , m_t_running
     , m_t_nw_poll
     , m_t_jobexec_wait
     , m_t_mutex_wait
     , m_t_exlock_enter
     , m_t_semaphore_wait
     , m_t_shlock_enter
     , m_t_joining
     , m_t_intentlockenter
     , m_t_all - (m_t_running+m_t_nw_poll+m_t_jobexec_wait+m_t_mutex_wait+m_t_exlock_enter+m_t_semaphore_wait+m_t_shlock_enter+m_t_joining+m_t_intentlockenter) m_t_other
     , s_t_running
     , s_t_nw_poll
     , s_t_jobexec_wait
     , s_t_mutex_wait
     , s_t_exlock_enter
     , s_t_semaphore_wait
     , s_t_shlock_enter
     , s_t_joining
     , s_t_intentlockenter
     , s_t_all - (s_t_running+s_t_nw_poll+s_t_jobexec_wait+s_t_mutex_wait+s_t_exlock_enter+s_t_semaphore_wait+s_t_shlock_enter+s_t_joining+s_t_intentlockenter) s_t_other
     , m_t_sqlexecutor
     , m_t_jobworker
     , m_t_all - (m_t_sqlexecutor+m_t_jobworker) m_t_other
     , m_t_sqlexecutor_running
     , m_t_jobworker_running
     , m_t_running - (m_t_sqlexecutor_running+m_t_jobworker_running) m_t_other_running
     , s_t_sqlexecutor
     , s_t_jobworker
     , s_t_all - (s_t_sqlexecutor+s_t_jobworker) s_t_other
     , s_t_sqlexecutor_running
     , s_t_jobworker_running
     , s_t_running - (s_t_sqlexecutor_running+s_t_jobworker_running) s_t_other_running
     , r2m_blog_tm_ms
     , r2m_blog_sz_mb
     , r2m_rep_blog_tm_ms
     , r2m_rep_blog_sz_mb
     , r2s_blog_tm_ms
     , r2s_blog_sz_mb
     , r2s_rep_blog_tm_ms
     , r2s_rep_blog_sz_mb
     , r3m_blog_tm_ms
     , r3m_blog_sz_mb
     , r3m_rep_blog_tm_ms
     , r3m_rep_blog_sz_mb
     , r3s_blog_tm_ms
     , r3s_blog_sz_mb
     , r3s_rep_blog_tm_ms
     , r3s_rep_blog_sz_mb
     , m_tps
     , m_exe_per_sec
     , m_commit_per_sec
     , m_rollbk_per_sec
     , s_tps
     , s_exe_per_sec
     , s_commit_per_sec
     , s_rollbk_per_sec
     , case when m_deltaemerge    is null then 0 else m_deltaemerge    end m_deltamerge_cnt
     , case when m_savepoint      is null then 0 else m_savepoint      end m_savepoint_cnt
     , case when m_savepoint_crit is null then 0 else m_savepoint_crit end m_savepoint_crit_cnt
     , case when s_deltamerge     is null then 0 else s_deltamerge     end s_deltamerge_cnt
     , case when s_savepoint      is null then 0 else s_savepoint      end s_savepoint_cnt
     , case when s_savepoint_crit is null then 0 else s_savepoint_crit end s_savepoint_crit_cnt
from   (
         select sum(case when host = 'hana1-master' and thread_state = 'Running'             then 1 else 0 end) m_t_running
              , sum(case when host = 'hana1-master' and thread_state = 'Network Poll'        then 1 else 0 end) m_t_nw_poll
              , sum(case when host = 'hana1-master' and thread_state = 'Job Exec Waiting'    then 1 else 0 end) m_t_jobexec_wait
              , sum(case when host = 'hana1-master' and thread_state = 'Mutex Wait'          then 1 else 0 end) m_t_mutex_wait
              , sum(case when host = 'hana1-master' and thread_state = 'ExclusiveLock Enter' then 1 else 0 end) m_t_exlock_enter
              , sum(case when host = 'hana1-master' and thread_state = 'Semaphore Wait'      then 1 else 0 end) m_t_semaphore_wait
              , sum(case when host = 'hana1-master' and thread_state = 'SharedLock Enter'    then 1 else 0 end) m_t_shlock_enter
              , sum(case when host = 'hana1-master' and thread_state = 'Joining'             then 1 else 0 end) m_t_joining
              , sum(case when host = 'hana1-master' and thread_state = 'IntentLock Enter'    then 1 else 0 end) m_t_intentlockenter
              , sum(case when host = 'hana1-master'                                          then 1 else 0 end) m_t_all
              , sum(case when host = 'hana1-slave'  and thread_state = 'Running'             then 1 else 0 end) s_t_running
              , sum(case when host = 'hana1-slave'  and thread_state = 'Network Poll'        then 1 else 0 end) s_t_nw_poll
              , sum(case when host = 'hana1-slave'  and thread_state = 'Job Exec Waiting'    then 1 else 0 end) s_t_jobexec_wait
              , sum(case when host = 'hana1-slave'  and thread_state = 'Mutex Wait'          then 1 else 0 end) s_t_mutex_wait
              , sum(case when host = 'hana1-slave'  and thread_state = 'ExclusiveLock Enter' then 1 else 0 end) s_t_exlock_enter
              , sum(case when host = 'hana1-slave'  and thread_state = 'Semaphore Wait'      then 1 else 0 end) s_t_semaphore_wait
              , sum(case when host = 'hana1-slave'  and thread_state = 'SharedLock Enter'    then 1 else 0 end) s_t_shlock_enter
              , sum(case when host = 'hana1-slave'  and thread_state = 'Joining'             then 1 else 0 end) s_t_joining
              , sum(case when host = 'hana1-slave'  and thread_state = 'IntentLock Enter'    then 1 else 0 end) s_t_intentlockenter
              , sum(case when host = 'hana1-slave'                                           then 1 else 0 end) s_t_all
              , sum(case when host = 'hana1-master' and                              thread_type  = 'JobWorker'  then 1 else 0 end) m_t_jobworker
              , sum(case when host = 'hana1-master' and                              thread_type  = 'SQLExcutor' then 1 else 0 end) m_t_SQLExecutor
              , sum(case when host = 'hana1-slave'  and                              thread_type  = 'JobWorker'  then 1 else 0 end) s_t_jobworker
              , sum(case when host = 'hana1-slave'  and                              thread_type  = 'SQLExcutor' then 1 else 0 end) s_t_SQLExecutor
              , sum(case when host = 'hana1-master' and thread_state = 'Running' and thread_type  = 'JobWorker'  then 1 else 0 end) m_t_jobworker_running
              , sum(case when host = 'hana1-master' and thread_state = 'Running' and thread_type  = 'SQLExcutor' then 1 else 0 end) m_t_SQLExecutor_running
              , sum(case when host = 'hana1-slave'  and thread_state = 'Running' and thread_type  = 'JobWorker'  then 1 else 0 end) s_t_jobworker_running
              , sum(case when host = 'hana1-slave'  and thread_state = 'Running' and thread_type  = 'SQLExcutor' then 1 else 0 end) s_t_SQLExecutor_running
         from   m_service_threads
         where  is_active = 'TRUE'
            and port      = 30003
        )
      , (
          select sum(case when secondary_host = 'hana2-master' then BACKLOG_TIME       /1000      else 0 end) r2m_blog_tm_ms
               , sum(case when secondary_host = 'hana2-master' then BACKLOG_SIZE       /1024/1024 else 0 end) r2m_blog_sz_mb
               , sum(case when secondary_host = 'hana2-master' then REPLAY_BACKLOG_TIME/1000      else 0 end) r2m_rep_blog_tm_ms
               , sum(case when secondary_host = 'hana2-master' then REPLAY_BACKLOG_SIZE/1024/1024 else 0 end) r2m_rep_blog_sz_mb
               , sum(case when secondary_host = 'hana2-slave'  then BACKLOG_TIME       /1000      else 0 end) r2s_blog_tm_ms
               , sum(case when secondary_host = 'hana2-slave'  then BACKLOG_SIZE       /1024/1024 else 0 end) r2s_blog_sz_mb
               , sum(case when secondary_host = 'hana2-slave'  then REPLAY_BACKLOG_TIME/1000      else 0 end) r2s_rep_blog_tm_ms
               , sum(case when secondary_host = 'hana2-slave'  then REPLAY_BACKLOG_SIZE/1024/1024 else 0 end) r2s_rep_blog_sz_mb
               , sum(case when secondary_host = 'hana3-master' then BACKLOG_TIME       /1000      else 0 end) r3m_blog_tm_ms
               , sum(case when secondary_host = 'hana3-master' then BACKLOG_SIZE       /1024/1024 else 0 end) r3m_blog_sz_mb
               , sum(case when secondary_host = 'hana3-master' then REPLAY_BACKLOG_TIME/1000      else 0 end) r3m_rep_blog_tm_ms
               , sum(case when secondary_host = 'hana3-master' then REPLAY_BACKLOG_SIZE/1024/1024 else 0 end) r3m_rep_blog_sz_mb
               , sum(case when secondary_host = 'hana3-slave'  then BACKLOG_TIME       /1000      else 0 end) r3s_blog_tm_ms
               , sum(case when secondary_host = 'hana3-slave'  then BACKLOG_SIZE       /1024/1024 else 0 end) r3s_blog_sz_mb
               , sum(case when secondary_host = 'hana3-slave'  then REPLAY_BACKLOG_TIME/1000      else 0 end) r3s_rep_blog_tm_ms
               , sum(case when secondary_host = 'hana3-slave'  then REPLAY_BACKLOG_SIZE/1024/1024 else 0 end) r3s_rep_blog_sz_mb
          from   m_service_replication
          where  port = 30003
        )
      , (
          select round(avg(case when host = 'hana1-master' then CURRENT_TRANSACTION_RATE/60 end),2) m_tps
               , round(avg(case when host = 'hana1-master' then CURRENT_EXECUTION_RATE  /60 end),2) m_exe_per_sec
               , round(avg(case when host = 'hana1-master' then CURRENT_COMMIT_RATE     /60 end),2) m_commit_per_sec
               , round(avg(case when host = 'hana1-master' then CURRENT_ROLLBACK_RATE   /60 end),2) m_rollbk_per_sec
               , round(avg(case when host = 'hana1-slave'  then CURRENT_TRANSACTION_RATE/60 end),2) s_tps
               , round(avg(case when host = 'hana1-slave'  then CURRENT_EXECUTION_RATE  /60 end),2) s_exe_per_sec
               , round(avg(case when host = 'hana1-slave'  then CURRENT_COMMIT_RATE     /60 end),2) s_commit_per_sec
               , round(avg(case when host = 'hana1-slave'  then CURRENT_ROLLBACK_RATE   /60 end),2) s_rollbk_per_sec
          from   m_workload
          where  port = 30003
        )
      , (
          select sum(case when host = 'hana1-master' and job_name = 'Delta Merge'              then 1 else 0 end) m_deltaemerge
               , sum(case when host = 'hana1-master' and job_name = 'Savepoint'                then 1 else 0 end) m_savepoint
               , sum(case when host = 'hana1-master' and job_name = 'Savepoint Critical Phase' then 1 else 0 end) m_savepoint_crit
               , sum(case when host = 'hana1-slave'  and job_name = 'Delta Merge'              then 1 else 0 end) s_deltamerge
               , sum(case when host = 'hana1-slave'  and job_name = 'Savepoint'                then 1 else 0 end) s_savepoint
               , sum(case when host = 'hana1-slave'  and job_name = 'Savepoint Critical Phase' then 1 else 0 end) s_savepoint_crit
          from   m_job_progress
          where  port = 30003
        )
;

History와는 달리 현재 상태를 보여줌

 

 

 

M_SERVICE_THREADS

 

M_SERVICE_REPLICATION

 

M_JOB_PROGRESS

 

JOB NAME 현황

BW F Fact Table Compression: fact table compression
Backup: data backup
Check Table Consistency: table consistency check
Column table reloading on startup: Column table reloading on startup
Create Index: index creation
DSO activation: dso activation
DSO conversion: dso conversion
DSO rollback: dso rollback
Data Statistics Autocreate: Automatic creation of data statistics
Delta Log Replay: delta log replay
Delta Merge: delta merge
Export All: main export operation
Export Object: exporting data for an object invoked by 'Export All'
Import All: main import operation
Import Object: importing data for an object invoked by 'Import All'
Memory Profiler: load memory profiler data into tables
Move Table: table move
Optimize Compression: optimize compression
Plan Stability: Execute all cached plans to capture
Re-partitioning: table split and merge operations
Reclaim Delta: reclaim rows from delta which are not visible
Row Store Reorganization: row storage reorganization
Runtimedump: Runtimedump
Save PerfTrace: saving performance trace
Savepoint Critical Phase: critical phase of savepoint
Savepoint: savepoint
System Replication Data Transfer: system replication full data and delta data/log shipping
Table Consistency Check: Table Consistency Checks (Procedure CHECK_TABLE_CONSISTENCY)
Table Redistribution Execute: table redistribution plan execution
Table Redistribution Generate: table redistribution plan generation
Table conversion (Col to Row): table type conversion from column to row store
Table conversion (Row to Col): table type conversion from row to column store