메인 콘텐츠로 건너뛰기
현재 사용 중인 데이터베이스 시스템에서 ClickHouse Cloud로 데이터를 마이그레이션하는 ETL 도구로 ClickHouse, 보다 정확히는 clickhouse-local을 사용할 수 있습니다. 단, 현재 사용 중인 데이터베이스 시스템에 대해 ClickHouse에서 제공하는 integration 엔진 또는 테이블 함수를 사용할 수 있거나, 해당 벤더가 제공하는 JDBC 드라이버 또는 ODBC 드라이버를 사용할 수 있어야 합니다. 이 마이그레이션 방식은 원본 데이터베이스에서 대상 데이터베이스로 데이터를 옮길 때 중간 피벗 지점 또는 경유지를 사용하므로, 때때로 “피벗” 방식이라고 부릅니다. 예를 들어 보안 요구 사항으로 인해 사설 또는 내부 네트워크에서는 아웃바운드 연결만 허용되는 경우, 이 방법이 필요할 수 있습니다. 이 경우 clickhouse-local로 원본 데이터베이스에서 데이터를 가져온 다음, clickhouse-local를 피벗 지점으로 삼아 대상 ClickHouse 데이터베이스로 데이터를 전송해야 합니다. ClickHouse는 MySQL, PostgreSQL, MongoDB, SQLite에 대해 integration 엔진과 테이블 함수(실행 시 즉시 생성됨로 integration 엔진 생성)를 제공합니다. 그 밖의 널리 사용되는 다른 데이터베이스 시스템의 경우에는 해당 벤더가 제공하는 JDBC 드라이버 또는 ODBC 드라이버를 사용할 수 있습니다.

clickhouse-local이란 무엇인가요?

일반적으로 ClickHouse는 클러스터 형태로 실행되며, 여러 개의 ClickHouse 데이터베이스 엔진 인스턴스가 서로 다른 서버에서 분산 방식으로 동작합니다. 단일 서버에서는 ClickHouse 데이터베이스 엔진이 clickhouse-server 프로그램의 일부로 실행됩니다. 데이터베이스 접근(경로, 사용자, 보안, …)은 서버 설정 파일로 구성합니다. clickhouse-local 도구를 사용하면 ClickHouse 서버를 구성하고 시작하지 않아도, ClickHouse 데이터베이스 엔진을 명령줄 유틸리티처럼 독립적으로 사용하여 대량의 입력과 출력을 대상으로 매우 빠르게 SQL 데이터를 처리할 수 있습니다.

clickhouse-local 설치하기

현재 사용 중인 원본 데이터베이스 시스템과 대상 ClickHouse Cloud 서비스 모두에 네트워크로 접근할 수 있는 호스트 머신이 clickhouse-local에 필요합니다. 해당 호스트 머신에서 컴퓨터의 운영 체제에 맞는 clickhouse-local 빌드를 다운로드하십시오.
  1. clickhouse-local을 로컬에 다운로드하는 가장 간단한 방법은 다음 명령을 실행하는 것입니다.
  1. clickhouse-local을 실행합니다(버전만 출력됩니다).
중요이 가이드 전반의 예시는 clickhouse-local 실행에 Linux 명령(./clickhouse-local)을 사용합니다. macOS에서 clickhouse-local을 실행하려면 ./clickhouse local을 사용하십시오.
원격 시스템을 ClickHouse Cloud 서비스의 IP 액세스 목록에 추가remoteSecure 함수가 ClickHouse Cloud 서비스에 연결하려면 원격 시스템의 IP 주소가 IP 액세스 목록에서 허용되어야 합니다. 자세한 내용은 이 팁 아래의 IP 액세스 목록 관리를 펼쳐 확인하십시오.
ClickHouse Cloud 서비스 목록에서 작업할 서비스를 선택한 다음 설정으로 이동합니다. IP 액세스 목록에 ClickHouse Cloud 서비스에 연결해야 하는 원격 시스템의 IP 주소 또는 IP 주소 범위가 포함되어 있지 않으면 Add IPs로 이 문제를 해결할 수 있습니다.ClickHouse Cloud 서비스에 연결해야 하는 개별 IP 주소 또는 IP 주소 범위를 추가합니다. 필요에 맞게 양식을 수정한 다음 Save를 클릭하십시오.

예시: integration 엔진을 사용해 MySQL에서 ClickHouse Cloud로 마이그레이션하기

원본 MySQL 데이터베이스에서 데이터를 읽기 위해 integration 테이블 엔진(mysql 테이블 함수로 즉시 생성됨)을 사용하고, 데이터를 ClickHouse Cloud 서비스의 대상 테이블에 쓰기 위해 remoteSecure 테이블 함수 를 사용합니다.

대상 ClickHouse Cloud 서비스에서:

대상 데이터베이스를 생성하세요:

MySQL 테이블과 동일한 스키마를 가진 대상 테이블을 생성합니다:

ClickHouse Cloud 대상 테이블의 스키마와 원본 MySQL 테이블의 스키마는 서로 맞아야 합니다(컬럼 이름과 순서는 동일해야 하며, 컬럼 데이터 타입은 서로 호환되어야 합니다).

clickhouse-local이 있는 호스트 머신에서:

마이그레이션 쿼리로 clickhouse-local을 실행하세요:

clickhouse-local 호스트 머신에는 데이터가 로컬에 저장되지 않습니다. 대신 소스 MySQL 테이블에서 데이터를 읽어 즉시 ClickHouse Cloud 서비스의 대상 테이블에 씁니다.
마지막 수정일 2026년 6월 25일