Apache DolphinScheduler 快速入门指南:从零开始构建第一个工作流
前言
Apache DolphinScheduler 是一个分布式、易扩展的可视化工作流任务调度系统,致力于解决数据处理流程中错综复杂的依赖关系。本文将带领初学者快速上手 DolphinScheduler,通过构建一个简单的工作流来掌握其核心概念和基本操作。
环境准备
在开始之前,我们需要先部署 DolphinScheduler 环境。对于初学者,推荐以下两种快速部署方式:
- 独立模式部署:适合本地开发和测试环境,所有服务都运行在单个节点上
- Docker 部署:通过容器化方式快速启动,适合想要快速体验的用户
部署完成后,可以通过浏览器访问 DolphinScheduler 的 Web UI(默认地址为 http://localhost:12345/dolphinscheduler/ui),使用默认账号 admin/dolphinscheduler123 登录。
核心概念解析
在开始创建工作流前,我们需要理解 DolphinScheduler 中的几个关键概念:
- 用户(User):登录系统的账号,负责创建工作流、管理项目等操作
- 租户(Tenant):实际执行任务的实体,对应 Linux 系统用户
- 项目(Project):工作流的组织单元,所有工作流都必须属于某个项目
- 工作流(Workflow):由多个任务节点组成的有向无环图(DAG)
- 任务(Task):工作流中的具体执行单元,如 Shell 脚本、SQL 查询等
详细操作步骤
1. 创建租户
租户是任务的实际执行者,需要先在系统中创建:
- 登录系统后,导航至"安全中心" → "租户管理"
- 点击"创建租户"按钮
- 填写租户名称(建议使用小写字母和数字)
- 指定对应的 Linux 用户(需确保该用户在 Worker 节点上存在)
专业提示:生产环境中,建议为不同业务创建不同的租户,实现资源隔离
2. 为用户分配租户
创建租户后,需要将其分配给用户:
- 导航至"安全中心" → "用户管理"
- 找到目标用户(如 admin)
- 点击编辑按钮,在下拉菜单中选择刚创建的租户
- 保存更改
3. 创建项目
所有工作流都必须归属于某个项目:
- 点击顶部导航栏的"项目管理"
- 点击"创建项目"按钮
- 填写项目名称和描述
- 点击"提交"完成创建
4. 创建工作流
现在可以开始创建工作流了:
- 进入刚创建的项目
- 点击"工作流定义"标签页
- 点击"创建工作流"按钮
- 系统将跳转到工作流编辑页面
5. 添加任务节点
DolphinScheduler 支持多种任务类型,我们以 Shell 任务为例:
- 从左侧工具栏拖动 Shell 任务到画布
- 双击任务节点进行配置
- 填写任务名称(如"Script1")
- 在脚本框中输入 Shell 命令(如
echo "Hello DolphinScheduler"
) - 重复上述步骤创建第二个任务(如
echo "Ending..."
)
6. 设置任务依赖
工作流的核心是任务间的依赖关系:
- 将鼠标悬停在第一个任务上,会出现连接点
- 拖动连接点到第二个任务,建立依赖关系
- 点击右上角"保存"按钮
- 为工作流命名(如"MyFirstWorkflow")
7. 运行工作流
工作流创建完成后,可以立即执行:
- 返回工作流定义列表
- 找到刚创建的工作流
- 点击"上线"按钮使工作流可用
- 点击"运行"按钮启动工作流
8. 查看执行结果
工作流运行后,可以查看执行详情:
- 导航至"工作流实例"页面
- 找到正在运行的实例
- 点击实例进入详情页
- 右键任务节点,选择"查看日志"
- 确认输出内容是否符合预期
最佳实践建议
- 命名规范:为项目、工作流和任务制定统一的命名规则,便于后期维护
- 参数化设计:尽量使用变量而非硬编码,提高工作流复用性
- 错误处理:为关键任务配置失败告警和重试机制
- 版本控制:定期导出工作流定义,纳入版本管理系统
- 资源规划:根据任务特点合理设置资源配额,避免资源争抢
总结
通过本教程,您已经掌握了 DolphinScheduler 的基本操作流程。从租户管理到工作流执行,每个步骤都体现了 DolphinScheduler 的设计理念:简单易用但功能强大。建议新手在掌握基础操作后,进一步探索定时调度、参数传递、跨项目依赖等高级功能,逐步构建更复杂的数据处理流程。
DolphinScheduler 的强大之处在于其可视化操作界面和丰富的任务类型支持,能够满足从简单到复杂的各种调度需求。希望本指南能帮助您快速上手,在实际工作中发挥其最大价值。
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考