Skip to content
运维指南/数据血缘和数据运维问题/数据血缘和数据运维问题 - 排查与解决手册

数据血缘和数据运维问题 - 排查与解决手册

1. 数据血缘完全不显示

现象:在“作业流关联分析”页面看不到任何血缘关系,作业流已提交调度但血缘图为空。

解决步骤

  1. 检查 Neo4j 服务状态

    • 访问 http://<neo4j-ip>:7474,确认能打开 Neo4j 管理界面。若无法访问,启动 Neo4j 服务。
  2. 验证 DWS 配置

    • 打开 DWS 配置文件(如 application-dws.yml),确认 neo4j 连接信息(地址、账号、密码)正确。

    • 重启 DWS 服务,观察日志是否有 Neo4j 连接报错。

  3. 授权“作业流关联分析”菜单

    • 登录应用中心,进入“业务对象管理”,找到“作业流关联分析”。

    • 为相关角色(如数据开发人员)勾选查看权限,保存。

  4. 确认作业已提交到调度

    • 在“作业调度”中查看该作业流是否有实例。若没有,返回 IDE 重新提交作业流并上线。
  5. 清除浏览器缓存

    • F12 打开开发者工具,右键刷新按钮选择“清空缓存并硬加载”,或使用无痕模式重新登录。

2. 血缘显示不全(仅部分表/字段)

现象:一个作业流中有多个 SQL,但只识别了第一条 SQL;或识别出的表少于实际使用的表。

解决步骤

  1. 检查 SQL 是否使用 *

    • 找到对应作业,将 SELECT * 改为明确字段列表(如 SELECT id, name),保存并提交作业流。
  2. 重新提交作业流

    • 在 IDE 中对修改后的作业流执行“保存” → “提交” → 在“作业调度”中重新上线。
  3. 拆分多个 SQL

    • 若一个作业中包含多个独立的 SQL 语句,建议拆分为多个转换,并在编排作业中按顺序连接,重新提交。
  4. 验证数据源权限

    • 确认数据库账号有查询表结构的权限,可手动在 SQL 客户端测试。

3. 多套环境共用 Neo4j 导致血缘混乱

现象:多套环境(开发、测试、生产)共用同一个 Neo4j 实例,血缘数据交叉,显示错误。

解决步骤

  1. 准备独立 Neo4j 实例

    • 为每个环境单独安装 Neo4j,确保数据库独立。
  2. 修改 DWS 配置

    • 每个环境修改 application-dws.yml 中的 Neo4j 连接地址,指向对应的独立实例,重启 DWS。
  3. 迁移/清理数据

    • 若已共用,参考 2 重新配置新的neo4j,重新提交作业到调度。

4. 运维中心资源统计与实际不符

现象:数据运维界面显示的数据源/作业数量少于项目配置中的数量。

原因:统计只计入已提交到调度的资源。

解决步骤

  1. 确认资源是否已提交

    • 进入“作业调度”页面,查看对应作业流是否有运行实例。若无,返回 IDE 提交作业流。
  2. 核对统计逻辑(无需操作)

    • 若需手动核对,可查询 Dolphin 数据库:
      sql
      -- 统计某项目已关联的数据源
      SELECT DISTINCT datasource_codes FROM t_ds_task_relation_info WHERE project_code = '项目编码';
  3. 若需全部展示,提交所有作业流

    • 将所有开发完成的作业流提交到调度,统计会自动更新。

附录:关键配置与命令速查

  • Neo4j 启动/path/neo4j/bin/neo4j start
  • DWS 配置路径dws/config/DWS/config/application-dws.yml
  • 白名单文件dws/config/DWS/config/user-config.xml
  • Dolphin 统计表t_ds_task_relation_info