流式数据
引入过程将数据从源传输并存储到 Iceberg 表中。流式数据源的更改会近乎实时地持续应用到存储表中。
录入数据
数据在管道项目中引入,数据集存储在项目设置中定义的 S3 位置。
-
在您的项目中,单击创建,然后单击引入数据。
-
为引入添加任务名称和可选的描述。
单击下一步。
-
选择源连接。
您可以选择现有数据流源连接,或创建到源的新连接。
有关更多信息,请参阅连接到数据流
单击 下一步,并按照以下说明操作,针对您的数据源。
选择数据
Apache Kafka 和 Amazon Kinesis
此列表显示源连接中定义的主机提供的可用 Kafka 主题或 Kinesis 数据流。
选择主题/数据流时,您可以选择特定数据集,或使用选择规则来包含或排除数据集组:
-
使用 % 作为通配符来定义数据集的选择条件。
-
%.% 定义所有数据流中的所有数据集。
如果使用选择规则选择了主题,您可以选择是将所有数据集加载到同一个目标表,还是为每个源主题创建一个单独的目标表:
-
默认情况下,目标 Iceberg 表名派生自主题名称,并根据命名约定进行格式化,例如,小写、删除空格、将破折号替换为下划线。在 定义目标数据集名称 中,您可以编辑目标表的名称
-
当使用选择规则将多个主题加载到单个表中时,您必须提供目标名称。
-
当使用选择规则并将数据加载到单独的表(每个主题一个数据集)中时,默认目标名称是主题名称。在此阶段,您无法在向导中编辑名称,但可以在稍后的登陆任务中完成此操作。
-
如果配置了规则以选择要引入的主题,则如果登陆任务设置中架构演变下的新主题 > 添加到目标选项已选中,任何符合规则条件的新主题也将登陆。
选择一个或多个数据集,然后单击添加选定的数据流。您可以在显式选择的数据流下查看添加的数据集。单击下一步。
Amazon S3
目录浏览器显示源连接的S3存储段中所有目录的列表。
-
选择登陆数据时要包含的目录:
-
对于每个目录,在添加路径中,输入路径和文件名模式:
-
使用 * 作为通配符来匹配任何字符。
-
要输入日期模式,请使用 <yyyy> 作为四位年份占位符,<MM> 作为两位月份占位符,<dd> 作为两位日期占位符,以及 <HH> 作为两位小时占位符。例如:
-
MyDir3/<yyyy>_<MM>_<dd>_<HH>_orders.csv
-
MyDir3/<yyyy>/<MM>/<dd>/<HH>_orders.csv
-
-
-
-
单击 预览 以打开 预览数据 对话框。显示包含和排除的文件列表。
-
点击验证以检查数据。
-
在定义目标数据集名称中,提供一个名称以将主题映射到目标 Iceberg 表。单击下一步。
选择内容类型
选择源事件内容类型。
-
选择您在选择数据事件类型中摄取事件的类型。
-
有关更多信息,请参阅连接到数据流。
所选内容类型适用于所有主题。您必须针对要摄取的每种内容类型创建一个新任务。
-
展开验证事件是否已正确加载以确认数据可以解析。您必须确保此阶段的数据正确,否则需要重新创建管道并再次加载数据。使用选择数据集检查特定数据集并查看可能影响数据加载的任何警告。单击任何结构列旁边的眼睛图标以查看数据。
-
单击下一步。
设置提取属性
配置管道的设置:
-
读取数据自
-
从最早的事件开始:摄取所有历史数据。
-
从现在开始:摄取从管道启动时开始到达的新数据。
-
-
列取消嵌套
-
保留嵌套列:不应用任何转换。
-
解嵌套到单独的列中:数据被拆分为单独的列。
-
-
加载设置
-
仅追加:通常是事件数据的最佳选项,因为它通常生命周期短且不会更新,例如订单。
-
合并:这最适合随时间更新的数据,例如客户。
-
-
目标表分区
目标表分区选项适用于管道中的所有表。您可以在以后在表级别覆盖此设置,以进行定制分区。
-
无分区:创建的表不带任何分区。
-
按事件摄入日期分区:表按事件摄入日期分区。
-
-
单击下一步。
汇总
摘要屏幕提供管道的可视化显示:
-
(可选)对于流式登陆和流式转换任务,您可以单击编辑名称和描述以提供新值。
-
选择管道创建后要执行的操作选项。
-
配置完所有设置后,单击创建以创建管道项目。
-
项目显示后,您可以准备并运行每个任务以开始摄取数据。
-
准备并运行流式登陆任务。
有关更多信息,请参阅登陆流数据到 Qlik Open Lakehouse。
-
准备并运行流式转换任务。
有关更多信息,请参阅存储数据流数据集。
-