다중 AZ DB 클러스터에 대한 MySQL 이진 로깅 구성 - Amazon Relational Database Service

다중 AZ DB 클러스터에 대한 MySQL 이진 로깅 구성

Amazon RDS for MySQL 다중 AZ DB 클러스터의 이진 로깅은 복제, 시점 복구 및 감사를 지원하기 위해 모든 데이터베이스 변경 사항을 기록합니다. 다중 AZ DB 클러스터에서 이진 로그는 세컨더리 노드를 프라이머리 노드와 동기화하여 가용 영역 간 데이터 일관성을 보장하고 원활한 장애 조치를 활성화합니다.

이진 로깅을 최적화하기 위해 Amazon RDS는 이진 로그 트랜잭션 압축을 지원하므로 이진 로그에 대한 스토리지 요구 사항이 줄어들고 복제 효율성이 향상됩니다.

다중 AZ DB 클러스터에 대한 이진 로그 트랜잭션 압축

이진 로그 트랜잭션 압축은 zstd 알고리즘을 사용하여 이진 로그에 저장된 트랜잭션 데이터의 크기를 줄입니다. 활성화되면 MySQL 데이터베이스 엔진은 트랜잭션 페이로드를 단일 이벤트로 압축하여 I/O 및 스토리지 오버헤드를 최소화합니다. 이 기능은 데이터베이스 성능을 개선하고, 이진 로그 크기를 줄이며, 다중 AZ DB 클러스터에서 로그를 관리하고 복제하기 위한 리소스 사용을 최적화합니다.

Amazon RDS는 다음 파라미터를 통해 RDS for MySQL 다중 AZ DB 클러스터에 대한 이진 로그 트랜잭션 압축을 제공합니다.

  • binlog_transaction_compression - 활성화되면(1) 데이터베이스 엔진은 트랜잭션 페이로드를 압축하여 단일 이벤트로 이진 로그에 기록합니다. 이렇게 하면 스토리지 사용량과 I/O 오버헤드가 줄어듭니다. 파라미터는 기본적으로 비활성화되어 있습니다.

  • binlog_transaction_compression_level_zstd - 이진 로그 트랜잭션에 대한 zstd 압축 수준을 구성합니다. 값이 높을수록 압축률이 증가하여 스토리지 요구 사항은 더 줄어들지만 압축을 위한 CPU 및 메모리 사용량은 증가합니다. 기본값은 3이며 범위는 1~22입니다.

이러한 파라미터를 사용하면 워크로드 특성 및 리소스 가용성에 따라 이진 로그 압축을 미세 조정할 수 있습니다. 자세한 내용은 MySQL 설명서에서 Binary Log Transaction Compression을 참조하세요.

이진 로그 트랜잭션 압축의 주요 이점은 다음과 같습니다.

  • 압축은 특히 트랜잭션이 크거나 쓰기 볼륨이 많은 워크로드의 경우 이진 로그의 크기를 줄입니다.

  • 이진 로그가 작을수록 네트워크 및 I/O 오버헤드가 줄어들어 복제 성능이 향상됩니다.

  • binlog_transaction_compression_level_zstd 파라미터는 압축률과 리소스 소비 간의 균형을 제어합니다.

다중 AZ DB 클러스터에 대한 이진 로그 트랜잭션 압축 구성

RDS for MySQL 다중 AZ DB 클러스터에 대한 이진 로그 트랜잭션 압축을 구성하려면 워크로드 요구 사항에 맞게 관련 클러스터 파라미터 설정을 수정합니다.

이진 로그 트랜잭션 압축을 활성화하는 방법
  1. DB 클러스터 파라미터 그룹을 수정하여 binlog_transaction_compression 파라미터를 1로 설정합니다.

  2. (선택 사항) 워크로드 요구 사항 및 리소스 가용성에 따라 binlog_transaction_compression_level_zstd 파라미터 값을 조정합니다.

자세한 내용은 DB 클러스터 파라미터 그룹의 파라미터 수정 단원을 참조하십시오.

AWS CLI를 사용하여 이진 로그 트랜잭션 압축을 구성하려면 modify-db-cluster-parameter-group 명령을 사용합니다.

대상 LinuxmacOS, 또는Unix:

aws rds modify-db-cluster-parameter-group \ --db-cluster-parameter-group-name your-cluster-parameter-group \ --parameters "ParameterName=binlog_transaction_compression,ParameterValue=1,ApplyMethod=pending-reboot"

Windows의 경우:

aws rds modify-db-cluster-parameter-group ^ --db-cluster-parameter-group-name your-cluster-parameter-group ^ --parameters "ParameterName=binlog_transaction_compression,ParameterValue=1,ApplyMethod=pending-reboot"

Amazon RDS API를 사용하여 이진 로그 트랜잭션 압축을 구성하려면 ModifyDBClusterParameterGroup 작업을 사용합니다.