하둡 클러스터.빠른 머신 2개, 중간 머신 4개, 느린 머신 8개?

StackOverflow https://stackoverflow.com/questions/976250

  •  13-09-2019
  •  | 
  •  

문제

우리는 Hadoop 클러스터에만 사용할 새 하드웨어를 구매할 예정인데 무엇을 구매해야 할지 막막합니다.예산이 5,000달러라고 가정하면, 매우 멋진 기계 두 대를 각각 $2500, 4개를 각각 $1,200, 또는 8개를 각각 약 $600에 구입해야 할까요?Hadoop은 더 느린 머신에서 더 잘 작동할까요, 아니면 훨씬 더 빠른 머신에서 더 잘 작동할까요?아니면 대부분의 경우처럼 "상황에 따라" 달라지나요?:-)

도움이 되었습니까?

해결책

일반적으로 Hadoop이 덜 강력한 몇 가지 추가 시스템을 확보하는 것이 더 좋습니다.16GB 이상의 RAM과 듀얼 쿼드 코어 CPU를 갖춘 데이터노드를 거의 볼 수 없으며 종종 그보다 작습니다.

항상 네임노드(마스터)로 실행해야 하며, 일반적으로 클러스터가 작기 때문에 가능하더라도 동일한 상자에서 데이터노드(워커/슬레이브)를 실행하지 않습니다.하지만 그렇지 않다고 가정하면 2개의 머신을 확보하면 작업자 노드가 1개만 남게 되어 목적이 다소 무색해집니다.(완전히 그런 것은 아닙니다. 슬레이브에서 4-8개의 작업을 병렬로 실행할 수 있기 때문입니다.)

동시에 1000개의 486 클러스터를 갖고 싶지는 않습니다.예산이 5,000달러라면 균형을 맞추고 1,200달러짜리 기계 4대를 만들겠습니다.이는 개별 성능 측면에서 적절한 기준을 제공하고, 작업을 배포할 3개의 데이터노드를 갖게 되며, 필요한 경우 클러스터를 확장할 수 있는 공간을 갖게 됩니다.

명심해야 할 사항:데이터 노드당 여러 맵 또는 축소 작업을 실행해야 하며 이는 여러 JVM이 동시에 실행된다는 의미입니다.최소한 4GB, 바람직하게는 8GB 램을 얻으려고 노력할 것입니다.대부분의 MR 작업이 IO 바인딩되어 있으므로 CPU는 덜 중요합니다.1200달러 목표 가격으로 이와 같은 기계를 얻을 수 있으므로 그것이 내 투표입니다.

다른 팁

간단히 말해서, 프로세서 코어와 디스크 수를 최대화하려고 합니다.신뢰성과 품질을 희생할 수 있지만, 신뢰성 문제가 너무 많기 때문에 가장 저렴한 하드웨어를 구입하지 마십시오.

Dell 2xCPU 4코어 Dell 서버를 사용했으므로 상자당 코어는 8개입니다.상자당 16GB 메모리(코어당 2GB)는 작업과 디스크 버퍼링 모두에 메모리가 필요하기 때문에 약간 낮습니다.5x500GB 하드 드라이브, 대신 테라바이트 이상의 드라이브를 선택했으면 좋았을 것입니다.

드라이브의 경우 더 비싸고 빠르며 작고 신뢰할 수 있는 드라이브보다는 저렴하고 느리며 신뢰할 수 없는 대용량 드라이브를 구입하는 것이 제 생각입니다.디스크 처리량에 문제가 있는 경우 메모리를 늘리면 버퍼링에 도움이 됩니다.

이것은 아마도 여러분이 보고 있는 것보다 더 강력한 구성일 것입니다. 그러나 더 많은 상자를 구입하는 것보다 코어와 드라이브를 최대화하는 것이 일반적으로 좋은 선택입니다. 즉, 전력 비용이 더 저렴하고 관리가 더 쉽고 일부 작업의 경우 더 빠릅니다.

드라이브가 많을수록 코어당 동시 디스크 처리량이 많아지므로 코어 수만큼 드라이브를 갖는 것이 좋습니다.벤치마킹에 따르면 RAID 구성은 JBOD 구성보다 느리고(드라이브를 마운트하고 Hadoop의 부하를 분산시키는 것만으로도 충분함) JBOD도 더 안정적이라는 것을 알 수 있습니다.

마지막!ECC 메모리를 구입하세요.Hadoop은 메모리를 통해 테라바이트 단위의 데이터를 푸시하며 일부 사용자는 비ECC 메모리 구성으로 인해 테라바이트 크기의 데이터 세트에서 단일 비트 오류가 발생할 수 있다는 사실을 발견했습니다.이러한 오류를 디버깅하는 것은 악몽입니다.

이 프레젠테이션을 살펴 보는 것이 좋습니다. http://www.cloudera.com/hadoop-training-thinking-at-scale여기에 다양한 프로와 사기가 설명되어 있습니다.

답은 클러스터 성장 및 사용중인 네트워킹 기술에 대한 귀하의 기대에 달려 있다고 생각합니다. 1GB 이더넷으로 괜찮은 경우 기계 유형이 덜 중요합니다. 동시에 - 10GBIT 이더넷을 원한다면 네트워킹 비용을 줄이기 위해 더 적은 수의 더 나은 기계를 선택해야합니다.

다른 참조 : http://hadoopilluminated.com/hadoop_book/hardware_software.html(면책 조항 : 저는이 무료 Hadoop 책의 공동 저자입니다)

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top