private void loadParameters() {
    Map<String, String> paramMap = _heuristicConfData.getParamMap();
    String heuristicName = _heuristicConfData.getHeuristicName();

    double[] confNumTasksThreshold = Utils.getParam(paramMap.get(NUM_TASKS_SEVERITY), numTasksLimits.length);
    if (confNumTasksThreshold != null) {
      numTasksLimits = confNumTasksThreshold;
    }
    logger.info(heuristicName + " will use " + NUM_TASKS_SEVERITY + " with the following threshold settings: "
        + Arrays.toString(numTasksLimits));

    double[] confSpillThreshold = Utils.getParam(paramMap.get(SPILL_SEVERITY), spillLimits.length);
    if (confSpillThreshold != null) {
      spillLimits = confSpillThreshold;
    }
    logger.info(heuristicName + " will use " + SPILL_SEVERITY + " with the following threshold settings: " + Arrays
        .toString(spillLimits));
    for (int i = 0; i < spillLimits.length; i++) {
      spillLimits[i] = spillLimits[i] * THRESHOLD_SPILL_FACTOR;
    }
  }
Analyzes mapper task data spill rates
app/com/linkedin/drelephant/tez/heuristics/MapperSpillHeuristic.java