メインコンテンツへスキップ
ArrowFlight テーブルエンジンを使用すると、ClickHouse は Apache Arrow Flight プロトコル経由でリモートのデータセットの読み取りと書き込みを行えます。 このインテグレーションにより、ClickHouse は外部の Flight 対応サーバーと、列指向の Arrow フォーマットで高性能にやり取りできます。

テーブルの作成

エンジンパラメータ
  • host:port — リモート Arrow Flight サーバー のアドレス。ポートが省略された場合は、デフォルトのポート 8815 が使用されます。String
  • dataset_name — Flight server 上のデータセットの識別子 (arrow_flight_request_descriptor_type 設定に応じて、PATH ディスクリプタとして、または SELECT * クエリで使用されます) 。String
  • username — HTTP Basic 認証で使用するユーザー名。String
  • password — HTTP Basic 認証で使用するパスワード。String
usernamepassword が省略された場合、認証は使用されません (これは Arrow Flight サーバー 側で認証なしのアクセスが許可されている場合にのみ機能します) 。 カラム一覧は省略可能です — 省略した場合、スキーマは GetSchema を介してリモート Arrow Flight サーバー から推論されます。

名前付きコレクション

このエンジンは、接続パラメータを保存するための名前付きコレクションに対応しています。
名前付きコレクション のパラメータ:

設定

  • arrow_flight_request_descriptor_type — データセット名を Flight server にどの形式で送信するかを制御します。設定可能な値: path (デフォルト。PATH ディスクリプタとして送信) または command (SELECT * FROM <dataset> を含む CMD ディスクリプタとして送信) 。SQL コマンドを受け取る Flight server (例: Dremio) の場合は、command を使用してください。

使用例

リモートの Arrow Flight サーバーからのデータの読み取り:
リモートの Arrow Flight サーバーにデータを挿入する:

注記

  • CREATE TABLE ステートメントでカラムを指定する場合は、Flight server が返すスキーマと一致している必要があります。
  • カラムを省略した場合、スキーマはリモートサーバーから自動的に推論されます。
  • 読み取り (SELECT) と書き込み (INSERT) の両方をサポートしています。
  • arrow_flight_request_descriptor_type 設定では、データセット名を PATH ディスクリプタとして送信するか、SELECT * クエリをラップした CMD ディスクリプタとして送信するかを制御します。

関連項目

最終更新日 2026年7月3日