支持的数据源
支持的格式
特性
一次性摄取
持续摄取
词典序
file1、file2 和 file3 的文件会被依次摄取;但如果有一个新的 file 0 添加到存储桶中,它将被忽略,因为该文件名在词典序上并不大于上一个已摄取的文件。
在此模式下,S3 ClickPipe 会对指定路径中的所有文件执行初始加载,然后按可配置的时间间隔轮询新文件 (默认为 30 秒) 。无法从某个特定文件或时间点开始摄取——ClickPipes 始终会加载指定路径中的所有文件。
任意顺序
无序模式仅支持 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
文件模式匹配
data-2024-*.csv,而不是 *.csv) 。
支持的模式
| 模式 | 描述 | 示例 | 匹配项 |
|---|---|---|---|
? | 精确匹配一个字符 (不含 /) | data-?.csv | data-1.csv, data-a.csv, data-x.csv |
* | 匹配零个或多个字符 (不含 /) | data-*.csv | data-1.csv, data-001.csv, data-report.csv, data-.csv |
** 递归 | 匹配零个或多个字符 (包含 /) 。支持递归遍历目录。 | 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
精确一次语义
虚拟列
_file 虚拟列添加到列映射列表中。_file 虚拟列包含源对象的文件名,可用于查询哪些文件已被处理。
访问控制
权限
S3 存储桶
SQS 队列
身份验证
IAM 凭证
Credentials。然后,分别在 Access key 和 Secret key 中填写访问密钥 ID (例如 AKIAIOSFODNN7EXAMPLE) 和秘密访问密钥 (例如 wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY) 。
IAM role
IAM role。
请按照本指南创建具有 S3 访问所需信任策略的role。然后,在 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 | 单个插入批次中处理的字节数。 |
Max file count | 100 | 单个插入批次中处理的最大文件数。 |
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 | 是否在多个节点之间并行处理文件。 |