Hadoop 스케줄러를 작성 중입니다. 내 스케줄링에서는 각 Map/Reduce 작업에서 소요 된 CPU 시간을 찾아야합니다.Hadoop의 Map/Reduce 작업에서 CPU 시간을 찾는 방법
TaskInProgress 클래스는 프로세스가 시작되고 완료되면 벽 시계 시간이있는 execStartTime 및 execFinishTime 값을 유지하지만 정확하게 작업에 의해 소비되는 CPU 시간을 표시하지 않습니다
나는 것을 알고있다 .
각 작업은 새 JVM에서 실행되며 OperatingSystemMXBean을 사용할 수 있습니다. getProcessCpuTime() 메소드를 사용하지만 메소드의 설명에서 "Java 가상 머신이 실행되는 프로세스에서 사용하는 CPU 시간을 나노초 단위로 반환합니다"라고 알려줍니다. 나는 이것이 내가 원하는 것인지 완전히 명확하지 않다.