OutOfMemory 원인과 해결 방안
<발생 원인>
- Job실행 시, Load & Transform하는 데이터가 메모리 사이즈보다 큰 경우
- 처리과정에서 buffer기능을 사용하여 메모리를 많이 사용하는 경우
<해결 방안>
- Job을 특정 조건으로 여러개 Job 으로 분리하여 처리큰 사이즈의 XML 파일을 처리 중 에러가 발생하면, 여러개 XML로 Split하여 처리
- JVM Heap 메모리 사이즈를 늘려서 실행JAVA 32bit 인 경우, 최대 Heap 메모리 사이즈가 4GB
[JVM Heap 메모리 사이즈 늘리는 방법]
- [프로젝트 단위]로 설정하는 방법(Job의 기본 값)
1) [Window] -> [Preferences] 클릭
2) [Talend] -> [Run/Debug] -> [Job Run VM arguments]에서 메모리 설정 변경
- [단일 Job 단위]로 설정하는 방법(Job별 별도 설정)
1) [Run] -> [Advanced settings] 에서 [Use specific JVM arguments] 체크 박스 클릭
체크가 되어 있지 않으면, 프로젝트 단위에서 설정한 사이즈가 기본 값으로 설정됨2) 메모리 사이즈를 변경
위 화면에서 설정한 옵션 의미
-Xms1024M : 초기 Heap 메모리를 1GB로 설정
-Xmx10G : 최대 Heap 메모리를 10GB로 설정(Java가 64bit 일 경우에만)









