サポート対象のデータソース
| 名前 | ロゴ | 詳細 |
|---|---|---|
| Amazon S3 | 継続的インジェストでは、デフォルトで 辞書式順序 が必要ですが、任意の順序でファイルを取り込む ように設定することもできます。 | |
| Cloudflare R2 S3 互換 | 継続的インジェストでは 辞書式順序 が必要です。順不同モードはサポートされていません。 | |
| DigitalOcean Spaces S3 互換 | 継続的インジェストでは 辞書式順序 が必要です。順不同モードはサポートされていません。 | |
| OVH Object Storage S3 互換 | 継続的インジェストでは 辞書式順序 が必要です。順不同モードはサポートされていません。 |
対応フォーマット
機能
一回限りのインジェスト
継続的インジェスト
辞書式順序
file1、file2、file3 という名前のファイルは順番に取り込まれますが、新たに file 0 が バケット に追加されても、ファイル名が最後に取り込まれたファイルより辞書順で後ではないため、無視されます。
このモードでは、S3 ClickPipe は指定した path 内のすべてのファイルを初期ロードし、その後、設定可能な間隔 (デフォルトでは 30 秒) で新しいファイルをポーリングします。特定のファイルや時点からインジェストを開始することはできません。ClickPipes は常に、指定した path 内のすべてのファイルを読み込みます。
任意の順序
順不同モードは Amazon S3 でのみサポートされており、パブリックバケットや S3 互換サービスではサポートされません。利用するには、バケットに接続された Amazon SQS キューを設定し、必要に応じてイベントルーターとして Amazon EventBridge を使用する必要があります。
ObjectCreated:* イベントを監視します。すでに認識済みのファイルに対するメッセージ、パスに一致しないファイル、または別の種類のイベントは無視されます。
イベントにプレフィックス/サフィックスを設定するかどうかは任意です。設定する場合は、ClickPipe に設定したパスと一致していることを確認してください。S3 では、同じイベントタイプに対して重複する複数の通知ルールは許可されません。
max insert bytes または max file count で設定された閾値に達した時点、または設定可能な間隔 (デフォルトでは 30 秒) の経過後に取り込まれます。特定のファイルまたは時点からインジェストを開始することはできません。ClickPipes は常に選択したパス内のすべてのファイルをロードします。DLQ が設定されている場合、失敗したメッセージは再度エンキューされ、DLQ の maxReceiveCount パラメータで設定された回数まで再処理されます。
EventBridge から SQS へ
SNS から SQS へ
ファイルパターンマッチング
*.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
サポートされていないパターン
| パターン | 説明 | 例 | 代替手段 |
|---|---|---|---|
{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 仮想カラムにはソースオブジェクトのファイル名が含まれており、どのファイルが処理されたかをクエリで確認できます。
アクセス制御
権限
S3 バケット
SQS キュー
認証
IAM 認証情報
Credentials を選択します。次に、アクセスキー ID (例: AKIAIOSFODNN7EXAMPLE) とシークレットアクセスキー (例: wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY) を、それぞれ Access key と Secret key に入力します。
IAM role
IAM role を選択します。
S3 へのアクセスに必要な信頼ポリシーを持つロールを作成するには、このガイドに従ってください。次に、IAM role ARN に IAM role の ARN を入力します。
ネットワークアクセス
-
IP ベースのアクセス制御では、S3 バケットポリシーで、こちらに記載されている ClickPipes サービスのリージョンの静的 IP と、ClickHouse Cloud サービスの静的 IP の両方を許可する必要があります。ご利用の ClickHouse Cloud リージョンの静的 IP を取得するには、ターミナルを開いて次を実行します。
-
VPC エンドポイントベースのアクセス制御では、S3 バケットは ClickHouse Cloud サービスと同じリージョンに配置されている必要があり、
GetObjectオペレーションは ClickHouse Cloud サービスの VPC Endpoint ID に制限する必要があります。ご利用の ClickHouse Cloud リージョンの VPC エンドポイントを取得するには、ターミナルを開いて次を実行します。
高度な設定
| 設定 | デフォルト値 | 説明 |
|---|---|---|
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 | 複数のノードにまたがってファイルを並列処理するかどうか。 |