全部文档
文档中心数据流3.0场景案例0505-批量删除数据流实例

0505-批量删除数据流实例

DEMO:打开主流程 · 打开子流程

测试、迁移或高频运行的数据流会产生大量历史实例。如果这些实例已经不再需要保留,逐个删除效率很低,因此需要按明确的元素范围和实例状态批量清理。

删除实例会同时移除运行监控和审计记录,但不会回滚实例已经写入数据库、文件或外部系统的数据,因此只能用于已经确认可以清理的实例。

主流程负责查询需要清理实例的数据流元素,并把每个元素的编码和文件夹 ID 作为子流程启动参数;子流程负责查询该元素的实例 ID,在有数据时调用删除接口。

Copy
主流程:查询目标元素 → 组装 element_code / folder_id → 批量调用子流程
子流程:查询实例 ID → 判断是否为空 → 调用删除接口
  1. 确定允许清理的元素范围

    主流程从 SystemElement 查询目标数据流,输出 element_codefolder_id。业务使用时应配置明确的元素白名单,避免清理范围扩大。

  2. 批量调用删除子流程

    数据流节点使用批量模式调用 demo0505_Sub,每条元素记录启动一个子实例。主流程当前已正确关联 0505 的删除子流程。

  3. 查询可删除实例

    子流程使用 Pipeline.params.element_codePipeline.params.folder_id 调用 /monitor/runs,并通过响应转换只保留 runId。实际项目必须按保留策略限制状态、时间和触发方式;实例超过单页上限时需要分页处理。

  4. 判断并删除

    runId 列表非空时调用 /run/delete;为空时直接结束。建议先生成待删除清单并确认,再执行删除。

配置完成后,主流程会按目标元素分别创建删除子实例,符合条件的流程实例将从监控列表中移除,范围外的元素和实例保持不变。

回到顶部

咨询热线

400-821-9199