対応フォーマット
機能
一回限りのインジェスト
継続的インジェスト
辞書式順序
file1、file2、file3 という名前のファイルは順番に取り込まれますが、新たに file 0 がバケットに追加された場合、ファイル名が最後に取り込まれたファイルよりも辞書式で後ではないため、無視されます。
このモードでは、GCS ClickPipe は指定されたパス内のすべてのファイルを初期ロードし、その後、設定可能な間隔 (デフォルトでは 30 秒) で新しいファイルがないかポーリングします。特定のファイルや時点からインジェストを開始することはできません — ClickPipes は常に指定されたパス内のすべてのファイルを読み込みます。
順不同
公開バケットでは順不同モードはサポートされていません。これを使用するには、サービス アカウント認証と、バケットに接続された Google Cloud Pub/Sub サブスクリプションが必要です。
OBJECT_FINALIZE 通知を待ち受けます。すでに確認済みのファイル、パスに一致しないファイル、または別種のイベントに対するメッセージは、すべて無視されます。特定のファイルまたは時点からインジェストを開始することはできません。ClickPipes は常に、選択したパス内のすべてのファイルを読み込みます。
ファイルパターンのマッチング
*.csv ではなく data-2024-*.csv) 。
対応しているパターン
| パターン | 説明 | 例 | 一致するもの |
|---|---|---|---|
? | 1 文字に一致します (/ を除く) | data-?.csv | data-1.csv, data-a.csv, data-x.csv |
* | 0 文字以上に一致します (/ を除く) | data-*.csv | data-1.csv, data-001.csv, data-report.csv, data-.csv |
** 再帰 | 0 文字以上に一致します (/ を含む) 。ディレクトリを再帰的に走査できます。 | logs/**/error.log | logs/error.log, logs/2024/error.log, logs/2024/01/error.log |
https://bucket.s3.amazonaws.com/folder/*.csvhttps://bucket.s3.amazonaws.com/logs/**/data.jsonhttps://bucket.s3.amazonaws.com/file-?.parquethttps://bucket.s3.amazonaws.com/data-2024-*.csv.gz
サポートされていないパターン
| Pattern | 説明 | 例 | 代替手段 |
|---|---|---|---|
{abc,def} | ブレース展開 (代替指定) | {logs,data}/file.csv | 各パスごとに別々の ClickPipes を作成してください。 |
{N..M} | 数値範囲の展開 | file-{1..100}.csv | file-*.csv または file-?.csv を使用してください。 |
https://bucket.s3.amazonaws.com/{documents-01,documents-02}.jsonhttps://bucket.s3.amazonaws.com/file-{1..100}.csvhttps://bucket.s3.amazonaws.com/{logs,metrics}/data.parquet
exactly-once セマンティクス
仮想カラム
_file 仮想カラムを含めます。_file 仮想カラムにはソースオブジェクトのファイル名が含まれており、これを使ってどのファイルが処理されたかをクエリできます。
アクセス制御
権限
GCS バケット
storage.objects.list と `storage.objects.get の IAM 権限が含まれており、これにより ClickPipes は指定されたバケット内のオブジェクトを一覧表示し、取得できます。
Pub/Sub サブスクリプション
roles/pubsub.subscriber— メッセージを受信し、確認応答するため。roles/pubsub.viewer— サブスクリプションのメタデータを取得するため。
認証
サービス アカウント
HMAC認証情報
Credentials を選択します。次に、Access key と Secret key に、それぞれアクセスキー (例: GOOGTS7C7FUP3AIRVJTE2BCDKINBTES3HC2GY5CBFJDCQ2SYHV6A6XXVTJFSA) とシークレットキー (例: bGoa+V7g/yqDXvKRqq+JTFn4uQZbPiQJo4pf9RzJ) を入力します。
HMACキーを持つサービス アカウントを作成するには、このガイド に従ってください。
ネットワークアクセス
-
IP ベースのアクセス制御では、GCS バケットの IP フィルタリング ルール で、こちらに記載されている ClickPipes サービスリージョンの静的 IP と、ClickHouse Cloud サービスの 静的 IP の両方を許可する必要があります。ご利用の ClickHouse Cloud リージョンの静的 IP を取得するには、ターミナルを開いて次を実行します。
詳細設定
| Setting | Default value | Description |
|---|---|---|
Max insert bytes | 10GB | 1 回の挿入バッチで処理するバイト数。 |
Max file count | 100 | 1 回の挿入バッチで処理するファイルの最大数。 |
Max threads | auto(3) | ファイル処理に使用する同時実行スレッドの最大数。 |
Max insert threads | 1 | ファイル処理に使用する同時実行される挿入スレッドの最大数。 |
Min insert block size bytes | 1GB | テーブルに挿入可能なブロックの最小バイトサイズ。 |
Max download threads | 4 | 同時実行されるダウンロードスレッドの最大数。 |
Object storage polling interval | 30s | ClickHouse クラスターにデータを挿入するまでの最大待機時間を設定します。 |
Parallel distributed insert select | 2 | parallel distributed insert select の設定。 |
Parallel view processing | false | アタッチされたビューへのプッシュを、順次ではなく同時実行で行うかどうか。 |
Use cluster function | true | 複数ノードにまたがってファイルを並列処理するかどうか。 |
スケーリング
既知の制約事項
ファイルサイズ
互換性
gs:// ではなく https://storage.googleapis.com/ のバケットプレフィックスを使用し、認証には HMAC キー を使用する必要があります。