본문으로 바로가기
본문으로 바로가기

BladePipe를 ClickHouse에 연결하기

Partner Integration

BladePipe는 실시간 엔드 투 엔드(end-to-end) 데이터 통합 도구로, 1초 미만의 지연 시간으로 여러 플랫폼 간에 원활한 데이터 흐름을 제공합니다.

ClickHouse는 BladePipe에 사전 구성된 커넥터 중 하나로, 사용자가 다양한 소스의 데이터를 ClickHouse로 자동 통합할 수 있도록 해 줍니다. 이 페이지에서는 실시간으로 ClickHouse에 데이터를 적재하는 방법을 단계별로 설명합니다.

지원되는 소스

현재 BladePipe는 다음 소스에서 ClickHouse로의 데이터 통합을 지원합니다:

  • MySQL/MariaDB/AuroraMySQL
  • Oracle
  • PostgreSQL/AuroraPostgreSQL
  • MongoDB
  • Kafka
  • PolarDB-MySQL
  • OceanBase
  • TiDB

추가 소스도 순차적으로 지원될 예정입니다.

BladePipe 다운로드 및 실행

  1. BladePipe Cloud에 로그인합니다.

  2. Install Worker (Docker) 또는 Install Worker (Binary)의 지침을 따라 BladePipe Worker를 다운로드하고 설치합니다.

참고

또는 BladePipe Enterprise를 다운로드하고 배포할 수 있습니다.

ClickHouse를 대상으로 추가하기

참고
  1. BladePipe는 ClickHouse 버전 20.12.3.3 이상을 지원합니다.
  2. ClickHouse를 대상으로 사용하려면 사용자에게 SELECT, INSERT 및 일반 DDL 권한이 있어야 합니다.
  1. BladePipe에서 "DataSource" > "Add DataSource"를 클릭합니다.

  2. ClickHouse를 선택한 후 ClickHouse 호스트와 포트, 사용자 이름과 비밀번호를 입력하고 "Test Connection"을 클릭하여 연결을 테스트합니다.

    ClickHouse를 대상으로 추가하기
  3. 하단의 "Add DataSource"를 클릭하면 ClickHouse 인스턴스가 추가됩니다.

MySQL을 소스로 추가하기

이 튜토리얼에서는 MySQL 인스턴스를 소스로 사용하고 MySQL 데이터를 ClickHouse로 적재하는 과정을 설명합니다.

참고

MySQL을 소스로 사용하려면 해당 사용자가 필요한 권한을 가지고 있는지 확인하십시오.

  1. BladePipe에서 "DataSource" > "Add DataSource"를 클릭합니다.

  2. MySQL을 선택한 후 MySQL 호스트와 포트, 사용자 이름과 비밀번호를 입력하고 "Test Connection"을 클릭합니다.

    MySQL을 소스로 추가하기
  3. 화면 하단에서 "Add DataSource"를 클릭하면 MySQL 인스턴스가 추가됩니다.

파이프라인 생성

  1. BladePipe에서 "DataJob" > "Create DataJob"을 클릭합니다.

  2. 추가한 MySQL과 ClickHouse 인스턴스를 선택하고 "Test Connection"을 클릭하여 BladePipe가 인스턴스에 정상적으로 연결되어 있는지 확인합니다. 그런 다음 이동할 데이터베이스를 선택합니다.

    소스와 대상 선택
  3. DataJob Type에서 "Incremental"을 선택하고, "Full Data" 옵션도 함께 선택합니다.

    동기화 유형 선택
  4. 복제할 테이블을 선택합니다.

    테이블 선택
  5. 복제할 컬럼을 선택합니다.

    컬럼 선택
  6. DataJob 생성을 완료하면 해당 DataJob이 자동으로 실행됩니다.

    DataJob 실행 중

데이터 검증

  1. MySQL 인스턴스에서 데이터 쓰기를 중지하고 ClickHouse가 데이터를 병합할 때까지 기다립니다.
    참고

    ClickHouse의 자동 병합 시점을 예측할 수 없으므로, OPTIMIZE TABLE xxx FINAL; 명령을 실행하여 수동으로 병합을 트리거할 수 있습니다. 수동 병합이 항상 성공하는 것은 아니라는 점에 유의하십시오.

또는 CREATE VIEW xxx_v AS SELECT * FROM xxx FINAL; 명령을 실행하여 뷰(View)를 생성하고 해당 뷰에서 쿼리를 수행하여 데이터가 완전히 병합되었는지 확인할 수 있습니다. :::

  1. 검증 DataJob을 생성합니다. 검증 DataJob이 완료되면 결과를 검토하여 ClickHouse의 데이터와 MySQL의 데이터가 동일한지 확인하십시오.
    데이터 검증