Spark 리소스 할당과 실제 실행 될 때의 CPU, RAM 사용률에 대해 질문드립니다.
조회수 475회
Spark는 Standalone으로 단일 구축해두었고 Worker Instance는 3 각 Worker에게는 1core, Memory 1G 씩 분배 해두었습니다.
~/spark/bin/spark-submit ~/test/test.py &
~/spark/bin/spark-submit ~/test/test1.py &
~/spark/bin/spark-submit ~/test/test2.py &
~/spark/bin/spark-submit ~/test/test3.py &
~/spark/bin/spark-submit ~/test/test4.py &
~/spark/bin/spark-submit ~/test/test5.py &
그리고 위와같이 spark-submit에 여러개의 실행 명령을 한 번에 보냅니다.
그러면 위 그림처럼 Worker 3개 분량에 대해서만 상태가 RUNNING이고 나머지는 WAITING입니다. 그런데 이렇게 실행했을 때 CPU사용률은 듀얼코어인 CPU가 2개인 서버이기 때문에 사용률이 100%가 나오는 것이 이해 되는데, 메모리 사용률이 이해가 안 되네요.. 전체 16GB중, 동작전 1~2%였다가 Worker분배 후 10G~12G까지 올라갑니다. 왜 RUNNING은 3개만 잡혀있는데 메모리 사용률이 저렇게 높아질까요? 참고로 각 RUNNING되는 APP에서 사용 되는 데이터 량은 400MB 미만입니다.
댓글 입력