

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

# Amazon EMR 클러스터 스트리밍 오류
<a name="emr-troubleshoot-error-streaming"></a>

 일반적으로 `syslog` 파일에서 스트리밍 오류의 원인을 찾을 수 있습니다. **단계** 창에서 이 파일에 연결합니다.

다음은 스트리밍 클러스터에 일반적인 오류입니다.

**Topics**
+ [데이터가 잘못된 형식으로 매퍼에 전송되고 있습니까?](#emr-troubleshoot-error-streaming-1)
+ [스크립트가 시간 초과되고 있습니까?](#emr-troubleshoot-error-streaming-2)
+ [잘못된 스트리밍 인수를 전달하고 있습니까?](#invalidarg)
+ [스크립트가 오류로 종료되었습니까?](#emr-troubleshoot-error-streaming-3)

## 데이터가 잘못된 형식으로 매퍼에 전송되고 있습니까?
<a name="emr-troubleshoot-error-streaming-1"></a>

 이 경우에 해당하는지 확인하려면 작업 시도 로그에 있는 실패한 작업 시도의 `syslog` 파일에서 오류 메시지를 찾습니다. 자세한 내용은 [Amazon EMR 로그 파일 보기](emr-manage-view-web-log-files.md) 단원을 참조하십시오.

## 스크립트가 시간 초과되고 있습니까?
<a name="emr-troubleshoot-error-streaming-2"></a>

 매퍼 또는 reducer 스크립트의 기본 제한 시간은 600초입니다. 스크립트가 이 시간보다 오래 걸리면 작업 시도가 실패합니다. 작업 시도 로그에 있는 실패한 작업 시도의 `syslog` 파일을 확인하여 이 경우에 해당하는지 확인할 수 있습니다. 자세한 내용은 [Amazon EMR 로그 파일 보기](emr-manage-view-web-log-files.md) 단원을 참조하십시오.

 `mapred.task.timeout` 구성 설정에 대해 새 값을 설정하여 시간 제한을 변경할 수 있습니다. 이 설정은 해당 시간이 경과한 후 Amazon EMR에서 입력을 읽거나 출력을 쓰거나 상태 문자열을 업데이트하지 않은 작업을 종료하는 밀리초 수를 지정합니다. 추가 스트리밍 인수 `-jobconf mapred.task.timeout=800000`를 전달하여 이 값을 업데이트할 수 있습니다.

## 잘못된 스트리밍 인수를 전달하고 있습니까?
<a name="invalidarg"></a>

 Hadoop 스트리밍은 다음 인수만 지원합니다. 아래 나열된 인수 이외의 다른 인수를 전달하면 클러스터가 실패합니다.

```
 1. -blockAutoGenerateCacheFiles 
 2. -cacheArchive 
 3. -cacheFile 
 4. -cmdenv 
 5. -combiner 
 6. -debug 
 7. -input 
 8. -inputformat
 9. -inputreader 
10. -jobconf 
11. -mapper
12. -numReduceTasks
13. -output 
14. -outputformat 
15. -partitioner
16. -reducer
17. -verbose
```

 또한 Hadoop 스트리밍은 Java 구문을 사용하여 전달된 인수, 즉 앞에 단일 하이픈이 있는 인수만 인식합니다. 앞에 이중 하이픈이 있는 인수를 전달하면 클러스터가 실패합니다.

## 스크립트가 오류로 종료되었습니까?
<a name="emr-troubleshoot-error-streaming-3"></a>

 매퍼 또는 reducer 스크립트가 오류로 종료될 경우 실패한 작업 시도에 대한 작업 시도 로그의 `stderr` 파일에서 오류를 찾을 수 있습니다. 자세한 내용은 [Amazon EMR 로그 파일 보기](emr-manage-view-web-log-files.md) 단원을 참조하십시오.