kettle导入树形结构数据

应用场景

获取数据的接口传入父节点的id,返回直属的子节点列表,通过广度优先遍历一棵树。

工作原理

使用数据库存放数据,利用作业进行循环遍历数据。 数据库存放节点数据,节点数据包括节点id、父节点id、是否为父节点、是否已经同步以及其它节点数据

字段 名称 id 树形id pid 树形pid isParent 是否为父节点 sync 是否已同步 … 其它数据

工作流程

  1. 创建一个转换 读取数据表中未同步过的分组节点,请求每个父节点的子节点列表,获取到后更新父节点的同步状态; 然后解析子节点列表,入库。
  2. 创建一个作业

在转换步骤后添加一个“ 计算表中记录数” 的kettle对象 读出表中未同步数据行数判断,如果存在未同步的父节点则返回转换步骤,否则结束

经验分享 程序员 微信小程序 职场和发展