Skip to content

项目简介

OpenDataWorks 是一款面向现代数据仓库及湖仓一体架构的一站式智能数据工作台。它深度整合了元数据管理、可视化工作流编排、数据血缘分析与智能问数(NL2SQL),致力于打破技术人员与业务人员之间的数据壁垒,降低数据治理与分析的门槛。


1. 为什么选择 OpenDataWorks?

在传统的数据治理和开发流程中,元数据维护滞后、工作流调度复杂、血缘追溯困难,业务人员更是难以直接从数据仓库中获取所需信息。OpenDataWorks 针对这些痛点,提供了开箱即用的闭环解决方案:

  • 智能问数 (Natural Language to SQL):业务人员只需通过中文日常对话提问(如“统计最近30天交易额趋势”),系统便能自动理解意图、生成 SQL、安全执行查询,并自动推荐并生成折线图、柱状图或表格。
  • 业务元数据与物理表双向绑定:提供可视化的「表设计器」,支持直接在界面上设计表结构并自动同步更新底层数据库(如 Apache Doris)的物理结构,实现元数据与生产环境实时一致。
  • 安全稳定的工作流发布审批:集成了 Apache DolphinScheduler 的成熟调度能力,并在此基础上提供了类似 Git 的“草稿-发布差异预览-经理审批-上线运行”安全协同链路,支持多版本比对与一键回滚。
  • 自动化全局数据血缘:系统通过 SQL 任务的输入输出定义自动解析并构建全链路表级数据血缘图谱,支持快速的影响分析(修改表结构时评估下游影响)与数据溯源。

2. 核心模块与功能图谱

OpenDataWorks 的核心功能分为以下四大支柱:

                    ┌────────────────────────┐
                    │      OpenDataWorks     │
                    └───────────┬────────────┘

      ┌──────────────────┬──────┴───────────┬──────────────────┐
      ▼                  ▼                  ▼                  ▼
┌───────────┐      ┌───────────┐      ┌───────────┐      ┌───────────┐
│ 元数据管理 │      │ 工作流编排 │      │ 数据血缘  │      │ 智能问数  │
└─────┬─────┘      └─────┬─────┘      └─────┬─────┘      └─────┬─────┘
      ├─ 可视化设计器      ├─ 可视化DAG连线     ├─ 表级血缘拓扑      ├─ 自然语言多轮对话
      ├─ 物理结构同步      ├─ 多版本管理/回滚    ├─ 追溯深度控制      ├─ 自愈式SQL纠错
      └─ 回收站生命周期    └─ 历史区间补数据    └─ 多维过滤检索      └─ ECharts智能推荐

3. 技术栈简介

项目采用现代化主流开发技术栈构建,以保证系统的高效运行与容器化一键部署:

  • 前端 Web 应用:基于 Vue 3ViteElement Plus 库构建,并集成 ECharts 实现大盘指标与血缘图谱的可视化展示。
  • 主后端服务:基于 Java 8Spring BootMyBatis-PlusMySQL 8,集成了 Flyway 表结构版本管理及 Apache DolphinScheduler API 客户端。
  • 智能查询 DataAgent:基于 PythonFastAPIClaude Agent SDK 构建,通过 Redis 队列处理异步长查询,并使用 SSE (Server-Sent Events) 技术流式推送思考路径和结果。

基于 GPL-3.0 许可发布