Updated on 2024-04-11 GMT+08:00

Introduction to MRS Jobs

An MRS job is the program execution platform of MRS. It is used to process and analyze user data. After a job is created, all job information is displayed on the Jobs tab page. You can view a list of all jobs and create and manage jobs. If the Jobs tab is not displayed on the cluster details page, submit a job in the background.

Data sources processed by MRS are from OBS or HDFS. OBS is an object-based storage service that provides you with massive, secure, reliable, and cost-effective data storage capabilities. MRS can process data in OBS directly. You can view, manage, and use data by using the web page of the management control platform or OBS client. In addition, you can use REST APIs independently or integrate APIs to service applications to manage and access data.

Before creating jobs, upload the local data to OBS for MRS to compute and analyze. MRS allows exporting data from OBS to HDFS for computing and analyzing. After the analyzing and computing are complete, you can store the data in HDFS or export them to OBS. HDFS and OBS can also store the compressed data in the format of bz2 or gz.

Category

An MRS cluster allows creating and managing the following jobs: If a cluster in the Running state fails to create a job, check the health status of related components on the cluster management page. For details, see Viewing and Customizing Cluster Monitoring Metrics.

  • MapReduce can quickly process large-scale data in parallel. It is a distributed data processing model and execution environment. MRS supports the submission of MapReduce JAR programs.
  • Spark is a distributed in-memory computing framework. MRS supports SparkSubmit, Spark Script, and Spark SQL jobs.
    • SparkSubmit: You can submit the Spark JAR and Spark Python programs, execute the Spark Application, and compute and process user data.
    • SparkScript: You can submit the SparkScript scripts and batch execute Spark SQL statements.
    • Spark SQL: You can use Spark SQL statements (similar to SQL statements) to query and analyze user data in real time.
  • Hive is an open-source data warehouse based on Hadoop. MRS allows you to submit HiveScript scripts and execute Hive SQL statements.
  • Flink is a distributed big data processing engine that can perform stateful computations over both unbounded and bounded data streams.
  • HadoopStreaming runs mapper or reducer jobs.

Job List

Tasks are listed in chronological order by default in the task list, with the most recent jobs displayed at the top. Table 1 describes the parameters in the job list.

Table 1 Job list parameters

Parameter

Description

Name/ID

Job name, which is set when a job is created.

ID is the unique identifier of a job. After a job is added, the system automatically assigns a value to ID.

Username

Name of the user who submits a job.

Type

The following data types are supported:

  • DistCp: importing and exporting data
  • MapReduce
  • Spark
  • SparkSubmit
  • SparkScript
  • Spark SQL
  • Hive SQL
  • HiveScript
  • Flink
  • Flink SQL
  • HadoopStreaming
NOTE:
  • After importing and exporting files on the Files tab page, you can view the DistCp job on the Jobs tab page.
  • Spark, Hive, and Flink jobs can be added only when the Spark, Hive, and Flink components are selected during cluster creation and the cluster is running.

Status

Job status.

  • Submitted
  • Accepted
  • Running
  • Completed
  • Terminated
  • Abnormal

Result

Execution result of a job.

  • Undefined: indicates that the job is being executed.
  • Successful: indicates that the job has been successfully executed.
  • Killed: indicates that the job is manually terminated during execution.
  • Failed: indicates that the job fails to be executed.
NOTE:

Once a job has succeeded or failed, you cannot execute it again. However, you can add a job, and set job parameters to submit a job again.

Queue Name

Name of the queue bound to the user who submits the job

Submitted

Time when a job is submitted.

Ended

Time when a job is completed or manually stopped.

Operation

Operations can be performed on the job. Click More for more operations in the drop-down list.

  • Viewing Log: Click View Log to view the real-time logs of running jobs. For details, see Viewing Job Configuration and Logs.
  • View Details: Click View Details to view the detailed configuration information about jobs. For details, see Viewing Job Configuration and Logs.
  • Stop: You can click Stop to stop a running job. For details, see Stopping a Job.
  • View Result: Click View Result to view the execution results of SparkSQL and SparkScript jobs whose status is Completed and result is Successful.
  • Delete: Delete the job. For details, see Deleting a Job.
    NOTE:
    • A deleted job cannot be restored.
    • If you choose to save job logs to OBS or HDFS, the system compresses and saves the logs to the corresponding path after the job execution is completed. Therefore, after a job execution of this type is completed, the job status is still Running. After the log is successfully stored, the job status changes to Completed. The log storage duration depends on the log size and takes several minutes.
Table 2 Icon description

Icon

Description

Select a time range for job submission to filter jobs submitted in the time range.

Select a certain job execution result from the drop-down list to display jobs of the status.

  • All statuses: Filter all jobs.
  • Successful: Filter jobs that are successfully executed.
  • Undefined: Filter jobs that are being executed.
  • Killed: Filter jobs that are manually stopped.
  • Failed: Filter jobs that fail to be executed.

Select a certain job type from the drop-down list to display jobs of the type.

  • All types
  • MapReduce
  • HiveScript
  • Distcp
  • SparkScript
  • Spark SQL
  • Hive SQL
  • SparkSubmit
  • Flink
  • Flink SQL
  • HadoopStreaming

In the search box, search for a job by setting the corresponding search condition and click .

  • Job name.
  • Job ID.
  • Username.
  • Queue name.

Click to manually refresh the job list.

Job Execution Permission Description

For a security cluster with Kerberos authentication enabled, a user needs to synchronize an IAM user before submitting a job on the MRS web UI. After the synchronization is completed, the MRS system generates a user with the same IAM username. Whether a user has the permission to submit jobs depends on the IAM policy bound to the user during IAM synchronization. For details about the job submission policy, see Table 1 in Synchronizing IAM Users to MRS.

When a user submits a job that involves the resource usage of a specific component, such as accessing HDFS directories and Hive tables, user admin (Manager administrator) must grant the relevant permission to the user. Detailed operations are as follows:

  1. Log in to Manager as user admin.
  2. Add the role of the component whose permission is required by the user. For details, see Creating a Role.
  3. Change the user group to which the user who submits the job belongs and add the new component role to the user group. For details, see Related Tasks.

    After the component role bound to the user group to which the user belongs is modified, it takes some time for the role permissions to take effect.