MySQL performance-schema-instruments 사용에 따른 성능 영향 실험

안녕하세요. LINE에서 주로 MySQL 기반 DB 오퍼레이션, 각종 DB 관리 툴, 검증 툴 등을 개발하고 있는 Otsuka(tom__bo)입니다. 이번 글에서는 MySQL의 성능 정보를 얻을 때 이용하는 performance_schema 데이터베이스와 information_schema 데이터베이스의 innodb_metrics 테이블을 모두 활성화하면, MySQL 전체 성능이 어느 정도 나빠지는지 실험한 내용을 소개하겠습니다.

SETUP_INSTRUMENTS
ALL ‘ENABLED’ COLUMN
SETUP_INSTRUMENTS
ALL ‘TIMED’ COLUMN
ALL
INNODB_METRICS
TPS 모두 DEFAULT일 때
대비 TPS 비율
AVERAGE
LATENCY
COMMENT
NO NO DISABLED 3506.25 1.031 2.28 performance_schema와 innodb_metrics의 설정을 모두 비활성화한 상태
NO NO DEFAULT 3496.40 1.029 2.29 performance_schema의 instruments를 모두 비활성화한 상태
DEFAULT DEFAULT DISABLED 3391.85 0.998 2.36 innodb_metrics의 설정을 모두 비활성화한 상태
DEFAULT DEFAULT DEFAULT 3399.32 1.00 2.35 디폴트 설정
DEFAULT DEFAULT ENABLED 3389.69 0.997 2.36 innodb_metrics의 설정을 모두 활성화한 상태
YES DEFAULT DEFAULT 2906.15 0.855 2.75 performance_schema의 instruments를 모두 활성화한 상태
YES YES DEFAULT 2837.44 0.835 2.82 performance_schema의 instruments, TIMED를 모두 활성화한 상태
YES DEFAULT ENABLED 2908.34 0.856 2.75 performance_schema와 innodb_metrics의 설정을 모두 활성화한 상태
YES YES ENABLED 2825.31 0.831 2.83 performance_schema(TIMED도 활성)와 innodb_metrics의 설정을 모두 활성화한 상태