# 存储数据流数据集

以下数据流转换任务设置适用于使用数据流源的 Qlik 开放式湖空间 项目。

您可以使用数据流转换数据任务存储和转换数据流数据。数据流数据通常包含需要展平的嵌套结构和数组，并且在存储阶段需要转换功能。这些功能可用于数据流转换任务，使您能够在登陆您的数据流数据后立即应用转换。

## 管理数据集粒度

您可以展平嵌套结构和数组以增加粒度。粒度显示在“数据集”视图中。单击the 编辑 icon 编辑粒度：

* 从数组中选择一个字段将导致目标表为每个元素包含一行。这将增加目标中的行数。

* 您必须从同一数组路径中选择字段。从不同路径选择字段将引发验证错误。

* 显示的数据类型反映了所选粒度。例如，当 ARRAY&lt;INT&gt; 被展平时，它会变为 INT。有关更多信息，请参阅[数据类型映射](https://help.qlik.com/zh-CN/cloud-services/Subsystems/Hub/Content/Sense_Hub/DataIntegration/Lakehouse/onboarding-data-streaming.htm#Data)。

## 删除任务

如果数据任务未运行，并且同一项目中没有下游任务依赖项，则可以删除该数据任务。

* 在项目的管道项目视图中，单击任务上的the 删除 icon，然后选择。

此任务创建的工件（表和视图）也将被删除，除非您选择保留它们。

信息注释请记住，您保留的工件将不再由该任务更新。

## 查看任务信息

点击菜单栏上的 the 信息 icon 以查看任务信息，例如：

* 所有者

* 空间

* 数据平台

* 项目 ID

* 数据任务运行时 ID

## 流媒体转换设置

当数据平台是 Qlik 开放式湖空间 时，您可以设置流式转换数据任务的属性。

* 单击设置。

### 一般设置

* 任务模式

  您可以更改流式转换任务模式的名称。默认名称是存储任务的名称。

* 内部架构

  可以更改内部存储数据资产模式的名称。默认名称是附加了 \_internal 的存储任务的名称。

* 所有表格和视图的前缀

  可以为使用此任务创建的所有表和视图设置前缀。

  信息注释如果要在多个数据任务中使用数据库架构，则必须使用唯一的前缀。

* 要使用的文件夹

  您可以更改流式转换任务存储文件夹。

* 新数据集的加载设置

  * 仅追加

    添加新记录而不修改现有数据。如果出现复制记录，则不强制执行键约束。

  * 应用更改

    根据关键字段更新现有记录并插入新记录。

    如果您选择合并更改，您还可以选择以下选项：

    * 通过提供删除表达式软删除记录

      定义删除表达式以标记要删除的记录。

    * 保留历史记录（类型 2）

      保留已更改记录的以前版本。

* 列取消嵌套

  * 保留嵌套列

    选择保留嵌套数据。

  * 解嵌套到单独的列中

    默认行为是将数据取消嵌套到单独的列中。

* 目标表分区

  信息注释仅当在加载设置中选择了仅追加时，此选项才可用。

  * 无分区

    创建新表时没有分区。

  * 按事件日期分区

    新表按事件摄取日期分区。

* 数据变更处理

  信息注释此选项仅在加载设置中选中应用更改时可用。

  * 包含软删除：输入一个表达式来定义要标记为删除的记录。

  * 创建历史数据存储（类型 2）：这将保留已更改记录的先前版本。

* 保留管理

  * 无分区修剪

  * 当前快照分区修剪

### 表定义

* hdr\_\_from\_timestamp

  启用此选项后，hdr\_\_from\_timestamp 标题列将显示在标准视图中。此外，如果在载入向导中选择了 按事件摄取日期分区，则 hdr\_\_from\_timestamp 将用作默认分区列。

  信息注释无论此设置如何，历史记录视图始终包含所有标准视图标题列。

### 运行时设置

* Lakehouse 集群

  您可以更改湖屋集群，但该集群必须支持数据流工作负载或混合工作负载。

### 模式演变设置

* 添加新数据集

  当新数据集添加到流式登陆任务时，此设置适用。

  信息注释仅在从 Kafka 流式传输登陆读取时支持。

  * 应用于目标

    自动将新数据集从流式登陆任务添加到流式转换任务。这是默认设置。

  * 忽略

    不添加新数据集。

* 在根级别添加列

  当在根级别向流式登陆任务添加新列时，此设置适用。

  * 应用于目标

    自动将新根级别列从流式登陆任务添加到流式转换任务。这是默认设置。

  * 忽略

    不添加新的根级别列。

  * 停止任务

    如果在数据流登陆任务中检测到新的根级别列，则停止转换任务。

* 向结构中添加列

  当在数据流登陆任务中的现有嵌套结构中添加新字段时，此设置适用。

  * 应用于目标

    如果新字段已添加到登陆结构中，则自动将其添加到数据流转换任务中的现有结构。

  * 忽略

    不向现有结构添加新字段。

  * 停止任务

    如果 Streaming 登陆任务中的结构添加了新字段，则停止转换任务。

* 更改字段数据类型

  * 忽略

    不更改数据类型。

  * 停止任务

    如果 Streaming 登陆任务中检测到数据类型更改，则停止转换任务。

## 数据集设置

以下设置适用于所有数据集，位于设计视图 &gt; 数据集中。

单击the 更多 icon 在数据集旁，然后选择 设置。

* 数据加载处理

  选择如何将数据加载到目标表中。

  * 仅追加

    添加新记录而不修改现有数据。如果出现复制记录，则不强制执行键约束。

  * 应用更改

    根据关键字段更新现有记录并插入新记录。

* 数据变更处理

  信息注释此选项仅在加载设置中选中应用更改时可用。

  * 包含软删除：输入一个表达式来定义要标记为删除的记录。如果更改是软删除，则此表达式应验证为 True。

    示例： operation = 'D'

  * 创建历史数据存储（类型 2）：这将保留已更改记录的先前版本。

* 分隔列

  信息注释仅当在加载设置中选择了仅追加时，此选项才可用。

  您可以选择分区列以优化性能。

  点击添加列以添加分区列，然后选择转换，并在需要时设置参数。

* 保留管理

  分区修剪会移除超出保留期的分区。这不会物理删除数据，并且不会立即影响旧快照。旧数据可能在旧快照中可用，直到它们过期。

  信息注释仅当分区至少包含一个日期或日期时间列时显示。

  * 无分区修剪

  * 当前快照分区修剪

* 对列进行排序

  信息注释仅当在加载设置中选择了仅追加时，此选项才可用。

  您可以选择指定在 Iceberg 表的每个文件中对数据进行排序的列。在数据摄取过程中，Iceberg 使用这些列对记录进行排序。在频繁用于查询的列上定义排序键可以提高数据局部性，从而带来更快的读取性能和更高效的压缩。正确配置的排序键可确保您的数据在查询性能方面得到最佳组织。

  单击添加列以添加排序列，然后设置排序顺序。

* 快照过期时间

  此设置控制快照的保留时长，这会显著影响表大小和存储成本。对于频繁更新的表，建议缩短持续时间以帮助降低存储成本。

  信息注释输入 0 以禁用快照过期。

* 标准视图标题

  * 继承自数据任务设置

    这是默认值。如果您想仅为此数据集设置特定的标题列，请禁用此选项。

  * hdr\_\_from\_timestamp

    启用此选项后，hdr\_\_from\_timestamp 标题列将显示在标准视图中。此外，如果在载入向导中选择了 按事件摄取日期分区，则 hdr\_\_from\_timestamp 将用作默认分区列。

    信息注释无论此设置如何，历史记录视图始终包含所有标准视图标题列。