메인 콘텐츠로 건너뛰기
ArrowFlight 테이블 엔진을 사용하면 ClickHouse에서 Apache Arrow Flight 프로토콜을 통해 원격 데이터셋을 쿼리할 수 있습니다. 이 통합을 사용하면 ClickHouse에서 외부 Flight 지원 서버의 데이터를 열 지향 Arrow 형식으로 고성능으로 가져올 수 있습니다.

테이블 생성

CREATE TABLE [IF NOT EXISTS] [db.]table_name (name1 [type1], name2 [type2], ...)
    ENGINE = ArrowFlight('host:port', 'dataset_name' [, 'username', 'password']);
엔진 매개변수
  • host:port — 원격 Arrow Flight 서버의 주소입니다.
  • dataset_name — Flight 서버의 데이터셋 식별자입니다.
  • username - 기본 HTTP 스타일 인증에 사용할 사용자 이름입니다.
  • password - 기본 HTTP 스타일 인증에 사용할 비밀번호입니다. usernamepassword를 지정하지 않으면 인증을 사용하지 않습니다 (Arrow Flight 서버가 이를 허용하는 경우에만 작동합니다).

사용 예시

이 예시는 원격 Arrow Flight 서버에서 데이터를 읽어 오는 테이블을 생성하는 방법을 보여줍니다:
CREATE TABLE remote_flight_data
(
    id UInt32,
    name String,
    value Float64
) ENGINE = ArrowFlight('127.0.0.1:9005', 'sample_dataset');
원격 데이터를 로컬 테이블처럼 쿼리합니다:
SELECT * FROM remote_flight_data ORDER BY id;
┌─id─┬─name────┬─value─┐
│  1 │ foo     │ 42.1  │
│  2 │ bar     │ 13.3  │
│  3 │ baz     │ 77.0  │
└────┴─────────┴───────┘

참고 사항

  • ClickHouse에서 정의한 스키마는 Flight 서버가 반환하는 스키마와 일치해야 합니다.
  • 이 엔진은 연합 쿼리, 데이터 가상화, 그리고 스토리지와 컴퓨트를 분리하는 데 적합합니다.

관련 항목

마지막 수정일 2026년 6월 10일