배경
Managed Service for TimescaleTimescale Cloud.
지원되는 Postgres 버전
논리적 복제 활성화
- 관리형 서비스를 사용 중이고 해당 서비스 제공업체가 사이드바에 나와 있다면, 해당 제공업체의 가이드를 따르십시오.
- TimescaleDB를 직접 배포하는 경우, 일반 가이드를 따르십시오.
Timescale Cloud는 논리적 복제 활성화를 지원하지 않으며, 이는 CDC 모드의 Postgres 파이프에 필요합니다.
따라서 Timescale Cloud 사용자는 Postgres ClickPipe를 사용해 데이터의 일회성 적재(
Initial Load Only)만 수행할 수 있습니다.구성
_timescaledb_internal 스키마에 있는 여러 개의 해당 “청크” 테이블에 저장됩니다. 하이퍼테이블에 대해 쿼리를 실행할 때는 이것이 문제가 되지 않습니다. 하지만 논리적 복제 중에는 하이퍼테이블의 변경 사항이 아니라 청크 테이블의 변경 사항이 감지됩니다. Postgres ClickPipe에는 청크 테이블의 변경 사항을 부모 하이퍼테이블에 자동으로 다시 매핑하는 로직이 있지만, 이를 위해서는 추가 단계가 필요합니다.
데이터에 대해 일회성 적재(
Initial Load Only)만 수행하려면 2단계부터는 건너뛰십시오.-
ClickPipes 전용 사용자를 생성합니다:
-
이전 단계에서 생성한 사용자에게 스키마 수준의 읽기 전용 권한을 부여합니다. 다음 예시는
public스키마에 대한 권한을 보여줍니다. 복제하려는 테이블이 포함된 각 스키마에 대해 이 명령을 반복하십시오: -
사용자에게 복제 권한을 부여합니다:
-
Postgres 슈퍼유저/관리자 권한으로, 복제하려는 하이퍼테이블이 포함된 publication을 생성합니다. 이 publication에는 반드시 전체
_timescaledb_internal스키마도 포함되어야 합니다. 그래야 파이프가 기반 청크의 변경 사항을 수신할 수 있습니다. 성능 오버헤드를 피하려면 publication에 필요한 테이블만 포함할 것을 강력히 권장합니다.
clickpipes publication에는 지정된 테이블에서 생성된 변경 이벤트 집합이 포함되며, 이후 복제 스트림을 수집하는 데 사용됩니다.
일부 관리형 서비스에서는 관리자 계정에 전체 스키마에 대한 publication을 생성하는 데 필요한 권한이 부여되지 않습니다. 이 경우 서비스 제공업체에 지원 티켓을 제출하십시오. 또는 이 단계(및 다음 단계)를 건너뛰고 대신 데이터를 일회성으로 적재할 수 있습니다.