🔥🔥 AllData大数据产品是可定义数据中台,以数据平台为底座,以数据中台为桥梁,以机器学习平台为中层框架,以大模型应用为上游产品,提供全链路数字化解决方案。
✨杭州奥零数据科技官网:http://www.aolingdata.com
✨AllData开源项目:https://github.com/alldatacenter/alldata
✨Gitee组织:https://gitee.com/alldatacenter
摘要:离线开发平台基于开源项目DolphinScheduler建设,一个功能强大的分布式任务调度平台,支持复杂工作流编排、任务监控与告警,适用于离线数据处理场景。文章内容主要为以下五部分:
一、在线演示环境
二、功能简介
三、源码编译部署安装
四、访问离线开发平台页面
五、常见问题与解决方案
💡Tips:关注「公众号」大数据商业驱动引擎
🔹AllData数据中台线上正式环境:http://43.138.156.44:5173/ui_moat/
请联系市场总监获取账号密码
2.1 离线开发平台基于开源项目DolphinSchduler建设
🔹可视化操作
提供直观的可视化界面,用户通过简单的拖拽和配置操作,就能轻松创建复杂的工作流任务,无需编写大量代码,降低了使用门槛,提高了工作效率。
🔹任务调度与依赖
支持多种任务类型,如 Shell、SQL、Python 等,能满足不同数据处理场景的需求。可灵活设置任务之间的依赖关系,确保任务按照预定顺序执行,有效处理复杂的数据处理流程。
🔹资源管理
能够对计算资源进行统一管理和分配,根据任务的资源需求合理调度,提高资源利用率,避免资源浪费。
🔹监控与告警
实时监控任务的执行状态,包括任务进度、运行时长、资源使用情况等。当任务出现异常时,能及时发出告警通知,方便运维人员快速响应和处理问题,保障数据处理的稳定性和可靠性。
🔹多租户支持
支持多租户模式,不同租户可以在同一个平台上独立进行任务开发和管理,实现资源隔离和权限控制,满足企业内不同部门或团队的使用需求。
🔹DolphinScheduler开源项目:https://github.com/apache/DolphinScheduler
🔹文档地址:
https://dolphinscheduler.apache.org/zh-cn/docs/3.2.1/guide/homepage
2.2 离线开发平台功能特点:
- 分布式易扩展架构
- 可视化DAG工作流编排
- 多租户与权限管理
- 任务类型丰富
- 高可靠性与容错机制
- 灵活的调度策略
- 任务状态监控与日志
- 数据源集成能力
- 版本控制与状态管理
- 生态兼容性
💡部署步骤:
3.1 环境准备
🔹操作系统要求:
支持 Linux 或 macOS 系统(推荐使用 Ubuntu/CentOS 或 macOS)。确保系统已安装基础依赖工具(如 git、curl、wget 等)。
🔹Java环境:
安装 JDK 1.8 或更高版本(推荐使用 JDK 11)。
配置环境变量JAVA_HOME,并将$JAVA_HOME/bin添加到PATH。
验证安装:java -version
🔹Maven 环境:
安装 Maven 3.6 或更高版本。
配置环境变量MAVEN_HOME,并将$MAVEN_HOME/bin添加到PATH。
验证安装:mvn -v
🔹数据库:
支持 MySQL或 PostgreSQL。
创建数据库用户并授予权限,例如:
🔹其他依赖:
确保系统已安装 Node.js(用于前端构建,可选)。
确保系统已安装 Python(用于部分脚本执行,可选)。
3.2 源码编译部署获取安装包dat
3.3 编译构建 --编译后端代码:
进入项目根目录,执行以下命令进行编译:
编译完成后,生成的二进制包位于 dolphinscheduler-assembly/target 目录下,例如:
–编译前端代码(可选):
如果需要修改前端界面,可以编译前端代码
编译完成后,前端静态文件会生成到 ui_ds/ui_ds 目录。
–选择JDK8
3.4 源码打包 --Maven Clean
–Maven Package
–获取安装包dolphinscheduler-install.tar.gz
–操作流程说明:
3.5 部署与安装
🔹解压二进制包
将编译生成的二进制包解压到部署目录:
🔹配置数据库
修改数据库配置文件 conf/application.yaml,例如:
🔹配置Zookeeper
修改 ZooKeeper 配置文件 conf/zookeeper.properties,例如:
🔹配置Zookeeper
修改 ZooKeeper 配置文件 conf/zookeeper.properties,例如:
🔹初始化数据库
执行数据库初始化脚本
脚本会自动执行 dolphinscheduler-dao/src/main/resources/sql 目录下的 SQL 文件。
🔹启动服务
启动Zookeeper(如果尚未启动):
启动DolphinScheduler服务:
验证服务是否启动成功:
🔹访问Web界面
4.1 功能概览
4.2 项目管理
4.3 进入工作流页面
🔹拖动Shell节点
配置节点名称:mysql1
配置运行标志:正常
任务优先级:MEDIUM
Worker分组:DS-Worker
配置脚本:
🔹启动工作流
填写HTTP请求的URL、请求方法(如GET、POST)、请求头、请求体等信息。这些参数将用于向HTTP服务发送请求并获取数据。
🔹拖动第2个Shell节点
配置节点名称:mysql2
配置运行标志:正常
任务优先级:MEDIUM
Worker分组:DS-Worker
前置任务:Mysql1
配置脚本:
🔹拖动第3个Shell节点
配置节点名称:mysql3
配置运行标志:正常
任务优先级:MEDIUM
Worker分组:DS-Worker
前置任务:Mysql2
配置脚本:
4.4 启动工作流
4.5 查看工作流实例
4.6 查看任务实例
4.7 任务执行结果日志
4.8 项目管理-新建项目
4.9 文件管理-创建文件夹
4.10 文件管理-创建文件
4.11 文件管理-上传文件
4.12 资源管理-创建文件夹
4.13 资源管理-上传UDF资源
4.14 函数管理-UDF函数
4.15 函数管理-创建UDF函数
4.16 任务组管理-任务组配置
4.17 任务组配置-创建任务组
4.18 任务组配置-编辑任务组
4.19 任务组管理-任务组队列
4.20 数据质量-任务结果
4.21 数据质量-规则管理
4.22 源中心
4.23 源中心-创建源
4.24 源中心-创建源-创建数据源
4.25 监控中心-服务管理-Mastre
4.26 监控中心-服务管理-Worker
4.27 监控中心-服务管理-Alert Server
4.28 监控中心-服务管理-DB
4.29 监控中心-统计管理-Statistics
4.30 监控中心-统计管理-审计日报
4.31 安全中心-租户管理
4.32 安全中心-租户管理-创建租户
4.33 安全中心-用户管理
4.34 安全中心-用户管理-创建用户
4.35 安全中心-告警组管理
4.36 安全中心-告警组管理-创建告警组
4.37 安全中心-告警实例管理
4.38 安全中心-告警实例管理-创建告警实例
4.39 安全中心-Worker分组管理
4.40 安全中心-Worker分组管理-创建Worker分组
4.41 安全中心-Yar队列管理-创建队列
4.42 安全中心-Yar队列管理
4.43 安全中心-环境管理
4.44 安全中心-环境管理-创建环境
4.45 安全中心-集群管理
4.46 安全中心-集群管理-创建集群
4.47 安全中心-K8S命名空间管理
4.48 安全中心-K8S命名空间管理-创建命名空间
4.49 安全中心-令牌管理
4.47 安全中心-令牌管理-创建令牌
5.1 编译失败
- 确保 Maven 版本符合要求(3.6+)。
- 确保网络环境良好(可能需要配置 Maven 镜像)。
- 如果遇到依赖冲突,可以尝试清理本地 Maven 仓库:
5.2 数据库连接失败:
- 检查数据库配置是否正确。
- 确保数据库服务已启动,并且用户权限配置正确。
- 检查防火墙是否放行了数据库端口(默认 3306)。
5.3 ZooKeeper连接失败:
- 检查 ZooKeeper 服务是否已启动。
- 检查 ZooKeeper 配置是否正确。
- 检查防火墙是否放行了 ZooKeeper 端口(默认 2181)。
5.4 服务启动失败:
- 检查日志文件 logs/dolphinscheduler-*.log 获取详细错误信息。
- 确保系统资源充足(内存、CPU 等)。
- 确保端口未被占用(默认端口:12345、25333、50050 等)。