更新时间:2024-01-18 GMT+08:00

MRS作业简介

MRS作业是MRS为用户提供的程序执行平台,用于处理和分析用户数据。作业创建完成后,所有的作业列表信息展示在“作业管理”页面中,您可以查看所有的作业列表,也可以创建和管理作业。若集群详情页面不支持“作业管理”页签,请通过后台方式提交作业。

MRS集群处理的数据源来源于OBS或HDFS,HDFS是Hadoop分布式文件系统(Hadoop Distributed File System),OBS即对象存储服务,是一个基于对象的海量存储服务,为客户提供海量、安全、高可靠、低成本的数据存储能力。MRS可以直接处理OBS中的数据,客户可以基于管理控制台Web界面和OBS客户端对数据进行浏览、管理和使用,同时可以通过REST API接口方式单独或集成到业务程序进行管理和访问数据。

用户创建作业前需要将本地数据上传至OBS系统,MRS使用OBS中的数据进行计算分析。当然MRS也支持将OBS中的数据导入至HDFS中,使用HDFS中的数据进行计算分析。数据完成处理和分析后,您可以将数据存储在HDFS中,也可以将集群中的数据导出至OBS系统。需要注意,HDFS和OBS也支持存储压缩格式的数据,目前支持存储bz2、gz压缩格式的数据。

作业分类

目前MRS集群支持创建和管理如下几种类型的作业。如果处于“运行中”状态的集群创建作业失败,请查看集群管理页面中相关组件健康情况。操作方法,请参见查看和定制集群监控指标

  • MapReduce:提供快速并行处理大量数据的能力,是一种分布式数据处理模式和执行环境。MRS当前支持提交MapReduce Jar程序。
  • Spark:基于内存进行计算的分布式计算框架,MRS当前支持提交SparkSubmit、Spark Script和Spark SQL作业。
    • SparkSubmit:支持提交Spark Jar和Spark python程序,执行Spark application,计算和处理用户数据。
    • SparkScript:支持提交SparkScript脚本,批量执行Spark SQL语句。
    • Spark SQL:运用Spark提供的类似SQL的Spark SQL语言,实时查询和分析用户数据。
  • Hive:建立在Hadoop基础上的开源的数据仓库。MRS当前支持提交HiveScript脚本,和执行Hive SQL语句。
  • Flink:提供一个分布式大数据处理引擎,可对有限数据流和无限数据流进行有状态计算。
  • HadoopStreaming:支持运行mapper或reducer作业。

作业列表

作业列表默认按时间顺序排列,时间最近的作业显示在最前端。各类作业列表参数说明如表 1所示。

表1 作业列表参数

参数

参数说明

作业名称/ID

作业的名称,新增作业时配置。

ID是作业的唯一标识,作业新增后系统自动赋值。

用户名称

提交作业的用户名称。

作业类型

支持的作业类型:

  • Distcp:导入、导出数据
  • MapReduce
  • Spark
  • SparkSubmit
  • SparkScript
  • Spark SQL
  • Hive SQL
  • HiveScript
  • Flink
  • Flink SQL
  • HadoopStreaming
说明:
  • “文件管理”页面进行文件的导入导出操作后,您可以在“作业管理”页面查看Distcp作业。
  • 只有创建集群时选择了Spark、Hive和Flink组件,并且集群处于运行中,才能新增Spark、Hive和Flink类型的作业。

状态

显示作业的状态。

  • 已提交
  • 已接受
  • 运行中
  • 已完成
  • 已终止
  • 异常

执行结果

显示作业执行完成的结果。

  • 未定:正在执行的作业。
  • 成功:执行成功的作业。
  • 终止:执行中被手动终止的作业。
  • 失败:执行失败的作业。
说明:

作业执行成功或失败后都不能再次执行,只能新增作业,配置作业参数后重新提交作业。

队列名称

提交作业用户绑定的队列的名称。

作业提交时间

记录作业提交的开始时间。

作业结束时间

记录作业执行完成或手工停止的时间。

操作

对当前作业执行相关操作。部分操作可以在“更多”中选择。

  • 查看日志:单击“查看日志”,查看运行中的作业执行的实时日志信息。操作方法,请参见查看作业配置信息和日志
  • 查看详情:单击“查看详情”,查看作业的详细配置信息。操作方法,请参见查看作业配置信息和日志
  • 停止:单击“停止”,停止正在运行的作业。操作方法,请参见停止作业
  • 结果:单击“结果”,查看SparkSql和SparkScript类型的“状态”“已完成”“执行结果”“成功”的作业执行结果。
  • 删除:单击“删除”,删除一个作业。操作方法,请参见删除作业
    说明:
    • 作业删除后不可恢复,请谨慎操作。
    • 当选择保留作业日志到OBS或HDFS时,系统在作业执行结束后,将日志压缩并存储到对应路径。因此,此类作业运行结束后,作业状态仍然为“运行中”,需等日志存储成功后,状态变更为“已完成”。日志存储花费时间依赖于日志大小,需要数分钟以上。
表2 按钮说明

按钮

说明

选择提交作业的时间区间,筛选在对应时间区间内提交的作业。

在下拉框中选择作业执行结果,筛选作业。

  • 全部:表示筛选所有的作业。
  • 成功:表示筛选执行成功的作业。
  • 未定:表示筛选正在执行的作业。
  • 终止:表示筛选被手动终止的作业。
  • 失败:表示筛选执行失败的作业。

在下拉框中选择作业类型,筛选作业。

  • 全部作业类型
  • MapReduce
  • HiveScript
  • Distcp
  • SparkScript
  • Spark SQL
  • Hive SQL
  • SparkSubmit
  • Flink
  • Flink SQL
  • HadoopStreaming

在搜索框中根据搜索条件输入对应内容,单击,搜索作业。

  • 作业名称
  • 作业ID
  • 用户名称
  • 队列名称

单击,手动刷新作业列表。

作业执行权限说明

对于开启Kerberos认证的安全集群,用户在MRS界面提交作业时,要先执行IAM用户同步操作,同步完成后会在MRS系统中产生同IAM用户名的用户。IAM同步用户是否有提交作业权限,取决于IAM同步时,用户所绑定的IAM策略,提交作业策略请参考IAM用户同步MRS说明章节中表1

用户提交作业,如果涉及到具体组件的资源使用,如HDFS的目录访问、Hive表的访问等相关组件的权限时,需由admin(Manager管理员)用户进行授权,给提交作业用户赋予相关组件权限。具体操作如下:

  1. 使用admin用户登录Manager。
  2. 参考创建角色内容,增加用户具体需要的组件权限的角色。
  3. 参考相关任务修改提交作业用户所属的用户组,将新增的组件角色加入到该用户组中。

    用户所在用户组绑定的组件角色修改后,权限生效需要一定时间,请耐心等待。