16.11.16

Apache Hadoop 3.0 주요 기능

Apache Hadoop 3.0.0-alpha1는 이전 Hadoop 2.x를 넘어 중요한 강화 기능들을 담고 있습니다. 따라서, 내년에 출시될 Hadoop 3.0에 대한 기대감이 커지고 있으며, 주요 기능에 대한 소개를 진행합니다.

Hadoop 3.0의 주요 기능들


1. Minimum required Java version increased from Java 7 to Java 8

   모든 Hadoop JAR 파일들이 Java 8에서 compile되고 있습니다. Java 7 또는 이전 버전는 Java 8로 upgrade가 필요합니다.

2. Support for erasure encoding in HDFS

   Erasure Coding 은 안정성을 보장하는 데이터 저장 방식의 하나로, 일반적으로 3배의 오버헤드를 갖는 HDFS 의 복제 방식(replica 3)과 비교하여 약 1.4배의 오버헤드 만으로 데이터를 저장하는 것이 가능합니다. 데이터 저장을 위해 원천 데이터의 3배 크기 저장 공간이 필요하다는 것은 하둡을 통하여 비용 효율적인 인프라 구성을 하는 부분에 있어 가장 공격을 당하는 요소 중 하나 였는데, Erasure Coding 기능을 배포함으로 인해 이러한 논란은 완전히 종결될 것으로 보이며, 현재 운영중인 하둡 클러스터의 저장공간 확보에도 크게 도움이 될 것입니다.

3. YARN Timeline Service v.2

   YARN Timeline Service v.2 에서는 v.1 에서 가지고 있던 두가지 큰 문제점을 개선했는데, 첫번째는 데이터의 쓰기와 쓰기를 HBase 를 활용하여 분산처리 함으로써 확장성과 신뢰성을 확보한 것이며, 두번째는 flows 와 aggregation 을 통해 YARN 애플리케이션에 대한 단계별 정보를 확인하는 기능의 사용성을 개선한 것 입니다.
YARN 애플리케이션의 flows 혹은 논리적인 레벨 기준의 정보를 알기 원합니다. 이번 업그레이드를 통해 위의 flows 기준의 metrics 에 대한 aggregation 까지 지원을 하기 때문에 YARN 애플리케이션 들의 각 단계별 상태 정보를 수집/관리하고 최적화를 하는데 있어 매우 도움이 될 것으로 생각됩니다.

4. Shell script rewrite

   Hadoop Shell script가 오래된 버그 해결을 우해 재작성되었고 새로운 기능들을 포함합니다.

5. MapReduce task-level native optimization

   MapReduce 수행 시 셔플 과정에서 발생하는 map output collector 의 정렬 부분을 C++로 구현된 native 프로그램을 JNI(Java Native Interface) 로 호출하는 것을 지원하기 시작하면서 약 30% 이상의 성능을 개선합니다.

6. Support for more than 2 NameNodes.

   하둡 3.0 에서는 두개 이상의 NameNode 를 Running 상태(Active/Passive)로 운영할 수 있는 설정이 가능합니다. HA 방식은 Quorum Journal Manager (QJM) 를 이용하는 방식과 Network File System (NFS) 를 이용하는 두가지 방식이 있습니다.
하둡 3.0 에서 Active/Passive NameNode 설정을 통해 NameNode Fail Over 시 발생하는 다운 타임을 최소화하며 가용성을 더 높여줍니다.

7. Default ports of multiple services have been changed.


8. Support for Microsoft Azure Data Lake filesystem connector


9. Intra-datanode balancer


10. Reworked daemon and task heap management


No comments:

Post a Comment