Hadoop ch5
Upcoming SlideShare
Loading in...5
×
 

Hadoop ch5

on

  • 352 views

 

Statistics

Views

Total Views
352
Views on SlideShare
352
Embed Views
0

Actions

Likes
0
Downloads
5
Comments
0

0 Embeds 0

No embeds

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

Hadoop ch5 Hadoop ch5 Presentation Transcript

  • DEVELOPING A MAPREDUCE APPLICATION CHAPTER 5 13년 8월 11일 일
  • 13년 8월 11일 일
  • 13년 8월 11일 일
  • 13년 8월 11일 일
  • 13년 8월 11일 일
  • 설정 가능 API 하둡 컴포넌트는 설정 API를 통하여 설정 가능함. Configuration 클래스는 속성 과 값의 집합. 각 속성은 String 이며, 값은 여러 타입이 올 수 있음. 13년 8월 11일 일
  • 리소스 결합하기 13년 8월 11일 일
  • 다양한 확장 설정은 시스템 속성 및 다른 속성들에 의해 정의될 수 있다. 13년 8월 11일 일
  • 개발 환경 설정 - POM Maven POM을 통한 의 존성 설정. hadoop-core hamcrest-all mrunit 13년 8월 11일 일
  • 설정 관리 하둡 개발시 로컬(pseudodistributed), 클러스터를 변경하면 진행. 설정 파일을 하둡 설치 디렉토리 외부에 두고, 하둡버전간 변환하여 사용. 13년 8월 11일 일
  • 설정 파일 hadoop-local.xml - Filesystem과 Jobtracker 용 디폴트 설정. hadoop-localhost.xml - 로컬에서 네임노드와 잡트랙커 설정. hadoop-cluster.xml - 클러스터내 네임노드와 잡트래커 설정. 13년 8월 11일 일
  • 전역은 $HADOOP_INSTALL 설정. Standalone or pseudodistributed 13년 8월 11일 일
  • HELPER 클래스 GenericOptionsParser - 커맨드라인 해석과 Configuration 설정에 사용. - Tool, ToolRunner를 사용할 것. Tool, ToolRunner - 13년 8월 11일 일
  • MRUNIT 13년 8월 11일 일
  • 13년 8월 11일 일
  • REDUCER 13년 8월 11일 일
  • 로컬에서 수행하기 13년 8월 11일 일
  • 13년 8월 11일 일
  • 13년 8월 11일 일
  • 로컬에서 JOB 수행하기 13년 8월 11일 일
  • 13년 8월 11일 일
  • 13년 8월 11일 일
  • 클러스터에서 동작하기 로컬에서는 단일 JVM에서 Job이 수행되고, 모든 클래스가 클래스 패스에 있으므로, 잘 동작함. 분산설정에서는, Job 클래스는 JAR 파일로 패킹되어 클러스터로 전송해야 함. setJarByClass() 메소드에서 클래스 셋을 포함하는 드라이버 의 클래스패스에서 JAR파일을 검색하므로서 하둡은 job JAR를 찾는다. 13년 8월 11일 일
  • Ant 또는 Maven 같은 빌드툴을 이용해서 JAR 파일을 생성. % mvn package -DskipTests JAR 에 하나의 job이 있다면, JAR 파일 manifest에서 main 클래스가 수행되도록 해야 함. main 클래스가 manifest에 존재하지 않으면, 커맨드라인에 지정해야 함. 13년 8월 11일 일
  • 임의의 종속적인 JAR 파일은 job JAR 파일안에 lib 서브디 렉토리에 패킹될 수 있음. 리소스 파일은 classes 서브디렉토리에 패킹됨. 13년 8월 11일 일
  • JOB 개선하기 성능 개선을 위해서 프로파일하거나 옵티마이즈하기전에 확인해야 할 체크리스트 Mapper의 수 작은 수의 Mapper로 오래 수행되도록 Reducers의 수 Reduce Slot의 수보다 작게 Reducers 를 유지 Combiners 데이터 전송을 줄이기 위해 Combiner를 이용할 수 있는 지 검사 Custom serialization Writable 또는 comparator를 커스터마이징했다면, RawComparator를 구현할 것. Shuffle tweaks MapReduce Shuffle에서 메모리 관련 성능을 증가시킬수 있다. 13년 8월 11일 일
  • 태스크 프로파일링 로컬 Job에 속한 태스크를 프로파일링 하는 것이 쉽다. 다만 로컬과 클러스터는 동작 방식의 차이가 있으므로 주의해야 함. HPROF Profiler 13년 8월 11일 일