Loading
2014. 9. 29. 02:27 - Phil lee

Piranha: Optimizing Short Jobs in Hadoop

Actually, while taking a note about a paper, I usually write it in English for a reminder. In fact, after doing it, my memory is getting worse than before to remember what I have understand the paper. It seems odd that I forgot what I learnt in detail after taking a note. That's shit.

Korean Version about Piranha VLDB 2013 from Khaled Elmelegy

 

Summary

  • 다 아는 얘기지만, 대다수의 회사들이 like Facebook, Yahoo, Google, and so on분산처리 환경을 위해 Large-scale Map-Reduce / Hadoop 환경을 많이 쓰고 있다. 그리고 예전과 다르게 Higher level languages like Pig, Hive and Jaql 발전되면서 쉽게 분산처리 환경을 Query 할 수 있도록 만들어졌다. 이런 점진적 발전을 통해 다양한 회사들은 이런 Cluster 환경들을 Data warehouse 또는 Central processing units 으로 많이 쓴다.

    하지만 기본 System (Hadoop)은 large-scale jobs에 집중적으로 접목되어 만들어졌지만, 그들의 Workload 대부분은 Small job으로 구성되어있다. 예를 들어서 Yahoo production cluster이다. 이 80% 으로 구성되어 있는 Small Job들은 대부분 Online 또는 Ad Hoc query로 이루어져있다. 이 요인은 Higher level language 발전에 있다. 워낙 Aggregated된 사이즈가 크므로, Single DBMS에서는 수행하기에는 무리가 있다.

     

    기존 Hadoop 환경의 문제점 for Small Jobs

    • Scalability with the respect to the job
    • Reliability so that jobs are fault tolerance
    • Throughput

     

    Piranha's Environment Characterization

    • Small jobs unlikely to suffer from failures and avoids check-pointing intermediate results to disk
    • Piranha's simple fault-tolerance mechanism extending Hadoop to support short jobs with a directed acyclic data flow graph
    • Tasks are self-coordinating instead of relying on Master for coordination.

     

 

Comment

  • 논문을 그렇게 어렵지 않은 논문이었다. 내가 이 분야에 대해서 많이 접해서 그런지 몰라도 다른 논문들과 다르게 그렇게 Technical한 Method들도 나오지 않았고, 저자가 글을 잘 써서 그런 것인지 말을 쉽게 해서 그런 것인지 이해도 6시간 읽은 것 치고 85% 이상은 된 것 같다. 왠지 이 쪽으로 논문을 주제로 잡고 싶다는 생각이 들었다. Distributed System의 전체적인 성향을 다 파악해서 Optimal한 알고리즘이나 메커니즘을 만들어 내는 것보다 오히려 어떤 특정한 상황을 발견해서, 물론 Yahoo처럼 분산처리 환경이 자유롭게 쓰이면서 파악할 수 있지는 않지만, 그 상황에 맞춰서 기존에 있던 Hadoop 환경을 이러한 방향으로 개선해서 쓰는 것이다.

    일단 중요한 것은 'Majority' 인 것 같다. 대다수라는 단어를 이용해서 어느 환경에서 어떤 것들이 주어져서 그 상황에 맞게 영리하게 단점을 찾기보다는 그 환경을 장점을 만드는 방법도 생각해야 하는 것 같다.