Azkaban理论知识:简介-产生背景-架构-部署模式-与Oozie对比

本文主要是介绍Azkaban理论知识:简介-产生背景-架构-部署模式-与Oozie对比,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

文章目录

  • 一、简介
  • 二、产生背景
  • 三、架构
  • 四、部署模式
  • 五、与Oozie的对比
  • 六、若任务挂了怎么办?

一、简介

Azkaban 是一个任务调度器,用于 运行Hadoop作业的 批处理工作流 的 作业调度。

二、产生背景

大数据的计算、分析和处理,一般都是由多个任务单元组成的,且多个任务单元之间存在强依赖关系。
上游任务成功执行完毕,下游任务 拿到上游的结果后 才能开始执行。
为了保证处理结果的有效性和精确性,就必须让任务严格按照上下游关系有序的、顺序的执行。
最简单的解决方式是:事先预估好每个模块执行所需要的时间,以时间段规划执行顺序。
但是,当面对突然激增的数据量时,某个单元未必能按时完成,就会对下游任务造成影响。
为了更好的结果这个问题,工作流调度系统应用而生,Azkaban就是其中一种。

三、架构

在这里插入图片描述
MySQL服务器: 存储元数据。
WebServer : 对外提供Web服务,用户可通过Web页面进行管理。
ExecutorServer:负责具体的工作流的提交、执行。

四、部署模式

单机模式
WebServer 和 ExecutorServer 运行在同一个进程中,进程名为 AzkabanSingleServer。
使用自带的H2数据库。
一般用来学习和测试。

远程模式
WebServer 和 ExecutorServer 运行在不同的进程中。
使用 MySQL数据库。

集群或分布式模式
WebServer 和 ExecutorServer 运行在不同的机器中,拥有多个ExecutorServer 。
使用 MySQL数据库。

五、与Oozie的对比

Oozie (训象人)
是一个基于 工作流引擎的开源框架,调度的是MapReduce,需要部署到 Java Servlet 中运行。
主要用于定时调度,多任务之间按照逻辑顺序进行调度。
是一个重量级的任务调度系统,虽然功能全面,但是部署和配置麻烦。

Azkaban
用于 在一个 工作流内 以特定的顺序执行一组工作和流程。
介于Oozie和Crontab之间的工具,安全性弱于Oozie。

若出现失败的情况,Azkaban会丢失所有工作流,但Oozie 可以继续运行。

六、若任务挂了怎么办?

不论任务运行成功还是失败,都会通过邮件、钉钉、短信、企业微信、电话等途径发出通知。
若任务失败了,主要解决方案是重新跑

这篇关于Azkaban理论知识:简介-产生背景-架构-部署模式-与Oozie对比的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/267649

相关文章

Java中Map的五种遍历方式实现与对比

《Java中Map的五种遍历方式实现与对比》其实Map遍历藏着多种玩法,有的优雅简洁,有的性能拉满,今天咱们盘一盘这些进阶偏基础的遍历方式,告别重复又臃肿的代码,感兴趣的小伙伴可以了解下... 目录一、先搞懂:Map遍历的核心目标二、几种遍历方式的对比1. 传统EntrySet遍历(最通用)2. Lambd

mysql_mcp_server部署及应用实践案例

《mysql_mcp_server部署及应用实践案例》文章介绍了在CentOS7.5环境下部署MySQL_mcp_server的步骤,包括服务安装、配置和启动,还提供了一个基于Dify工作流的应用案例... 目录mysql_mcp_server部署及应用案例1. 服务安装1.1. 下载源码1.2. 创建独立

Nginx服务器部署详细代码实例

《Nginx服务器部署详细代码实例》Nginx是一个高性能的HTTP和反向代理web服务器,同时也提供了IMAP/POP3/SMTP服务,:本文主要介绍Nginx服务器部署的相关资料,文中通过代码... 目录Nginx 服务器SSL/TLS 配置动态脚本反向代理总结Nginx 服务器Nginx是一个‌高性

Spring Boot Interceptor的原理、配置、顺序控制及与Filter的关键区别对比分析

《SpringBootInterceptor的原理、配置、顺序控制及与Filter的关键区别对比分析》本文主要介绍了SpringBoot中的拦截器(Interceptor)及其与过滤器(Filt... 目录前言一、核心功能二、拦截器的实现2.1 定义自定义拦截器2.2 注册拦截器三、多拦截器的执行顺序四、过

JavaWeb项目创建、部署、连接数据库保姆级教程(tomcat)

《JavaWeb项目创建、部署、连接数据库保姆级教程(tomcat)》:本文主要介绍如何在IntelliJIDEA2020.1中创建和部署一个JavaWeb项目,包括创建项目、配置Tomcat服务... 目录简介:一、创建项目二、tomcat部署1、将tomcat解压在一个自己找得到路径2、在idea中添加

C++,C#,Rust,Go,Java,Python,JavaScript的性能对比全面讲解

《C++,C#,Rust,Go,Java,Python,JavaScript的性能对比全面讲解》:本文主要介绍C++,C#,Rust,Go,Java,Python,JavaScript性能对比全面... 目录编程语言性能对比、核心优势与最佳使用场景性能对比表格C++C#RustGoJavapythonjav

Go语言实现桥接模式

《Go语言实现桥接模式》桥接模式是一种结构型设计模式,它将抽象部分与实现部分分离,使它们可以独立地变化,本文就来介绍一下了Go语言实现桥接模式,感兴趣的可以了解一下... 目录简介核心概念为什么使用桥接模式?应用场景案例分析步骤一:定义实现接口步骤二:创建具体实现类步骤三:定义抽象类步骤四:创建扩展抽象类步

Python + Streamlit项目部署方案超详细教程(非Docker版)

《Python+Streamlit项目部署方案超详细教程(非Docker版)》Streamlit是一款强大的Python框架,专为机器学习及数据可视化打造,:本文主要介绍Python+St... 目录一、针对 Alibaba Cloud linux/Centos 系统的完整部署方案1. 服务器基础配置(阿里

C++ scoped_ptr 和 unique_ptr对比分析

《C++scoped_ptr和unique_ptr对比分析》本文介绍了C++中的`scoped_ptr`和`unique_ptr`,详细比较了它们的特性、使用场景以及现代C++推荐的使用`uni... 目录1. scoped_ptr基本特性主要特点2. unique_ptr基本用法3. 主要区别对比4. u

Nginx概念、架构、配置与虚拟主机实战操作指南

《Nginx概念、架构、配置与虚拟主机实战操作指南》Nginx是一个高性能的HTTP服务器、反向代理服务器、负载均衡器和IMAP/POP3/SMTP代理服务器,它支持高并发连接,资源占用低,功能全面且... 目录Nginx 深度解析:概念、架构、配置与虚拟主机实战一、Nginx 的概念二、Nginx 的特点