Skip to main content
ClickHouse Managed Postgres는 NVMe 스토리지를 기반으로 하는 엔터프라이즈급 Postgres로, EBS와 같은 네트워크 연결 스토리지 대비 디스크 입출력에 병목이 있는 워크로드에서 최대 10배 빠른 성능을 제공합니다. 이 quickstart는 두 부분으로 구성됩니다:
  • 파트 1: NVMe Postgres 시작하기 및 성능 체험하기
  • 파트 2: ClickHouse와 통합해 실시간 분석 시작하기
Managed Postgres는 현재 AWS의 여러 리전에서 사용 가능하며, 퍼블릭 베타 단계입니다.이 퀵스타트에서 수행할 작업:
  • NVMe 기반 고성능 관리형 Postgres 인스턴스를 생성하세요
  • 100만 개의 샘플 이벤트를 적재하고 NVMe 속도를 직접 확인하세요
  • 쿼리를 실행하고 낮은 지연 시간의 성능을 체험하세요
  • 실시간 분석을 위해 데이터를 ClickHouse로 복제하세요
  • pg_clickhouse를 사용해 Postgres에서 ClickHouse를 직접 쿼리하세요

1부: NVMe Postgres 시작하기

데이터베이스 생성

새로운 관리형 Postgres 서비스를 생성하려면 Cloud Console의 서비스 목록에서 New service 버튼을 클릭하십시오. 이후 데이터베이스 유형으로 Postgres를 선택할 수 있습니다.데이터베이스 인스턴스의 이름을 입력하고 Create service를 클릭합니다. 개요(Overview) 페이지로 이동합니다.관리형 Postgres 인스턴스는 3~5분 내에 프로비저닝되어 사용 가능한 상태가 됩니다.

데이터베이스에 연결하기

왼쪽 사이드바에서 Connect 버튼을 확인할 수 있습니다. 이 버튼을 클릭하면 접속 정보와 다양한 포맷의 연결 문자열(connection string)을 확인할 수 있습니다.psql 연결 문자열을 복사하여 데이터베이스에 연결하십시오. DBeaver와 같은 Postgres 호환 클라이언트나 애플리케이션 라이브러리를 사용할 수도 있습니다.

NVMe 성능 직접 체험하기

NVMe 기반 성능이 실제로 어느 정도인지 확인해 보겠습니다. 먼저 쿼리 실행 시간을 측정할 수 있도록 psql에서 타이밍을 활성화합니다:
이벤트와 사용자용 샘플 테이블 2개를 생성합니다:
이제 이벤트 100만 개를 삽입한 뒤 NVMe 속도를 확인해 보세요:
NVMe 성능JSONB 데이터가 포함된 100만 개 행을 4초 이내에 삽입할 수 있습니다. EBS와 같은 네트워크 연결 스토리지를 사용하는 기존 클라우드 데이터베이스에서는 네트워크 왕복 지연 시간과 IOPS 스로틀링으로 인해 동일한 작업에 일반적으로 2~3배 더 오래 걸립니다. NVMe 스토리지는 스토리지를 컴퓨트에 물리적으로 직접 연결해 이러한 병목을 없앱니다.성능은 인스턴스 크기, 현재 부하, 데이터 특성에 따라 달라집니다.
사용자 1,000명을 삽입합니다:

데이터에 쿼리 실행하기

이제 몇 가지 쿼리를 실행해 NVMe 스토리지에서 Postgres가 얼마나 빠르게 응답하는지 확인해 보겠습니다.이벤트 100만 개를 유형별로 집계합니다:
JSONB 필터링 및 날짜 범위를 활용한 쿼리:
이벤트와 사용자 조인(join):
Postgres가 준비되었습니다이제 트랜잭션 워크로드에 사용할 수 있는 완전한 고성능 Postgres 데이터베이스가 준비되었습니다.파트 2로 이동하여 네이티브 ClickHouse 통합이 분석 성능을 어떻게 크게 향상시키는지 확인해 보세요.

Part 2: ClickHouse로 실시간 분석 추가하기

Postgres는 트랜잭션 워크로드(OLTP)에 탁월하고, ClickHouse는 대규모 데이터셋에 대한 분석 쿼리(OLAP)를 위해 특별히 설계되었습니다. 두 시스템을 통합하면 양쪽의 장점을 모두 활용할 수 있습니다:
  • 애플리케이션의 트랜잭션 데이터(삽입, 업데이트, 단건 조회)용 Postgres
  • 수십억 개의 행을 1초 이내에 분석할 수 있는 ClickHouse
이 섹션에서는 Postgres 데이터를 ClickHouse로 복제하고 원활하게 쿼리하는 방법을 설명합니다.

ClickHouse 통합 설정

이제 Postgres에 테이블과 데이터가 준비되었으니, 분석을 위해 테이블을 ClickHouse로 복제해 보겠습니다. 사이드바에서 ClickHouse integration을 클릭한 다음, Replicate data in ClickHouse를 클릭하십시오.다음 양식에서 통합의 이름을 입력하고 데이터를 복제할 기존 ClickHouse 인스턴스를 선택할 수 있습니다. ClickHouse 인스턴스가 아직 없는 경우, 이 양식에서 직접 생성할 수 있습니다.
중요계속하기 전에 선택한 ClickHouse 서비스가 Running 상태인지 확인하세요.
다음을 클릭하면 테이블 선택기로 이동합니다. 여기서 필요한 작업은 다음과 같습니다:
  • 복제할 ClickHouse 데이터베이스를 선택합니다.
  • public 스키마를 펼친 다음, 앞서 생성한 users 테이블과 events 테이블을 선택합니다.
  • Replicate data to ClickHouse를 클릭합니다.
복제 프로세스가 시작되면 통합 개요 페이지로 이동합니다. 첫 번째 통합의 경우 초기 인프라를 설정하는 데 2~3분이 소요될 수 있습니다. 그동안 새로운 pg_clickhouse 확장 기능을 살펴보겠습니다.

Postgres에서 ClickHouse 쿼리하기

pg_clickhouse 확장 기능을 사용하면 표준 SQL로 Postgres에서 직접 ClickHouse 데이터를 쿼리할 수 있습니다. 즉, 애플리케이션이 트랜잭션 데이터와 분석 데이터 모두에 대해 Postgres를 통합 쿼리 레이어로 활용할 수 있습니다. 자세한 내용은 전체 문서를 참조하십시오.확장 기능을 활성화합니다:
다음으로, ClickHouse에 대한 외부 서버 연결을 생성합니다. 보안 연결에는 포트 8443http 드라이버를 사용하십시오:
<clickhouse_cloud_host>를 ClickHouse 호스트명으로, <database_name>을 복제 설정 시 선택한 데이터베이스 이름으로 대체하십시오. 호스트명은 사이드바에서 Connect를 클릭하여 ClickHouse 서비스에서 확인할 수 있습니다.이제 Postgres 사용자를 ClickHouse 서비스 자격 증명에 매핑합니다:
이제 ClickHouse 테이블을 Postgres 스키마로 가져옵니다:
<database_name>을 서버 생성 시 사용한 데이터베이스 이름으로 대체하십시오.이제 Postgres 클라이언트에서 ClickHouse 테이블을 모두 확인할 수 있습니다:

분석 기능을 직접 확인해 보세요

통합 페이지로 돌아가 확인해 보세요. 초기 복제가 완료된 것을 확인할 수 있습니다. 통합 이름을 클릭하면 세부 정보를 볼 수 있습니다.서비스 이름을 클릭하여 ClickHouse 콘솔을 열고 복제된 테이블을 확인하십시오.

Postgres와 ClickHouse 성능 비교

이제 몇 가지 분석 쿼리를 실행하여 Postgres와 ClickHouse 간의 성능을 비교해 보겠습니다. 복제된 테이블은 public_<table_name> 명명 규칙을 사용한다는 점에 유의하십시오.쿼리 1: 활동량 기준 상위 사용자이 쿼리는 여러 집계 결과를 사용해 가장 활발하게 활동하는 사용자를 찾습니다:
쿼리 2: 국가 및 플랫폼별 사용자 참여도이 쿼리는 이벤트와 사용자를 조인하여 참여 메트릭을 계산합니다:
성능 비교:
ClickHouse를 사용해야 하는 경우이 100만 행 데이터셋에서도 ClickHouse는 조인과 여러 집계를 포함하는 복잡한 분석 쿼리에서 37배 더 빠른 성능을 제공합니다. 규모가 더 커지면(1억 행 이상) 그 차이는 훨씬 더 커지며, ClickHouse의 열 지향 스토리지와 벡터화 실행은 10100배의 속도 향상을 제공할 수 있습니다.쿼리 시간은 인스턴스 크기, 서비스 간 네트워크 지연 시간, 데이터 특성, 현재 부하에 따라 달라집니다.

정리

이 빠른 시작에서 생성한 리소스를 삭제하려면 다음을 실행하십시오:
  1. 먼저 ClickHouse 서비스에서 ClickPipe 통합을 삭제하십시오
  2. 그런 다음 Cloud Console에서 Managed Postgres 인스턴스를 삭제하십시오
마지막 수정일 2026년 7월 27일