SlideShare une entreprise Scribd logo
1  sur  25
Distributed Programming Framework



           @brian02k
Who am I?



         Back-end Developer
      Network Communication
Distributed Programming Framework
      ShopN/Tmoney/Gateway
   DataCenter/Cloud Computing
- About Hadoop

- Hadoop Components

- MapReduce

- Pig

- Hive

- Case studies
what is hadoop?


 “Flexible and available architecture for large scale
 computation and data processing on a network of
               commodity hardware”

           opensource + commodity hardware
                 = IT costs reduction
History of hadoop

- 오픈소스 자바 검색엔진 Lucene, Nutch 프로젝트 후속으로
 만든 오픈소스 분산처리 플랫폼
 cf) Hadoop 이름은 더그커팅의 아들이 가지고 올던 노란 코끼리


- 야후는 2006 년에 더그를 채용했고, Hadoop 을 오픈소스 프로젝트
로 Start 함. 2년 후 Apache Top Level 프로젝트가 됨

- Hadoop running on a 10,000+ core Linux cluster
what is hadoop?
- Yahoo, Facebook, Twitter... Scaling Challenges
- Accessible / Robust / Simple / Scalable
- High-end Machine vs Cluster of Commodity Machines
- SETI@home : move data between client and server
- Hadoop        : move-code-to-data philosophy

- RDB vs Hadoop : Scale-up / Table vs Key-Value / Online, Offline
news
- MS, 윈도용 하둡 아이스토브
http://m.zdnet.co.kr/news_view.asp?artice_id=20120228154036

- 클라우데라, IBM과도 협력…하둡 표준 되나 http://m.zdnet.co.kr/news_view.asp?
artice_id=20120427091552

- 하둡창시자, 더그커팅, 하둡은 관계형 데이터를 위협하지 않는다.
http://techit.co.kr/3239

- 빅데이터로 비주얼 http://visualize.yahoo.com/core/

- 청와대 지하벙커에 스마트워룸(Smart Warroom)을 만들고, 국가경제를 다루는 주요
기관에도 스마트워룸과 비슷한 빅데이터 분석하에 위기시나리오 대응팀을 구성
http://www.wikitree.co.kr/main/news_view.php?id=66849
hadoop components

               ETL(Extract,	 Transform,	 Load)



                ETL               BI Report      RDBMS

                 Pig                   Hive       Sqoop


              Hbase                    MapReduce
                                   (Job Sche. / Task Exec.)

                                  HDFS
              (Hadoop Distributed File System)
hadoop components
- HDFS (Hadoop Distributed File System) : A
distributed filesystem designed for storing very
large files with streaming data access running on
clusters of commodity hardware.




                                                  source : http://www.cloudera.com/what-is-hadoop/hadoop-overview/
hadoop components

- NameNode : 파일의 메타데이터 (데이터 위치 등)

/user/chunk/data1 takes up 3 blocks (1,2,3)
/user/james/data2 takes up 2 blocks (4,5)
replication factor : 3




                                              !
hadoop components
- Secondary NameNode(SNN) : NameNode 장애시 데
이터 손실 최소화


 FsImage : 블록에 대한 메타데이터 정보
 Edit log : 파일 메터데이터 변경 사항을 기록
 SNN 은 주기적으로 Edit log 와 FsImage 를 Merge
 Data loss 는 NameNode 실패시 여전히 존재
 Edit log 를 원격 NFS 에 추가적으로 기록하고, 장애시 해
 당 파일을 가지고 SNN 을 구동하여 서비스 제공(그러나
 성능 이슈 및 수작업 복구)
hadoop components
- Jobtracker
- job 스케쥴링
- job 을 여러 노드에 할당
- 실행되는 모든 Task 를 모니터링
- 실패한 Task 재 실행
hadoop components
- TaskTracker : JobTracker 에게 할당받은 Task 를 해당 슬레이브 노드에서
처리될 수 있도록 함

- 슬레이브 노드에 1 개 존재, 슬레이브 노드에 할당된 작업의 실행을 담당

- JobTracker 와 주기적 통신

- Mapper/Reducer 태스크를 분리된 jvm 하에 실행
MapReduce
- MapReduce job 은 대용량의 입력 데이터 세트를 여러 덩어리들로 나누고, 해당 덩어리들
을 병렬적으로 "Map" 를 통해 처리, Job 의 입력은 입력 스플릿이라고 부르는 고정된 크기
의 조각으로 나눈다
- Map 의 결과물을 Reduce 태스크로 전달하여 처리
- Combiner 를 사용하여 Reduce 로 보내는 데이터를 줄임 (네트워크 대역폭 고려)
cf) Combiner
년도별 특정 달의 평균 기온 정보
(2000, 20)
(2000, 30)
(2000, 10)
--------------
(2000, 5)
(2000, 22)
(2000, 20

가장 더운 달의 기온은?
Map 수행 결과 : (2000, [20,30,10,5,22,20])

미리 최고 기온 계산
(2000, 30), (2000, 22) -> (2000, [30,20])
MapReduce

- Mapper : 입력 키/값 쌍을 가지고 중간단계의 키/값 쌍을 만든다.
- Partitioner : Mapper 의 결과를 다수의 Reducer 로 전달하기 위해서 해
당 결과를 여러 부분으로 나눔
MapReduce
- Reducer : Mapper 를 통해 생성된 중간 데이터 셋(키-값쌍)을 입력으
로 받아, 보통 동일한 키를 가진 세트가 동일한 Reducer 로 들어가 어
떤 연산을 수행한 뒤에, 그 결과를 출력하게 되는데 보통은 어떤 요약
된 정보 형태를 가짐

- Reducer 는 3가지 주요 단계
 (shuffle, sort, reduce) 를 가짐

- Shuffle : Mapper 의 결과 데이터
셋을 적절한 노드 (Reducer) 로 패치

- Sort : MapReduce 프레임웍은
 Reducer 입력 데이터를 키 별로
정렬해서 그룹화

- Reduce : <키, (값 리스트)> 마다 reduce(..) 메소드가 호출
word counting 예제
- 단어세기에 포함시키지 않을 패턴을 DistributedCache 에 등록
- wordcount.case.sensitive

참고 : http://blog.eduby.me/2012/05/mapreduce-8-wordcount2.html
Pig
MapReduce
  - 하나의 입력, 두 단계의 데이터 처리 흐름
  - 조인 : 코드 길어지고, 에러 발생하기 쉬움
  - N 단계의 job 들은 관리하기 어렵다.
  - Java 는 컴파일이 필요
  - 프로그래밍 하기가 어렵다.

- High-level 언어
- 프로그램을 간단히
- Yahoo, Hadoop job 의 40% Pig 로 처리
- Pig Latin 스크립트, 컴파일러가 자동으로 최적화 수행
- 관계형 데이터 처리 스타일의 오퍼레이션(filter, union, group, join)을 지원
Pig
Hive
- 데이터 웨어하우징 패키지, 다수의 사용자 및 대용량 로그
데이터 처리를 위해 페이스북에서 먼저 Hive를 만들기 시작

- 구조화된 데이터를 쿼리하고, 다소 복잡한 MapReduce 프로
그램 대신 HiveQL을 사용해서 쉽게 데이터를 처리

- 테이블, 행, 컬럼, 스키마 같이 쉽게 배울 수 있는, 관계형 데
이터베이스와 유사한 개념을 사용
Hive
hive> CREATE TABLE cite (citing INT, cited INT)
  > ROW FORMAT DELIMITED
  > FIELDS TERMINATED BY ','
  > STORED AS TEXTFILE;

 hive> LOAD DATA LOCAL INPATH 'cite75_99.txt'
  > OVERWRITE INTO TABLE cite;
 Copying data from file:/root/cite75_99.txt
 Loading data to table cite

 hive> SELECT * FROM cite LIMIT 10;
 OK
 NULL NULL
 3858241 956203
 ...
 3858241 3634889
 3858242 3668705
 3858242 3707004
Case Studies

뉴욕	 타임즈	 보관소에	 있는	 천백만	 개의	 이미지	 문서	 변환

- 1851년과 1922년 사이에 있는 모든 종류의 기사
- 이미지로 변환할 기사가 총 천백만 개, 총 4테라바이트의 데이터
- Hadoop framework, Amazon Web Servcies, S3 이용, 100개의 노드
- 24시간 동안 수행, 1개의 인스턴스를 1시간 사용했을 때 비용 : 10센
트, 총 100개 인스턴스, 240달러 지출
Case Studies

차이나 모바일에서의 데이터 마이닝
- 대규모 확장성: 하둡을 이용해서 손쉽게 확장할 수 있는 구조
- 저 비용: 범용 PC와 무료 S/W를 이용해 구성
- 커스터마이징: 특정 비즈니스 요구사항을 만족시키는 애플리케이션
- 쉬운 사용: 사용자에게 상용 툴과 유사한 그래픽 인터페이스 제공
Case Studies

스텀블어폰
- Apache 로그 파일 수집과 사용자 세션 분석을 포함해 여러 분석 태스크를 위해
 이러한 하둡의 분산 처리 특성을 이용

Contenu connexe

Tendances

하둡 좋은약이지만 만병통치약은 아니다
하둡 좋은약이지만 만병통치약은 아니다하둡 좋은약이지만 만병통치약은 아니다
하둡 좋은약이지만 만병통치약은 아니다민철 정민철
 
Hadoop과 SQL-on-Hadoop (A short intro to Hadoop and SQL-on-Hadoop)
Hadoop과 SQL-on-Hadoop (A short intro to Hadoop and SQL-on-Hadoop)Hadoop과 SQL-on-Hadoop (A short intro to Hadoop and SQL-on-Hadoop)
Hadoop과 SQL-on-Hadoop (A short intro to Hadoop and SQL-on-Hadoop)Matthew (정재화)
 
하둡 타입과 포맷
하둡 타입과 포맷하둡 타입과 포맷
하둡 타입과 포맷진호 박
 
Java 초보자를 위한 hadoop 설정
Java 초보자를 위한 hadoop 설정Java 초보자를 위한 hadoop 설정
Java 초보자를 위한 hadoop 설정HyeonSeok Choi
 
하둡 알아보기(Learn about Hadoop basic), NetApp FAS NFS Connector for Hadoop
하둡 알아보기(Learn about Hadoop basic), NetApp FAS NFS Connector for Hadoop하둡 알아보기(Learn about Hadoop basic), NetApp FAS NFS Connector for Hadoop
하둡 알아보기(Learn about Hadoop basic), NetApp FAS NFS Connector for HadoopSeungYong Baek
 
20141029 하둡2.5와 hive설치 및 예제
20141029 하둡2.5와 hive설치 및 예제20141029 하둡2.5와 hive설치 및 예제
20141029 하둡2.5와 hive설치 및 예제Tae Young Lee
 
하둡 (Hadoop) 및 관련기술 훑어보기
하둡 (Hadoop) 및 관련기술 훑어보기하둡 (Hadoop) 및 관련기술 훑어보기
하둡 (Hadoop) 및 관련기술 훑어보기beom kyun choi
 
An introduction to hadoop
An introduction to hadoopAn introduction to hadoop
An introduction to hadoopMinJae Kang
 
Tajo and SQL-on-Hadoop in Tech Planet 2013
Tajo and SQL-on-Hadoop in Tech Planet 2013Tajo and SQL-on-Hadoop in Tech Planet 2013
Tajo and SQL-on-Hadoop in Tech Planet 2013Gruter
 
about hadoop yes
about hadoop yesabout hadoop yes
about hadoop yesEunsil Yoon
 
Expanding Your Data Warehouse with Tajo
Expanding Your Data Warehouse with TajoExpanding Your Data Warehouse with Tajo
Expanding Your Data Warehouse with TajoMatthew (정재화)
 
SW1차 프로젝트 Hive 최종발표
SW1차 프로젝트 Hive 최종발표SW1차 프로젝트 Hive 최종발표
SW1차 프로젝트 Hive 최종발표Sinhyub Kim
 
하둡 HDFS 훑어보기
하둡 HDFS 훑어보기하둡 HDFS 훑어보기
하둡 HDFS 훑어보기beom kyun choi
 

Tendances (20)

Apache hive
Apache hiveApache hive
Apache hive
 
Hive begins
Hive beginsHive begins
Hive begins
 
하둡 좋은약이지만 만병통치약은 아니다
하둡 좋은약이지만 만병통치약은 아니다하둡 좋은약이지만 만병통치약은 아니다
하둡 좋은약이지만 만병통치약은 아니다
 
Hadoop과 SQL-on-Hadoop (A short intro to Hadoop and SQL-on-Hadoop)
Hadoop과 SQL-on-Hadoop (A short intro to Hadoop and SQL-on-Hadoop)Hadoop과 SQL-on-Hadoop (A short intro to Hadoop and SQL-on-Hadoop)
Hadoop과 SQL-on-Hadoop (A short intro to Hadoop and SQL-on-Hadoop)
 
하둡 타입과 포맷
하둡 타입과 포맷하둡 타입과 포맷
하둡 타입과 포맷
 
Java 초보자를 위한 hadoop 설정
Java 초보자를 위한 hadoop 설정Java 초보자를 위한 hadoop 설정
Java 초보자를 위한 hadoop 설정
 
하둡 알아보기(Learn about Hadoop basic), NetApp FAS NFS Connector for Hadoop
하둡 알아보기(Learn about Hadoop basic), NetApp FAS NFS Connector for Hadoop하둡 알아보기(Learn about Hadoop basic), NetApp FAS NFS Connector for Hadoop
하둡 알아보기(Learn about Hadoop basic), NetApp FAS NFS Connector for Hadoop
 
하둡관리
하둡관리하둡관리
하둡관리
 
hadoop ch1
hadoop ch1hadoop ch1
hadoop ch1
 
20141029 하둡2.5와 hive설치 및 예제
20141029 하둡2.5와 hive설치 및 예제20141029 하둡2.5와 hive설치 및 예제
20141029 하둡2.5와 hive설치 및 예제
 
하둡 (Hadoop) 및 관련기술 훑어보기
하둡 (Hadoop) 및 관련기술 훑어보기하둡 (Hadoop) 및 관련기술 훑어보기
하둡 (Hadoop) 및 관련기술 훑어보기
 
An introduction to hadoop
An introduction to hadoopAn introduction to hadoop
An introduction to hadoop
 
Hdfs
HdfsHdfs
Hdfs
 
HBase 훑어보기
HBase 훑어보기HBase 훑어보기
HBase 훑어보기
 
Tajo and SQL-on-Hadoop in Tech Planet 2013
Tajo and SQL-on-Hadoop in Tech Planet 2013Tajo and SQL-on-Hadoop in Tech Planet 2013
Tajo and SQL-on-Hadoop in Tech Planet 2013
 
about hadoop yes
about hadoop yesabout hadoop yes
about hadoop yes
 
Expanding Your Data Warehouse with Tajo
Expanding Your Data Warehouse with TajoExpanding Your Data Warehouse with Tajo
Expanding Your Data Warehouse with Tajo
 
SW1차 프로젝트 Hive 최종발표
SW1차 프로젝트 Hive 최종발표SW1차 프로젝트 Hive 최종발표
SW1차 프로젝트 Hive 최종발표
 
Hadoop발표자료
Hadoop발표자료Hadoop발표자료
Hadoop발표자료
 
하둡 HDFS 훑어보기
하둡 HDFS 훑어보기하둡 HDFS 훑어보기
하둡 HDFS 훑어보기
 

En vedette

The State of SDN, SDDC & Cloud
The State of SDN, SDDC & CloudThe State of SDN, SDDC & Cloud
The State of SDN, SDDC & CloudTufin
 
[Td 2015]microsoft 개발자들을 위한 달콤한 hadoop, hd insight(최종욱)
[Td 2015]microsoft 개발자들을 위한 달콤한 hadoop, hd insight(최종욱)[Td 2015]microsoft 개발자들을 위한 달콤한 hadoop, hd insight(최종욱)
[Td 2015]microsoft 개발자들을 위한 달콤한 hadoop, hd insight(최종욱)Sang Don Kim
 
제3회 사내기술세미나-hadoop(배포용)-dh kim-2014-10-1
제3회 사내기술세미나-hadoop(배포용)-dh kim-2014-10-1제3회 사내기술세미나-hadoop(배포용)-dh kim-2014-10-1
제3회 사내기술세미나-hadoop(배포용)-dh kim-2014-10-1Donghan Kim
 
줌인터넷 빅데이터 활용사례 김우승
줌인터넷 빅데이터 활용사례 김우승줌인터넷 빅데이터 활용사례 김우승
줌인터넷 빅데이터 활용사례 김우승Wooseung Kim
 
Introduction to Hadoop, Big Data, Training, Use Cases
Introduction to Hadoop, Big Data, Training, Use CasesIntroduction to Hadoop, Big Data, Training, Use Cases
Introduction to Hadoop, Big Data, Training, Use CasesJongwook Woo
 
Daum내부 Hadoop 활용 사례 | Devon 2012
Daum내부 Hadoop 활용 사례 | Devon 2012Daum내부 Hadoop 활용 사례 | Devon 2012
Daum내부 Hadoop 활용 사례 | Devon 2012Daum DNA
 
[Open Technet Summit 2014] 쓰기 쉬운 Hadoop 기반 빅데이터 플랫폼 아키텍처 및 활용 방안
[Open Technet Summit 2014] 쓰기 쉬운 Hadoop 기반 빅데이터 플랫폼 아키텍처 및 활용 방안[Open Technet Summit 2014] 쓰기 쉬운 Hadoop 기반 빅데이터 플랫폼 아키텍처 및 활용 방안
[Open Technet Summit 2014] 쓰기 쉬운 Hadoop 기반 빅데이터 플랫폼 아키텍처 및 활용 방안치완 박
 
Spark와 Hadoop, 완벽한 조합 (한국어)
Spark와 Hadoop, 완벽한 조합 (한국어)Spark와 Hadoop, 완벽한 조합 (한국어)
Spark와 Hadoop, 완벽한 조합 (한국어)Teddy Choi
 
Daum 내부 빅데이터 및 클라우드 기술 활용 사례- 윤석찬 (2012)
Daum 내부 빅데이터 및 클라우드 기술 활용 사례- 윤석찬 (2012)Daum 내부 빅데이터 및 클라우드 기술 활용 사례- 윤석찬 (2012)
Daum 내부 빅데이터 및 클라우드 기술 활용 사례- 윤석찬 (2012)Channy Yun
 
Bitcoin 2.0(blockchain technology 2)
Bitcoin 2.0(blockchain technology 2)Bitcoin 2.0(blockchain technology 2)
Bitcoin 2.0(blockchain technology 2)Wooseung Kim
 
Hadoop Internals (2.3.0 or later)
Hadoop Internals (2.3.0 or later)Hadoop Internals (2.3.0 or later)
Hadoop Internals (2.3.0 or later)Emilio Coppa
 
빅데이터 기술 현황과 시장 전망(2014)
빅데이터 기술 현황과 시장 전망(2014)빅데이터 기술 현황과 시장 전망(2014)
빅데이터 기술 현황과 시장 전망(2014)Channy Yun
 
확산되는 소프트웨어 정의 (SDx) 개념 및 동향
확산되는 소프트웨어 정의 (SDx) 개념 및 동향확산되는 소프트웨어 정의 (SDx) 개념 및 동향
확산되는 소프트웨어 정의 (SDx) 개념 및 동향Ian Choi
 
SDDC(software defined data center)에서 NFV의 역할과 관리도구 (세미나 발표 자료)
SDDC(software defined data center)에서 NFV의 역할과 관리도구 (세미나 발표 자료)SDDC(software defined data center)에서 NFV의 역할과 관리도구 (세미나 발표 자료)
SDDC(software defined data center)에서 NFV의 역할과 관리도구 (세미나 발표 자료)정명훈 Jerry Jeong
 

En vedette (15)

The State of SDN, SDDC & Cloud
The State of SDN, SDDC & CloudThe State of SDN, SDDC & Cloud
The State of SDN, SDDC & Cloud
 
[Td 2015]microsoft 개발자들을 위한 달콤한 hadoop, hd insight(최종욱)
[Td 2015]microsoft 개발자들을 위한 달콤한 hadoop, hd insight(최종욱)[Td 2015]microsoft 개발자들을 위한 달콤한 hadoop, hd insight(최종욱)
[Td 2015]microsoft 개발자들을 위한 달콤한 hadoop, hd insight(최종욱)
 
제3회 사내기술세미나-hadoop(배포용)-dh kim-2014-10-1
제3회 사내기술세미나-hadoop(배포용)-dh kim-2014-10-1제3회 사내기술세미나-hadoop(배포용)-dh kim-2014-10-1
제3회 사내기술세미나-hadoop(배포용)-dh kim-2014-10-1
 
줌인터넷 빅데이터 활용사례 김우승
줌인터넷 빅데이터 활용사례 김우승줌인터넷 빅데이터 활용사례 김우승
줌인터넷 빅데이터 활용사례 김우승
 
Intro to r & hadoop
Intro to r & hadoopIntro to r & hadoop
Intro to r & hadoop
 
Introduction to Hadoop, Big Data, Training, Use Cases
Introduction to Hadoop, Big Data, Training, Use CasesIntroduction to Hadoop, Big Data, Training, Use Cases
Introduction to Hadoop, Big Data, Training, Use Cases
 
Daum내부 Hadoop 활용 사례 | Devon 2012
Daum내부 Hadoop 활용 사례 | Devon 2012Daum내부 Hadoop 활용 사례 | Devon 2012
Daum내부 Hadoop 활용 사례 | Devon 2012
 
[Open Technet Summit 2014] 쓰기 쉬운 Hadoop 기반 빅데이터 플랫폼 아키텍처 및 활용 방안
[Open Technet Summit 2014] 쓰기 쉬운 Hadoop 기반 빅데이터 플랫폼 아키텍처 및 활용 방안[Open Technet Summit 2014] 쓰기 쉬운 Hadoop 기반 빅데이터 플랫폼 아키텍처 및 활용 방안
[Open Technet Summit 2014] 쓰기 쉬운 Hadoop 기반 빅데이터 플랫폼 아키텍처 및 활용 방안
 
Spark와 Hadoop, 완벽한 조합 (한국어)
Spark와 Hadoop, 완벽한 조합 (한국어)Spark와 Hadoop, 완벽한 조합 (한국어)
Spark와 Hadoop, 완벽한 조합 (한국어)
 
Daum 내부 빅데이터 및 클라우드 기술 활용 사례- 윤석찬 (2012)
Daum 내부 빅데이터 및 클라우드 기술 활용 사례- 윤석찬 (2012)Daum 내부 빅데이터 및 클라우드 기술 활용 사례- 윤석찬 (2012)
Daum 내부 빅데이터 및 클라우드 기술 활용 사례- 윤석찬 (2012)
 
Bitcoin 2.0(blockchain technology 2)
Bitcoin 2.0(blockchain technology 2)Bitcoin 2.0(blockchain technology 2)
Bitcoin 2.0(blockchain technology 2)
 
Hadoop Internals (2.3.0 or later)
Hadoop Internals (2.3.0 or later)Hadoop Internals (2.3.0 or later)
Hadoop Internals (2.3.0 or later)
 
빅데이터 기술 현황과 시장 전망(2014)
빅데이터 기술 현황과 시장 전망(2014)빅데이터 기술 현황과 시장 전망(2014)
빅데이터 기술 현황과 시장 전망(2014)
 
확산되는 소프트웨어 정의 (SDx) 개념 및 동향
확산되는 소프트웨어 정의 (SDx) 개념 및 동향확산되는 소프트웨어 정의 (SDx) 개념 및 동향
확산되는 소프트웨어 정의 (SDx) 개념 및 동향
 
SDDC(software defined data center)에서 NFV의 역할과 관리도구 (세미나 발표 자료)
SDDC(software defined data center)에서 NFV의 역할과 관리도구 (세미나 발표 자료)SDDC(software defined data center)에서 NFV의 역할과 관리도구 (세미나 발표 자료)
SDDC(software defined data center)에서 NFV의 역할과 관리도구 (세미나 발표 자료)
 

Similaire à Distributed Programming Framework, hadoop

2013.02.02 지앤선 테크니컬 세미나 - 하둡으로 배우는 대용량 데이터 분산처리 기술(이현남)
2013.02.02 지앤선 테크니컬 세미나 - 하둡으로 배우는 대용량 데이터 분산처리 기술(이현남)2013.02.02 지앤선 테크니컬 세미나 - 하둡으로 배우는 대용량 데이터 분산처리 기술(이현남)
2013.02.02 지앤선 테크니컬 세미나 - 하둡으로 배우는 대용량 데이터 분산처리 기술(이현남)JiandSon
 
Jco 소셜 빅데이터_20120218
Jco 소셜 빅데이터_20120218Jco 소셜 빅데이터_20120218
Jco 소셜 빅데이터_20120218Hyoungjun Kim
 
log-monitoring-architecture.pdf
log-monitoring-architecture.pdflog-monitoring-architecture.pdf
log-monitoring-architecture.pdfSungkyun Kim
 
데이터 레이크 알아보기(Learn about Data Lake)
데이터 레이크 알아보기(Learn about Data Lake)데이터 레이크 알아보기(Learn about Data Lake)
데이터 레이크 알아보기(Learn about Data Lake)SeungYong Baek
 
Expanding Your Data Warehouse with Tajo
Expanding Your Data Warehouse with TajoExpanding Your Data Warehouse with Tajo
Expanding Your Data Warehouse with TajoGruter
 
빅데이터, big data
빅데이터, big data빅데이터, big data
빅데이터, big dataH K Yoon
 
OLAP for Big Data (Druid vs Apache Kylin vs Apache Lens)
OLAP for Big Data (Druid vs Apache Kylin vs Apache Lens)OLAP for Big Data (Druid vs Apache Kylin vs Apache Lens)
OLAP for Big Data (Druid vs Apache Kylin vs Apache Lens)SANG WON PARK
 
7가지 동시성 모델 람다아키텍처
7가지 동시성 모델  람다아키텍처7가지 동시성 모델  람다아키텍처
7가지 동시성 모델 람다아키텍처Sunggon Song
 
Big data application architecture 요약2
Big data application architecture 요약2Big data application architecture 요약2
Big data application architecture 요약2Seong-Bok Lee
 
[경북] I'mcloud information
[경북] I'mcloud information[경북] I'mcloud information
[경북] I'mcloud informationstartupkorea
 
[211] HBase 기반 검색 데이터 저장소 (공개용)
[211] HBase 기반 검색 데이터 저장소 (공개용)[211] HBase 기반 검색 데이터 저장소 (공개용)
[211] HBase 기반 검색 데이터 저장소 (공개용)NAVER D2
 
Spark_Overview_qna
Spark_Overview_qnaSpark_Overview_qna
Spark_Overview_qna현철 박
 
Daum’s Business Analytics Use-cases based on Bigdata technology (2012)
Daum’s Business Analytics Use-cases based on Bigdata technology (2012)Daum’s Business Analytics Use-cases based on Bigdata technology (2012)
Daum’s Business Analytics Use-cases based on Bigdata technology (2012)Channy Yun
 
Spark은 왜 이렇게 유명해지고 있을까?
Spark은 왜 이렇게  유명해지고 있을까?Spark은 왜 이렇게  유명해지고 있을까?
Spark은 왜 이렇게 유명해지고 있을까?KSLUG
 
Big data analysis with R and Apache Tajo (in Korean)
Big data analysis with R and Apache Tajo (in Korean)Big data analysis with R and Apache Tajo (in Korean)
Big data analysis with R and Apache Tajo (in Korean)Gruter
 
KCSE 2015 Tutorial 빅데이터 분석 기술의 소프트웨어 공학 분야 활용 (...
KCSE 2015 Tutorial 빅데이터 분석 기술의  소프트웨어 공학 분야 활용 (...KCSE 2015 Tutorial 빅데이터 분석 기술의  소프트웨어 공학 분야 활용 (...
KCSE 2015 Tutorial 빅데이터 분석 기술의 소프트웨어 공학 분야 활용 (...Chanjin Park
 
Flamingo 1.2 릴리즈의 지원 기능 정리
Flamingo 1.2 릴리즈의 지원 기능 정리Flamingo 1.2 릴리즈의 지원 기능 정리
Flamingo 1.2 릴리즈의 지원 기능 정리BYOUNG GON KIM
 
(소스콘 2015 발표자료) Apache HORN, a large scale deep learning
(소스콘 2015 발표자료) Apache HORN, a large scale deep learning(소스콘 2015 발표자료) Apache HORN, a large scale deep learning
(소스콘 2015 발표자료) Apache HORN, a large scale deep learningEdward Yoon
 
SQL-on-Hadoop with Apache Tajo, and application case of SK Telecom
SQL-on-Hadoop with Apache Tajo,  and application case of SK TelecomSQL-on-Hadoop with Apache Tajo,  and application case of SK Telecom
SQL-on-Hadoop with Apache Tajo, and application case of SK TelecomGruter
 
3 빅데이터기반비정형데이터의실시간처리방법 원종석
3 빅데이터기반비정형데이터의실시간처리방법 원종석3 빅데이터기반비정형데이터의실시간처리방법 원종석
3 빅데이터기반비정형데이터의실시간처리방법 원종석Saltlux Inc.
 

Similaire à Distributed Programming Framework, hadoop (20)

2013.02.02 지앤선 테크니컬 세미나 - 하둡으로 배우는 대용량 데이터 분산처리 기술(이현남)
2013.02.02 지앤선 테크니컬 세미나 - 하둡으로 배우는 대용량 데이터 분산처리 기술(이현남)2013.02.02 지앤선 테크니컬 세미나 - 하둡으로 배우는 대용량 데이터 분산처리 기술(이현남)
2013.02.02 지앤선 테크니컬 세미나 - 하둡으로 배우는 대용량 데이터 분산처리 기술(이현남)
 
Jco 소셜 빅데이터_20120218
Jco 소셜 빅데이터_20120218Jco 소셜 빅데이터_20120218
Jco 소셜 빅데이터_20120218
 
log-monitoring-architecture.pdf
log-monitoring-architecture.pdflog-monitoring-architecture.pdf
log-monitoring-architecture.pdf
 
데이터 레이크 알아보기(Learn about Data Lake)
데이터 레이크 알아보기(Learn about Data Lake)데이터 레이크 알아보기(Learn about Data Lake)
데이터 레이크 알아보기(Learn about Data Lake)
 
Expanding Your Data Warehouse with Tajo
Expanding Your Data Warehouse with TajoExpanding Your Data Warehouse with Tajo
Expanding Your Data Warehouse with Tajo
 
빅데이터, big data
빅데이터, big data빅데이터, big data
빅데이터, big data
 
OLAP for Big Data (Druid vs Apache Kylin vs Apache Lens)
OLAP for Big Data (Druid vs Apache Kylin vs Apache Lens)OLAP for Big Data (Druid vs Apache Kylin vs Apache Lens)
OLAP for Big Data (Druid vs Apache Kylin vs Apache Lens)
 
7가지 동시성 모델 람다아키텍처
7가지 동시성 모델  람다아키텍처7가지 동시성 모델  람다아키텍처
7가지 동시성 모델 람다아키텍처
 
Big data application architecture 요약2
Big data application architecture 요약2Big data application architecture 요약2
Big data application architecture 요약2
 
[경북] I'mcloud information
[경북] I'mcloud information[경북] I'mcloud information
[경북] I'mcloud information
 
[211] HBase 기반 검색 데이터 저장소 (공개용)
[211] HBase 기반 검색 데이터 저장소 (공개용)[211] HBase 기반 검색 데이터 저장소 (공개용)
[211] HBase 기반 검색 데이터 저장소 (공개용)
 
Spark_Overview_qna
Spark_Overview_qnaSpark_Overview_qna
Spark_Overview_qna
 
Daum’s Business Analytics Use-cases based on Bigdata technology (2012)
Daum’s Business Analytics Use-cases based on Bigdata technology (2012)Daum’s Business Analytics Use-cases based on Bigdata technology (2012)
Daum’s Business Analytics Use-cases based on Bigdata technology (2012)
 
Spark은 왜 이렇게 유명해지고 있을까?
Spark은 왜 이렇게  유명해지고 있을까?Spark은 왜 이렇게  유명해지고 있을까?
Spark은 왜 이렇게 유명해지고 있을까?
 
Big data analysis with R and Apache Tajo (in Korean)
Big data analysis with R and Apache Tajo (in Korean)Big data analysis with R and Apache Tajo (in Korean)
Big data analysis with R and Apache Tajo (in Korean)
 
KCSE 2015 Tutorial 빅데이터 분석 기술의 소프트웨어 공학 분야 활용 (...
KCSE 2015 Tutorial 빅데이터 분석 기술의  소프트웨어 공학 분야 활용 (...KCSE 2015 Tutorial 빅데이터 분석 기술의  소프트웨어 공학 분야 활용 (...
KCSE 2015 Tutorial 빅데이터 분석 기술의 소프트웨어 공학 분야 활용 (...
 
Flamingo 1.2 릴리즈의 지원 기능 정리
Flamingo 1.2 릴리즈의 지원 기능 정리Flamingo 1.2 릴리즈의 지원 기능 정리
Flamingo 1.2 릴리즈의 지원 기능 정리
 
(소스콘 2015 발표자료) Apache HORN, a large scale deep learning
(소스콘 2015 발표자료) Apache HORN, a large scale deep learning(소스콘 2015 발표자료) Apache HORN, a large scale deep learning
(소스콘 2015 발표자료) Apache HORN, a large scale deep learning
 
SQL-on-Hadoop with Apache Tajo, and application case of SK Telecom
SQL-on-Hadoop with Apache Tajo,  and application case of SK TelecomSQL-on-Hadoop with Apache Tajo,  and application case of SK Telecom
SQL-on-Hadoop with Apache Tajo, and application case of SK Telecom
 
3 빅데이터기반비정형데이터의실시간처리방법 원종석
3 빅데이터기반비정형데이터의실시간처리방법 원종석3 빅데이터기반비정형데이터의실시간처리방법 원종석
3 빅데이터기반비정형데이터의실시간처리방법 원종석
 

Distributed Programming Framework, hadoop

  • 2. Who am I? Back-end Developer Network Communication Distributed Programming Framework ShopN/Tmoney/Gateway DataCenter/Cloud Computing
  • 3. - About Hadoop - Hadoop Components - MapReduce - Pig - Hive - Case studies
  • 4. what is hadoop? “Flexible and available architecture for large scale computation and data processing on a network of commodity hardware” opensource + commodity hardware = IT costs reduction
  • 5. History of hadoop - 오픈소스 자바 검색엔진 Lucene, Nutch 프로젝트 후속으로 만든 오픈소스 분산처리 플랫폼 cf) Hadoop 이름은 더그커팅의 아들이 가지고 올던 노란 코끼리 - 야후는 2006 년에 더그를 채용했고, Hadoop 을 오픈소스 프로젝트 로 Start 함. 2년 후 Apache Top Level 프로젝트가 됨 - Hadoop running on a 10,000+ core Linux cluster
  • 6. what is hadoop? - Yahoo, Facebook, Twitter... Scaling Challenges - Accessible / Robust / Simple / Scalable - High-end Machine vs Cluster of Commodity Machines - SETI@home : move data between client and server - Hadoop : move-code-to-data philosophy - RDB vs Hadoop : Scale-up / Table vs Key-Value / Online, Offline
  • 7. news - MS, 윈도용 하둡 아이스토브 http://m.zdnet.co.kr/news_view.asp?artice_id=20120228154036 - 클라우데라, IBM과도 협력…하둡 표준 되나 http://m.zdnet.co.kr/news_view.asp? artice_id=20120427091552 - 하둡창시자, 더그커팅, 하둡은 관계형 데이터를 위협하지 않는다. http://techit.co.kr/3239 - 빅데이터로 비주얼 http://visualize.yahoo.com/core/ - 청와대 지하벙커에 스마트워룸(Smart Warroom)을 만들고, 국가경제를 다루는 주요 기관에도 스마트워룸과 비슷한 빅데이터 분석하에 위기시나리오 대응팀을 구성 http://www.wikitree.co.kr/main/news_view.php?id=66849
  • 8. hadoop components ETL(Extract, Transform, Load) ETL BI Report RDBMS Pig Hive Sqoop Hbase MapReduce (Job Sche. / Task Exec.) HDFS (Hadoop Distributed File System)
  • 9. hadoop components - HDFS (Hadoop Distributed File System) : A distributed filesystem designed for storing very large files with streaming data access running on clusters of commodity hardware. source : http://www.cloudera.com/what-is-hadoop/hadoop-overview/
  • 10.
  • 11. hadoop components - NameNode : 파일의 메타데이터 (데이터 위치 등) /user/chunk/data1 takes up 3 blocks (1,2,3) /user/james/data2 takes up 2 blocks (4,5) replication factor : 3 !
  • 12. hadoop components - Secondary NameNode(SNN) : NameNode 장애시 데 이터 손실 최소화 FsImage : 블록에 대한 메타데이터 정보 Edit log : 파일 메터데이터 변경 사항을 기록 SNN 은 주기적으로 Edit log 와 FsImage 를 Merge Data loss 는 NameNode 실패시 여전히 존재 Edit log 를 원격 NFS 에 추가적으로 기록하고, 장애시 해 당 파일을 가지고 SNN 을 구동하여 서비스 제공(그러나 성능 이슈 및 수작업 복구)
  • 13. hadoop components - Jobtracker - job 스케쥴링 - job 을 여러 노드에 할당 - 실행되는 모든 Task 를 모니터링 - 실패한 Task 재 실행
  • 14. hadoop components - TaskTracker : JobTracker 에게 할당받은 Task 를 해당 슬레이브 노드에서 처리될 수 있도록 함 - 슬레이브 노드에 1 개 존재, 슬레이브 노드에 할당된 작업의 실행을 담당 - JobTracker 와 주기적 통신 - Mapper/Reducer 태스크를 분리된 jvm 하에 실행
  • 15. MapReduce - MapReduce job 은 대용량의 입력 데이터 세트를 여러 덩어리들로 나누고, 해당 덩어리들 을 병렬적으로 "Map" 를 통해 처리, Job 의 입력은 입력 스플릿이라고 부르는 고정된 크기 의 조각으로 나눈다 - Map 의 결과물을 Reduce 태스크로 전달하여 처리 - Combiner 를 사용하여 Reduce 로 보내는 데이터를 줄임 (네트워크 대역폭 고려) cf) Combiner 년도별 특정 달의 평균 기온 정보 (2000, 20) (2000, 30) (2000, 10) -------------- (2000, 5) (2000, 22) (2000, 20 가장 더운 달의 기온은? Map 수행 결과 : (2000, [20,30,10,5,22,20]) 미리 최고 기온 계산 (2000, 30), (2000, 22) -> (2000, [30,20])
  • 16. MapReduce - Mapper : 입력 키/값 쌍을 가지고 중간단계의 키/값 쌍을 만든다. - Partitioner : Mapper 의 결과를 다수의 Reducer 로 전달하기 위해서 해 당 결과를 여러 부분으로 나눔
  • 17. MapReduce - Reducer : Mapper 를 통해 생성된 중간 데이터 셋(키-값쌍)을 입력으 로 받아, 보통 동일한 키를 가진 세트가 동일한 Reducer 로 들어가 어 떤 연산을 수행한 뒤에, 그 결과를 출력하게 되는데 보통은 어떤 요약 된 정보 형태를 가짐 - Reducer 는 3가지 주요 단계 (shuffle, sort, reduce) 를 가짐 - Shuffle : Mapper 의 결과 데이터 셋을 적절한 노드 (Reducer) 로 패치 - Sort : MapReduce 프레임웍은 Reducer 입력 데이터를 키 별로 정렬해서 그룹화 - Reduce : <키, (값 리스트)> 마다 reduce(..) 메소드가 호출
  • 18. word counting 예제 - 단어세기에 포함시키지 않을 패턴을 DistributedCache 에 등록 - wordcount.case.sensitive 참고 : http://blog.eduby.me/2012/05/mapreduce-8-wordcount2.html
  • 19. Pig MapReduce - 하나의 입력, 두 단계의 데이터 처리 흐름 - 조인 : 코드 길어지고, 에러 발생하기 쉬움 - N 단계의 job 들은 관리하기 어렵다. - Java 는 컴파일이 필요 - 프로그래밍 하기가 어렵다. - High-level 언어 - 프로그램을 간단히 - Yahoo, Hadoop job 의 40% Pig 로 처리 - Pig Latin 스크립트, 컴파일러가 자동으로 최적화 수행 - 관계형 데이터 처리 스타일의 오퍼레이션(filter, union, group, join)을 지원
  • 20. Pig
  • 21. Hive - 데이터 웨어하우징 패키지, 다수의 사용자 및 대용량 로그 데이터 처리를 위해 페이스북에서 먼저 Hive를 만들기 시작 - 구조화된 데이터를 쿼리하고, 다소 복잡한 MapReduce 프로 그램 대신 HiveQL을 사용해서 쉽게 데이터를 처리 - 테이블, 행, 컬럼, 스키마 같이 쉽게 배울 수 있는, 관계형 데 이터베이스와 유사한 개념을 사용
  • 22. Hive hive> CREATE TABLE cite (citing INT, cited INT) > ROW FORMAT DELIMITED > FIELDS TERMINATED BY ',' > STORED AS TEXTFILE; hive> LOAD DATA LOCAL INPATH 'cite75_99.txt' > OVERWRITE INTO TABLE cite; Copying data from file:/root/cite75_99.txt Loading data to table cite hive> SELECT * FROM cite LIMIT 10; OK NULL NULL 3858241 956203 ... 3858241 3634889 3858242 3668705 3858242 3707004
  • 23. Case Studies 뉴욕 타임즈 보관소에 있는 천백만 개의 이미지 문서 변환 - 1851년과 1922년 사이에 있는 모든 종류의 기사 - 이미지로 변환할 기사가 총 천백만 개, 총 4테라바이트의 데이터 - Hadoop framework, Amazon Web Servcies, S3 이용, 100개의 노드 - 24시간 동안 수행, 1개의 인스턴스를 1시간 사용했을 때 비용 : 10센 트, 총 100개 인스턴스, 240달러 지출
  • 24. Case Studies 차이나 모바일에서의 데이터 마이닝 - 대규모 확장성: 하둡을 이용해서 손쉽게 확장할 수 있는 구조 - 저 비용: 범용 PC와 무료 S/W를 이용해 구성 - 커스터마이징: 특정 비즈니스 요구사항을 만족시키는 애플리케이션 - 쉬운 사용: 사용자에게 상용 툴과 유사한 그래픽 인터페이스 제공
  • 25. Case Studies 스텀블어폰 - Apache 로그 파일 수집과 사용자 세션 분석을 포함해 여러 분석 태스크를 위해 이러한 하둡의 분산 처리 특성을 이용

Notes de l'éditeur

  1. \n
  2. \n
  3. \n
  4. \n
  5. \n
  6. \n
  7. \n
  8. \n
  9. \n
  10. \n
  11. \n
  12. \n
  13. \n
  14. \n
  15. \n
  16. \n
  17. \n
  18. \n
  19. \n
  20. \n
  21. \n
  22. \n
  23. \n
  24. \n
  25. \n