org.apache.hadoop.mapred

## Interface Reporter

- All Superinterfaces:
    org.apache.hadoop.util.Progressable
  All Known Implementing Classes:
    Task.TaskReporter

      @InterfaceAudience.Public
       @InterfaceStability.Stable
      public interface Reporter
      extends org.apache.hadoop.util.Progressable

  A facility for Map-Reduce applications to report progress and update counters, status information etc.

  `Mapper` and `Reducer` can use the `Reporter` provided to report progress or just indicate that they are alive. In scenarios where the application takes significant amount of time to process individual key/value pairs, this is crucial since the framework might assume that the task has timed-out and kill that task.

  Applications can also update `Counters` via the provided `Reporter` .

  See Also:
    `Progressable`, `Counters`

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `static Reporter` | `NULL` A constant of Reporter type that does nothing.

  - ### Method Summary

    All Methods Instance Methods Abstract Methods
    Modifier and Type | Method and Description
    --- | ---
    `Counters.Counter` | `getCounter(Enum<?> name)` Get the `Counters.Counter` of the given group with the given name.
    `Counters.Counter` | `getCounter(String group, String name)` Get the `Counters.Counter` of the given group with the given name.
    `InputSplit` | `getInputSplit()` Get the `InputSplit` object for a map.
    `float` | `getProgress()` Get the progress of the task.
    `void` | `incrCounter(Enum<?> key, long amount)` Increments the counter identified by the key, which can be of any `Enum` type, by the specified amount.
    `void` | `incrCounter(String group, String counter, long amount)` Increments the counter identified by the group and counter name by the specified amount.
    `void` | `setStatus(String status)` Set the status description for the task.

    - ### Methods inherited from interface org.apache.hadoop.util.Progressable

      `progress`

- - ### Field Detail

    - #### NULL

          static final Reporter NULL

      A constant of Reporter type that does nothing.

  - ### Method Detail

    - #### setStatus

          void setStatus(String status)

      Set the status description for the task.
      Parameters:
        `status` - brief description of the current status.

    - #### getCounter

          Counters.Counter getCounter(Enum<?> name)

      Get the `Counters.Counter` of the given group with the given name.
      Parameters:
        `name` - counter name
      Returns:
        the `Counter` of the given group/name.

    - #### getCounter

          Counters.Counter getCounter(String group,
                                      String name)

      Get the `Counters.Counter` of the given group with the given name.
      Parameters:
        `group` - counter group
        `name` - counter name
      Returns:
        the `Counter` of the given group/name.

    - #### incrCounter

          void incrCounter(Enum<?> key,
                           long amount)

      Increments the counter identified by the key, which can be of any `Enum` type, by the specified amount.
      Parameters:
        `key` - key to identify the counter to be incremented. The key can be be any `Enum`.
        `amount` - A non-negative amount by which the counter is to be incremented.

    - #### incrCounter

          void incrCounter(String group,
                           String counter,
                           long amount)

      Increments the counter identified by the group and counter name by the specified amount.
      Parameters:
        `group` - name to identify the group of the counter to be incremented.
        `counter` - name to identify the counter within the group.
        `amount` - A non-negative amount by which the counter is to be incremented.

    - #### getInputSplit

          InputSplit getInputSplit()
                            throws UnsupportedOperationException

      Get the `InputSplit` object for a map.
      Returns:
        the `InputSplit` that the map is reading from.
      Throws:
        `UnsupportedOperationException` - if called outside a mapper

    - #### getProgress

          float getProgress()

      Get the progress of the task. Progress is represented as a number between 0 and 1 (inclusive).

Copyright © 2008–2022 Apache Software Foundation. All rights reserved.