Search Engine/hadoop2008. 6. 16. 17:17

출처: http://www.jaso.co.kr/153

Google의 Map-Reduce 논문 마지막에 보면 성능테스트 결과를 적어 놓은 부분이 있다.
Grep에 대해 1764node로 64MB * 15,000 Task로 수행했다라고 한다.
이것은 약 930GB의 텍스트 파일에서 특정 단어가 포함된 라인을 찾아 내는 작업을 수행시켰다라는 말이다.
레코드는 10의 10 승 개이다.
논문에서는 1764 node로 약 150초 정도 걸렸다고 한다. DB의 테이블로 생각하면 10의 10승개의 레코드가 있는 테이블의 전체 데이터를 index scan이 아닌 full scan하는데 150초 정도 걸렸다는 것이다.

그럼 hadoop의 경우는 어떨까? 테스트 장비가 1700대 이상 없는 관계로 테스트 데이터를 축소시켜 보자.

1764node로 930GB면 10node인 경우에는 5G 정도 돌려보면 된다. 물론 이것은 Map&Reduce를 실행시키는 클러스터가 Node의 증가나 Task의 증가에 선형적으로 반응한다는 전제조건이 붙는다.
결론은 hadoop으로 5G 정도를 10대에서 수행시키면서 100 ~ 150초 사이에 수행된다. CPU가 조금 더 좋아졌다라는 것을 감안하면 거의 구글과 같은 수준이다.

Hadoop 개발자들에게 고맙다라는 인사라도 해야될 것 같은데...



Posted by BAGE