GIAC架构大会-承载每天万级任务的调度系统架构是如何设计的.pdf

所需积分/C币:10 2019-07-07 06:21:58 13.67MB PDF
收藏 收藏
举报

承载每天万级任务的调度系统架构是如何设计的 分布式任务调度系统如何设计? 开源分布式任务调度系统介绍
GGIAC 主办方:msp4oes 目前使用 EasySchedulerl的公司部分统计) Q雪球 鳳凰金融 s 嘀嗒出行 fengjr. com 水滴互助 Vanguard* 华润万家 y速快团 e Aisino|凹败科辣 航天信息 半云利技 环球易购 bwin. cn CiC 四万伟业 efonsoft Gobalegrow E-Commerce 8 育学园 EB 我们一起长大 东信北邮 微未 碳原子 Anewaver Q Enable Fin Tech 盒哗啦啦q9 c写&5 软国 新维数联 圈外 GGIAC 主办方:msp4oes 分布式任务调度背景及演进 任务调度系统在大数据平台是一个核心基础设施,数据处理常常依赖链条长 Crontab Now Linux、Java等都提供 主流 Azkaban、 Airflow N年前 利 弊 无缝接入 Hadoop 简单定时需求 复杂工作流灵活配置 配置管理繁琐 实时务监控 失败基本靠手工 失败策略选择 任务管理混乱,出错难査找 任务依赖关系难编排 GGIAC 主办方:msp4oes 为什么要研发 EasyScheduler? EasyScheduler Azkaban Airflow 稳定性 去中心化的多 Master:和多 Worker 是 单点故障 单个Web和调度程序组合节点 单一调度程序 不需要(本身就支持HA) DB Celery /Dask/Mesos Load Balancer DB HA额外要求 任务队列机制,单个机器上可调度的任务数量可以灵活任务太多时会卡死服务器 任务太多时会卡死服务器 过载处理 配置,当任务过多时会缓存在任务队列中,不会造成机 器卡死 易用性 任务状态、任务类型、重试次数、任务运行机器、可视只能看到任务状态 不能直观区分任务类型 DAG监控界面化变量等关键信息一目了然 是 可视化流程定义所有流程定义操作都是可视化的,通过拖拽任务来绘制通过自定义DS绘制DAG并打包上传通过ptom代码来绘制DAG使用不便.特 DAG配置数据源及资源。同时对于第三方系统,提供 别是对不会写代码的业务人员基本无法使用 api方式的操作。 键部署 集群化部署复杂 集群化部署复杂 快速部署 功能 是否能暂停和恢支持暂停,恢复操作 只能先将工作流杀死再重新运行 只能先将工作流杀死再重新运行 支持 否 easyscheduler上的用户可以通过租户和hado)户实 是否支持多租户现多对一或一对一的映射关系,这对大数据作业的调度 是非常重要的。 支持传统的she任务,同时支持大数据平台任务调度:|shel、gobn、 hadoopJava、java、he| BashOperator.、 DummyOperator 任务类型 MR、 Spark,、sQu(mysq、 postgresql、hMe、 sparks、卜、p、sark、 hdfsToTeradata、 MySqlOperator、 HiveOperator、 thon、 Procedure、 Sub process teradata ToHdfs Emailoperator. HttpopeRatoR 契合度 支持大数琚作业 rk, hive, mr的调度,同时由于支持多由于不支持多租户,在大数据平合业务|由于不支持多租户,在大数据平台业务使用 租户,与大数据业务更加契合 使用不够灵活 不够灵活 扩展性 是否支持自定义是 任务类型 是否支持集群扩是 是,但是复杂 是,但是复杂 调度器使用分布式调度,整体的调度能力会随便集群的 Executor.水平扩展 Executor水平扩展 展 规模线性增长, Maste和 Worker支持动态上下线 GGIAC 主办方:msp4oes 任务调度技术需求 0 可视化DAG 简单易操作 实时查看运行状态 04 每天数万任务运行 任务自依赖 6(02 流程依赖等 调用高可用 流程可容结能力 失败重试、回滚、转移 05 简单可维护 任务写志告警机制 03 便于排若 车富的任务类型 提醒 跨语言 自定义插件机制 Olo 4。后 GGIAC 主办方:msp4oes EasyScheduler整体架构 RestA接口调用 工作流元数据管理 RPC查询任务日志信息 Masteserver MasterServer MasterServer Distributed Command Distributed Command Quartz Quartz Scanner 服务注册、监听、心跳、_A Command监听 容错、分布式锁 Scheduler Scheduler Scheduler ZK Cluster Task Queue DAG切分,监控任务状态 DB告警 Alert NorkerServer WorkerServer WorkerServer 服务注册、监听、心跳、分布式锁 LogRunner LogRunner LogRunner Worker- Worker- Worker- 更新Task任务状态 TaskSchedule Thread TaskScheduleThread TaskScheduleThread SUB_FLOW PROCEI MR PYTHON DEPENDENT GGIAC 主办方:msp4oes EasyScheduler名词解释 有向无环图,简称DAG 流程定义 流程实例 依赖 子工作流 优先级 spak任务 失败策略 MR ·补数 She任务 mapreduce务 sq任务 Python任务 Procedure任务 DAG示例 GGIAC 主办方:msp4oes EasyScheduler主要目标 Task以DAG形式关联,实时监控任务的状态 支持 Shell mr、 Spark、SQL、依赖等10多种任务类型 工作流可定时、依赖、手动、暂停/停止/恢复,失败重 试/警、从指定节点恢复、K训任务等操作 工作流优先级、任务优先级,全局参数及局部自定义参 数 任务超时告警/失败 完善的系统服务监控 支持补数、支持多租户、日志在线查看及资源在线管理 支持每日十万数据量级任务稳定运 服务去中心化 GGIAC 主办方:msp4oes EasyScheduler架构设计 去中心化vS中心化 Server Server Master PK LDC lave Server Server Server Server

...展开详情
试读 35P GIAC架构大会-承载每天万级任务的调度系统架构是如何设计的.pdf
立即下载 低至0.43元/次 身份认证VIP会员低至7折
    抢沙发
    一个资源只可评论一次,评论内容不能少于5个字
    • GitHub

      绑定GitHub第三方账户获取
    • 签到新秀

      累计签到获取,不积跬步,无以至千里,继续坚持!
    关注 私信 TA的资源
    上传资源赚积分,得勋章
    最新推荐
    GIAC架构大会-承载每天万级任务的调度系统架构是如何设计的.pdf 10积分/C币 立即下载
    1/35
    GIAC架构大会-承载每天万级任务的调度系统架构是如何设计的.pdf第1页
    GIAC架构大会-承载每天万级任务的调度系统架构是如何设计的.pdf第2页
    GIAC架构大会-承载每天万级任务的调度系统架构是如何设计的.pdf第3页
    GIAC架构大会-承载每天万级任务的调度系统架构是如何设计的.pdf第4页
    GIAC架构大会-承载每天万级任务的调度系统架构是如何设计的.pdf第5页
    GIAC架构大会-承载每天万级任务的调度系统架构是如何设计的.pdf第6页
    GIAC架构大会-承载每天万级任务的调度系统架构是如何设计的.pdf第7页
    GIAC架构大会-承载每天万级任务的调度系统架构是如何设计的.pdf第8页
    GIAC架构大会-承载每天万级任务的调度系统架构是如何设计的.pdf第9页
    GIAC架构大会-承载每天万级任务的调度系统架构是如何设计的.pdf第10页
    GIAC架构大会-承载每天万级任务的调度系统架构是如何设计的.pdf第11页

    试读已结束,剩余24页未读...

    10积分/C币 立即下载 >