슬라이드 1

Similar documents
슬라이드 1

HDFS 맵리듀스

슬라이드 1

슬라이드 1

슬라이드 1

DKE Templete

<4D F736F F F696E74202D20B8F9B0EDB5F0BAF15F32B1E220BDC9C8ADB0FAC1A4>

12-file.key

PowerPoint Presentation

슬라이드 1

<30322E F6F7020BCB3C4A1BFCD20BED6C7C3B8AEC4C9C0CCBCC7C0C720B1B8B5BF28B1DDC5C2C8C62C20B1E8BCBCC8B82C20C0CCBBF3C1D8292E687770>

rmi_박준용_final.PDF

Interstage5 SOAP서비스 설정 가이드

본문서는 초급자들을 대상으로 최대한 쉽게 작성하였습니다. 본문서에서는 설치방법만 기술했으며 자세한 설정방법은 검색을 통하시기 바랍니다. 1. 설치개요 워드프레스는 블로그 형태의 홈페이지를 빠르게 만들수 있게 해 주는 프로그램입니다. 다양한 기능을 하는 플러그인과 디자인

FileMaker ODBC and JDBC Guide

02 C h a p t e r Java

01-OOPConcepts(2).PDF

MasoJava4_Dongbin.PDF

07 자바의 다양한 클래스.key

블로그_별책부록

다중 한것은 Mahout 터 닝알 즘몇 를 현 다는것외 들을 현 Hadoop 의 MapReduce 프 워크와결 을 다는것 다. 계산 많은 닝은 컴퓨터의큰메 와연산기 을 만 Mahout 는최대한 MapReduce 기 을활용 터분 다용 졌다.. Mahout 의설 Mahou

Chap12

PowerPoint 프레젠테이션

비긴쿡-자바 00앞부속

* Factory class for query and DML clause creation * tiwe * */ public class JPAQueryFactory implements JPQLQueryFactory private f

신림프로그래머_클린코드.key

1. 자바프로그램기초 및개발환경 2 장 & 3 장. 자바개발도구 충남대학교 컴퓨터공학과

Secure Programming Lecture1 : Introduction

fundamentalOfCommandPattern_calmglow_pattern_jstorm_1.0_f…

PowerPoint 프레젠테이션

FileMaker ODBC and JDBC Guide

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션

ilist.add(new Integer(1))과 같이 사용하지 않고 ilist.add(1)과 같이 사용한 것은 자바 5.0에 추가된 기본 자료형과 해당 객체 자료 형과의 오토박싱/언박싱 기능을 사용한 것으로 오토박싱이란 자바 컴파일러가 객체를 요구하는 곳에 기본 자료형

ch09

Spring Boot/JDBC JdbcTemplate/CRUD 예제

Open Cloud Engine Open Source Big Data Platform Flamingo Project Open Cloud Engine Flamingo Project Leader 김병곤

자바 프로그래밍

Mobile Service > IAP > Android SDK [ ] IAP SDK TOAST SDK. IAP SDK. Android Studio IDE Android SDK Version (API Level 10). Name Reference V

5장.key

<4D F736F F F696E74202D20C1A63234C0E520C0D4C3E2B7C228B0ADC0C729205BC8A3C8AF20B8F0B5E55D>

Java

Spring Boot

I T C o t e n s P r o v i d e r h t t p : / / w w w. h a n b i t b o o k. c o. k r

@OneToOne(cascade = = "addr_id") private Addr addr; public Emp(String ename, Addr addr) { this.ename = ename; this.a

Eclipse 와 Firefox 를이용한 Javascript 개발 발표자 : 문경대 11 년 10 월 26 일수요일

Basic Template

API STORE 키발급및 API 사용가이드 Document Information 문서명 : API STORE 언어별 Client 사용가이드작성자 : 작성일 : 업무영역 : 버전 : 1 st Draft. 서브시스템 : 문서번호 : 단계 : Docum

<4D F736F F F696E74202D20C1A63139C0E520B9E8C4A120B0FCB8AEC0DA28B0ADC0C729205BC8A3C8AF20B8F0B5E55D>

untitled

자바-11장N'1-502

gnu-lee-oop-kor-lec10-1-chap10

Microsoft PowerPoint - Java7.pptx

PowerPoint 프레젠테이션

05-class.key

쉽게 풀어쓴 C 프로그래밊

14-Servlet

Network Programming

PowerPoint 프레젠테이션

슬라이드 1

09-interface.key

Spring Data JPA Many To Many 양방향 관계 예제

PowerPoint 프레젠테이션

mytalk

NoSQL

Microsoft PowerPoint - 04-UDP Programming.ppt

04장

JMF3_심빈구.PDF

2

PowerPoint 프레젠테이션

제8장 자바 GUI 프로그래밍 II

자바GUI실전프로그래밍2_장대원.PDF

11 템플릿적용 - Java Program Performance Tuning (김명호기술이사)


JavaGeneralProgramming.PDF

슬라이드 1

Design Issues

Java ...

Analytics > Log & Crash Search > Unity ios SDK [Deprecated] Log & Crash Unity ios SDK. TOAST SDK. Log & Crash Unity SDK Log & Crash Search. Log & Cras

파일로입출력하기II - 파일출력클래스중에는데이터를일정한형태로출력하는기능을가지고있다. - PrintWriter와 PrintStream을사용해서원하는형태로출력할수있다. - PrintStream은구버전으로가능하면 PrintWriter 클래스를사용한다. PrintWriter

Microsoft PowerPoint - Supplement-03-TCP Programming.ppt [호환 모드]

PowerPoint Presentation

Microsoft PowerPoint - 03-TCP Programming.ppt

Connection 8 22 UniSQLConnection / / 9 3 UniSQL OID SET

PowerPoint Presentation

RUCK2015_Gruter_public

11장.key

JAVA PROGRAMMING 실습 08.다형성

Cluster management software

<4D F736F F F696E74202D20C1A63233C0E520B1D7B7A1C7C820C7C1B7CEB1D7B7A1B9D628B0ADC0C729205BC8A3C8AF20B8F0B5E55D>

03장

untitled

4임금연구겨울-지상토론

슬라이드 1

chapter1,2.doc

2힉년미술

빅데이터분산컴퓨팅-5-수정

PowerPoint Presentation

Microsoft PowerPoint - RMI.ppt

/chroot/lib/ /chroot/etc/

Transcription:

Hadoop Tutorial - 설치및실행 2008. 7. 17 한재선 (NexR 대표이사 ) jshan0000@gmail.com http://www.web2hub.com H.P: 016-405-5469

Brief History Hadoop 소개 2005년 Doug Cutting(Lucene & Nutch 개발자 ) 에의해시작 Nutch 오픈소스검색엔진의분산확장이슈에서출발 2006년 Yahoo의전폭적인지원 (Doug Cutting과전담팀고용 ) 2008년 Apache Top-level Project로승격현재 (2008년4월) 0.16.3 release Hadoop Java 언어기반 Apache 라이선스 많은컴포넌트들 HDFS, HBase, MapReduce, Hadoop On Demand(HOD), Streaming, HQL, Hama, Mahout, etc

Hadoop 구조 Nutch: Open Source Search Engine MapReduce: 분산데이터처리시스템 HBase: 분산데이터베이스 HDFS: 분산파일시스템 Google Search MapReduce Bigtable GFS Commodity PC 서버클러스터

Hadoop Versions Version Release 0.16.3 Release 2008.4.16 0.16.4 Release 2008.5.5 0.17.0 Release 2008.5.20 0.17.1 Release 2008.6.23 0.17.2 Not released yet 0.18.0 Not released yet 0.19.0 Not released yet Current stable version

HBase Versions Version Release 0.1.0 Release 2008.3.27 0.1.1 Release 2008.4.11 0.1.2 Release 2008.5.13 0.1.3 Release 2008.6.27 0.2 Not released yet Current stable version

Hadoop Project Issue Tracking http://issues.apache.org/jira/browse/hadoop

Hadoop Project 상황 지난 100 일간생성된이슈와해결된이슈들누적분포

Hadoop 설치 1. hadoop-0.17.1.tar.gz 다운및압축해제 2. conf/hadoop-env.sh 편집 export JAVA_HOME=/usr/java/jdk1.6.0_03 3. conf/hadoop-site.xml 편집 (conf/hadoop-default.xml 에서필요한내용가져와편집 ) <property> <name>hadoop.tmp.dir</name> <value>/home/${user.name}/tmp/hadoop-0.17.1-${user.name}</value> <description>a base for other temporary directories.</description> </property> <property> <name>fs.default.name</name> <value>hdfs://192.168.1.2:9000/</value> </property> <property> <name>mapred.job.tracker</name> <value>192.168.1.2:9001</value> </property> <property> <name>dfs.replication</name> <value>3</value> <!-- set to 1 to reduce warnings when running on a single node --> </property>

Hadoop 설치 4. conf/masters 편집 192.168.1.2 5. conf/slaves 편집 192.168.1.3 192.168.1.4 192.168.1.5 6. ssh pub-key 등록 $ ssh-keygen $ ssh-copy-id -i ~/.ssh/id_rsa.pub id@server // 접속하려는서버의 id/ 주소 7. HDFS format $ bin/hadoop namenode format 8. 실행 $ bin/start-all.sh 9. 정지 $ bin/stop-all.sh % HADOOP_HOME 경로는 master 와 slave 모두동일하게하자. master 에서실행시 slave 들과 rsync 를통해 sync 맞춤 % 문제있는경우 iptable 설정확인 iptable 설정을제거하거나 hadoop 이쓰는포트들을등록

Hadoop 실행 - DFS $ bin/hadoop dfs Usage: java FsShell [-ls <path>] [-lsr <path>] [-du <path>] [-dus <path>] [-count <path>] [-mv <src> <dst>] [-cp <src> <dst>] [-rm <path>] [-rmr <path>] [-expunge] [-put <localsrc>... <dst>] [-copyfromlocal <localsrc>... <dst>] [-movefromlocal <localsrc>... <dst>] [-get [-ignorecrc] [-crc] <src> <localdst>] [-getmerge <src> <localdst> [addnl]] [-cat <src>] [-text <src>] [-copytolocal [-ignorecrc] [-crc] <src> <localdst>] [-movetolocal [-crc] <src> <localdst>] [-mkdir <path>] [-setrep [-R] [-w] <rep> <path/file>] [-touchz <path>] [-test -[ezd] <path>] [-stat [format] <path>] [-tail [-f] <file>] [-chmod [-R] <MODE[,MODE]... OCTALMODE> PATH...] [-chown [-R] [OWNER][:[GROUP]] PATH...] [-chgrp [-R] GROUP PATH...] [-help [cmd]]

Hadoop 실행 - MapReduce 1. 작성한 MapReduce class 들을 jar 파일로묶기 $ jar -cvf wordcount.jar -C wordcount_classes/. 2. DFS에 input 디렉토리생성및 input file들복사 $ bin/hadoop dfs mkdir wordcount/input $ bin/hadoop dfs ls wordcount /user/jshan/wordcount/input <dir> $ bin/hadoop dfs put file01.txt wordcount/input // file01.txt는로컬파일 $ bin/hadoop dfs put file02.txt wordcount/input // file02.txt는로컬파일 $ bin/hadoop dfs ls wordcount/input /user/jshan/wordcount/input/file01.txt <r 1> /user/jshan/wordcount/input/file02.txt <r 1> $ bin/hadoop dfs cat wordcount/input/file01.txt Hello World Bye World $ bin/hadoop dfs cat wordcount/input/file02.txt Hello Hadoop Goodbye Hadoop 3. MapReduce 실행 $ bin/hadoop jar wordcount.jar org.myorg.wordcount /user/jshan/wordcount/input /user/jshan/wordcount/output $ bin/hadoop dfs -cat /user/jshan/wordcount/output/part-00000 Bye 1 Goodbye 1 Hadoop 2 Hello 2 World 2 Source: http://hadoop.apache.org/core/docs/r0.17.1/mapred_tutorial.html

Hadoop MapReduce 프로그래밍 1. package org.myorg; 2. 3. import java.io.ioexception; 4. import java.util.*; 5. 6. import org.apache.hadoop.fs.path; 7. import org.apache.hadoop.conf.*; 8. import org.apache.hadoop.io.*; 9. import org.apache.hadoop.mapred.*; 10. import org.apache.hadoop.util.*; 11. 12. public class WordCount { 13. 14. public static class Map extends MapReduceBase implements Mapper<LongWritable, Text, Text, IntWritable> { 15. private final static IntWritable one = new IntWritable(1); 16. private Text word = new Text(); 17. 18. public void map(longwritable key, Text value, OutputCollector<Text, IntWritable> output, Reporter reporter) throws IOException { 19. String line = value.tostring(); 20. StringTokenizer tokenizer = new StringTokenizer(line); 21. while (tokenizer.hasmoretokens()) { 22. word.set(tokenizer.nexttoken()); 23. output.collect(word, one); 24. } 25. } 26. }

Hadoop MapReduce 프로그래밍 28. public static class Reduce extends MapReduceBase implements Reducer<Text, IntWritable, Text, IntWritable> { 29. public void reduce(text key, Iterator<IntWritable> values, OutputCollector<Text, IntWritable> output, Reporter reporter) throws IOException { 30. int sum = 0; 31. while (values.hasnext()) { 32. sum += values.next().get(); 33. } 34. output.collect(key, new IntWritable(sum)); 35. } 36. } 37. 38. public static void main(string[] args) throws Exception { 39. JobConf conf = new JobConf(WordCount.class); 40. conf.setjobname("wordcount"); 41. 42. conf.setoutputkeyclass(text.class); 43. conf.setoutputvalueclass(intwritable.class); 44. 45. conf.setmapperclass(map.class); 46. conf.setcombinerclass(reduce.class); 47. conf.setreducerclass(reduce.class); 48. 49. conf.setinputformat(textinputformat.class); 50. conf.setoutputformat(textoutputformat.class); 51. 52. FileInputFormat.setInputPaths(conf, new Path(args[0])); 53. FileOutputFormat.setOutputPath(conf, new Path(args[1])); 54. 55. JobClient.runJob(conf); 57. } 58. }

Hadoop DFS 관리도구

Hadoop MapReduce 관리도구