사전 요구사항
- Amazon RDS Postgres
- Amazon Aurora Postgres
- Supabase Postgres
- Google Cloud SQL Postgres
- Azure Flexible Server for Postgres
- Neon Postgres
- Crunchy Bridge Postgres
- 일반 Postgres 소스: 다른 Postgres 제공업체를 사용하거나 자체 호스팅 인스턴스를 사용하는 경우
- TimescaleDB: 관리형 서비스 또는 자체 호스팅 인스턴스에서 TimescaleDB 확장 기능을 사용하는 경우
ClickPipe 생성하기
- ClickHouse Cloud 콘솔에서 ClickHouse Cloud 서비스로 이동합니다.
- 왼쪽 메뉴에서
Data Sources버튼을 선택한 다음 “Set up a ClickPipe”를 클릭합니다.
-
Postgres CDC타일을 선택합니다.
소스 Postgres 데이터베이스 연결 추가하기
- 사전 준비 단계에서 구성한 소스 Postgres 데이터베이스의 연결 정보를 입력합니다.
(선택 사항) AWS Private Link 설정하기
(선택 사항) SSH 터널링 설정
- “Use SSH Tunnelling” 토글을 활성화하세요.
- SSH 연결 정보를 입력하세요.
-
키 기반 인증을 사용하려면 “Revoke and generate key pair”를 클릭하여 새 키 쌍을 생성한 뒤, 생성된 공개 키를 SSH 서버의
~/.ssh/authorized_keys에 복사하세요. - 연결을 확인하려면 “Verify Connection”을 클릭하세요.
ClickPipes가 SSH 터널을 설정할 수 있도록 SSH 배스천 호스트의 방화벽 규칙에 ClickPipes IP 주소를 허용 목록에 추가하십시오.
복제 설정 구성하기
- 드롭다운 목록에서 사전 요구 사항 단계에서 생성한 replication slot을 선택했는지 확인하세요.
고급 설정
- Sync interval: ClickPipes가 변경 사항을 확인하기 위해 원본 데이터베이스를 폴링하는 주기입니다. 이 값은 대상 ClickHouse 서비스의 비용에 영향을 줄 수 있으므로, 비용에 민감한 경우 더 큰 값(
3600초과)으로 유지하는 것을 권장합니다. - Parallel threads for initial load: 초기 스냅샷을 가져오는 데 사용할 병렬 워커 수입니다. 테이블 수가 많을 때 초기 스냅샷을 가져오는 병렬 워커 수를 제어하는 데 유용합니다. 이 설정은 테이블별로 적용됩니다.
- Pull batch size: 단일 배치에서 가져올 행 수입니다. 이 설정은 가능한 범위에서 적용되므로, 모든 경우에 정확히 반영되지는 않을 수 있습니다.
- Snapshot number of rows per partition: 초기 스냅샷 중 각 파티션에서 가져올 행 수입니다. 테이블의 행 수가 매우 많을 때 각 파티션에서 가져오는 행 수를 제어하는 데 유용합니다.
- Snapshot number of tables in parallel: 초기 스냅샷 중 병렬로 가져올 테이블 수입니다. 테이블 수가 많을 때 병렬로 가져오는 테이블 수를 제어하는 데 유용합니다.
테이블 구성하기
- 여기에서 ClickPipe의 대상 데이터베이스를 선택할 수 있습니다. 기존 데이터베이스를 선택하거나 새 데이터베이스를 생성할 수 있습니다.
- 소스 Postgres 데이터베이스에서 복제할 테이블을 선택할 수 있습니다. 테이블을 선택할 때 대상 ClickHouse 데이터베이스에서 테이블 이름을 변경하고 특정 컬럼을 제외하도록 설정할 수도 있습니다.
권한을 검토하고 ClickPipe를 시작합니다
- 권한 드롭다운에서 “Full access” 역할을 선택한 다음 “Complete Setup”을 클릭하세요.