<!DOCTYPE HTML>
< html lang = "zh-hans" >
< head >
< meta charset = "UTF-8" >
< meta content = "text/html; charset=utf-8" http-equiv = "Content-Type" >
< title > 使用手册 · 调度系统-EasyScheduler< / title >
< meta http-equiv = "X-UA-Compatible" content = "IE=edge" / >
< meta name = "description" content = "" >
< meta name = "generator" content = "GitBook 3.2.3" >
< meta name = "author" content = "YIGUAN" >
< link rel = "stylesheet" href = "../gitbook/style.css" >
< link rel = "stylesheet" href = "../gitbook/gitbook-plugin-expandable-chapters/expandable-chapters.css" >
< link rel = "stylesheet" href = "../gitbook/gitbook-plugin-insert-logo-link/plugin.css" >
< link rel = "stylesheet" href = "../gitbook/gitbook-plugin-highlight/website.css" >
< link rel = "stylesheet" href = "../gitbook/gitbook-plugin-search/search.css" >
< link rel = "stylesheet" href = "../gitbook/gitbook-plugin-fontsettings/website.css" >
< link rel = "stylesheet" href = "../styles/website.css" >
< meta name = "HandheldFriendly" content = "true" / >
< meta name = "viewport" content = "width=device-width, initial-scale=1, user-scalable=no" >
< meta name = "apple-mobile-web-app-capable" content = "yes" >
< meta name = "apple-mobile-web-app-status-bar-style" content = "black" >
< link rel = "apple-touch-icon-precomposed" sizes = "152x152" href = "../gitbook/images/apple-touch-icon-precomposed-152.png" >
< link rel = "shortcut icon" href = "../gitbook/images/favicon.ico" type = "image/x-icon" >
< link rel = "next" href = "guide-manual.html" / >
< link rel = "prev" href = "guide-architecture.html" / >
< / head >
< body >
< div class = "book" >
< div class = "book-summary" >
< div id = "book-search-input" role = "search" >
< input type = "text" placeholder = "输入并搜索" / >
< / div >
< nav role = "navigation" >
< ul class = "summary" >
< li class = "chapter " data-level = "1.1" data-path = "../" >
< a href = "../" >
Easyscheduler简介
< / a >
< / li >
< li class = "chapter " data-level = "1.2" >
< span >
导读指南
< / span >
< ul class = "articles" >
< li class = "chapter " data-level = "1.2.1" data-path = "guide-architecture.html" >
< a href = "guide-architecture.html" >
系统架构分析
< / a >
< ul class = "articles" >
< li class = "chapter " data-level = "1.2.1.1" data-path = "guide-architecture.html" >
< a href = "guide-architecture.html#导语" >
导语
< / a >
< / li >
< li class = "chapter " data-level = "1.2.1.2" data-path = "guide-architecture.html" >
< a href = "guide-architecture.html#背景" >
背景
< / a >
< / li >
< li class = "chapter " data-level = "1.2.1.3" data-path = "guide-architecture.html" >
< a href = "guide-architecture.html#总架构设计" >
总架构设计
< / a >
< / li >
< li class = "chapter " data-level = "1.2.1.4" data-path = "guide-architecture.html" >
< a href = "guide-architecture.html#中心化思想" >
中心化思想
< / a >
< / li >
< li class = "chapter " data-level = "1.2.1.5" data-path = "guide-architecture.html" >
< a href = "guide-architecture.html#分布式锁实践" >
分布式锁实践
< / a >
< / li >
< li class = "chapter " data-level = "1.2.1.6" data-path = "guide-architecture.html" >
< a href = "guide-architecture.html#线程不足循环等待问题" >
线程不足循环等待问题
< / a >
< / li >
< li class = "chapter " data-level = "1.2.1.7" data-path = "guide-architecture.html" >
< a href = "guide-architecture.html#容错设计" >
容错设计
< / a >
< / li >
< li class = "chapter " data-level = "1.2.1.8" data-path = "guide-architecture.html" >
< a href = "guide-architecture.html#日志访问" >
Logback和gRPC实现日志访问
< / a >
< / li >
< li class = "chapter " data-level = "1.2.1.9" data-path = "guide-architecture.html" >
< a href = "guide-architecture.html#总结" >
总结
< / a >
< / li >
< / ul >
< / li >
< li class = "chapter active" data-level = "1.2.2" data-path = "guide-manual.html" >
< a href = "guide-manual.html" >
使用手册
< / a >
< ul class = "articles" >
< li class = "chapter " data-level = "1.2.2.1" data-path = "guide-manual.html" >
< a href = "guide-manual.html#登录" >
登录
< / a >
< / li >
< li class = "chapter " data-level = "1.2.2.2" data-path = "guide-manual.html" >
< a href = "guide-manual.html#安全中心" >
安全中心
< / a >
< / li >
< li class = "chapter " data-level = "1.2.2.3" data-path = "guide-manual.html" >
< a href = "guide-manual.html#资源中心" >
资源中心
< / a >
< / li >
< li class = "chapter " data-level = "1.2.2.4" data-path = "guide-manual.html" >
< a href = "guide-manual.html#数据源中心" >
数据源中心
< / a >
< / li >
< li class = "chapter " data-level = "1.2.2.5" data-path = "guide-manual.html" >
< a href = "guide-manual.html#项目管理" >
项目管理
< / a >
< / li >
< li class = "chapter " data-level = "1.2.2.6" data-path = "guide-manual.html" >
< a href = "guide-manual.html#首页" >
站点首页
< / a >
< / li >
< li class = "chapter " data-level = "1.2.2.7" data-path = "guide-manual.html" >
< a href = "guide-manual.html#任务依赖" >
任务依赖
< / a >
< / li >
< li class = "chapter " data-level = "1.2.2.8" data-path = "guide-manual.html" >
< a href = "guide-manual.html#系统参数" >
系统参数
< / a >
< / li >
< / ul >
< / li >
< / ul >
< / li >
< li class = "chapter " data-level = "1.3" >
< span >
项目部署文档
< / span >
< ul class = "articles" >
< li class = "chapter " data-level = "1.3.1" data-path = "deploy-foreground.html" >
< a href = "deploy-foreground.html" >
前端部署
< / a >
< ul class = "articles" >
< li class = "chapter " data-level = "1.3.1.1" data-path = "deploy-foreground.html" >
< a href = "deploy-foreground.html#前端项目环境构建及编译" >
前端项目环境构建及编译
< / a >
< / li >
< li class = "chapter " data-level = "1.3.1.2" data-path = "deploy-foreground.html" >
< a href = "deploy-foreground.html#安装及配置" >
安装及配置
< / a >
< / li >
< li class = "chapter " data-level = "1.3.1.3" data-path = "deploy-foreground.html" >
< a href = "deploy-foreground.html#项目生产环境配置" >
项目生产环境Nginx配置
< / a >
< / li >
< li class = "chapter " data-level = "1.3.1.4" data-path = "deploy-foreground.html" >
< a href = "deploy-foreground.html#前端项目发布" >
前端项目发布
< / a >
< / li >
< li class = "chapter " data-level = "1.3.1.5" data-path = "deploy-foreground.html" >
< a href = "deploy-foreground.html#问题" >
问题
< / a >
< / li >
< / ul >
< / li >
< li class = "chapter " data-level = "1.3.2" data-path = "deploy-background.html" >
< a href = "deploy-background.html" >
后端部署
< / a >
< ul class = "articles" >
< li class = "chapter " data-level = "1.3.2.1" data-path = "deploy-background.html" >
< a href = "deploy-background.html#基础软件安装" >
基础软件安装
< / a >
< / li >
< li class = "chapter " data-level = "1.3.2.2" data-path = "deploy-background.html" >
< a href = "deploy-background.html#项目编译" >
项目编译
< / a >
< / li >
< li class = "chapter " data-level = "1.3.2.3" data-path = "deploy-background.html" >
< a href = "deploy-background.html#数据库初始化" >
数据库初始化
< / a >
< / li >
< li class = "chapter " data-level = "1.3.2.4" data-path = "deploy-background.html" >
< a href = "deploy-background.html#创建部署用户" >
创建部署用户
< / a >
< / li >
< li class = "chapter " data-level = "1.3.2.5" data-path = "deploy-background.html" >
< a href = "deploy-background.html#配置文件" >
配置文件
< / a >
< ul class = "articles" >
< li class = "chapter " data-level = "1.3.2.5.1" data-path = "deploy-background.html" >
< a href = "deploy-background.html#escheduler-alert" >
escheduler-alert
< / a >
< / li >
< li class = "chapter " data-level = "1.3.2.5.2" data-path = "deploy-background.html" >
< a href = "deploy-background.html#escheduler-common" >
escheduler-common
< / a >
< / li >
< li class = "chapter " data-level = "1.3.2.5.3" data-path = "deploy-background.html" >
< a href = "deploy-background.html#escheduler-dao" >
escheduler-dao
< / a >
< / li >
< li class = "chapter " data-level = "1.3.2.5.4" data-path = "deploy-background.html" >
< a href = "deploy-background.html#escheduler-server" >
escheduler-server
< / a >
< / li >
< li class = "chapter " data-level = "1.3.2.5.5" data-path = "deploy-background.html" >
< a href = "deploy-background.html#escheduler-web" >
escheduler-web
< / a >
< / li >
< / ul >
< / li >
< li class = "chapter " data-level = "1.3.2.6" data-path = "deploy-background.html" >
< a href = "deploy-background.html#启动停止命令" >
启动停止命令
< / a >
< / li >
< li class = "chapter " data-level = "1.3.2.7" data-path = "deploy-background.html" >
< a href = "deploy-background.html#一键启停脚本" >
一键启停脚本
< / a >
< / li >
< li class = "chapter " data-level = "1.3.2.8" data-path = "deploy-background.html" >
< a href = "deploy-background.html#监控服务" >
监控服务
< / a >
< / li >
< li class = "chapter " data-level = "1.3.2.9" data-path = "deploy-background.html" >
< a href = "deploy-background.html#日志查看" >
日志查看
< / a >
< / li >
< / ul >
< / li >
< / ul >
< / li >
< li class = "chapter " data-level = "1.4" >
< span >
前端开发文档
< / span >
< ul class = "articles" >
< li class = "chapter " data-level = "1.4.1" data-path = "foreground-2.html" >
< a href = "foreground-2.html" >
安装
< / a >
< / li >
< / ul >
< / li >
< li class = "chapter " data-level = "1.5" >
< span >
后端开发文档
< / span >
< ul class = "articles" >
< li class = "chapter " data-level = "1.5.1" data-path = "background-2.html" >
< a href = "background-2.html" >
后端说明2
< / a >
< / li >
< / ul >
< / li >
< li class = "divider" > < / li >
< li >
< a href = "https://www.gitbook.com" target = "blank" class = "gitbook-link" >
本书使用 GitBook 发布
< / a >
< / li >
< / ul >
< / nav >
< / div >
< div class = "book-body" >
< div class = "body-inner" >
< div class = "book-header" role = "navigation" >
<!-- Title -->
< h1 >
< i class = "fa fa-circle-o-notch fa-spin" > < / i >
< a href = ".." > 使用手册< / a >
< / h1 >
< / div >
< div class = "page-wrapper" tabindex = "-1" role = "main" >
< div class = "page-inner" >
< div id = "book-search-results" >
< div class = "search-noresults" >
< section class = "normal markdown-section" >
< h1 id = "使用手册" > 使 用 手 册 < / h1 >
< h2 id = "登录" > 登 录 < / h2 >
< h4 id = "1输入http1921682202048888viewloginindexhtml-网址,输入用户名,密码登录-easyscheduler" > 1.输 入 < a href = "http://192.168.220.204:8888/view/login/index.html" target = "_blank" > http://192.168.220.204:8888/view/login/index.html< / a > 网 址 , 输 入 用 户 名 , 密 码 登 录 EasyScheduler< / h4 >
< p > < img src = "../images/mal_1.png" alt = "PNG" > < / p >
< h4 id = "2登录之后每个页面的右上角都有用户的身份标识。点击下拉箭头包含用户信息和退出两个按钮" > 2.登 录 之 后 每 个 页 面 的 右 上 角 都 有 用 户 的 身 份 标 识 。 点 击 下 拉 箭 头 包 含 用 户 信 息 和 退 出 两 个 按 钮 < / h4 >
< p > < img src = "../images/mal_2.png" alt = "PNG" > < / p >
< ul >
< li > < h4 id = "点击用户信息按钮,如下图:" > 点 击 “ 用 户 信 息 ” 按 钮 , 如 下 图 : < / h4 >
< img src = "../images/mal_3.png" alt = "PNG" > < / li >
< / ul >
< ul >
< li > < h4 id = "点击修改按钮,修改用户信息" > 点 击 ” 修 改 ” 按 钮 , 修 改 用 户 信 息 < / h4 >
< p > < img src = "../images/mal_4.png" alt = "PNG" > < / p >
< / li >
< li > < h4 id = "点击退出按钮则退出系统,返回登录页面" > 点 击 退 出 按 钮 则 退 出 系 统 , 返 回 登 录 页 面 < / h4 >
< / li >
< / ul >
< h2 id = "安全中心" > 安 全 中 心 < / h2 >
< blockquote >
< pre > < code > 只 有 管 理 员 才 有 安 全 中 心 , 安 全 中 心 的 主 要 功 能 是 给 管 理 员 提 供 管 理 普 通 用 户 的 功 能 。
管 理 员 可 以 有 多 个 , 管 理 员 是 功 能 上 的 管 理 , 不 参 与 具 体 的 业 务 。 也 就 是 说 管 理 员 是 不 能 执 行 具 体 任 务 的 。
< / code > < / pre > < / blockquote >
< h3 id = "租户管理" > 租 户 管 理 < / h3 >
< h4 id = "租户是linux上的用户,用于作业的提交。" > 租 户 是 Linux上 的 用 户 , 用 于 作 业 的 提 交 。 < / h4 >
< ul >
< li > < h4 id = "创建、编辑租户" > 创 建 、 编 辑 租 户 < / h4 >
< blockquote >
< p > < img src = "../images/mal_5.png" alt = "PNG" > < / p >
< h5 id = "租户编码:租户编码是linux上的用户,唯一,不能重复" > 租 户 编 码 : 租 户 编 码 是 Linux上 的 用 户 , 唯 一 , 不 能 重 复 < / h5 >
< h5 id = "租户名称:租户的名称" > 租 户 名 称 : 租 户 的 名 称 < / h5 >
< h5 id = "队列:租户对应的yarn上的队列,在数据库-teschedulerqueue-中设置" > 队 列 : 租 户 对 应 的 YARN上 的 队 列 , 在 数 据 库 t_escheduler_queue 中 设 置 < / h5 >
< h5 id = "描述:租户的描述信息" > 描 述 : 租 户 的 描 述 信 息 < / h5 >
< / blockquote >
< / li >
< / ul >
< h3 id = "用户管理" > 用 户 管 理 < / h3 >
< h4 id = "用户是easyscheduler上的用户,用于easyscheduler上的功能操作。" > 用 户 是 EasyScheduler上 的 用 户 , 用 于 EasyScheduler上 的 功 能 操 作 。 < / h4 >
< ul >
< li > < h4 id = "创建、编辑用户" > 创 建 、 编 辑 用 户 < / h4 >
< blockquote >
< p > < img src = "../images/mal_6.png" alt = "PNG" > < / p >
< h5 id = "用户名称:用户的名称,唯一,不能重复" > 用 户 名 称 : 用 户 的 名 称 , 唯 一 , 不 能 重 复 < / h5 >
< h5 id = "租户:设置该用户所属的租户" > 租 户 : 设 置 该 用 户 所 属 的 租 户 < / h5 >
< h5 id = "邮箱:输入用户的邮箱,用来邮件发送和任务告警" > 邮 箱 : 输 入 用 户 的 邮 箱 , 用 来 邮 件 发 送 和 任 务 告 警 < / h5 >
< h5 id = "手机:输入用户的手机号" > 手 机 : 输 入 用 户 的 手 机 号 < / h5 >
< h4 id = "注意:如果该用户切换了租户,则该用户所在租户下所有资源将复制到切换的新租户下" > 注 意 : 如 果 该 用 户 切 换 了 租 户 , 则 该 用 户 所 在 租 户 下 所 有 资 源 将 复 制 到 切 换 的 新 租 户 下 < / h4 >
< / blockquote >
< / li >
< / ul >
< ul >
< li > < h4 id = "授权" > 授 权 < / h4 >
< / li >
< / ul >
< h5 id = "管理员可以对普通用户进行非其创建的项目、资源、数据源和udf函数进行授权。因为项目、资源、数据源和udf函数授权方式都是一样的,所以以项目授权为例介绍。" > 管 理 员 可 以 对 普 通 用 户 进 行 非 其 创 建 的 项 目 、 资 源 、 数 据 源 和 UDF函 数 进 行 授 权 。 因 为 项 目 、 资 源 、 数 据 源 和 UDF函 数 授 权 方 式 都 是 一 样 的 , 所 以 以 项 目 授 权 为 例 介 绍 。 < / h5 >
< h4 id = "1点击指定人的授权按钮,如下图:" > 1.点 击 指 定 人 的 授 权 按 钮 , 如 下 图 : < / h4 >
< p > < img src = "../images/mal_7.png" alt = "PNG" > < / p >
< h4 id = "2选中项目按钮,进行项目授权" > 2.选 中 项 目 按 钮 , 进 行 项 目 授 权 < / h4 >
< blockquote >
< p > < img src = "../images/mal_8.png" alt = "PNG" > < / p >
< h4 id = "项目列表:是该用户未授权的项目" > 项 目 列 表 : 是 该 用 户 未 授 权 的 项 目 < / h4 >
< h4 id = "已选项目:是该用户已授权的项目。" > 已 选 项 目 : 是 该 用 户 已 授 权 的 项 目 。 < / h4 >
< h4 id = "特别注意:对于用户自己创建的项目,该用户拥有所有的权限。则项目列表和已选项目列表中不会体现。" > 特 别 注 意 : 对 于 用 户 自 己 创 建 的 项 目 , 该 用 户 拥 有 所 有 的 权 限 。 则 项 目 列 表 和 已 选 项 目 列 表 中 不 会 体 现 。 < / h4 >
< / blockquote >
< h3 id = "告警组管理" > 告 警 组 管 理 < / h3 >
< h4 id = "告警组是告警用户抽象出来的组,使用告警组来管理用户。" > 告 警 组 是 告 警 用 户 抽 象 出 来 的 组 , 使 用 告 警 组 来 管 理 用 户 。 < / h4 >
< ul >
< li > < h4 id = "新建、编辑邮件组" > 新 建 、 编 辑 邮 件 组 < / h4 >
< blockquote >
< p > < img src = "../images/mal_9.png" alt = "PNG" > < / p >
< h4 id = "组名称:输入组的名称" > 组 名 称 : 输 入 组 的 名 称 < / h4 >
< h4 id = "组类型:支持邮件短信两种" > 组 类 型 : 支 持 邮 件 /短 信 两 种 < / h4 >
< h4 id = "备注:输入告警组的备注信息" > 备 注 : 输 入 告 警 组 的 备 注 信 息 < / h4 >
< / blockquote >
< / li >
< / ul >
< ul >
< li > < h4 id = "管理用户" > 管 理 用 户 < / h4 >
< blockquote >
< p > < img src = "../images/mal_10.png" alt = "PNG" > < / p >
< h4 id = "管理用户列表:是未添加到该组的用户列表" > 管 理 用 户 列 表 : 是 未 添 加 到 该 组 的 用 户 列 表 < / h4 >
< h4 id = "已选管理用户:是已添加到该组的用户列表" > 已 选 管 理 用 户 : 是 已 添 加 到 该 组 的 用 户 列 表 < / h4 >
< / blockquote >
< / li >
< / ul >
< h3 id = "服务管理" > 服 务 管 理 < / h3 >
< h4 id = "服务管理是对easyscheduler的master、worker的任务监控" > 服 务 管 理 是 对 EasyScheduler的 Master、 Worker的 任 务 监 控 < / h4 >
< ul >
< li > < h4 id = "master" > Master< / h4 >
< img src = "../images/mal_11.png" alt = "PNG" > < / li >
< / ul >
< ul >
< li > < h4 id = "worker" > Worker< / h4 >
< img src = "../images/mal_12.png" alt = "PNG" > < / li >
< / ul >
< h2 id = "资源中心" > 资 源 中 心 < / h2 >
< blockquote >
< pre > < code > 资 源 中 心 主 要 分 为 文 件 管 理 和 UDF函 数 管 理 。
文 件 管 理 : 主 要 是 用 户 的 程 序 , 脚 本 和 配 置 文 件 需 要 上 传 到 HDFS进 行 统 一 管 理
UDF函 数 管 理 : 对 用 户 创 建 的 UDF进 行 管 理
< / code > < / pre > < / blockquote >
< h3 id = "文件管理" > 文 件 管 理 < / h3 >
< ul >
< li > < h4 id = "创建文件" > 创 建 文 件 < / h4 >
< blockquote >
< p > < img src = "../images/mal_13.png" alt = "PNG" > < / p >
< h4 id = "文件格式支持以下几种类型:txt、log、sh、conf、cfg、py、java、sql、xml、hql" > 文 件 格 式 支 持 以 下 几 种 类 型 : txt、 log、 sh、 conf、 cfg、 py、 java、 sql、 xml、 hql< / h4 >
< / blockquote >
< / li >
< / ul >
< ul >
< li > < h4 id = "上传文件" > 上 传 文 件 < / h4 >
< blockquote >
< p > < img src = "../images/mal_14.png" alt = "PNG" > < / p >
< h4 id = "文件名:输入文件的名称" > 文 件 名 : 输 入 文 件 的 名 称 < / h4 >
< h4 id = "描述:输入文件的描述信息" > 描 述 : 输 入 文 件 的 描 述 信 息 < / h4 >
< h4 id = "上传文件:点击上传按钮进行上传,将文件拖拽到上传区域,文件名会自动以上传的文件名称补全" > 上 传 文 件 : 点 击 上 传 按 钮 进 行 上 传 , 将 文 件 拖 拽 到 上 传 区 域 , 文 件 名 会 自 动 以 上 传 的 文 件 名 称 补 全 < / h4 >
< / blockquote >
< / li >
< / ul >
< ul >
< li > < h4 id = "文件查看" > 文 件 查 看 < / h4 >
< blockquote >
< h4 id = "对可查看的文件类型,点击-文件名称-可以查看文件详情" > 对 可 查 看 的 文 件 类 型 , 点 击 文 件 名 称 可 以 查 看 文 件 详 情 < / h4 >
< p > < img src = "../images/mal_15.png" alt = "PNG" > < / p >
< / blockquote >
< / li >
< / ul >
< ul >
< li > < h4 id = "下载文件" > 下 载 文 件 < / h4 >
< blockquote >
< h4 id = "可以在-文件详情-中点击右上角下载按钮下载文件,或者在文件列表后的下载按钮下载文件" > 可 以 在 文 件 详 情 中 点 击 右 上 角 下 载 按 钮 下 载 文 件 , 或 者 在 文 件 列 表 后 的 下 载 按 钮 下 载 文 件 < / h4 >
< / blockquote >
< / li >
< / ul >
< ul >
< li > < h4 id = "文件重命名" > 文 件 重 命 名 < / h4 >
< blockquote >
< p > < img src = "../images/mal_16.png" alt = "PNG" > < / p >
< / blockquote >
< / li >
< / ul >
< ul >
< li > < h4 id = "删除" > 删 除 < / h4 >
< blockquote >
< h4 id = "文件列表,点击-删除-按钮,删除文件" > 文 件 列 表 , 点 击 删 除 按 钮 , 删 除 文 件 < / h4 >
< / blockquote >
< / li >
< / ul >
< h3 id = "udf管理" > UDF管 理 < / h3 >
< h3 id = "资源管理" > 资 源 管 理 < / h3 >
< h4 id = "资源管理和文件管理功能类似,不同之处是资源管理是上传的udf函数,文件管理上传的是用户程序,脚本及配置文件" > 资 源 管 理 和 文 件 管 理 功 能 类 似 , 不 同 之 处 是 资 源 管 理 是 上 传 的 UDF函 数 , 文 件 管 理 上 传 的 是 用 户 程 序 , 脚 本 及 配 置 文 件 < / h4 >
< h3 id = "函数管理" > 函 数 管 理 < / h3 >
< ul >
< li > < h4 id = "创建、编辑udf函数" > 创 建 、 编 辑 UDF函 数 < / h4 >
< blockquote >
< p > < img src = "../images/mal_17.png" alt = "PNG" > < / p >
< h3 id = "目前只支持hive的临时udf函数" > 目 前 只 支 持 HIVE的 临 时 UDF函 数 < / h3 >
< h4 id = "udf函数名称:输入udf函数时的名称" > UDF函 数 名 称 : 输 入 UDF函 数 时 的 名 称 < / h4 >
< h4 id = "包名类名:输入udf函数的全路径" > 包 名 类 名 : 输 入 UDF函 数 的 全 路 径 < / h4 >
< h4 id = "参数:用来标注函数的输入参数" > 参 数 : 用 来 标 注 函 数 的 输 入 参 数 < / h4 >
< h4 id = "数据库名:预留字段,用于创建永久udf函数" > 数 据 库 名 : 预 留 字 段 , 用 于 创 建 永 久 UDF函 数 < / h4 >
< h4 id = "udf资源:设置创建的udf对应的资源文件" > UDF资 源 : 设 置 创 建 的 UDF对 应 的 资 源 文 件 < / h4 >
< h4 id = "使用说明:输入描述udf函数的使用" > 使 用 说 明 : 输 入 描 述 UDF函 数 的 使 用 < / h4 >
< / blockquote >
< / li >
< / ul >
< h2 id = "数据源中心" > 数 据 源 中 心 < / h2 >
< blockquote >
< pre > < code > 数 据 源 中 心 支 持 MySQL、 POSTGRESQL、 HIVE及 Spark数 据 源
< / code > < / pre > < / blockquote >
< ul >
< li > < h4 id = "创建、编辑mysql数据源" > 创 建 、 编 辑 MySQL数 据 源 < / h4 >
< blockquote >
< p > < img src = "../images/mal_18.png" alt = "PNG" > < / p >
< h4 id = "数据源:选择mysql" > 数 据 源 : 选 择 MYSQL< / h4 >
< h4 id = "数据源名称:输入数据源的名称" > 数 据 源 名 称 : 输 入 数 据 源 的 名 称 < / h4 >
< h4 id = "描述:输入数据源的描述" > 描 述 : 输 入 数 据 源 的 描 述 < / h4 >
< h4 id = "ip主机名:输入连接mysql的ip" > IP/主 机 名 : 输 入 连 接 MySQL的 IP< / h4 >
< h4 id = "端口:输入连接mysql的端口" > 端 口 : 输 入 连 接 MySQL的 端 口 < / h4 >
< h4 id = "用户名:设置连接mysql的用户名" > 用 户 名 : 设 置 连 接 MySQL的 用 户 名 < / h4 >
< h4 id = "密码:设置连接mysql的密码" > 密 码 : 设 置 连 接 MySQL的 密 码 < / h4 >
< h4 id = "数据库名:输入连接mysql的数据库名称" > 数 据 库 名 : 输 入 连 接 MySQL的 数 据 库 名 称 < / h4 >
< h4 id = "jdbc连接参数:用于mysql连接的参数设置,以json形式填写" > Jdbc连 接 参 数 : 用 于 MySQL连 接 的 参 数 设 置 , 以 JSON形 式 填 写 < / h4 >
< / blockquote >
< / li >
< / ul >
< ul >
< li > < h4 id = "创建、编辑postgresql数据源" > 创 建 、 编 辑 POSTGRESQL数 据 源 < / h4 >
< blockquote >
< p > < img src = "../images/mal_19.png" alt = "PNG" > < / p >
< h4 id = "数据源:选择postgresql" > 数 据 源 : 选 择 POSTGRESQL< / h4 >
< h4 id = "数据源名称:输入数据源的名称" > 数 据 源 名 称 : 输 入 数 据 源 的 名 称 < / h4 >
< h4 id = "描述:输入数据源的描述" > 描 述 : 输 入 数 据 源 的 描 述 < / h4 >
< h4 id = "ip主机名:输入连接postgresql的ip" > IP/主 机 名 : 输 入 连 接 POSTGRESQL的 IP< / h4 >
< h4 id = "端口:输入连接postgresql的端口" > 端 口 : 输 入 连 接 POSTGRESQL的 端 口 < / h4 >
< h4 id = "用户名:设置连接postgresql的用户名" > 用 户 名 : 设 置 连 接 POSTGRESQL的 用 户 名 < / h4 >
< h4 id = "密码:设置连接postgresql的密码" > 密 码 : 设 置 连 接 POSTGRESQL的 密 码 < / h4 >
< h4 id = "数据库名:输入连接postgresql的数据库名称" > 数 据 库 名 : 输 入 连 接 POSTGRESQL的 数 据 库 名 称 < / h4 >
< h4 id = "jdbc连接参数:用于postgresql连接的参数设置,以json形式填写" > Jdbc连 接 参 数 : 用 于 POSTGRESQL连 接 的 参 数 设 置 , 以 JSON形 式 填 写 < / h4 >
< / blockquote >
< / li >
< / ul >
< ul >
< li > < h4 id = "创建、编辑hive数据源" > 创 建 、 编 辑 HIVE数 据 源 < / h4 >
< h4 id = "1使用hiveserver2方式连接" > 1.使 用 HiveServer2方 式 连 接 < / h4 >
< blockquote >
< p > < img src = "../images/mal_20.png" alt = "PNG" > < / p >
< h4 id = "数据源:选择hive" > 数 据 源 : 选 择 HIVE< / h4 >
< h4 id = "数据源名称:输入数据源的名称" > 数 据 源 名 称 : 输 入 数 据 源 的 名 称 < / h4 >
< h4 id = "描述:输入数据源的描述" > 描 述 : 输 入 数 据 源 的 描 述 < / h4 >
< h4 id = "ip主机名:输入连接hive的ip" > IP/主 机 名 : 输 入 连 接 HIVE的 IP< / h4 >
< h4 id = "端口:输入连接hive的端口" > 端 口 : 输 入 连 接 HIVE的 端 口 < / h4 >
< h4 id = "用户名:设置连接hive的用户名" > 用 户 名 : 设 置 连 接 HIVE的 用 户 名 < / h4 >
< h4 id = "密码:设置连接hive的密码" > 密 码 : 设 置 连 接 HIVE的 密 码 < / h4 >
< h4 id = "数据库名:输入连接hive的数据库名称" > 数 据 库 名 : 输 入 连 接 HIVE的 数 据 库 名 称 < / h4 >
< h4 id = "jdbc连接参数:用于hive连接的参数设置,以json形式填写" > Jdbc连 接 参 数 : 用 于 HIVE连 接 的 参 数 设 置 , 以 JSON形 式 填 写 < / h4 >
< / blockquote >
< / li >
< / ul >
< h4 id = "2使用hiveserver2-ha-zookeeper方式连接" > 2.使 用 HiveServer2 HA Zookeeper方 式 连 接 < / h4 >
< blockquote >
< p > < img src = "../images/mal_21.png" alt = "PNG" > < / p >
< h4 id = "数据源:选择hive" > 数 据 源 : 选 择 HIVE< / h4 >
< h4 id = "数据源名称:输入数据源的名称" > 数 据 源 名 称 : 输 入 数 据 源 的 名 称 < / h4 >
< h4 id = "描述:输入数据源的描述" > 描 述 : 输 入 数 据 源 的 描 述 < / h4 >
< h4 id = "ip主机名:输入连接zookeeper的集群" > IP/主 机 名 : 输 入 连 接 Zookeeper的 集 群 < / h4 >
< h4 id = "端口:输入连接zookeeper的端口" > 端 口 : 输 入 连 接 Zookeeper的 端 口 < / h4 >
< h4 id = "用户名:设置连接hive的用户名" > 用 户 名 : 设 置 连 接 HIVE的 用 户 名 < / h4 >
< h4 id = "密码:设置连接hive的密码" > 密 码 : 设 置 连 接 HIVE的 密 码 < / h4 >
< h4 id = "数据库名:输入连接hive的数据库名称" > 数 据 库 名 : 输 入 连 接 HIVE的 数 据 库 名 称 < / h4 >
< h4 id = "jdbc连接参数:用于zookeeper连接的参数设置,以json形式填写" > Jdbc连 接 参 数 : 用 于 Zookeeper连 接 的 参 数 设 置 , 以 JSON形 式 填 写 < / h4 >
< / blockquote >
< ul >
< li > < h4 id = "创建、编辑spark数据源" > 创 建 、 编 辑 Spark数 据 源 < / h4 >
< blockquote >
< p > < img src = "../images/mal_22.png" alt = "PNG" > < / p >
< h4 id = "数据源:选择spark" > 数 据 源 : 选 择 Spark< / h4 >
< h4 id = "数据源名称:输入数据源的名称" > 数 据 源 名 称 : 输 入 数 据 源 的 名 称 < / h4 >
< h4 id = "描述:输入数据源的描述" > 描 述 : 输 入 数 据 源 的 描 述 < / h4 >
< h4 id = "ip主机名:输入连接spark的ip" > IP/主 机 名 : 输 入 连 接 Spark的 IP< / h4 >
< h4 id = "端口:输入连接spark的端口" > 端 口 : 输 入 连 接 Spark的 端 口 < / h4 >
< h4 id = "用户名:设置连接spark的用户名" > 用 户 名 : 设 置 连 接 Spark的 用 户 名 < / h4 >
< h4 id = "密码:设置连接spark的密码" > 密 码 : 设 置 连 接 Spark的 密 码 < / h4 >
< h4 id = "数据库名:输入连接spark的数据库名称" > 数 据 库 名 : 输 入 连 接 Spark的 数 据 库 名 称 < / h4 >
< h4 id = "jdbc连接参数:用于spark连接的参数设置,以json形式填写" > Jdbc连 接 参 数 : 用 于 Spark连 接 的 参 数 设 置 , 以 JSON形 式 填 写 < / h4 >
< / blockquote >
< / li >
< / ul >
< h2 id = "项目管理" > 项 目 管 理 < / h2 >
< blockquote >
< pre > < code > 项 目 是 调 度 对 用 户 流 程 定 义 DAG分 组 的 一 个 抽 象
< / code > < / pre > < / blockquote >
< ul >
< li > < h4 id = "创建、编辑项目" > 创 建 、 编 辑 项 目 < / h4 >
< blockquote >
< p > < img src = "../images/mal_23.png" alt = "PNG" > < / p >
< h4 id = "项目名称:输入项目的名称" > 项 目 名 称 : 输 入 项 目 的 名 称 < / h4 >
< h4 id = "描述:输入项目的描述" > 描 述 : 输 入 项 目 的 描 述 < / h4 >
< / blockquote >
< / li >
< / ul >
< h3 id = "项目首页" > 项 目 首 页 < / h3 >
< h4 id = "点击项目列表中的项目名称,可以跳转到指定的项目首页,如下图:" > 点 击 项 目 列 表 中 的 项 目 名 称 , 可 以 跳 转 到 指 定 的 项 目 首 页 , 如 下 图 : < / h4 >
< blockquote >
< p > < img src = "../images/mal_24.png" alt = "PNG" > < / p >
< h4 id = "项目首页其中包含四个部分,任务状态统计,流程状态统计、流程定义统计及统计的时间范围" > 项 目 首 页 其 中 包 含 四 个 部 分 , 任 务 状 态 统 计 , 流 程 状 态 统 计 、 流 程 定 义 统 计 及 统 计 的 时 间 范 围 < / h4 >
< h4 id = "任务状态统计:是指在指定时间范围内,统计任务实例中的待运行、失败、运行中、完成、成功的个数" > 任 务 状 态 统 计 : 是 指 在 指 定 时 间 范 围 内 , 统 计 任 务 实 例 中 的 待 运 行 、 失 败 、 运 行 中 、 完 成 、 成 功 的 个 数 < / h4 >
< h4 id = "流程状态统计:是指在指定时间范围内,统计流程实例中的待运行、失败、运行中、完成、成功的个数" > 流 程 状 态 统 计 : 是 指 在 指 定 时 间 范 围 内 , 统 计 流 程 实 例 中 的 待 运 行 、 失 败 、 运 行 中 、 完 成 、 成 功 的 个 数 < / h4 >
< h4 id = "流程定义统计:是统计该用户创建的流程定义及管理员授予该用户的流程定义" > 流 程 定 义 统 计 : 是 统 计 该 用 户 创 建 的 流 程 定 义 及 管 理 员 授 予 该 用 户 的 流 程 定 义 < / h4 >
< h4 id = "注意:可以点击图,或者数量跳转到相应的任务实例,流程实例和流程定义列表" > 注 意 : 可 以 点 击 图 , 或 者 数 量 跳 转 到 相 应 的 任 务 实 例 , 流 程 实 例 和 流 程 定 义 列 表 < / h4 >
< / blockquote >
< h3 id = "工作流" > 工 作 流 < / h3 >
< blockquote >
< pre > < code > 工 作 流 下 分 为 流 程 定 义 、 流 程 实 例 和 任 务 实 例 三 个 功 能 模 块
流 程 定 义 : 是 可 视 化 拖 拽 成 的 DAG的 统 称 , 它 是 静 态 的 , 没 有 状 态
流 程 实 例 : 对 流 程 定 义 的 每 次 实 例 化 会 生 成 一 个 流 程 实 例 , 是 动 态 的 , 是 有 状 态 的
任 务 实 例 : 流 程 实 例 DAG中 每 个 Task称 为 任 务 实 例 , 是 动 态 的 , 是 有 状 态 的
< / code > < / pre > < / blockquote >
< h3 id = "流程定义" > 流 程 定 义 < / h3 >
< ul >
< li > < h4 id = "创建工作流" > 创 建 工 作 流 < / h4 >
< blockquote >
< p > < img src = "../images/mal_25.png" alt = "PNG" > < / p >
< h4 id = "左侧工具栏--是目前调度支持的任务类型,当前调度支持shell、子流程、存储过程、sql、mr、spark和python七种任务类型" > 左 侧 工 具 栏 => 是 目 前 调 度 支 持 的 任 务 类 型 , 当 前 调 度 支 持 SHELL、 子 流 程 、 存 储 过 程 、 SQL、 MR、 Spark和 Python七 种 任 务 类 型 < / h4 >
< h4 id = "右上角图标--分别是拖动节点和选中项、选择线条连线、删除选中的线或节点、全屏和流程定义保持,其主要功能是dag的绘制所用" > 右 上 角 图 标 => 分 别 是 拖 动 节 点 和 选 中 项 、 选 择 线 条 连 线 、 删 除 选 中 的 线 或 节 点 、 全 屏 和 流 程 定 义 保 持 , 其 主 要 功 能 是 DAG的 绘 制 所 用 < / h4 >
< / blockquote >
< / li >
< / ul >
< ul >
< li > < h4 id = "1创建-shell节点" > 1.创 建 SHELL节 点 < / h4 >
< blockquote >
< h4 id = "拖动工具栏中的任务节点到画板中,双击任务节点,如下图:" > 拖 动 工 具 栏 中 的 < img src = "../images/mal_26.png" alt = "PNG" > 任 务 节 点 到 画 板 中 , 双 击 任 务 节 点 , 如 下 图 : < / h4 >
< p > < img src = "../images/mal_27.png" alt = "PNG" > < / p >
< h4 id = "节点名称:一个流程定义中的节点名称是唯一的" > 节 点 名 称 : 一 个 流 程 定 义 中 的 节 点 名 称 是 唯 一 的 < / h4 >
< h4 id = "运行标志:标识这个节点是否能正常调度" > 运 行 标 志 : 标 识 这 个 节 点 是 否 能 正 常 调 度 < / h4 >
< h4 id = "描述信息:描述该节点的功能" > 描 述 信 息 : 描 述 该 节 点 的 功 能 < / h4 >
< h4 id = "失败重试次数:任务失败重新提交的次数,支持下拉和手填" > 失 败 重 试 次 数 : 任 务 失 败 重 新 提 交 的 次 数 , 支 持 下 拉 和 手 填 < / h4 >
< h4 id = "失败重试间隔:任务失败重新提交任务的时间间隔,支持下拉和手填" > 失 败 重 试 间 隔 : 任 务 失 败 重 新 提 交 任 务 的 时 间 间 隔 , 支 持 下 拉 和 手 填 < / h4 >
< h4 id = "脚本:用户开发的shell程序" > 脚 本 : 用 户 开 发 的 SHELL程 序 < / h4 >
< h4 id = "资源:是指脚本中需要调用的资源文件列表" > 资 源 : 是 指 脚 本 中 需 要 调 用 的 资 源 文 件 列 表 < / h4 >
< h4 id = "自定义参数:是shell局部的用户自定义参数,会替换脚本中以变量的内容" > 自 定 义 参 数 : 是 SHELL局 部 的 用 户 自 定 义 参 数 , 会 替 换 脚 本 中 以 ${变 量 }的 内 容 < / h4 >
< h4 id = "任务依赖:请参考任务依赖讲解" > 任 务 依 赖 : 请 参 考 任 务 依 赖 讲 解 < / h4 >
< / blockquote >
< / li >
< / ul >
< ul >
< li > < h4 id = "2创建-子流程-节点" > 2.创 建 子 流 程 节 点 < / h4 >
< blockquote >
< h4 id = "拖动工具栏中的任务节点到画板中,双击任务节点,如下图:" > 拖 动 工 具 栏 中 的 < img src = "../images/mal_28.png" alt = "PNG" > 任 务 节 点 到 画 板 中 , 双 击 任 务 节 点 , 如 下 图 : < / h4 >
< p > < img src = "../images/mal_29.png" alt = "PNG" > < / p >
< h4 id = "节点名称:一个流程定义中的节点名称是唯一的" > 节 点 名 称 : 一 个 流 程 定 义 中 的 节 点 名 称 是 唯 一 的 < / h4 >
< h4 id = "运行标志:标识这个节点是否能正常调度" > 运 行 标 志 : 标 识 这 个 节 点 是 否 能 正 常 调 度 < / h4 >
< h4 id = "描述信息:描述该节点的功能" > 描 述 信 息 : 描 述 该 节 点 的 功 能 < / h4 >
< h4 id = "子节点:是选择子流程的流程定义,右上角进入该子节点可以跳转到所选子流程的流程定义" > 子 节 点 : 是 选 择 子 流 程 的 流 程 定 义 , 右 上 角 进 入 该 子 节 点 可 以 跳 转 到 所 选 子 流 程 的 流 程 定 义 < / h4 >
< h4 id = "任务依赖:请参考任务依赖讲解" > 任 务 依 赖 : 请 参 考 任 务 依 赖 讲 解 < / h4 >
< / blockquote >
< / li >
< / ul >
< ul >
< li > < h4 id = "3创建-存储过程-节点" > 3.创 建 存 储 过 程 节 点 < / h4 >
< blockquote >
< h4 id = "拖动工具栏中的任务节点到画板中,双击任务节点,如下图:" > 拖 动 工 具 栏 中 的 < img src = "../images/mal_30.png" alt = "PNG" > 任 务 节 点 到 画 板 中 , 双 击 任 务 节 点 , 如 下 图 : < / h4 >
< p > < img src = "../images/mal_31.png" alt = "PNG" > < / p >
< h4 id = "节点名称:一个流程定义中的节点名称是唯一的" > 节 点 名 称 : 一 个 流 程 定 义 中 的 节 点 名 称 是 唯 一 的 < / h4 >
< h4 id = "运行标志:标识这个节点是否能正常调度" > 运 行 标 志 : 标 识 这 个 节 点 是 否 能 正 常 调 度 < / h4 >
< h4 id = "描述信息:描述该节点的功能" > 描 述 信 息 : 描 述 该 节 点 的 功 能 < / h4 >
< h4 id = "失败重试次数:任务失败重新提交的次数,支持下拉和手填" > 失 败 重 试 次 数 : 任 务 失 败 重 新 提 交 的 次 数 , 支 持 下 拉 和 手 填 < / h4 >
< h4 id = "失败重试间隔:任务失败重新提交任务的时间间隔,支持下拉和手填" > 失 败 重 试 间 隔 : 任 务 失 败 重 新 提 交 任 务 的 时 间 间 隔 , 支 持 下 拉 和 手 填 < / h4 >
< h4 id = "数据源:存储过程的数据源类型支持mysql和postgresql两种,选择对应的数据源" > 数 据 源 : 存 储 过 程 的 数 据 源 类 型 支 持 MySQL和 POSTGRESQL两 种 , 选 择 对 应 的 数 据 源 < / h4 >
< h4 id = "方法:是存储过程的方法名称" > 方 法 : 是 存 储 过 程 的 方 法 名 称 < / h4 >
< h4 id = "自定义参数:存储过程的自定义参数类型支持in、out两种,数据类型支持varchar、integer、long、float、double、date、time、timestamp、boolean九种数据类型" > 自 定 义 参 数 : 存 储 过 程 的 自 定 义 参 数 类 型 支 持 IN、 OUT两 种 , 数 据 类 型 支 持 VARCHAR、 INTEGER、 LONG、 FLOAT、 DOUBLE、 DATE、 TIME、 TIMESTAMP、 BOOLEAN九 种 数 据 类 型 < / h4 >
< h4 id = "任务依赖:请参考任务依赖讲解" > 任 务 依 赖 : 请 参 考 任 务 依 赖 讲 解 < / h4 >
< / blockquote >
< / li >
< / ul >
< ul >
< li > < h4 id = "4创建-sql-节点" > 4.创 建 SQL 节 点 < / h4 >
< blockquote >
< h4 id = "拖动工具栏中的任务节点到画板中,双击任务节点,如下图:" > 拖 动 工 具 栏 中 的 < img src = "../images/mal_32.png" alt = "PNG" > 任 务 节 点 到 画 板 中 , 双 击 任 务 节 点 , 如 下 图 : < / h4 >
< p > < img src = "../images/mal_33.png" alt = "PNG" > < / p >
< h4 id = "节点名称:一个流程定义中的节点名称是唯一的" > 节 点 名 称 : 一 个 流 程 定 义 中 的 节 点 名 称 是 唯 一 的 < / h4 >
< h4 id = "运行标志:标识这个节点是否能正常调度" > 运 行 标 志 : 标 识 这 个 节 点 是 否 能 正 常 调 度 < / h4 >
< h4 id = "描述信息:描述该节点的功能" > 描 述 信 息 : 描 述 该 节 点 的 功 能 < / h4 >
< h4 id = "失败重试次数:任务失败重新提交的次数,支持下拉和手填" > 失 败 重 试 次 数 : 任 务 失 败 重 新 提 交 的 次 数 , 支 持 下 拉 和 手 填 < / h4 >
< h4 id = "失败重试间隔:任务失败重新提交任务的时间间隔,支持下拉和手填" > 失 败 重 试 间 隔 : 任 务 失 败 重 新 提 交 任 务 的 时 间 间 隔 , 支 持 下 拉 和 手 填 < / h4 >
< h4 id = "数据源:sql数据源支持mysql、postgresql、hive和spark四中数据源类型,选择对应的数据源" > 数 据 源 : SQL数 据 源 支 持 MySQL、 POSTGRESQL、 HIVE和 Spark四 中 数 据 源 类 型 , 选 择 对 应 的 数 据 源 < / h4 >
< h4 id = "sql类型:支持查询和非查询两种,查询是select类型的查询,是有结果集返回的,可以指定邮件通知为表格、附件或表格附件三种模板。非查询是没有结果集返回的,是针对update、delete、insert三种类型的操作" > sql类 型 : 支 持 查 询 和 非 查 询 两 种 , 查 询 是 select类 型 的 查 询 , 是 有 结 果 集 返 回 的 , 可 以 指 定 邮 件 通 知 为 表 格 、 附 件 或 表 格 附 件 三 种 模 板 。 非 查 询 是 没 有 结 果 集 返 回 的 , 是 针 对 update、 delete、 insert三 种 类 型 的 操 作 < / h4 >
< h4 id = "sql参数:输入参数格式为key1value1key2value2" > sql参 数 : 输 入 参 数 格 式 为 key1=value1;key2=value2… < / h4 >
< h4 id = "sql语句:sql语句" > sql语 句 : SQL语 句 < / h4 >
< h4 id = "udf函数:对于hive类型的数据源,可以引用资源中心中创建的udf函数其他类型的数据源暂不支持udf函数" > UDF函 数 : 对 于 HIVE类 型 的 数 据 源 , 可 以 引 用 资 源 中 心 中 创 建 的 UDF函 数 ,其 他 类 型 的 数 据 源 暂 不 支 持 UDF函 数 < / h4 >
< h4 id = "自定义参数:sql任务类型自定义参数类型和数据类型同存储过程任务类型一样。区别在于sql任务类型自定义参数会替换sql语句中变量,而存储过程是自定义参数顺序的给方法设置值" > 自 定 义 参 数 : SQL任 务 类 型 自 定 义 参 数 类 型 和 数 据 类 型 同 存 储 过 程 任 务 类 型 一 样 。 区 别 在 于 SQL任 务 类 型 自 定 义 参 数 会 替 换 sql语 句 中 ${变 量 }, 而 存 储 过 程 是 自 定 义 参 数 顺 序 的 给 方 法 设 置 值 < / h4 >
< h4 id = "任务依赖:请参考任务依赖讲解" > 任 务 依 赖 : 请 参 考 任 务 依 赖 讲 解 < / h4 >
< / blockquote >
< / li >
< / ul >
< ul >
< li > < h4 id = "4创建-mr-节点" > 4.创 建 MR 节 点 < / h4 >
< blockquote >
< h4 id = "拖动工具栏中的任务节点到画板中,双击任务节点,如下图:" > 拖 动 工 具 栏 中 的 < img src = "../images/mal_34.png" alt = "PNG" > 任 务 节 点 到 画 板 中 , 双 击 任 务 节 点 , 如 下 图 : < / h4 >
< h4 id = "1-java程序" > (1) JAVA程 序 < / h4 >
< p > < img src = "../images/mal_35.png" alt = "PNG" > < / p >
< h4 id = "节点名称:一个流程定义中的节点名称是唯一的" > 节 点 名 称 : 一 个 流 程 定 义 中 的 节 点 名 称 是 唯 一 的 < / h4 >
< h4 id = "运行标志:标识这个节点是否能正常调度" > 运 行 标 志 : 标 识 这 个 节 点 是 否 能 正 常 调 度 < / h4 >
< h4 id = "描述信息:描述该节点的功能" > 描 述 信 息 : 描 述 该 节 点 的 功 能 < / h4 >
< h4 id = "失败重试次数:任务失败重新提交的次数,支持下拉和手填" > 失 败 重 试 次 数 : 任 务 失 败 重 新 提 交 的 次 数 , 支 持 下 拉 和 手 填 < / h4 >
< h4 id = "失败重试间隔:任务失败重新提交任务的时间间隔,支持下拉和手填" > 失 败 重 试 间 隔 : 任 务 失 败 重 新 提 交 任 务 的 时 间 间 隔 , 支 持 下 拉 和 手 填 < / h4 >
< h4 id = "主函数的class:是mr程序的入口main-class的全路径" > 主 函 数 的 class: 是 MR程 序 的 入 口 Main Class的 全 路 径 < / h4 >
< h4 id = "程序类型:选择java语言" > 程 序 类 型 : 选 择 JAVA语 言 < / h4 >
< h4 id = "主jar包:是mr的jar包" > 主 jar包 : 是 MR的 jar包 < / h4 >
< h4 id = "命令行参数:是设置mr程序的输入参数,支持自定义参数变量的替换" > 命 令 行 参 数 : 是 设 置 MR程 序 的 输 入 参 数 , 支 持 自 定 义 参 数 变 量 的 替 换 < / h4 >
< h4 id = "其他参数:支持-–d、-files、-libjars、-archives格式" > 其 他 参 数 : 支 持 – D、 -files、 -libjars、 -archives格 式 < / h4 >
< h4 id = "资源:-如果其他参数中引用了资源文件,需要在资源中选择指定" > 资 源 : 如 果 其 他 参 数 中 引 用 了 资 源 文 件 , 需 要 在 资 源 中 选 择 指 定 < / h4 >
< h4 id = "自定义参数:是mr局部的用户自定义参数,会替换脚本中以变量的内容" > 自 定 义 参 数 : 是 MR局 部 的 用 户 自 定 义 参 数 , 会 替 换 脚 本 中 以 ${变 量 }的 内 容 < / h4 >
< h4 id = "任务依赖:请参考任务依赖讲解" > 任 务 依 赖 : 请 参 考 任 务 依 赖 讲 解 < / h4 >
< h4 id = "2-python程序" > (2) Python程 序 < / h4 >
< p > < img src = "../images/mal_36.png" alt = "PNG" > < / p >
< h4 id = "节点名称:一个流程定义中的节点名称是唯一的" > 节 点 名 称 : 一 个 流 程 定 义 中 的 节 点 名 称 是 唯 一 的 < / h4 >
< h4 id = "运行标志:标识这个节点是否能正常调度" > 运 行 标 志 : 标 识 这 个 节 点 是 否 能 正 常 调 度 < / h4 >
< h4 id = "描述信息:描述该节点的功能" > 描 述 信 息 : 描 述 该 节 点 的 功 能 < / h4 >
< h4 id = "失败重试次数:任务失败重新提交的次数,支持下拉和手填" > 失 败 重 试 次 数 : 任 务 失 败 重 新 提 交 的 次 数 , 支 持 下 拉 和 手 填 < / h4 >
< h4 id = "失败重试间隔:任务失败重新提交任务的时间间隔,支持下拉和手填" > 失 败 重 试 间 隔 : 任 务 失 败 重 新 提 交 任 务 的 时 间 间 隔 , 支 持 下 拉 和 手 填 < / h4 >
< h4 id = "程序类型:选择python语言" > 程 序 类 型 : 选 择 Python语 言 < / h4 >
< h4 id = "主jar包:是运行mr的python-jar包" > 主 jar包 : 是 运 行 MR的 Python jar包 < / h4 >
< h4 id = "其他参数:支持-–d、-mapper、-reducer、-input---output格式,这里可以设置用户自定义参数的输入,比如:" > 其 他 参 数 : 支 持 – D、 -mapper、 -reducer、 -input -output格 式 , 这 里 可 以 设 置 用 户 自 定 义 参 数 的 输 入 , 比 如 : < / h4 >
< h4 id = "mapper--mapperpy-1---file-mapperpy----reducer-reducerpy---file-reducerpy-–input-journeywordstxt--output-journeyoutmrcurrenttimemillis" > -mapper " mapper.py 1" -file mapper.py -reducer reducer.py -file reducer.py – input /journey/words.txt -output /journey/out/mr/${currentTimeMillis}< / h4 >
< h4 id = "其中--mapper-后的-mapperpy-1是两个参数,第一个参数是mapperpy,第二个参数是1" > 其 中 -mapper 后 的 mapper.py 1是 两 个 参 数 , 第 一 个 参 数 是 mapper.py, 第 二 个 参 数 是 1< / h4 >
< h4 id = "资源:-如果其他参数中引用了资源文件,需要在资源中选择指定" > 资 源 : 如 果 其 他 参 数 中 引 用 了 资 源 文 件 , 需 要 在 资 源 中 选 择 指 定 < / h4 >
< h4 id = "自定义参数:是mr局部的用户自定义参数,会替换脚本中以变量的内容" > 自 定 义 参 数 : 是 MR局 部 的 用 户 自 定 义 参 数 , 会 替 换 脚 本 中 以 ${变 量 }的 内 容 < / h4 >
< h4 id = "任务依赖:请参考任务依赖讲解" > 任 务 依 赖 : 请 参 考 任 务 依 赖 讲 解 < / h4 >
< / blockquote >
< / li >
< / ul >
< ul >
< li > < h4 id = "4创建-spark-节点" > 4.创 建 Spark 节 点 < / h4 >
< blockquote >
< h4 id = "拖动工具栏中的任务节点到画板中,双击任务节点,如下图:" > 拖 动 工 具 栏 中 的 < img src = "../images/mal_37.png" alt = "PNG" > 任 务 节 点 到 画 板 中 , 双 击 任 务 节 点 , 如 下 图 : < / h4 >
< p > < img src = "../images/mal_38.png" alt = "PNG" > < / p >
< h4 id = "节点名称:一个流程定义中的节点名称是唯一的" > 节 点 名 称 : 一 个 流 程 定 义 中 的 节 点 名 称 是 唯 一 的 < / h4 >
< h4 id = "运行标志:标识这个节点是否能正常调度" > 运 行 标 志 : 标 识 这 个 节 点 是 否 能 正 常 调 度 < / h4 >
< h4 id = "描述信息:描述该节点的功能" > 描 述 信 息 : 描 述 该 节 点 的 功 能 < / h4 >
< h4 id = "失败重试次数:任务失败重新提交的次数,支持下拉和手填" > 失 败 重 试 次 数 : 任 务 失 败 重 新 提 交 的 次 数 , 支 持 下 拉 和 手 填 < / h4 >
< h4 id = "失败重试间隔:任务失败重新提交任务的时间间隔,支持下拉和手填" > 失 败 重 试 间 隔 : 任 务 失 败 重 新 提 交 任 务 的 时 间 间 隔 , 支 持 下 拉 和 手 填 < / h4 >
< h4 id = "程序类型:支持java、scala和python三种语言" > 程 序 类 型 : 支 持 JAVA、 Scala和 Python三 种 语 言 < / h4 >
< h4 id = "主函数的class:是spark程序的入口main-class的全路径" > 主 函 数 的 class: 是 Spark程 序 的 入 口 Main Class的 全 路 径 < / h4 >
< h4 id = "主jar包:是spark的jar包" > 主 jar包 : 是 Spark的 jar包 < / h4 >
< h4 id = "部署方式:支持yarn-cluster、yarn-client、和local三种模式" > 部 署 方 式 : 支 持 yarn-cluster、 yarn-client、 和 local三 种 模 式 < / h4 >
< h4 id = "driver内核数:可以设置driver内核数及内存数" > Driver内 核 数 : 可 以 设 置 Driver内 核 数 及 内 存 数 < / h4 >
< h4 id = "executor数量:可以设置executor数量、executor内存数和executor内核数" > Executor数 量 : 可 以 设 置 Executor数 量 、 Executor内 存 数 和 Executor内 核 数 < / h4 >
< h4 id = "命令行参数:是设置spark程序的输入参数,支持自定义参数变量的替换。" > 命 令 行 参 数 : 是 设 置 Spark程 序 的 输 入 参 数 , 支 持 自 定 义 参 数 变 量 的 替 换 。 < / h4 >
< h4 id = "其他参数:支持---jars、--files、--archives、--conf格式" > 其 他 参 数 : 支 持 --jars、 --files、 --archives、 --conf格 式 < / h4 >
< h4 id = "资源:如果其他参数中引用了资源文件,需要在资源中选择指定" > 资 源 : 如 果 其 他 参 数 中 引 用 了 资 源 文 件 , 需 要 在 资 源 中 选 择 指 定 < / h4 >
< h4 id = "自定义参数:是mr局部的用户自定义参数,会替换脚本中以变量的内容" > 自 定 义 参 数 : 是 MR局 部 的 用 户 自 定 义 参 数 , 会 替 换 脚 本 中 以 ${变 量 }的 内 容 < / h4 >
< h4 id = "任务依赖:请参考任务依赖讲解" > 任 务 依 赖 : 请 参 考 任 务 依 赖 讲 解 < / h4 >
< h3 id = "注意:java和scala只是用来标识,没有区别,如果是python开发的spark则没有主函数的class,其他都是一样" > 注 意 : JAVA和 Scala只 是 用 来 标 识 , 没 有 区 别 , 如 果 是 Python开 发 的 Spark则 没 有 主 函 数 的 class, 其 他 都 是 一 样 < / h3 >
< / blockquote >
< / li >
< / ul >
< ul >
< li > < h4 id = "4创建-python-节点" > 4.创 建 Python 节 点 < / h4 >
< blockquote >
< h4 id = "拖动工具栏中的任务节点到画板中,双击任务节点,如下图:" > 拖 动 工 具 栏 中 的 < img src = "../images/mal_39.png" alt = "PNG" > 任 务 节 点 到 画 板 中 , 双 击 任 务 节 点 , 如 下 图 : < / h4 >
< p > < img src = "../images/mal_40.png" alt = "PNG" > < / p >
< h4 id = "节点名称:一个流程定义中的节点名称是唯一的" > 节 点 名 称 : 一 个 流 程 定 义 中 的 节 点 名 称 是 唯 一 的 < / h4 >
< h4 id = "运行标志:标识这个节点是否能正常调度" > 运 行 标 志 : 标 识 这 个 节 点 是 否 能 正 常 调 度 < / h4 >
< h4 id = "描述信息:描述该节点的功能" > 描 述 信 息 : 描 述 该 节 点 的 功 能 < / h4 >
< h4 id = "失败重试次数:任务失败重新提交的次数,支持下拉和手填" > 失 败 重 试 次 数 : 任 务 失 败 重 新 提 交 的 次 数 , 支 持 下 拉 和 手 填 < / h4 >
< h4 id = "失败重试间隔:任务失败重新提交任务的时间间隔,支持下拉和手填" > 失 败 重 试 间 隔 : 任 务 失 败 重 新 提 交 任 务 的 时 间 间 隔 , 支 持 下 拉 和 手 填 < / h4 >
< h4 id = "脚本:用户开发的python程序" > 脚 本 : 用 户 开 发 的 Python程 序 < / h4 >
< h4 id = "资源:是指脚本中需要调用的资源文件列表" > 资 源 : 是 指 脚 本 中 需 要 调 用 的 资 源 文 件 列 表 < / h4 >
< h4 id = "自定义参数:是python局部的用户自定义参数,会替换脚本中以变量的内容" > 自 定 义 参 数 : 是 Python局 部 的 用 户 自 定 义 参 数 , 会 替 换 脚 本 中 以 ${变 量 }的 内 容 < / h4 >
< h4 id = "任务依赖:请参考任务依赖讲解" > 任 务 依 赖 : 请 参 考 任 务 依 赖 讲 解 < / h4 >
< / blockquote >
< / li >
< / ul >
< ul >
< li > < h3 id = "流程定义操作" > 流 程 定 义 操 作 < / h3 >
< h4 id = "流程定义列表" > 流 程 定 义 列 表 < / h4 >
< p > < img src = "../images/mal_41.png" alt = "PNG" > < / p >
< / li >
< li > < h4 id = "1编辑保存" > 1.编 辑 /保 存 < / h4 >
< blockquote >
< h4 id = "对下线状态的流程定义,用户可对dag进行编辑" > 对 下 线 状 态 的 流 程 定 义 , 用 户 可 对 DAG进 行 编 辑 < / h4 >
< p > < img src = "../images/mal_42.png" alt = "PNG" > < / p >
< h4 id = "在保存流程定义的时候可以设置全局参数,局部参数可以使用变量的方式引用全局参数" > 在 保 存 流 程 定 义 的 时 候 可 以 设 置 全 局 参 数 , 局 部 参 数 可 以 使 用 ${变 量 }的 方 式 引 用 全 局 参 数 < / h4 >
< / blockquote >
< / li >
< / ul >
< ul >
< li > < h4 id = "2启动" > 2.启 动 < / h4 >
< blockquote >
< p > < img src = "../images/mal_43.png" alt = "PNG" > < / p >
< h4 id = "失败策略:继续是如果有失败的任务节点,其他并行的任务节点将继续执行。结束是如果有失的败节点,其他并行任的务节点将被kill掉" > 失 败 策 略 : 继 续 是 如 果 有 失 败 的 任 务 节 点 , 其 他 并 行 的 任 务 节 点 将 继 续 执 行 。 结 束 是 如 果 有 失 的 败 节 点 , 其 他 并 行 任 的 务 节 点 将 被 Kill掉 < / h4 >
< h4 id = "通知策略:都不发、成功发、失败发、成功或失败都发四种策略" > 通 知 策 略 : 都 不 发 、 成 功 发 、 失 败 发 、 成 功 或 失 败 都 发 四 种 策 略 < / h4 >
< h4 id = "通知组:是通知用户所属的组" > 通 知 组 : 是 通 知 用 户 所 属 的 组 < / h4 >
< h4 id = "收件人:邮件收件人列表" > 收 件 人 : 邮 件 收 件 人 列 表 < / h4 >
< h4 id = "抄送人:邮件抄送人列表" > 抄 送 人 : 邮 件 抄 送 人 列 表 < / h4 >
< h4 id = "补数:是对流程进行历史的补数,支持区间补数和某一天的补数,如下图:" > 补 数 : 是 对 流 程 进 行 历 史 的 补 数 , 支 持 区 间 补 数 和 某 一 天 的 补 数 , 如 下 图 : < / h4 >
< p > < img src = "../images/mal_44.png" alt = "PNG" > < / p >
< h4 id = "执行方式:补数可以以串行执行或并行执行,串行执行是流程实例列表以队列的形式逐个提交执行,并行执行是流程实例列表并发形式的提交执行" > 执 行 方 式 : 补 数 可 以 以 串 行 执 行 或 并 行 执 行 , 串 行 执 行 是 流 程 实 例 列 表 以 队 列 的 形 式 逐 个 提 交 执 行 , 并 行 执 行 是 流 程 实 例 列 表 并 发 形 式 的 提 交 执 行 < / h4 >
< h4 id = "时间:选择指定的补数时间区间,此时业务时间为补数时间,如果起始时间和结束时间相等,则为某一天的补数,否则为区间补数。关于系统参数,请参考系统参数的讲解" > 时 间 : 选 择 指 定 的 补 数 时 间 区 间 , 此 时 业 务 时 间 为 补 数 时 间 , 如 果 起 始 时 间 和 结 束 时 间 相 等 , 则 为 某 一 天 的 补 数 , 否 则 为 区 间 补 数 。 关 于 系 统 参 数 , 请 参 考 系 统 参 数 的 讲 解 < / h4 >
< / blockquote >
< / li >
< / ul >
< ul >
< li > < h4 id = "3定时" > 3.定 时 < / h4 >
< blockquote >
< h4 id = "流程定义可以设置定时,周期性的跑作业。如下图:" > 流 程 定 义 可 以 设 置 定 时 , 周 期 性 的 跑 作 业 。 如 下 图 : < / h4 >
< p > < img src = "../images/mal_45.png" alt = "PNG" > < / p >
< h4 id = "起止时间:选择该定时的有效时间范围" > 起 止 时 间 : 选 择 该 定 时 的 有 效 时 间 范 围 < / h4 >
< h4 id = "定时:可视化定时,设置相应的定时" > 定 时 : 可 视 化 定 时 , 设 置 相 应 的 定 时 < / h4 >
< p > < img src = "../images/mal_46.png" alt = "PNG" > < / p >
< h4 id = "失败策略:继续是如果有失败的任务节点,其他并行的任务节点将继续执行。结束是如果有失的败节点,其他并行任的务节点将被kill掉" > 失 败 策 略 : 继 续 是 如 果 有 失 败 的 任 务 节 点 , 其 他 并 行 的 任 务 节 点 将 继 续 执 行 。 结 束 是 如 果 有 失 的 败 节 点 , 其 他 并 行 任 的 务 节 点 将 被 Kill掉 < / h4 >
< h4 id = "通知策略:都不发、成功发、失败发、成功或失败都发四种策略" > 通 知 策 略 : 都 不 发 、 成 功 发 、 失 败 发 、 成 功 或 失 败 都 发 四 种 策 略 < / h4 >
< h4 id = "通知组:是通知用户所属的组" > 通 知 组 : 是 通 知 用 户 所 属 的 组 < / h4 >
< h4 id = "收件人:邮件收件人列表" > 收 件 人 : 邮 件 收 件 人 列 表 < / h4 >
< h4 id = "抄送人:邮件抄送人列表" > 抄 送 人 : 邮 件 抄 送 人 列 表 < / h4 >
< / blockquote >
< / li >
< / ul >
< ul >
< li > < h4 id = "4上线下线" > 4.上 线 /下 线 < / h4 >
< blockquote >
< h4 id = "流程定义有两个状态:上线和下线。只有上线的流程才能启动或调度,下线的流程用来编辑" > 流 程 定 义 有 两 个 状 态 : 上 线 和 下 线 。 只 有 上 线 的 流 程 才 能 启 动 或 调 度 , 下 线 的 流 程 用 来 编 辑 < / h4 >
< / blockquote >
< / li >
< / ul >
< ul >
< li > < h4 id = "5定时管理" > 5.定 时 管 理 < / h4 >
< blockquote >
< h4 id = "一个流程定义可以添加1个定时,定时管理是对一个流程定义上的定时的修改,只有上线的定时才是有效的定时" > 一 个 流 程 定 义 可 以 添 加 1个 定 时 , 定 时 管 理 是 对 一 个 流 程 定 义 上 的 定 时 的 修 改 , 只 有 上 线 的 定 时 才 是 有 效 的 定 时 < / h4 >
< / blockquote >
< / li >
< / ul >
< ul >
< li > < h4 id = "6指定节点启动" > 6.指 定 节 点 启 动 < / h4 >
< blockquote >
< h4 id = "对流程定义可以选择节点右击-指定节点启动,如下图:" > 对 流 程 定 义 可 以 选 择 节 点 右 击 指 定 节 点 启 动 , 如 下 图 : < / h4 >
< p > < img src = "../images/mal_47.png" alt = "PNG" > < / p >
< h4 id = "启动前可以设置若干参数,如下图:" > 启 动 前 可 以 设 置 若 干 参 数 , 如 下 图 : < / h4 >
< p > < img src = "../images/mal_48.png" alt = "PNG" > < / p >
< h4 id = "失败策略:继续是如果有失败的任务节点,其他并行的任务节点将继续执行。结束是如果有失的败节点,其他并行任的务节点将被kill掉" > 失 败 策 略 : 继 续 是 如 果 有 失 败 的 任 务 节 点 , 其 他 并 行 的 任 务 节 点 将 继 续 执 行 。 结 束 是 如 果 有 失 的 败 节 点 , 其 他 并 行 任 的 务 节 点 将 被 Kill掉 < / h4 >
< h4 id = "节点执行:节点执行模式有三种,分别为向后执行、向前执行和仅执行当前节点" > 节 点 执 行 : 节 点 执 行 模 式 有 三 种 , 分 别 为 向 后 执 行 、 向 前 执 行 和 仅 执 行 当 前 节 点 < / h4 >
< h4 id = "向后执行是从指定节点向后执行,一直到后续节点不能继续执行为止。向前执行是从开始节点到指定的节点区间执行。仅执行当前节点是只执行指定的节点" > 向 后 执 行 是 从 指 定 节 点 向 后 执 行 , 一 直 到 后 续 节 点 不 能 继 续 执 行 为 止 。 向 前 执 行 是 从 开 始 节 点 到 指 定 的 节 点 区 间 执 行 。 仅 执 行 当 前 节 点 是 只 执 行 指 定 的 节 点 < / h4 >
< h4 id = "通知策略:都不发、成功发、失败发、成功或失败都发四种策略" > 通 知 策 略 : 都 不 发 、 成 功 发 、 失 败 发 、 成 功 或 失 败 都 发 四 种 策 略 < / h4 >
< h4 id = "通知组:是通知用户所属的组" > 通 知 组 : 是 通 知 用 户 所 属 的 组 < / h4 >
< h4 id = "收件人:邮件收件人列表" > 收 件 人 : 邮 件 收 件 人 列 表 < / h4 >
< h4 id = "抄送人:邮件抄送人列表" > 抄 送 人 : 邮 件 抄 送 人 列 表 < / h4 >
< h4 id = "补数:见流程定义-启动" > 补 数 : 见 流 程 定 义 启 动 < / h4 >
< / blockquote >
< / li >
< / ul >
< ul >
< li > < h4 id = "7treeview" > 7.TreeView< / h4 >
< blockquote >
< h4 id = "用来显示某个流程定义跑过的流程实例及任务实例的状态" > 用 来 显 示 某 个 流 程 定 义 跑 过 的 流 程 实 例 及 任 务 实 例 的 状 态 < / h4 >
< p > < img src = "../images/mal_49.png" alt = "PNG" > < / p >
< h4 id = "左侧是流程定义-dag-tree的展示,非叶子节点有展开和收缩的功能。右边是流程实例的集合,每一列都是流程定义的一次调度,圆点表示的是流程实例的状态,方块表示的是任务实例的状态。如果是子流程,可以通过任务实例跳转到相应的子流程" > 左 侧 是 流 程 定 义 DAG Tree的 展 示 , 非 叶 子 节 点 有 展 开 和 收 缩 的 功 能 。 右 边 是 流 程 实 例 的 集 合 , 每 一 列 都 是 流 程 定 义 的 一 次 调 度 , 圆 点 表 示 的 是 流 程 实 例 的 状 态 , 方 块 表 示 的 是 任 务 实 例 的 状 态 。 如 果 是 子 流 程 , 可 以 通 过 任 务 实 例 跳 转 到 相 应 的 子 流 程 < / h4 >
< / blockquote >
< / li >
< / ul >
< h3 id = "流程实例" > 流 程 实 例 < / h3 >
< h4 id = "流程实例是流程定义的实例化" > 流 程 实 例 是 流 程 定 义 的 实 例 化 < / h4 >
< ul >
< li > < h4 id = "1流程实例列表" > 1.流 程 实 例 列 表 < / h4 >
< blockquote >
< p > < img src = "../images/mal_50.png" alt = "PNG" > < / p >
< / blockquote >
< / li >
< li > < h4 id = "工作流名称:是根据流程定义名称外加一个随机数" > 工 作 流 名 称 : 是 根 据 流 程 定 义 名 称 外 加 一 个 随 机 数 < / h4 >
< / li >
< li > < h4 id = "运行类型:包括启动工作流、从当前节点开始执行、恢复被容错的工作流、恢复暂停流程、从失败节点开始执行、补数、调度执行、重跑、暂停、停止、恢复等待线程的流程" > 运 行 类 型 : 包 括 启 动 工 作 流 、 从 当 前 节 点 开 始 执 行 、 恢 复 被 容 错 的 工 作 流 、 恢 复 暂 停 流 程 、 从 失 败 节 点 开 始 执 行 、 补 数 、 调 度 执 行 、 重 跑 、 暂 停 、 停 止 、 恢 复 等 待 线 程 的 流 程 < / h4 >
< / li >
< li > < h4 id = "开始时间:流程实例运行的开始时间" > 开 始 时 间 : 流 程 实 例 运 行 的 开 始 时 间 < / h4 >
< / li >
< li > < h4 id = "结束时间:流程实例运行的结束时间" > 结 束 时 间 : 流 程 实 例 运 行 的 结 束 时 间 < / h4 >
< / li >
< li > < h4 id = "运行时长秒:结束时间减去开始时间" > 运 行 时 长 (秒 ): 结 束 时 间 减 去 开 始 时 间 < / h4 >
< / li >
< li > < h4 id = "运行次数:流程实例运行的次数-,对于重跑流程实例的记录" > 运 行 次 数 : 流 程 实 例 运 行 的 次 数 , 对 于 重 跑 流 程 实 例 的 记 录 < / h4 >
< / li >
< li > < h4 id = "host:标识流程实例调度的机器ip" > host: 标 识 流 程 实 例 调 度 的 机 器 ip< / h4 >
< / li >
< li > < h4 id = "容错:流程实例是否被容错过" > 容 错 : 流 程 实 例 是 否 被 容 错 过 < / h4 >
< / li >
< li > < h4 id = "状态:流程实例最终运行的状态" > 状 态 : 流 程 实 例 最 终 运 行 的 状 态 < / h4 >
< / li >
< / ul >
< ul >
< li > < h4 id = "2编辑保存" > 2.编 辑 /保 存 < / h4 >
< blockquote >
< h4 id = "对于终态的流程实例,可以进行编辑保存。终态是流程实例最终的状态为成功、失败、暂停或停止四个状态。" > 对 于 终 态 的 流 程 实 例 , 可 以 进 行 编 辑 保 存 。 终 态 是 流 程 实 例 最 终 的 状 态 为 成 功 、 失 败 、 暂 停 或 停 止 四 个 状 态 。 < / h4 >
< p > < img src = "../images/mal_51.png" alt = "PNG" > < / p >
< h4 id = "是否更新流程定义:-如果checkbox勾选,表示流程实例的修改会更新流程定义" > 是 否 更 新 流 程 定 义 : 如 果 checkbox勾 选 , 表 示 流 程 实 例 的 修 改 会 更 新 流 程 定 义 < / h4 >
< h4 id = "如果不勾选,表示只编辑本次流程实例" > 如 果 不 勾 选 , 表 示 只 编 辑 本 次 流 程 实 例 < / h4 >
< / blockquote >
< / li >
< / ul >
< ul >
< li > < h4 id = "3重跑" > 3.重 跑 < / h4 >
< blockquote >
< h4 id = "重跑是在不生成新的流程实例情况下,重新跑任务实例" > 重 跑 是 在 不 生 成 新 的 流 程 实 例 情 况 下 , 重 新 跑 任 务 实 例 < / h4 >
< h3 id = "特别注意:重跑时系统参数已经固化了,系统参数不会随着时间改变而改变" > 特 别 注 意 : 重 跑 时 系 统 参 数 已 经 固 化 了 , 系 统 参 数 不 会 随 着 时 间 改 变 而 改 变 < / h3 >
< / blockquote >
< / li >
< / ul >
< ul >
< li > < h4 id = "4恢复失败" > 4.恢 复 失 败 < / h4 >
< blockquote >
< h4 id = "点击-恢复失败-可以让流程实例从失败节点开始重新执行" > 点 击 恢 复 失 败 可 以 让 流 程 实 例 从 失 败 节 点 开 始 重 新 执 行 < / h4 >
< / blockquote >
< / li >
< / ul >
< ul >
< li > < h4 id = "5停止" > 5.停 止 < / h4 >
< blockquote >
< h4 id = "点击-停止-将kill掉正在运行的任务节点" > 点 击 停 止 将 Kill掉 正 在 运 行 的 任 务 节 点 < / h4 >
< h3 id = "特别注意:如果任务运行周期比较短或者正好在kill任务的时候,任务已经结束了,此时将kill不掉正在运行的任务,继而会把下一个任务设置为kill状态" > 特 别 注 意 : 如 果 任 务 运 行 周 期 比 较 短 或 者 正 好 在 Kill任 务 的 时 候 , 任 务 已 经 结 束 了 , 此 时 将 Kill不 掉 正 在 运 行 的 任 务 , 继 而 会 把 下 一 个 任 务 设 置 为 Kill状 态 < / h3 >
< / blockquote >
< / li >
< / ul >
< ul >
< li > < h4 id = "6暂停" > 6.暂 停 < / h4 >
< blockquote >
< h4 id = "对-正在运行-的流程实例,点击-暂停-可以让-正在运行任务的后继节点-设置为暂停" > 对 正 在 运 行 的 流 程 实 例 , 点 击 暂 停 可 以 让 正 在 运 行 任 务 的 后 继 节 点 设 置 为 暂 停 < / h4 >
< / blockquote >
< / li >
< / ul >
< ul >
< li > < h4 id = "7恢复暂停" > 7.恢 复 暂 停 < / h4 >
< blockquote >
< h4 id = "对于-暂停-的流程实例,点击-恢复暂停-可以让流程实例从暂停位置继续执行" > 对 于 暂 停 的 流 程 实 例 , 点 击 恢 复 暂 停 可 以 让 流 程 实 例 从 暂 停 位 置 继 续 执 行 < / h4 >
< / blockquote >
< / li >
< / ul >
< ul >
< li > < h4 id = "8删除" > 8.删 除 < / h4 >
< blockquote >
< h4 id = "删除流程实例及流程实例下的任务实例" > 删 除 流 程 实 例 及 流 程 实 例 下 的 任 务 实 例 < / h4 >
< / blockquote >
< / li >
< / ul >
< ul >
< li > < h4 id = "9gantt" > 9.Gantt< / h4 >
< blockquote >
< h4 id = "gantt图纵轴是某个流程实例下的任务实例的拓扑排序,横轴是任务实例的运行时间" > Gantt图 纵 轴 是 某 个 流 程 实 例 下 的 任 务 实 例 的 拓 扑 排 序 , 横 轴 是 任 务 实 例 的 运 行 时 间 < / h4 >
< p > < img src = "../images/mal_52.png" alt = "PNG" > < / p >
< / blockquote >
< / li >
< / ul >
< ul >
< li > < h4 id = "10查看流程实例运行变量" > 10.查 看 流 程 实 例 运 行 变 量 < / h4 >
< blockquote >
< p > < img src = "../images/mal_53.png" alt = "PNG" > < / p >
< h4 id = "点击隐藏按钮,查看流程实例运行变量。如下图:" > 点 击 隐 藏 按 钮 , 查 看 流 程 实 例 运 行 变 量 。 如 下 图 : < / h4 >
< p > < img src = "../images/mal_54.png" alt = "PNG" > < / p >
< h4 id = "点击变量是对变量的复制" > 点 击 变 量 是 对 变 量 的 复 制 < / h4 >
< / blockquote >
< / li >
< / ul >
< ul >
< li > < h4 id = "11查看历史任务实例" > 11.查 看 历 史 任 务 实 例 < / h4 >
< blockquote >
< p > < img src = "../images/mal_55.png" alt = "PNG" > < / p >
< h4 id = "点击任务实例节点,点击-查看历史,可以查看该流程实例运行的该任务实例列表" > 点 击 任 务 实 例 节 点 , 点 击 查 看 历 史 , 可 以 查 看 该 流 程 实 例 运 行 的 该 任 务 实 例 列 表 < / h4 >
< / blockquote >
< / li >
< / ul >
< ul >
< li > < h4 id = "12查看日志" > 12.查 看 日 志 < / h4 >
< blockquote >
< p > < img src = "../images/mal_56.png" alt = "PNG" > < / p >
< h4 id = "点击任务实例节点,点击-查看日志,可以查看该任务实例运行的日志,如下图:" > 点 击 任 务 实 例 节 点 , 点 击 查 看 日 志 , 可 以 查 看 该 任 务 实 例 运 行 的 日 志 , 如 下 图 : < / h4 >
< p > < img src = "../images/mal_57.png" alt = "PNG" > < / p >
< h4 id = "右上角是下载日志、刷新日志和放大缩小按钮" > 右 上 角 是 下 载 日 志 、 刷 新 日 志 和 放 大 /缩 小 按 钮 < / h4 >
< h4 id = "注意:日志查看是分片的查看,上下滚动查看" > 注 意 : 日 志 查 看 是 分 片 的 查 看 , 上 下 滚 动 查 看 < / h4 >
< / blockquote >
< / li >
< / ul >
< h3 id = "任务实例" > 任 务 实 例 < / h3 >
< h4 id = "任务实例是流程实例任务节点的列表" > 任 务 实 例 是 流 程 实 例 任 务 节 点 的 列 表 < / h4 >
< blockquote >
< p > < img src = "../images/mal_58.png" alt = "PNG" > < / p >
< / blockquote >
< h4 id = "两种方式查看任务实例:" > 两 种 方 式 查 看 任 务 实 例 : < / h4 >
< ul >
< li > < h5 id = "第一种是通过流程实例任务节点-查看历史,这时查看的是此流程实例的任务实例-重跑的列表" > 第 一 种 是 通 过 流 程 实 例 任 务 节 点 查 看 历 史 , 这 时 查 看 的 是 此 流 程 实 例 的 任 务 实 例 重 跑 的 列 表 < / h5 >
< / li >
< li > < h5 id = "第二种是通过点击-流程实例-导航栏,调转到流程实例列表,这时查看的是所有流程实例的任务实例列表" > 第 二 种 是 通 过 点 击 流 程 实 例 导 航 栏 , 调 转 到 流 程 实 例 列 表 , 这 时 查 看 的 是 所 有 流 程 实 例 的 任 务 实 例 列 表 < / h5 >
< / li >
< / ul >
< blockquote >
< h4 id = "查看日志:点击-查看日志-按钮,可下载和查看日志" > 查 看 日 志 : 点 击 查 看 日 志 按 钮 , 可 下 载 和 查 看 日 志 < / h4 >
< / blockquote >
< h3 id = "任务记录" > 任 务 记 录 < / h3 >
< h4 id = "任务记录是千帆的数据稽核" > 任 务 记 录 是 千 帆 的 数 据 稽 核 < / h4 >
< blockquote >
< p > < img src = "../images/mal_59.png" alt = "PNG" > < / p >
< h4 id = "可以按照任务名称、日期、状态、原表、目标表、日期区间查询" > 可 以 按 照 任 务 名 称 、 日 期 、 状 态 、 原 表 、 目 标 表 、 日 期 区 间 查 询 < / h4 >
< / blockquote >
< h2 id = "首页" > 首 页 < / h2 >
< p > < img src = "../images/mal_60.png" alt = "PNG" > < / p >
< h4 id = "首页是对所有项目在指定时间范围内的任务状态、流程状态和流程定义的统计。" > 首 页 是 对 所 有 项 目 在 指 定 时 间 范 围 内 的 任 务 状 态 、 流 程 状 态 和 流 程 定 义 的 统 计 。 < / h4 >
< h4 id = "首页和项目首页的主要区别在于:" > 首 页 和 项 目 首 页 的 主 要 区 别 在 于 : < / h4 >
< ul >
< li > < h5 id = "首页中的图表是没有链接的,项目首页中图表是有链接的" > 首 页 中 的 图 表 是 没 有 链 接 的 , 项 目 首 页 中 图 表 是 有 链 接 的 < / h5 >
< / li >
< li > < h5 id = "首页统计的是所有的项目,项目首页统计的是某一个项目" > 首 页 统 计 的 是 所 有 的 项 目 , 项 目 首 页 统 计 的 是 某 一 个 项 目 < / h5 >
< / li >
< / ul >
< h2 id = "任务依赖" > 任 务 依 赖 < / h2 >
< h4 id = "任务依赖分为水平依赖和垂直依赖" > 任 务 依 赖 分 为 水 平 依 赖 和 垂 直 依 赖 < / h4 >
< ul >
< li > < h5 id = "水平依赖就是指dag图的有向依赖,是同一个流程实例任务节点的前驱,后继之间的依赖关系" > 水 平 依 赖 就 是 指 DAG图 的 有 向 依 赖 , 是 同 一 个 流 程 实 例 任 务 节 点 的 前 驱 , 后 继 之 间 的 依 赖 关 系 < / h5 >
< / li >
< li > < h5 id = "垂直依赖是流程实例之间的任务依赖,基于定时的依赖。垂直依赖又分为自依赖和外部依赖。" > 垂 直 依 赖 是 流 程 实 例 之 间 的 任 务 依 赖 , 基 于 定 时 的 依 赖 。 垂 直 依 赖 又 分 为 自 依 赖 和 外 部 依 赖 。 < / h5 >
< h4 id = "自依赖:是同一个流程实例的上一周期的-任务-依赖,如图:" > 自 依 赖 : 是 同 一 个 流 程 实 例 的 上 一 周 期 的 任 务 依 赖 , 如 图 : < / h4 >
< img src = "../images/mal_61.png" alt = "PNG" > < h4 id = "外部依赖:是对多个外部流程流程实例的任务实例的依赖" > 外 部 依 赖 : 是 对 多 个 外 部 流 程 流 程 实 例 的 任 务 实 例 的 依 赖 < / h4 >
< h4 id = "外部依赖策略存在依赖策略,分别有自定义、全部成功、全部失败、任一成功、任一失败" > 外 部 依 赖 策 略 存 在 依 赖 策 略 , 分 别 有 自 定 义 、 全 部 成 功 、 全 部 失 败 、 任 一 成 功 、 任 一 失 败 < / h4 >
< h4 id = "注意:自定义是可以自定义外部流程任务是成功或失败" > 注 意 : 自 定 义 是 可 以 自 定 义 外 部 流 程 任 务 是 成 功 或 失 败 < / h4 >
< h4 id = "依赖任务:" > 依 赖 任 务 : < / h4 >
< / li >
< / ul >
< p > < img src = "../images/mal_62.png" alt = "PNG" > < / p >
< blockquote >
< h4 id = "定时依赖图解:-a流程定义某任务依赖b流程定义某任务,ta-为流程定义a的定时器,tb为流程定义b的定时器,tbstart到tbend为tb的周期,周期分别支持小时、天、月" > 定 时 依 赖 图 解 : A流 程 定 义 某 任 务 依 赖 B流 程 定 义 某 任 务 , TA 为 流 程 定 义 A的 定 时 器 , TB为 流 程 定 义 B的 定 时 器 , TBStart到 TBEnd为 TB的 周 期 , 周 期 分 别 支 持 小 时 、 天 、 月 < / h4 >
< p > < img src = "../images/mal_t_1.jpg" alt = "PNG" > < / p >
< h4 id = "只有在tb到tbend区间范围内符合任务实例依赖条件的,才能依赖成功。否则依赖失败" > 只 有 在 TB到 TBEnd区 间 范 围 内 符 合 任 务 实 例 依 赖 条 件 的 , 才 能 依 赖 成 功 。 否 则 依 赖 失 败 < / h4 >
< p > < img src = "../images/mal_t_2.jpg" alt = "PNG" > < / p >
< h4 id = "只有在-tb-到-ta区间范围内符合任务实例依赖条件的,才能依赖成功。否则依赖失败" > 只 有 在 TB 到 TA区 间 范 围 内 符 合 任 务 实 例 依 赖 条 件 的 , 才 能 依 赖 成 功 。 否 则 依 赖 失 败 < / h4 >
< / blockquote >
< h2 id = "系统参数" > 系 统 参 数 < / h2 >
< ul >
< li > < h3 id = "系统参数" > 系 统 参 数 < / h3 >
< table >
< tr > < th > 变 量 < / th > < th > 含 义 < / th > < / tr >
< tr >
< td > ${system.biz.date}< / td >
< td > 日 常 调 度 实 例 定 时 的 定 时 时 间 前 一 天 , 格 式 为 yyyyMMdd, 补 数 据 时 , 该 日 期 +1< / td >
< / tr >
< tr >
< td > ${system.biz.curdate}< / td >
< td > 日 常 调 度 实 例 定 时 的 定 时 时 间 , 格 式 为 yyyyMMdd, 补 数 据 时 , 该 日 期 +1< / td >
< / tr >
< tr >
< td > ${system.datetime}< / td >
< td > 日 常 调 度 实 例 定 时 的 定 时 时 间 , 格 式 为 yyyyMMddHHmmss, 补 数 据 时 , 该 日 期 +1< / td >
< / tr >
< / table >
< / li >
< / ul >
< ul >
< li > < h3 id = "时间自定义参数" > 时 间 自 定 义 参 数 < / h3 >
< blockquote >
< h4 id = "支持代码中自定义变量名,声明方式:变量名。可以是引用-系统参数-或指定-常量。" > 支 持 代 码 中 自 定 义 变 量 名 , 声 明 方 式 : ${变 量 名 }。 可 以 是 引 用 " 系 统 参 数 " 或 指 定 " 常 量 " 。 < / h4 >
< h3 id = "注意,我们定义这种基准变量为--格式的,yyyymmddhhmmss-是可以任意分解组合的,比如:yyyymmdd-hhmmss-yyyy-mm-dd-hhmmss-等" > 注 意 , 我 们 定 义 这 种 基 准 变 量 为 $[...] 格 式 的 , $[yyyyMMddHHmmss] 是 可 以 任 意 分 解 组 合 的 , 比 如 : $[yyyyMMdd], $[HHmmss], $[yyyy-MM-dd], $[HH:mm:ss] 等 < / h3 >
< h3 id = "也可以这样:" > 也 可 以 这 样 : < / h3 >
< h4 id = "后-n-年:addmonthsyyyymmdd12n" > 后 N 年 : $[add_months(yyyyMMdd,12*N)]< / h4 >
< h4 id = "前-n-年:addmonthsyyyymmdd-12n" > 前 N 年 : $[add_months(yyyyMMdd,-12*N)]< / h4 >
< h4 id = "后-n-月:addmonthsyyyymmddn" > 后 N 月 : $[add_months(yyyyMMdd,N)]< / h4 >
< h4 id = "前-n-月:addmonthsyyyymmdd-n" > 前 N 月 : $[add_months(yyyyMMdd,-N)]< / h4 >
< h4 id = "后-n-周:yyyymmdd7n" > 后 N 周 : $[yyyyMMdd+7*N]< / h4 >
< h4 id = "前-n-周:yyyymmdd-7n" > 前 N 周 : $[yyyyMMdd-7*N]< / h4 >
< h4 id = "后-n-天:yyyymmddn" > 后 N 天 : $[yyyyMMdd+N]< / h4 >
< h4 id = "前-n-天:yyyymmdd-n" > 前 N 天 : $[yyyyMMdd-N]< / h4 >
< h4 id = "后-n-小时:hhmmssn24" > 后 N 小 时 : $[HHmmss+N/24]< / h4 >
< h4 id = "前-n-小时:hhmmss-n24" > 前 N 小 时 : $[HHmmss-N/24]< / h4 >
< h4 id = "后-n-分钟:hhmmssn2460" > 后 N 分 钟 : $[HHmmss+N/24/60]< / h4 >
< h4 id = "前-n-分钟:hhmmss-n2460" > 前 N 分 钟 : $[HHmmss-N/24/60]< / h4 >
< / blockquote >
< / li >
< / ul >
< ul >
< li > < h3 id = "用户自定义参数" > 用 户 自 定 义 参 数 < / h3 >
< h4 id = "用户自定义参数分为全局参数和局部参数。全局参数是保存流程定义和流程实例的时候传递的全局参数,全局参数可以在整个流程中的任何一个任务节点的局部参数引用。" > 用 户 自 定 义 参 数 分 为 全 局 参 数 和 局 部 参 数 。 全 局 参 数 是 保 存 流 程 定 义 和 流 程 实 例 的 时 候 传 递 的 全 局 参 数 , 全 局 参 数 可 以 在 整 个 流 程 中 的 任 何 一 个 任 务 节 点 的 局 部 参 数 引 用 。 < / h4 >
< h4 id = "例如:" > 例 如 : < / h4 >
< blockquote >
< p > < img src = "../images/mal_63.png" alt = "PNG" > < / p >
< h4 id = "ds为全局参数,引用的是系统参数。" > ds为 全 局 参 数 , 引 用 的 是 系 统 参 数 。 < / h4 >
< p > < img src = "../images/mal_64.png" alt = "PNG" > < / p >
< h4 id = "任务中partition通过ds来引用全局参数,对于脚本可以通过partition来引用变量partition的值,或通过jdbc直接将partition的值set进去" > 任 务 中 partition通 过 ${ds}来 引 用 全 局 参 数 , 对 于 脚 本 可 以 通 过 ${partition}来 引 用 变 量 partition的 值 , 或 通 过 JDBC直 接 将 partition的 值 set进 去 < / h4 >
< / blockquote >
< / li >
< / ul >
< / section >
< / div >
< div class = "search-results" >
< div class = "has-results" >
< h1 class = "search-results-title" > < span class = 'search-results-count' > < / span > results matching "< span class = 'search-query' > < / span > "< / h1 >
< ul class = "search-results-list" > < / ul >
< / div >
< div class = "no-results" >
< h1 class = "search-results-title" > No results matching "< span class = 'search-query' > < / span > "< / h1 >
< / div >
< / div >
< / div >
< / div >
< / div >
< / div >
< a href = "guide-architecture.html#总结" class = "navigation navigation-prev " aria-label = "Previous page: 总结" >
< i class = "fa fa-angle-left" > < / i >
< / a >
< a href = "guide-manual.html#登录" class = "navigation navigation-next " aria-label = "Next page: 登录" >
< i class = "fa fa-angle-right" > < / i >
< / a >
< / div >
< script >
var gitbook = gitbook || [];
gitbook.push(function() {
gitbook.page.hasChanged({"page":{"title":"使用手册","level":"1.2.2","depth":2,"next":{"title":"登录","level":"1.2.2.1","depth":3,"anchor":"#登录","path":"pages/guide-manual.md","ref":"pages/guide-manual.md#登录","articles":[]},"previous":{"title":"总结","level":"1.2.1.9","depth":3,"anchor":"#总结","path":"pages/guide-architecture.md","ref":"pages/guide-architecture.md#总结","articles":[]},"dir":"ltr"},"config":{"plugins":["expandable-chapters","insert-logo-link","livereload"],"styles":{"website":"./styles/website.css"},"pluginsConfig":{"livereload":{},"insert-logo-link":{"src":"../images/logo.png","url":"/"},"search":{},"lunr":{"maxIndexSize":1000000,"ignoreSpecialCharacters":false},"fontsettings":{"theme":"white","family":"sans","size":2},"highlight":{},"sharing":{"facebook":true,"twitter":true,"google":false,"weibo":false,"instapaper":false,"vk":false,"all":["facebook","google","twitter","weibo","instapaper"]},"theme-default":{"styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"showLevel":false},"expandable-chapters":{}},"theme":"default","author":"YIGUAN","pdf":{"pageNumbers":true,"fontSize":12,"fontFamily":"Arial","paperSize":"a4","chapterMark":"pagebreak","pageBreaksBefore":"/","margin":{"right":62,"left":62,"top":56,"bottom":56}},"structure":{"langs":"LANGS.md","readme":"README.md","glossary":"GLOSSARY.md","summary":"SUMMARY.md"},"variables":{},"title":"调度系统-EasyScheduler","language":"zh-hans","gitbook":"3.2.3","description":"调度系统"},"file":{"path":"pages/guide-manual.md","mtime":"2019-03-07T08:53:26.534Z","type":"markdown"},"gitbook":{"version":"3.2.3","time":"2019-03-07T11:30:18.635Z"},"basePath":"..","book":{"language":""}});
});
< / script >
< / div >
< script src = "../gitbook/gitbook.js" > < / script >
< script src = "../gitbook/theme.js" > < / script >
< script src = "../gitbook/gitbook-plugin-expandable-chapters/expandable-chapters.js" > < / script >
< script src = "../gitbook/gitbook-plugin-insert-logo-link/plugin.js" > < / script >
< script src = "../gitbook/gitbook-plugin-livereload/plugin.js" > < / script >
< script src = "../gitbook/gitbook-plugin-search/search-engine.js" > < / script >
< script src = "../gitbook/gitbook-plugin-search/search.js" > < / script >
< script src = "../gitbook/gitbook-plugin-lunr/lunr.min.js" > < / script >
< script src = "../gitbook/gitbook-plugin-lunr/search-lunr.js" > < / script >
< script src = "../gitbook/gitbook-plugin-sharing/buttons.js" > < / script >
< script src = "../gitbook/gitbook-plugin-fontsettings/fontsettings.js" > < / script >
< / body >
< / html >