HOME > Detail View

Detail View

Pig를 이용한 빅데이터 처리 패턴 (Loan 5 times)

Material type
단행본
Personal Author
Pasupuleti, Pradeep 이미정, 역
Title Statement
Pig를 이용한 빅데이터 처리 패턴 / 프라딥 파수풀레티 지음 ; 이미정 옮김
Publication, Distribution, etc
의왕 :   에이콘,   2014  
Physical Medium
356 p. : 삽화 ; 24 cm
Series Statement
acorn + PACKT technical book
Varied Title
Pig design patterns : simplify Hadoop programming to create complex end-to-end enterprise big data solutions with Pig
ISBN
9788960776081 9788960772106 (세트)
General Note
기술감수자: 아론 빈스(Aaron Binns), 싱고 후루야마(Shingo Furuyama), 샤시와트 쉬리파르브(Shashwat Shriparv), 파비오 프랑코 우에치(Fabio Franco Uechi)  
색인수록  
Subject Added Entry-Topical Term
Apache Hadoop Big data -- Data processing
000 01175namcc2200325 c 4500
001 000045812256
005 20141002155109
007 ta
008 141002s2014 ggkad 001c kor
020 ▼a 9788960776081 ▼g 94000
020 1 ▼a 9788960772106 (세트)
040 ▼a 211009 ▼c 211009 ▼d 211009
041 1 ▼a kor ▼h eng
082 0 4 ▼a 005.74 ▼2 23
085 ▼a 005.74 ▼2 DDCK
090 ▼a 005.74 ▼b 2014z6
100 1 ▼a Pasupuleti, Pradeep
245 1 0 ▼a Pig를 이용한 빅데이터 처리 패턴 / ▼d 프라딥 파수풀레티 지음 ; ▼e 이미정 옮김
246 1 9 ▼a Pig design patterns : ▼b simplify Hadoop programming to create complex end-to-end enterprise big data solutions with Pig
260 ▼a 의왕 : ▼b 에이콘, ▼c 2014
300 ▼a 356 p. : ▼b 삽화 ; ▼c 24 cm
440 0 0 ▼a acorn + PACKT technical book
500 ▼a 기술감수자: 아론 빈스(Aaron Binns), 싱고 후루야마(Shingo Furuyama), 샤시와트 쉬리파르브(Shashwat Shriparv), 파비오 프랑코 우에치(Fabio Franco Uechi)
500 ▼a 색인수록
650 0 ▼a Apache Hadoop
650 0 ▼a Big data ▼x Data processing
700 1 ▼a 이미정, ▼e
900 1 0 ▼a 파수풀레티, 프라딥, ▼e
945 ▼a KLPA

Holdings Information

No. Location Call Number Accession No. Availability Due Date Make a Reservation Service
No. 1 Location Science & Engineering Library/Sci-Info(Stacks1)/ Call Number 005.74 2014z6 Accession No. 121230954 Availability Available Due Date Make a Reservation Service B M

Contents information

Book Introduction

acorn+PACKT 시리즈. 이 책은 빅데이터 분석 능력을 경험할 수 있게 해주는 실용서다. 피그 언어에 대한 설명뿐만 아니라 피그가 사용되는 패턴, 그리고 하둡 생태계에 존재하는 여러 툴들과 함께 적용된 사례를 자세히 설명하고 있다.

전사적 IT 환경에서의 피그의 연관성 이해, 플랫폼 간 데이터 이동이 가능하도록 디자인 패턴에 피그를 사용하는 방법, 디자인 패턴을 활용해 빅데이터 솔루션을 생성하기 위한 하둡 생태계의 구성요소들과 피그의 공존 관계, 변형, 결집, 강화, 정제, 필터링, 포맷화, 검색, 형변환 기법으로 복잡한 데이터 파이프라인을 생성하는 과정 간략화 등을 다루고 있다.

피그에 이미 친숙한 개발자, 그리고 전사적 IT 환경에서 데이터의 유입, 프로파일링, 정제, 변형 시 발생하는 문제와 관련된 사례를 알기 원하는 경험 많은 개발자를 위한 책이다. 이렇게 피그를 선호하는 사용자는 자신들의 문제를 해결하는 피그 디자인 패턴의 중요성을 이해하기 위한 참고 서적으로 이 책을 활용할 것이다.

★ 요약 ★

빅데이터 처리를 고심하는 개발자라면 가장 먼저 하둡 프레임워크의 도입을 고려할 것이다. 그 유명세만큼이나 기능면에서도 우월한 하둡은 빅데이터 솔루션을 구축하는 핵심 프레임워크로서 자리잡았다. 그러나 하둡으로 빅데이터를 다뤄본 개발자라면 누구나 하둡 프로그래밍이 그렇게 간단한 일이 아님을 깨닫게 될 것이다. 피그(Pig)는 하둡 프로그래밍을 간단하게 해주는 아파치 오픈소스로 이미 외국에서는 빠르고 효율적인 빅데이터 구축을 가능케 하는 언어로 폭넓게 사용되고 있다. 개발자의 시간과 노력을 절약해주는 피그에 대한 이 책이 국내 최초로 출판되었다. 피그 언어에 대한 설명뿐만 아니라 피그가 사용되는 패턴, 그리고 하둡 생태계에 존재하는 여러 툴들과 함께 적용된 사례를 자세히 설명하는 이 책은 한국의 빅데이터 개발자들에게 유용한 피그에 관한 바이블이 될 것이라 기대한다.

★ 이 책에서 다루는 내용 ★

■ 전사적 IT 환경에서의 피그의 연관성 이해
■ 플랫폼 간 데이터 이동이 가능하도록 디자인 패턴에 피그를 사용하는 방법
■ 디자인 패턴을 활용해 빅데이터 솔루션을 생성하기 위한 하둡 생태계의 구성요소들과 피그의 공존 관계
■ 변형, 결집, 강화, 정제, 필터링, 포맷화, 검색, 형변환 기법으로 복잡한 데이터 파이프라인을 생성하는 과정 간략화
■ 다중 플랫폼 분석을 가능케 하는 시스템과, 하둡의 통합을 다루는 디자인 패턴에 피그와 관련된 지식 적용
■ 디자인 패턴을 이해하고 복잡한 정형 데이터 분석에 피그를 사용하는 방법

★ 이 책의 대상 독자 ★

피그에 이미 친숙한 개발자, 그리고 전사적 IT 환경에서 데이터의 유입, 프로파일링, 정제, 변형 시 발생하는 문제와 관련된 사례를 알기 원하는 경험 많은 개발자를 위한 책이다. 이렇게 피그를 선호하는 사용자는 자신들의 문제를 해결하는 피그 디자인 패턴의 중요성을 이해하기 위한 참고 서적으로 이 책을 활용할 것이다.
복잡한 피그 디자인 패턴을 좀 더 잘 이해하기 위해 하둡과 피그에 대한 지식은 필수적이다. 이를 위해 '1장, 피그 디자인 패턴의 기초'에서는 간단한 예제와 함께 입문자를 위한 개념을 소개한다. 많은 장에서 예제로 사용되는 UDF를 좀 더 잘 이해하기 위해 자바와 파이썬에 익숙해질 것을 권한다.


★ 이 책의 구성 ★

'1장, 피그 디자인 패턴의 기초'에서는 디자인 패턴, 하둡, 맵리듀스, 피그가 사용되는 하둡 생태계 구성요소들과 데이터 흐름 패러다임에 대해 다룬다. 또한 피그가 동작하기 위해 필요한 몇 가지 기본 예제와 함께 피그의 언어적 구성과 개념에 대해 설명한다. 피그가 다루기에 가장 적합한 다양한 작업들(workloads)과 어떻게 피그가 그런 작업들을 다루는 최적의 툴이 되었는지를 이해할 수 있는 기본적인 내용을 이야기한다. 1장은 간략하며 실제적인 참고문헌 그 이상의 역할을 하며, 피그에 대해 좀더 알기 원하는 독자에게 추가적인 참고문헌들을 제시한다.

'2장, 데이터 유입과 배출 패턴'은 다양한 데이터 소스들을 다루는 데이터 유입 및 배출 디자인 패턴에 대해 설명한다. 2장은 다중구조 데이터와 정형 데이터를 내보내고 하둡을 유입의 중추로 사용하는 외부 시스템과의 통합 기법을 설명하는 특정 예제들을 제공한다. 이런 유입 및 배출 패턴을 설명하기 위해 로그 파일과 JSON, XML, 몽고DB, 카산드라, HBase, 그 밖의 일반적인 정형 데이터 소스를 아우르는 다중 파일 시스템을 선택했다. 2장을 읽은 후 독자는 주어진 전사적 IT 환경에서 유입 및 배출과 관련된 패턴을 프로그램화할 수 있을 것이며, 올바른 피그 프로그래밍 구조를 사용하거나 이런 패턴을 구현하기 위해 UDF를 작성하는 기술을 적용할 수 있다.

'3장, 데이터 프로파일링 패턴'은 다수의 데이터 포맷에 적용된 데이터 프로파일링 패턴과 이런 패턴을 피그로 구현하는 방법에 중점을 둔다. 이런 패턴은 피그를 사용하는 방법과 기본적이며 혁신적인 통계적 기법들을 데이터 프로파일링 및 데이터 품질 측정에 적용하는 다양한 접근 방법들을 내포한다. 피그를 사용하여 주어진 전사적 IT 환경에서 유사한 패턴을 프로그램화하고 이런 패턴을 확장하는 UDF를 작성하는 방법에 관해 배운다.

'4장, 데이터 검증과 정제 패턴'은 다양한 데이터 포맷에 적용되는 데이터 검증과 정제 패턴에 관한 내용이다. 데이터 검증 패턴은 제약조건, 정규표현식, 통계적 기법을 다룬다. 데이터 정제 패턴은 일반적인 필터, 블룸(bloom) 필터, 변형을 위해 데이터를 가공하는 통계적 기법을 설명한다.

'5장, 데이터 변형 패턴'은 하둡으로 유입되는 광범위한 데이터 타입들에 적용되는 데이터 변형 패턴을 다룬다. 5장을 읽고 나면 기본 변형을 위해 적절한 패턴을 선택할 수 있을 것이며 폭넓게 사용되는 조인, 요약, 집계, 큐브, 일반화, 피그 프로그래밍 및 UDF를 활용한 애트리뷰트 구성과 같은 개념을 익힐 수 있다.

'6장, 데이터 축소 패턴'은 사전에 유입되어 정제되고 변형된 데이터에 적용하는 데이터 축소 패턴에 대해 설명한다. 6장을 읽은 후 독자는 차원축소, 샘플링 기법, 비닝(binning), 클러스터링, 무관한 애트리뷰트 제거 패턴을 이해하고 사용할 수 있게 되어 분석을 위한 준비가 완료된다. 6장은 피그 언어를 사용하는 다양한 기법들을 살펴봄으로써 데이터 축소를 다루는 세부적인 사용법을 제공하기 위해 피그의 기능을 확장한다.

'7장, 고급 패턴과 향후 작업'은 고급 데이터 분석 패턴을 다룬다. 이 패턴은 피그 언어의 확장성을 다루며 사용 사례와 함께 실행 가능한 코드, 자바로 작성된 맵리듀스 코드, PiggyBank에서 사용된 UDF, 그 외 다른 소스들과의 통합 기법을 설명한다. 고급 분석법은 자연어 처리, 클러스터링, 분류(classification), 텍스트 색인화와 관련된 패턴을 다룬다.

★ 저자 서문 ★

이 책은 빅데이터 분석 능력을 경험할 수 있게 해주는 실용서다. 데이터를 준비하고 분석을 수행하며 데이터에서 의미 있는 값을 도출해내는 과정을 통해 빅데이터 기술자로서의 역량이 향상될 것이다. 이는 적절한 피그 디자인 패턴을 사용하기 때문에 가능한 일이다. 디자인 패턴이 얼마나 유용한지 입증하기 위해 다음 사실에 근거해서 피그를 선택했다.

매우 쉽게 학습이 가능하고 간결한 언어적 구성을 특징으로 하는 피그의 내재적 순응성(amenability), 확장성, 정형 및 비정형 빅데이터에 대한 적용가능성(applicability)은 다른 언어에 비해 우월한 특징들이다. 임의의 데이터로 구성된 빅데이터에서 의미 있는 값을 도출해내기를 원할 때, 피그로 구현될 수 있는 패턴들의 용이함과 빠른 구현 속도는 좋은 평을 얻을 만한 특징들이다. 이 책은 시스템 설계자와 개발자를 위한 책으로서, 피그로 복잡한 분석적 솔루션을 구축하는 작업에 좀더 능숙해지게 만든다. 또한 다양한 디자인 패턴들, UDF, 툴, 적용 사례들을 제공한다.

이 책을 읽음으로써 독자는 다음 목표를 달성하게 될 것이다. 플랫폼을 넘나드는 데이터 이동, 데이터 유입, 프로파일링, 검증, 변형, 데이터 축소, 배출을 수행함으로써 복잡한 데이터 파이프라인을 구축하는 과정을 간결하게 만든다. 또한 이런 디자인 패턴들에 피그를 적용할 수 있게 될 것이다. 다중구조의 모델이 없는 데이터로부터 구조를 도출해내기 위해 데이터의 탐색적 분석 수행 시 패턴을 사용한 솔루션을 구축하고, 추가 분석을 위해 데이터를 후속시스템(downstream system)으로 이동시킨다. 디자인 패턴을 사용해서 빅데이터 솔루션을 구축하기 위해 하둡 생태계에서 다른 툴들과 피그가 어떻게 공존할 수 있는지 분석한다.


Information Provided By: : Aladin

Author Introduction

프라딥 파수풀레티(지은이)

아키텍처링 분야와 실시간 시스템 및 실시간 데이터주도형 시스템 개발에 16년간 몸담았다. 현재는 탄탄한 데이터 플랫폼 및 기계 학습 알고리즘을 수행해서 얻은 데이터 산출물을 개발하는 일에 관심을 두고 있다. 또한 미래 데이터 관리 및 분석이 요구되는 빅데이터에 대한 깊은 기술적 이해를 바탕으로 비즈니스 문제를 밝혀 냄으로써 고객에게 가치를 전달하고 있다. 빅데이터에 대한 관심이 매우 높으며, 빅데이터는 인간의 시간, 비용, 노력을 줄여주는 혁신의 요람지가 될 것이라 믿고 있다. 데이터 과학의 모든 면에 대한 풍부한 경험을 바탕으로 데이터 제품팀을 만들고, 이후 고객이 엔드투엔드(end-to-end) 전략을 구축하는 데 성공적으로 공헌했다. 엔드투엔트 전략이란 고객의 현재 데이터 구조를 일괄 분석과 실시간 분석 모두를 지원할 수 있는 혼합 패턴으로 변환하는 방법에 관한 것이다. 이 모든 것은 람다 구조(lambda architecture)로 수행되었다. 자연어 처리 및 높은 수준의 학습 기법을 기반으로 다차원 다중구조 데이터를 분석해서 얻은 데이터 산출물로 단기성공사례를 제공하는 최고기관(COE, Center of Excellence)을 설립했다. 포춘 500대 기업에게 기술 자문을 하는데, 그가 다루는 기술 영역은 빅데이터 전략, 제품 관리, 시스템 아키텍처, 소셜 네트워크 분석, 협상, 갈등 해결, 비선형 카오스 역학(chaos and nonlinear dynamics), 국제정책, 고성능 컴퓨팅, 고급 통계 기법, 위기관리, 마케팅, 다차원 데이터 가시화, 인간 컴퓨터 상호작용(HCI, Human-Computer Interaction), 기계 학습, 정보검색, 데이터마이닝 등에 달한다. 또한 창조적인 사람들 과 복잡한 문제를 해결하기 위해 혁신적인 방법으로 모호한 영역을 다뤄본 다양한 경험을 가지고 있다. 시를 읽고 쓰며, 가잘(ghazals)이 표현하는 기쁨을 누리고, 아이들과 함께 불가능한 발명에 대해 토론하며 시간을 보내는 것을 좋아한다. 또한 유적지 탐사에도 관심이 있다.

이미정(옮긴이)

성균관대 전자전기컴퓨터 공학부 학사학위를, 한동대 정보통신공학 석사학위를 이수했다. 삼성전자 LSI 기술개발실 엔지니어로 시작해 오라클 미들웨어 사업부 컨설턴트로, 현재는 Splunk Korea 세일즈 엔지니어로 활동하고 있다. 역서로 『Pig를 이용한 빅데이터 처리 패턴』(에이콘, 2014), 『Splunk 6 핵심기술』(에이콘, 2015), 『파이썬으로 배우는 대규모 머신러닝』(에이콘, 2017), 『Splunk 7 에센셜』(에이콘, 2019)이 있다.

Information Provided By: : Aladin

Table of Contents

1장 피그 디자인 패턴의 기초
__디자인 패턴의 이해
__피그 디자인 패턴의 범위
__하둡에 관한 쉽고 자세한 설명: 지침서
____전사적 IT 환경
____분산 시스템의 일반적인 문제
____하둡의 출현
____하둡 파헤치기
____하둡 분산 파일 시스템
________HDFS 설계 목적
________HDFS 동작
____맵리듀스
________맵리듀스가 동작하는 방법
________맵리듀스 내부
__피그: 대략적인 개요
____피그의 기초
____전사적 IT 환경과 피그 관련성
____피그 동작: 개요
________피그 작동
________사용 사례
________전체 코드
________데이터셋
__코드를 이용한 피그의 이해
____피그의 확장성
____코드에 사용된 연산자
____EXPLAIN 연산자
____피그의 데이터 모델
________기본형
________복합형
__정리

2장 데이터 유입과 배출 패턴
__데이터 유입과 배출 환경
__전사적 IT 환경에서 사용되는 데이터의 유형들
__다중정형화 데이터를 위한 유입, 배출 패턴
____로그 유입을 위해 고려해야 할 사항
________아파치 로그 유입 패턴
________배경
________패턴을 사용하는 이유
________사용 사례
________패턴 구현
________코드 일부
________결과 
________추가 정보
____커스텀 로그 유입 패턴
________배경
________패턴을 사용하는 이유
________사용 사례
________패턴 구현
________코드 일부
________결과
________추가 정보
____이미지 유입과 배출 패턴
________배경
________패턴을 사용하는 이유
________사용 사례
________패턴 구현
________코드 일부
________결과
________추가 정보
__NoSQL 데이터에 대한 유입과 배출 패턴
____몽고DB 유입과 배출 패턴
________배경
________패턴을 사용하는 이유
________사용 사례
________패턴 구현
________코드 일부
________결과
________추가 정보
____H베이스 유입과 배출 패턴
________배경
________패턴을 사용하는 이유
________사용 사례
________패턴 구현
________코드 일부
________결과
________추가 정보
__정형 데이터에 대한 유입과 배출 패턴
____하이브 유입과 배출 패턴
________배경
________패턴을 사용하는 이유
________사용 사례
________패턴 구현
________코드 일부
________결과 
________추가 정보
__반정형화 데이터에 대한 유입과 배출 패턴
____메인프레임 유입 패턴
________배경
________패턴을 사용하는 이유
________사용 사례
________패턴 구현
________코드 일부
________결과
________추가 정보
____XML 유입과 배출 패턴
________배경
________패턴을 사용하는 이유
________사용 사례
________패턴 구현
____코드 일부
________결과
________추가 정보
__JSON 유입과 배출 패턴
____배경
________패턴을 사용하는 이유
________사용 사례
________패턴 구현
________코드 일부
________결과
________추가 정보
__정리

3장 데이터 프로파일링 패턴
__빅데이터에 대한 데이터 프로파일링
____빅데이터 프로파일링 관점
____빅데이터 프로파일링을 위한 표본추출 시 고려사항
________피그의 표본추출 지원
__데이터 프로파일링에서 피그 사용 기초
__데이터 타입 추론 패턴
____배경
____패턴을 사용하는 이유
____사용 사례
____패턴 구현
____코드 일부
________피그 스크립트
________자바 UDF
____결과
____추가 정보
__기본 통계 프로파일링 패턴 
____배경
____패턴을 사용하는 이유
____사용 사례
____패턴 구현
____코드 일부
________피그 스크립트
________매크로
____결과
____추가 정보
__패턴 매칭 패턴 
____배경
____패턴을 사용하는 이유
____사용 사례
____패턴 구현
____코드 일부
________피그 스크립트
________매크로
____결과
____추가 정보
__문자열 프로파일링 패턴
____배경
____패턴을 사용하는 이유
____사용 사례
____패턴 구현
____코드 일부
________피그 스크립트
________매크로
____결과
____추가 정보
__비정형 텍스트 프로파일링 패턴 
____경
____패턴을 사용하는 이유
____사용 사례
____패턴 구현
____코드 일부
________피그 스크립트
________형태소분석을 위한 자바 UDF
________TF-IDF 생성을 위한 자바 UDF
____결과 
____추가 정보
__정리

4장 데이터 검증과 정제 패턴
__빅데이터를 위한 데이터 검증과 정제
__검증과 정제를 위한 피그 선택
__제약조건 검증과 정제 디자인 패턴
____배경
____패턴을 사용하는 이유
____사용 사례
____패턴 구현
____코드 일부
____결과
____추가 정보
__정규표현식 검증과 정제 디자인 패턴
____배경
____패턴을 사용하는 이유
____사용 사례
____패턴 구현
____코드 일부
____결과
__오류 데이터 검증과 정제 디자인 패턴
____배경
____패턴을 사용하는 이유
____사용 사례
____패턴 구현
____코드 일부
____결과
____추가 정보
__비정형 텍스트 데이터 검증과 정제 디자인 패턴
____배경
____패턴을 사용하는 이유
____사용 사례
____패턴 구현 
____코드 일부
____결과
____추가 정보
__정리

5장 데이터 변형 패턴
__데이터 변형 
__구조 변형 패턴 
____배경
____패턴을 사용하는 이유
____사용 사례
____패턴 구현
____코드 일부
____결과
____추가 정보
__데이터 정규화 패턴
____배경
____패턴을 사용하는 이유
____사용 사례
____패턴 구현
____코드 일부
____결과
____추가 정보
__데이터 통합 패턴
____배경
____패턴을 사용하는 이유
____사용 사례
____패턴 구현
____코드 일부
____결과
____추가 정보
__집계 패턴
____배경
____패턴을 사용하는 이유
____사용 사례
____패턴 구현
____코드 일부
____결과
____추가 정보
__데이터 일반화 패턴
____배경
____패턴을 사용하는 이유 
____사용 사례
____패턴 구현
____코드 일부
____결과 
____추가 정보
__정리

6장 데이터 축소 패턴
__데이터 축소: 개요
__빅데이터를 위한 데이터 축소에서 고려해야 할 사항
__차원 축소: 주성분 분석 디자인 패턴
____배경 
____패턴을 사용하는 이유 
____사용 사례 
____패턴 구현
________PCA 구현의 한계
____코드 일부
____결과
____추가 정보
__수치 축소 히스토그램 디자인 패턴
____배경
____패턴을 사용하는 이유
____사용 사례
____패턴 구현
____코드 일부
____결과
____추가 정보
__수치 축소 표본추출 디자인 패턴
____배경
____패턴을 사용하는 이유
____사용 사례
____패턴 구현
____코드 일부
____추가 정보
__수치 축소 클러스터링 디자인 패턴
____배경
____패턴을 사용하는 이유
____사용 사례
____패턴 구현
____코드 일부
____결과
____추가 정보
__정리

7장 고급 패턴과 향후 작업
__클러스터링 패턴
____배경
____패턴을 사용하는 이유
____사용 사례
____패턴 구현
____코드 일부
____결과
____추가 정보
__주제 발견 패턴
____배경
____패턴을 사용하는 이유
____사용 사례
____패턴 구현
____코드 일부
____결과
____추가 정보
__자연어 처리 패턴
____배경
____패턴을 사용하는 이유
____사용 사례
____패턴 구현
____코드 일부
____결과
____추가 정보
__분류화 패턴
____배경 
____패턴을 사용하는 이유
____사용 사례
____패턴 구현
____코드 일부
____결과
____추가 정보
__향후 트렌드
____데이터 중심 패턴의 출현
____솔루션 중심 패턴의 출현
____프로그램화 제약사항을 다루는 패턴
__정리

New Arrivals Books in Related Fields

Ramamurthy, Bina (2021)