스파크2 프로그래밍 (대용량 데이터 처리부터 머신러닝까지 | 개정판)

스파크2 프로그래밍 (대용량 데이터 처리부터 머신러닝까지 | 개정판)

$37.68
Description
스파크를 처음 접하는 입문자를 위한 안내서!
하둡으로 대표되던 빅데이터 처리 기술은 빅데이터와 머신러닝, 딥러닝의 붐을 타고 믿을 수 없을 만큼 빠른 속도로 발전해가고 있습니다. 작년 봄 이 책의 초판이 출시되던 해에 스파크는 이미 최고의 데이터 처리 플랫폼 중 하나로 인정받고 있었습니다. 하지만 더 이상 큰 폭의 개편은 없을 것만 같았던 스파크는 그 후로도 더욱 주목할 만한 변화를 거듭하면서 불과 1년이 지난 지금 더욱더 새로워진 API와 고도화된 성능을 갖춘 최적의 데이터 처리 플랫폼으로 변화를 거듭하고 있습니다.

이 책은 스파크를 처음 접하는 개발자들이 빠른 시간 내에 스파크가 무엇이고 어디에 어떻게 활용할 수 있는지 실무에 필요한 감을 잡을 수 있도록 스파크의 전체 모듈에 대한 설명과 예제를 담고 있습니다. 특히 스파크를 써 보고 싶지만 새로운 언어를 배우는 데 따르는 부담 때문에 망설이던 개발자들을 위해 스칼라, 자바, 파이썬 예제를 수록했습니다. 이 책을 통해 스파크에 대한 기초를 다지고 나면 각자의 영역에서 스파크가 제공하는 풍부한 기능들을 더 깊이 있고 자유롭게 활용할 수 있게 될 것입니다.
저자

백성민

저자백성민
어쩌다시작한개발이천직이되어버린행복한개발자.좋아하고즐기는일을직업으로가질수있음에더없이감사한마음으로살고있다.2001년이후줄곧실무개발자로일하고있으며지금은한포털회사에서광고데이터분석업무를수행하고있다.올해는책만사서쌓아두는일을그만하고그동안모아둔책들을한권이라도더읽어봐야겠다는다짐을벌써수년째하고있는중이다.번역서로《거침없이배우는자바파워툴(지앤선,2011)》이있다.

목차

▣01장:스파크소개
1.1스파크
___1.1.1빅데이터의등장
___1.1.2빅데이터의정의
___1.1.3빅데이터솔루션
___1.1.4스파크
___1.1.5RDD(ResilientDistributedDataset)소개와연산
___1.1.6DAG
___1.1.7람다아키텍처
1.2스파크설치
___1.2.1스파크실행모드의이해
___1.2.2사전준비
___1.2.3스파크설치
___1.2.4예제실행
___1.2.5스파크셸
___1.2.6실행옵션
___1.2.7더살펴보기
1.3개발환경구축
___1.3.1로컬개발환경구축
1.4예제프로젝트설정
___1.4.1WordCount예제실행
1.5데이터프레임과데이터셋
1.6정리

▣02장:RDD
2.1RDD
___2.1.1들어가기에앞서
___2.1.2스파크컨텍스트생성
___2.1.3RDD생성
___2.1.4RDD기본액션
___2.1.5RDD트랜스포메이션
___2.1.6RDD액션
___2.1.7RDD데이터불러오기와저장하기
___2.1.8클러스터환경에서의공유변수
2.2정리

▣03장:클러스터환경
3.1클러스터환경
___3.1.1클러스터모드와컴포넌트
___3.1.2클러스터모드를위한시스템구성
___3.1.3드라이버프로그램과디플로이모드
3.2클러스터매니저
___3.2.1스탠드얼론클러스터매니저
___3.2.2아파치메소스
___3.2.3얀
___3.2.4히스토리서버와매트릭스
___3.2.5쿠버네티스(Kubenetes)
3.3정리

▣04장:스파크설정
4.1스파크프로퍼티
4.2환경변수
4.3로깅설정
4.4스케줄링
___4.4.1애플리케이션간의자원스케줄링
___4.4.2단일애플리케이션내부에서의자원스케줄링
4.5정리

▣05장:스파크SQL
5.1데이터셋
5.2연산의종류와주요API
5.3코드작성절차및단어수세기예제
5.4스파크세션
5.5데이터프레임,로우,칼럼
___5.5.1데이터프레임생성
___5.5.2주요연산및사용법
5.6데이터셋
___5.6.1데이터셋생성
___5.6.2타입트랜스포메이션연산
5.7하이브연동
5.8분산SQL엔진
5.9SparkSQLCLI
5.10쿼리플랜(QueryPlan)과디버깅
___5.10.1스파크세션(SparkSession)과세션스테이트(SessionState),스파크컨텍스트(SparkContext)
___5.10.2QueryExecution
___5.10.3LogicalPlan과SparkPlan
5.11정리

▣06장:스파크스트리밍
6.1개요및주요용어
6.1.1스트리밍컨텍스트
___6.1.2DStream(DiscretizedStreams)
6.2데이터읽기
___6.2.1소켓
___6.2.2파일
___6.2.3RDD큐(QueueofRDD)
___6.2.4카프카
6.3데이터다루기(기본연산)
___6.3.1print()
___6.3.2map(func)
___6.3.3flatMap(func)
___6.3.4count(),countByValue()
___6.3.5reduce(func),reduceByKey(func)
___6.3.6filter(func)
___6.3.7union()
___6.3.8join()
6.4데이터다루기(고급연산)
___6.4.1transform(func)
___6.4.2updateStateByKey()
___6.4.3윈도우연산
___6.4.4window(windowLength,slideInterval)
___6.4.5countByWindow(windowLength,slideInterval)
___6.4.6reduceByWindow(func,windowLength,slideInterval)
___6.4.7reduceByKeyAndWindow(func,invFunc,windowLength,slideInterval,[numTasks])
___6.4.8countByValueAndWindow(windowLength,slideInterval,[numTasks])
6.5데이터의저장
___6.5.1saveAsTextFiles(),saveAsObjectFiles(),saveAsHadoopFiles()
___6.5.2foreachRDD()
6.6CheckPoint
6.7캐시
6.8모니터링
6.9주요설정

▣07장:스트럭처스트리밍
7.1개요
7.2프로그래밍절차
7.3데이터프레임과데이터셋생성
7.4스트리밍연산
___7.4.1기본연산및집계연산
___7.4.2윈도우연산
___7.4.3워터마킹
___7.4.4조인연산
___7.4.5스트리밍중복데이터제거
___7.4.6스트리밍쿼리
7.5정리

▣08장:MLlib
8.1개요
8.2관측과특성
8.3레이블
8.4연속형데이터와이산형데이터
8.5알고리즘과모델
8.6파라메트릭알고리즘
8.7지도학습과비지도학습
8.8훈련데이터와테스트데이터
8.9MLlibAPI
8.10의존성설정
8.11벡터와LabeledPoint
___8.11.1벡터
___8.11.2LabeledPoint
8.12파이프라인
8.13알고리즘
___8.13.1Tokenizer
___8.13.2TF-IDF
___8.13.3StringIndexer,IndexToString
8.14회귀와분류
___8.14.1회귀
___8.14.2분류
8.15클러스터링
8.16협업필터링
8.17정리

▣09장:SparkR
9.1개요
9.2R설치및실행
9.3데이터프레임
9.4데이터프레임생성
___9.4.1R데이터프레임으로부터생성
___9.4.2파일로부터생성
9.5데이터프레임연산
___9.5.1조회및기본연산
___9.5.2그룹및집계연산
___9.5.3칼럼연산
___9.5.4집합연산
___9.5.5dapply(),dapplyCollect()
___9.5.6gapply(),gapplyCollect()
___9.5.7spark.lapply()
___9.5.8createOrReplaceTempView()
___9.5.9write()
9.6하이브연동
9.7머신러닝
9.8정리

▣10장:GraphX
10.1주요용어
___10.1.1유방향그래프
___10.1.2유방향멀티그래프
___10.1.3속성그래프
10.2데이터타입
___10.2.1RDD
___10.2.2VertextID
___10.2.3꼭짓점
___10.2.4선(Edge)
___10.2.5EdgeTriplet
___10.2.6VertexRDD
___10.2.7EdgeRDD
___10.2.8Graph
10.3그래프생성
10.4그래프연산
___10.4.1numEdges,numVertices
___10.4.2inDegrees,outDegrees,degrees
___10.4.3vertices,edges,triplets
___10.4.4mapVertices(),mapEdges(),mapTriplets()
___10.4.5reverse()
___10.4.6subgraph()
___10.4.7mask()
___10.4.8groupEdges()
___10.4.9joinVertices(),outerJoinVertices()
___10.4.10collectNeighborIds(),collectNeighbors()
___10.4.11aggregateMessages()
___10.4.12pregel()
10.5VertextRDD,EdgeRDD연산
10.6그래프알고리즘
10.7정리

▣부록:스칼라란?
스칼라설치
스칼라셸
변수타입과변수선언
Range와형변환
클래스,객체,컴패니언오브젝트
트레이트와상속
apply
튜플과옵션,케이스클래스
패턴매치
패키지객체
type
임포트
함수와메서드
제네릭
암묵적변환과타입클래스패턴
정리