【大数据】Azkaban 看这一篇就够了!任务调度平台的搭建,使用,以及API开发

本文介绍了Azkaban任务调度平台的起源、功能特性、与Hadoop的关系,详细步骤演示了Azkaban的搭建与Web可视化管理,以及如何通过API进行二次开发。重点讲解了定时任务、工作流依赖和权限控制等内容。

目录大纲

0 写在前面的话

1.1 初识Azkaban

1.2 为什么需要任务调度器

1.3 常见几种任务调度器

1.4 Azkaban和Hadoop的关系

1.5 Azkaban 底层原理

2 Azkaban任务调度平台搭建

3 Azkaban Web可视化平台详细介绍以及使用

4 Azkaban API 功能预览

4.1 对接Azkaban,进行二次开发,使其嵌入到系统中

5 平台搭建中的问题总结

1.1 初识Azkaban

起源:Linkedin开源的一个批量工作流调度器

特征:一个工作流内,多个作业可以按照特定的顺序执行

依赖关系:作业之间的顺序关系依靠key-value的形式来建立依赖关系

可视界面:提供可视化web界面

1.2 为什么需要任务调度器

定时任务的出现,可谓大大提高了工作效率。最简单的定时任务,就是你手机的闹钟,你给它一个定时任务,到了指定时间它就叫醒你。程序当中也是如此,那些反复繁琐的操作,可以交给任务调度器去执行,这样既能避免人为的失误,也能让工作人员从无意义的工作中解脱出来!

什么是工作流任务调度器?

很多时候,单一的任务并没有办法满足我们的业务需求,任务直接有关联性,这时候工作流就诞生了!

1.3 常见几种任务调度器

常见的几种工作流任务调度器介绍

Hamake:

  • 描述语言:xml
  • 依赖机制:data-driven
  • 不需要web容器
  • 支持hadoop 作业调度
  • 运行模式:command line utility
  • 事件通知:不支持
  • 无需安装

Oozie

  • 描述语言:xml
  • 依赖机制:explicit
  • 需要web容器
  • 不支持hadoop作业调度
  • 运行模式:daemon
  • 事件通知:不支持
  • 需要安装

Azkaban

  • 描述语言:text file with key/value pairs
  • 依赖机制:explicit
  • 需要web容器
  • 支持Hadoop 作业调度
  • 运行模式daemon
  • 事件通知:不支持
  • 需要安装

Cascading

  • 工作流描述语言:Java Api
  • 依赖机制:explicit
  • 不需要web容器
  • 支持hadoop 作业调度
  • 运行模式 API
  • 事件通知:有
  • 无需安装

市面上最流行的工作流任务调度器大致有以下这两种:

  • ooize
  • azkaban

下面就这两种,进行详细的阐述

ooize 偏重量级,功能全面,但是配置却更加复杂

azkaban 偏轻量级,功能稍微缺少一些, 但是配置简单

功能方面:

  • 均可调度mapreduce,pig,java,脚本工作流任务
  • 均可定时执行工作流任务

工作流传参

Azkaban支持直接传参,例如inputOozie支持参数和EL表达式

定时执行

  • Azkaban的定时执行任务是基于时间的
  • Oozie的定时执行任务基于时间和输入数据

资源控制

  • Azkaban有较严格的权限控制,如用户对工作流进行读/写/执行等操作
  • Oozie暂无严格的权限控制

1.4 Azkaban 和 Hadoop的关系

Azkaban 几乎是Hadoop的御用工作流任务调度器

1.5 Azkaban 底层原理简述

<

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

姜太小白

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值