azkaban中job配置的示例分析

这篇文章主要介绍了azkaban中job配置的示例分析,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。

创新互联是一家专注于成都网站设计、成都网站制作与策划设计,勐海网站建设哪家好?创新互联做网站,专注于网站建设10多年,网设计领域的专业建站公司;建站业务涵盖:勐海等地区。勐海做网站价格咨询:028-86922220

a) Job类型

所有的job都需要一个知道那个他们如何去执行的type。一般的,有这样四种job类型:java、command、javaprocess和pig。

Property

Require?

Meaning

type

required

Job类型:java、command、javaprocess或pig

每个类型都有多种选项,如下描述。

i. command jobs

命令行jobs本质上是作为单独进程执行的Unix命令。任何输出都要以标准输出或标准错误写入到日志当中。如果一个job完成时退出代码为零则代表执行成功,若非零则失败。

azkaban中job配置的示例分析

azkaban web动态传参,command job可以通过${变量名}获取该参数。

ii. javaprocess jobs

Java process jobs 是一个方便启动java程序的容器。它等价于从命令行执行一个class的main方法。下面介绍在javaprocess jobs中的可用属性:

azkaban中job配置的示例分析

azkaban中job配置的示例分析

env.property可以通过程序获取环境变量获得。

iii. pig jobs

这个job类型会通过Grunt运行pig脚本。下面介绍pig jobs的可用属性:

azkaban中job配置的示例分析

azkaban中job配置的示例分析

iv. java jobs

Java jobs是一个带有run()方法的java类,例如azkaban中job配置的示例分析。Java class不必要实现任何接口。Azkaban会充分利用在下面class中定义的方法:

azkaban中job配置的示例分析

b) Job锁

在Azkaban中有三种类型的锁:permit、read.lock和write.lock。

i. Permits

Permit锁是用于限制对一个资源的并发访问。例如:如果你想保证访问特定数据库一次不超过4个job,你可以建立一个有四个permit的池并且每个job需要得到一个permit才可运行。Perimits的数量可以在job目录下的 .property 文件中的azkaban中job配置的示例分析属性当中设置。

Permit job的数量必须通过job.permits这个job参数设置提供才可运行。所有的permits会在job结束或失败时立即释放。

ii. Read and Write 锁

Azkaban支持位资源设置Read/Write locks。一个常见的用例就是锁定一个在HDFS中的文件修改的权限。例如:当你有许多job在读一个文件,这时有一个job想重建它,你就要确保在别的job读它的时候你不重建这个文件。读者不会妨碍其他读者并且允许任意数量的读者。无论怎样,都只能允许有一个作者,并且在开始写的时候,所有的读者必须执行完毕。

这些所必须通过read.lock和write.lock下面定义参数进行设置:

azkaban中job配置的示例分析

e) Azkaban系统属性

azkaban中job配置的示例分析

感谢你能够认真阅读完这篇文章,希望小编分享的“azkaban中job配置的示例分析”这篇文章对大家有帮助,同时也希望大家多多支持创新互联,关注创新互联行业资讯频道,更多相关知识等着你来学习!


本文名称:azkaban中job配置的示例分析
URL网址:http://pwwzsj.com/article/jdpgjp.html