支持的数据源
支持的格式
特性
一次性摄取
持续摄取
词典序
file1、file2 和 file3 的文件会被依次摄取;但如果有一个新的 file 0 添加到存储桶中,它将被忽略,因为该文件名在词典序上并不大于上一个已摄取的文件。
在此模式下,S3 ClickPipe 会对指定路径中的所有文件执行初始加载,然后按可配置的时间间隔轮询新文件 (默认为 30 秒) 。要在特定文件之后开始持续摄取,请配置开始于之后。ClickPipes 会跳过在词典序上小于或等于所配置值的文件,并从该位置继续摄取较新的文件。
任意顺序
无序模式仅支持 Amazon S3,不支持公共存储桶或兼容 S3 的服务。它要求设置一个连接到存储桶的 Amazon SQS 队列,并可选使用 Amazon EventBridge 作为事件路由器。
ObjectCreated:* 事件。对于之前已处理过的文件、不匹配该路径的文件,或其他类型事件的消息,都会被忽略。若要仅摄取通过队列传送的文件,请启用跳过初始加载。启用后,ClickPipes 会跳过对所选路径中现有文件的初始扫描,仅处理通过 SQS 队列传送的文件。
为事件设置前缀/后缀是可选的。如果设置了,请确保它与为 ClickPipe 配置的路径一致。S3 不允许为相同事件类型配置多个相互重叠的通知规则。
max insert bytes 或 max file count 中配置的阈值时,或者经过一个可配置的时间间隔后 (默认 30 秒) ,系统就会开始摄取文件。如果配置了 DLQ,失败的消息会被重新入队并重新处理,最多重试到 DLQ maxReceiveCount 参数中配置的次数。
EventBridge 到 SQS
SNS 到 SQS
文件模式匹配
data-2024-*.csv,而不是 *.csv) 。
支持的模式
示例:
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
不支持的模式
示例:
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 访问所需的信任策略。然后,在 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 端点,请打开终端并运行:
