1.开发工作台简介
基本上分为左侧菜单和右侧主界面。点击菜单时,右侧弹出tab页,和普通的管理系统没有太大的差别。
左侧菜单包括以下内容:
- 数据开发:当任务需要日常自动调度时,可以建工作流节点。数据开发tab就是设计工作流的各种任务包括 工作流节点、函数。各种任务类型实例请看 "工作流节点例子"
- 模型设计:主要是数据流设计模块,一般是提供架构师进行模型ER图设计。激活该tab,点击红色“+”图标新建数据流,详细请看模型设计。
- 临时查询:主要是跑临时查询job的tab,临时查询文件不能发布到生产环境。激活该tab,点击红色“+”图标新建临时查询文件。
- 手动任务:主要建一次性任务。当前只支持odps sql类型任务,可发到生产环境,完全靠手动促发的任务,不会自动调度。激活该tab,点击红色“+”图标新建手动任务,编辑好代码和配置,提交发布到生产环境,然后运维工作台里到“手动节点”tab进行手动操作运行。
- 找数据:meta的缩化版,搜索查看元数据列表。
- 表管理:可视化模型建表管理,可视化建表,详情请查看表管理
- 函数列表:odps内置函数列表。
- 数据服务: 已经订购并拥有权限的数据服务列表。
- 回收站:右键删除任务后,会进入回收站,可以在回收站里恢复,但是恢复的前提是删除的任务也已经发布到生产环境然后再来恢复,恢复的文件需要提交生成新的id再走发布管理发布任务。
操作方法基本上是激活tab页,点击左上方“+”号进行操作,当然,也可点击右键进行操作。
右侧主工作区常用功能如下:
-
工具栏:新建任务后右边编辑区每个任务一个页签打开,顶部是工具栏,常用工具:
-
保存:保存节点代码和配置,相当于svn保存本地。
-
提交:提交任务到调度开发服务,相当于svn提交,提交后文件是当前用户锁定,同时会生成一个版本,首次提交后会生成版本1同时给任务一个唯一的任务id号。可在目录栏对任务右键“查看历史版本”看任务有多少个版本。
-
注意:提交是指提交到调度开发环境,任务需要提到生产环境必须是先提交到开发环境在走发布管理发布到生产环境。
-
提交并解锁:与上面的“提交功能”基本一致,不一样的是提交后非当前用户锁定状态而是可编辑状态。
-
运行:运行当前节点代码,也可以选择当前节点里部分代码运行。
-
高级运行:运行当前节点代码,当前节点代码里有变量时,高级运行会每次弹框让用户自己填写变量值。
-
终止:kill掉正在运行的job。
-
在开发环境测试:任务提交后可以在调度开发环境调试,这个功能即会运行一次这个任务调试代码+节点配置。
-
前往开发环境的调度系统:进入调度的开发环境界面,可以看节点工作流图。
-
编辑区域:主要是任务代码,调度配置的编辑,节点血缘和版本查看。
-
代码,节点代码编辑,各种代码语法各自参考对应的语法。
-
调度,节点的调度配置,一个工作流节点需要什么时候执行,需要依赖什么上游,调度内置时间参数等包括基本属性、时间属性、调度依赖、调度内置时间参数列表
-
血缘,查看该节点血缘关系,包括数据血缘(内部血缘图)和调度血缘(依赖关系图)。
-
版本,查看节点版本。节点提交成功一次生成一个版本,与左边目录上对任务右键“查看历史版本”功能一样。
-
2.工作流节点
《1》ODPS SQL
ODPS SQL适用于海量数据(TB级别)。实时性要求不高的场合,他的每个作业的准备,提交等阶段要花费较长时间,因此每秒处理成千上万比事务的业务是不能用ODPS SQL完成的。
配置ODPS SQL类型的任务大概有这些步骤:①建立节点->②编辑节点代码->③节点配置->④提交到开发环境->⑤调试->⑥发布到生产环境。
《2》同步数据
它的作用是:提供数据从公网、阿里云内网等不同网络环境与BASE实例数据存储间的高速数据传输能力。
配置步骤与ODPS SQL基本上一致。区别是它不提供开发调试功能,只能上线运行。
同步方式包括
- 跨平台导入:从外部导入数据到官方数据源
- 平台内同步:官方数据源之间数据同步
- 跨平台导出:从官方数据源导出数据
《3》虚拟节点
基本上和ODPS SQL一模一样,只是为了方便管理和结构清晰。类似于狗、猫、鼠需要一个动物来连接它们,这个动物就是虚拟节点。
3.表管理
主要有以下注意点:
①类型分为(按照表名下标):
◇ 上传表 - 通过数据同步工具上传到ODPS中的表。在数据同步中上传任务可以选择,不可以导出,仅可用于数据计算。
◇ 临时表 - 数据处理过程的临时表,系统会不定期进行清理。不保证数据的存储周期。
◇ 结果表 - 数据处理后需要持久化的数据表。可以用来导出,也可以持久保存(依赖生命周期)
②字段类型只支持四种:string、bigint、double、datetime。
③默认增加dt字段用于分区
4.发布管理
任务(包括工作流节点、函数)新增,修改需要发布到生产环境,必须走发布管理发布。
任务发布前提条件:任务必须是提交有新版本(未发布到生产环境)。