Monday, December 21, 2009

Hadoop reading list

Hadoop을 이해하는데 그리고 Hadoop의 현재 인기를 이해 하는데 도움이 될만한 몇 가지 읽을거리를 소개하겠습니다. 소개에 앞서 본 포스팅은 어디까지나 Hadoop을 깊게 알고 싶은 사람들을 위한 것임을 밝힙니다. Hadoop을 사용하고 배우는데 아래 논문들을 모두 알아야 할 필요는 없습니다.


Hadoop은 단순하게 봤을 때 Hadoop Distributed File System (HDFS) + MapReduce 라고 할 수 있습니다. HDFS는 Google이 발표한 Google File System (GFS)의 구현물이고 MapReduce 역시 Google이 발표한 MapReduce 논문의 구현물입니다. 따라서 이 둘을 잘 이해하기 위해서는 해당 논문에 대한 이해가 필요합니다.

위의 논문들을 읽다보면 MapReduce가 shared-nothing (SN) 구조를 바탕으로 했다는 언급이 나옵니다. SN 구조의 특성과 장단점을 더 자세히 알고 싶다면 다음 논문을 보시면 됩니다.
  • The Case for Shared Nothing Architecture [PDF]
또한 다양한 문헌에서 Hadoop은 Cloud Computing과 같이 자주 언급되는 걸 보실 수 있습니다. Cloud Computing 자체의 정의는 다양할 뿐만 아니라 다소 모호합니다. 그래서 Hadoop 또는 MapReduce와 Cloud Computing간의 관계에 대해 궁금하신 분들이 많을 것 같습니다. 그 궁금증은 다음 논문이 풀어 드립니다.
  • Data Management in the Cloud: Limitations and Opportinuties [PDF]
Hadoop의 단점 또한 잘 파악하고 있어야 적재적소에 이용할 수 있습니다. 다음 논문은 제 개인적인 생각에 다소 편향되어 있지만 Hadoop의 단점을 잘 분석해 주는 논문입니다.
  • A Comparison of Approaches to Large-Scale Data Analysis [PDF]
Hadoop의 인기와 사용사례는 아래 google trends 결과 처럼 매년 크게 증가하고 있습니다. 이에 따른 오픈소스 결과물이나 연구 성과물이 계속 쏟아져 나올 것입니다. 앞으로는 최신 reading list에 대한 posting을 종종 하도록 하겠습니다.


5 comments:

  1. 오옷, 고급정보 감사합니다. :)
    ReplyDelete
  2. 정리 잘 하셨네요. :)
    위의 좋은 글에 약간 더 첨언을 하자면,
    얼마전 부터는 EC2와 같은 Virtualized 환경에서 Resource를 공유할 때 발생하는 여러가지 이슈들과 heterogeneous 한 환경에서 발생하는 이슈들 (예, LATE scheduler - OSDI 08)도 다뤄볼 가치가 많습니다.
    더불어 Hadoop-On-Demand(HOD)과 같은 provisioning tool들도 개선 가능성이 무척 많아 보입니다.
    물론 최근 급격히 학회에서는 관심이 또 멀어지는 듯 보이나, 어찌되었든 앞으로 한참은 더 재밌다는 말이죠. ㅋㅋㅋ
    ReplyDelete
  3. 제가 정리한 논문들은 주로 데이터관리 이슈들을 다룬 것들 입니다. 이쪽 연구들은 parallel db와 경쟁하는 모양새구요. 현재는 parallel db와 mapreduce의 hybrid 시스템이 최선인 것으로 여겨지고 있습니다. 당분간은 이 흐름이 유효할 것 같네요.

    말씀 주신 논문들은 아키텍쳐 관점의 리딩 리스트들인 것 같군요 :) 그쪽에서는 어떤 논의들이 있는지 궁금하네요. 한번 간단한 정리 부탁드려도 될까요?
    ReplyDelete
  4. 넵~ 그럴게요.곧. ㅋㅋㅋ
    ReplyDelete