Amazon RDS의 MariaDB를 위한 캐시 워밍 - Amazon Relational Database Service

Amazon RDS의 MariaDB를 위한 캐시 워밍

InnoDB 캐시 워밍은 DB 인스턴스가 종료될 때 버퍼 풀의 현재 상태를 저장한 다음 DB 인스턴스가 시작될 때 저장된 정보에서 버퍼 풀을 다시 로드하여 MariaDB DB 인스턴스의 성능 향상을 제공할 수 있습니다. 이렇게 하면 보통 데이터베이스 사용에서 "준비"까지의 버퍼 풀에 대한 필요를 무시하고, 대신 알려진 공용 쿼리에 대한 페이지와 함께 버퍼 풀을 미리 로드합니다. 캐시 워밍에 대한 자세한 내용은 MariaDB 설명서에서 Dumping and restoring the buffer pool을 참조하세요.

캐시 워밍은 MariaDB 10.3 이상 DB 인스턴스에서 기본적으로 활성화됩니다. 캐시 워밍을 활성화하려면 DB 인스턴스의 파라미터 그룹에서 innodb_buffer_pool_dump_at_shutdowninnodb_buffer_pool_load_at_startup 파라미터를 1로 설정합니다. 파라미터 그룹에서 이들 파라미터 값을 변경하면 파라미터 그룹을 사용하는 모든 MariaDB DB 인스턴스가 영향을 받습니다. 특정 MariaDB DB 인스턴스에 대해 캐시 워밍을 활성화하려면, 이들 DB 인스턴스에 대한 새 파라미터 그룹을 생성해야 할 수도 있습니다. 파라미터 그룹에 대한 자세한 내용은 Amazon RDS의 파라미터 그룹 단원을 참조하세요.

캐시 워밍은 주로 표준 스토리지를 사용하는 DB 인스턴스를 위해 성능 혜택을 제공합니다. PIOPS 스토리지를 사용하는 경우에는 통상적으로 성능 혜택이 현저하지 않습니다.

중요

MariaDB DB 인스턴스가 정상적으로 종료되지 않는 경우(예: 장애 조치 도중), 버퍼 풀 상태가 디스크에 저장되지 않습니다. 이 경우 MariaDB는 DB 인스턴스가 다시 시작될 때 이용 가능한 모든 버퍼 풀 파일을 로드합니다. 어떤 손상도 발생하지 않지만, 복원된 버퍼 풀은 대부분의 경우 다시 시작하기 이전의 버퍼 풀 최신 상태를 반영하지 못할 수도 있습니다. 시작 시 캐시를 워밍하기 위해 버퍼 풀의 최신 상태를 이용할 수 있게 하려면, "요청 시" 버퍼 풀을 주기적으로 덤프하는 것이 좋습니다. 사용자가 요청 시 버퍼 풀을 덤프 또는 로드할 수 있습니다.

버퍼 풀을 자동으로 그리고 정기적으로 덤프하는 이벤트를 생성할 수 있습니다. 예를 들면, 다음 문은 매 시간마다 버퍼 풀을 덤프하는 이름이 periodic_buffer_pool_dump인 이벤트를 생성합니다.

CREATE EVENT periodic_buffer_pool_dump ON SCHEDULE EVERY 1 HOUR DO CALL mysql.rds_innodb_buffer_pool_dump_now();

자세한 내용은 MariaDB 설명서에서 Events를 참조하세요.

요청 시 버퍼 풀 덤핑 및 로딩

다음의 저장 프로시저를 사용해 요청 시 캐시를 저장하고 로드할 수 있습니다.