系统架构
1 整体架构¶

2 组件说明¶
- Frontend: DataEase 的前端工程, 基于 Vue.js 进行开发;
- Backend: DataEase 的后端工程, 基于 Spring Boot 进行开发, 为 DataEase 的功能主体;
- 元数据库: DataEase 项目的主要数据存储。安装器默认使用内置 MySQL,也可将元数据库部署到 MySQL、GreatSQL、达梦、KingbaseES、Oracle、PostgreSQL、SQL Server;
- Apache Calcite: 用于对各个数据源做 SQL 方面的统一处理;
- Apache Apisix: API 网关,用来处理路由、认证、IP 访问限制等;
- Quartz: 定时任务调度框架,任务状态持久化于元数据库。
各个组件间的关系可参考下图

3 关键术语¶
DataEase 中有一些基本概念,下面是这些基本概念的说明:
- 数据源: 用来管理各类数据源连接信息,是后续数据分析操作中数据的来源;
- 数据集: 数据的集合,可以是数据表、Excel 表等具体的数据集合,是可视化图形展示的数据来源;
- 图表: 可视化展示的最小单元,是组成仪表板或数据大屏的基本元素,可以是折线图、柱状图、饼状图等可视化图形;
- 仪表板: 通过可视化效果展示具体数据常见的图形面板,倾向于快速创建及交互操作;
- 数据大屏: 通过可视化效果展示具体数据常见的图形面板,更倾向展示效果;
- 电子表格: 类 Excel 表格分析载体,支持绑定数据集自动填充数据,具备公式计算、自由排版能力,可实现中国式复杂报表,兼顾数据展示与轻量分析;
- 数据填报: 企业级数据采集模块,支持可视化制作填报表单,填报数据可直接回写数据库,具备数据校验、批量录入与移动端填报能力;
- 组件: 仪表板或数据大屏中各种元素的统称,例如图表组件、图片组件、筛选组件等。
4 技术栈¶
- 后端:Spring Boot、Spring Data JPA/Hibernate
- 前端:Vue.js、Element
- 图库: Antv
- 元数据库:MySQL、GreatSQL、达梦、KingbaseES、Oracle、PostgreSQL、SQL Server
- 数据处理:Apache Calcite、Apache SeaTunnel
- 调度框架:Quartz
- 基础设施:Docker