2014-04-29 3 views
6

내 작업에 얼마나 많은 MASTER, CORE, TASK 인스턴스가 최적인지 알아 내려고합니다. 어떻게 알아낼 수 있는지 설명하는 튜토리얼을 찾을 수 없었습니다.hadoop 인스턴스 유형 사이의 올바른 부분을 찾는 방법

  • 2 개 이상의 코어 인스턴스가 필요한지 어떻게 알 수 있습니까? EMR의 콘솔에서 볼 수있는 "증상"은 무엇입니까? 지금까지 1 * core + 7 * 작업 인스턴스로 동일한 작업을 시도했을 때 8 * core와 거의 비슷하게 실행되었지만 나에게 의미가 없습니다. 또는 IO가 너무 작아서 제 작업이 CPU에 너무 많이 바인딩되어있을 가능성이 있습니까? (아파치 로그 파일을 CSV 파일로 구문 분석하는지도 전용 작업이 있음)

  • 두 개 이상의 마스터 인스턴스가있는 것과 같은 것이 있습니까? 그렇다면 언제 필요합니까? 내 마스터 노드가 거의 95 %의 시간 동안 다른 노드가 작업 (0 % CPU)을 수행하기를 기다리고 있기 때문에 궁금하다.

  • 마스터 노드와 코어 노드가 동일 할 수 있습니까? 1 및 유일한 노드가 모든 작업을 수행 할 때 마스터 전용 클러스터를 가질 수 있습니다. 마스터 노드와 코어 노드가 하나 인 클러스터를 가질 수있는 것이 논리적 인 것처럼 보이며 나머지는 태스크 노드이지만 EMR로는 그렇게 설정할 수없는 것처럼 보입니다. 왜 그런가요?

답변

1

마스터 인스턴스는 관리자로 작동하고 전체 클러스터에 들어있는 모든 것을 조정합니다. 따라서 실행하는 모든 작업 흐름에 존재해야하지만 한 인스턴스 만 있으면됩니다. 단일 노드 클러스터를 배포하지 않는 경우 (마스터 인스턴스가 유일한 노드 만 실행하는 경우) 실제 MapReducing과 관련하여 무거운 작업을 수행하지 않으므로 인스턴스가 강력한 시스템 일 필요는 없습니다.

실제로 필요한 핵심 인스턴스의 수는 작업 및 처리 속도에 따라 다르므로 정답은 하나만 있습니다. 좋은 점은 코어/타스크 인스턴스 그룹의 크기를 조정할 수 있기 때.에 작업이 느린 것으로 판단되면 실행중인 프로세스에 인스턴스를 추가 할 수 있습니다.

핵심 인스턴스와 태스크 인스턴스 그룹 간의 중요한 차이점 중 하나는 핵심 인스턴스가 실제 데이터를 HDFS에 저장한다는 것입니다. 반면에 태스크 인스턴스는 그렇지 않습니다. 차례로 핵심 인스턴스 그룹 만 늘릴 수 있습니다 (실행중인 인스턴스를 제거하면 해당 인스턴스의 데이터가 손실 될 수 있기 때문입니다). 반면, 타스크 인스턴스를 추가하거나 제거하여 타스크 인스턴스 그 룹을 늘리거나 줄일 수 있습니다.

그래서이 두 유형의 인스턴스를 사용하여 작업의 처리 능력을 조정할 수 있습니다. 일반적으로, 코어 인스턴스는 온 디맨드 인스턴스를 사용하므로 항상 실행 중이어야하며 잃어 버릴 수 없으므로 인스턴스 인스턴스를 사용하면 작업 인스턴스가 전체 작업 (예 : 작업 인스턴스에 의해 완료되지 않은 작업)을 죽이지 않기 때문에 인스턴스 인스턴스를 사용합니다 핵심 인스턴스에서 재실행됩니다. 이는 스팟 인스턴스를 사용하여 대규모 클러스터를 비용 효율적으로 실행할 수있는 한 가지 방법입니다.

각 인스턴스 유형의 일반적인 설명은 여기에 있습니다 :

http://docs.aws.amazon.com/ElasticMapReduce/latest/DeveloperGuide/InstanceGroups.html

또한,이 비디오를 효과적으로 EMR을 사용하는 데 유용 할 수 있습니다

https://www.youtube.com/watch?v=a5D_bs7E3uc

+2

내가 아는 모든이.하지만 1 코어가 충분하고 모든 REST가 8 또는 64 또는 200이되도록 할 수 있는지를 어떻게 알 수 있습니까? 아니면 통과 할 경우 비율이 너무 커야합니다. "충분히"핵심 인스턴스가 없기 때문에 핵심 인스턴스의 IO (모든 작업 인스턴스가 이걸 이해하면 사용하는)가 병목이 될 것이므로 – Gavriel

+0

오, 알 수 있습니다. 그것은 흥미로운 질문이지만, 나는 그것을 결코 염두에 두지 않은 것을 두려워합니다. 나는 더 많은 작업 노드를 추가하여 효율성이 떨어지는 작업을 본 적이 없다고 생각하지만 그저 내 직업 일 수 있습니다. EMR 콘솔에서 작업을 모니터링하고 장기 실행 작업에서 코어/작업 그룹의 크기를 조정하여 스스로 해결할 수 있습니다. –

+2

네,하지만 제 질문은 정확히 이것입니다 : EMR 콘솔의 어떤 조치가 이것과 관련이 있습니까? 내가 한 유일한 일은 다른 구성으로 동일한 작업을 실행하고 소요 시간을 측정하는 것이지만 너무 정확하지는 않습니다. – Gavriel