YARN Timeline Server介绍

1.背景介绍:
在hadoop2.4版本之前对任务执行的监控只开发了针对MR的 Job History Server,它可以提供给用户用户查询已经运行完成的作业的信息,但是后来,随着在YARN上面集成的越来越多的计算框架,比如spark、Tez,也有必要为基于这些计算引擎的技术开发相应的作业任务监控工具,所以hadoop的开发人员就考虑开发一款更加通用的Job History Server,即YARN Timeline Server。

2.Introduction

      <hadoop2.7.1>
       以一种通用的方式向 YARN Timeline Server上注册应用程序的当前和历史状态,便于存储和检索。它主要有两大职责:
(1)持久化应用程序的具体信息
       收集并检索应用程序或者框架的具体信息。例如,hadoop MR框架里面的与分片线关系的信息,诸如map tasks、reduce tasks、counters等。应用程序开发者可以在App Master端或者应用程序需的containers中通过TimelineClient将这些信息发送给Timeline Server。
       这些信息都可以通过REST APIs在具体App或者执行框架的UI界面查询到。
(2)持久化已完成的应用程序的Generic information
      关于这一点,在Application history server中,显然只支持MR框架的job。Generic information包括了像*queue-name,*用户信息等用户程序级别的数据,还有设置在 ApplicationSubmissionContext中的信息,用于运行应用程序的application-attempts 列表,关于每个application-attempt的信息,container列表以及运行在每个 application-attempt *下的每个container的信息。

3.Timeline Structure

(1)Timeline Domain
      Timeline Domain为Timeline Server提供了一个命令空间,使得用户可以搜集多个节点,将它们与其他用户和应用程序隔离开来。Timeline server security就定义在这一层。
     一个Domain首先是用于存储用户的信息、读写ACL信息、创建和修改时间戳。每个Domain以一个唯一的ID在整个YARN集群中标识。
(2)Timeline Entity
      一个Timeline Entity(即Timeline实体)包含一个概念实体的元信息以及它的相关的events.一个实体可以是一个application,一个 application attempt,一个container卓尔其他任何的应用自定义的object。
        它还包含多个Primary filters用于作为timeline store中多个实体的索引。其他的数据可以以非索引的方式存储。每个实体都通过一个EntityId和EntityType唯一的确定。
(3)Timeline Events
       Timeline Events用于描述一个与某个具体Application的timeline实体相关的event。用户也可以随意定义一个event方法,比如启动一个应用程序,获取分配的container、操作失败或者其他的与用户和集群操作相关的失败信息等等。
  • 2
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值