인스턴스 유형 및 유연성
- 50개 이상의 인스턴스 유형을 제공하며, 컴퓨트, 메모리, 스토리지 최적화 구성 전반에서 선택할 수 있습니다
- 모든 인스턴스 유형에서 NVMe 기반 스토리지를 제공해 일관된 고성능 디스크 I/O를 지원합니다
- 리소스를 독립적으로 스케일링: 워크로드에 따라 CPU, 메모리, 스토리지 간 적절한 균형을 선택할 수 있습니다
적합한 인스턴스 유형 선택
스케일링 작동 방식
스케일링 프로세스
- 대기 인스턴스 프로비저닝: 대상 인스턴스 유형(CPU, 메모리, 스토리지 구성)으로 새 대기 인스턴스를 생성합니다.
- S3 백업에서 복원: S3에 저장된 최신 백업에서 복원하여 대기 인스턴스를 초기화합니다.
-
병렬 WAL 리플레이: 대기 인스턴스는 WAL-G 기반의 병렬 복원 메커니즘을 사용해 백업 이후의 모든 Write-Ahead Log(WAL) 변경 사항을 적용합니다.
- WAL-G는 빠른 병렬 복원 작업을 지원합니다.
- WAL-G 개발자는 파트너십을 맺고 있는 Ubicloud 팀 소속으로, 이를 통해 높은 수준의 전문성과 최적화가 보장됩니다.
- 복제 따라잡기: 대기 인스턴스는 진행 중인 WAL 변경 사항을 스트리밍으로 받아 적용하여 프라이머리와의 차이를 해소합니다.
-
페일오버: 대기 인스턴스가 완전히 동기화되면 제어된 페일오버를 통해 새 프라이머리로 승격됩니다.
- 다운타임이 발생하는 유일한 단계는 이 단계입니다(~30초)
- 페일오버 중에는 모든 활성 연결이 중단됩니다.
- 페일오버가 완료되면 클라이언트는 다시 연결해야 합니다.
- 기존 인스턴스 서비스 해제: 페일오버가 완료되면 원래 인스턴스를 서비스 해제합니다.
스케일링 소요 시간
- 백업 복원: S3에서 새 인스턴스로 가장 최근의 전체 백업을 복원하는 데 걸리는 시간
- WAL 리플레이: 마지막 전체 백업 이후의 증분 WAL 변경 사항을 리플레이하는 데 걸리는 시간
- 병렬 복원: WAL-G의 병렬 복원 메커니즘은 이 과정을 크게 단축합니다
WAL-G를 사용한 병렬 복원
- 병렬 다운로드 및 압축 해제: 여러 백업 세그먼트를 S3에서 가져와 동시에 압축 해제합니다
- 효율적인 WAL 재생: 증분 WAL 변경 사항을 가능한 범위에서 병렬로 적용합니다
- 최적화된 스트리밍: 중간 복사본 없이 S3 storage에서 직접 스트리밍합니다
- 빠른 복원: 전체 소요 시간은 데이터 크기에 따라 달라지지만, 병렬화된 방식 덕분에 복원이 상당히 빠르게 진행됩니다
스케일링 시작하기
- 인스턴스의 설정 탭으로 이동합니다
- 스케일링 섹션에서 아래로 스크롤하여 서비스 크기로 이동합니다
- 대상 인스턴스 유형을 선택합니다
- 변경 사항을 검토한 후 “변경 사항 적용”을 클릭합니다
스케일링 전략
수직 스케일링
- 세밀한 제어: 50개가 넘는 인스턴스 유형 중에서 선택하여 CPU, 메모리, 스토리지를 세부적으로 조정할 수 있습니다
- 워크로드 최적화: 특정 워크로드에 맞게 최적화된 구성(컴퓨트, 메모리 또는 스토리지 집약형)을 선택할 수 있습니다
- 비용 효율성: 과도한 프로비저닝 없이 필요한 리소스에 대해서만 비용을 지불하면 됩니다
수평 스케일링을 위한 읽기 레플리카
- 읽기 쿼리를 전용 읽기 레플리카 인스턴스로 분산합니다
- 각 읽기 레플리카는 자체 컴퓨트와 메모리를 갖춘 완전히 독립적인 Postgres 인스턴스입니다
- 읽기 레플리카는 효율적인 복제를 위해 객체 스토리지에서 WAL 변경 사항을 스트리밍합니다
ClickHouse integration의 CDC 스케일링
- CDC 워커를 1~24 CPU 코어까지 스케일링
- 메모리는 CPU 코어 수의 4배에 맞춰 자동으로 스케일링
- ClickPipes OpenAPI를 통해 스케일링 조정