DataIDE

ACA课程学习笔记(7)

基本概念

  • 任务(Task):对数据执行的操作。通常输入输出都是数据表。主要分三种:节点任务,工作流任务(多个节点,互相依赖),内部节点。
  • 实例(Instance):某个任务在某个时刻的快照。包含运行时间,状态,日志等信息。任务经过调度,手动触发后生成一个实例。与MaxCompute不同的是,自动调度的任务会提前生成实例。
  • 提交(Submit):开发的节点任务·工作流任务从开发环境发布到调度环境。一旦提交,代码和相应配置合并到调度系统,任务进入调度序列

角色

开发-发布权限管理存在一个任务解耦,避免同一个角色能开发并发布,降低风险

角色 MaxCompute角色 权限
项目管理员 role_project_admin 所有权限
开发 role_project_dev 创建任务·表·脚本·发布包,但是不能执行发布操作
运维 role_prject_pe 权限由管理员分配,能发布·运维但不能开发
部署 role_project_deploy 发布但不能运维,默认无权限
访客 role_project_guest 只能查看

环境

通过“发布到”操作,构成“开发->测试->生产”的多环境隔离的单向开发链条,完成开发任务解耦。

数据开发&任务调度

从浏览器进入开发界面,通过新建脚本来执行shell或者MaxCompute SQL从而在日志里看到输出。

新建任务能执行MaxCompute SQL,机器学习,同步等多种任务,还能添加调度时间,依赖等。在写好任务以后,提交才能使任务提交入调度系统(详见基本概念),发布则能创建发布包,而不能直接发布(详见角色)。创建工作流任务则可以直接在界面里拖拽连接节点任务,表示任务的业务逻辑关系。

总的来说,工作流任务相当于是画一个由节点任务构成的流程图,再点进各节点任务里进行开发,从而获得一个可调度的具有复杂业务逻辑的工作流任务。

关于数据同步类任务,是用于在不同数据源之间进行数据同步,数据源是从“数据集成”板块来控制的。新建任务以后,

  1. 选择来源(数据源,表,数据过滤,切分键)
  2. 选择目标(数据源,表,分区信息,清理规则)
  3. 字段映射(拖拽映射规则)
  4. 通道控制(作业速率,并发,容错)
  5. 预览保存。 调度和提交操作同MaxCompute SQL任务。

数据管理&项目管理

无非就是任务调度控制,成员权限控制,计算存储资源控制,历史事件查看之类的东西。

一个很有趣的是,能自己在ECS上部署,从而添加自己的调度资源组。

本文总字数: 1002