책 이미지

책 정보
· 분류 : 국내도서 > 컴퓨터/모바일 > 프로그래밍 개발/방법론 > 데이터베이스 프로그래밍 > SQL
· ISBN : 9791185890333
· 쪽수 : 336쪽
· 출판일 : 2015-10-15
책 소개
목차
Chapter 1 스파크를 이용한 데이터 분석 소개 _ 1
아파치 스파크란 무엇인가? _ 1
통합된 구성 _ 2
스파크는 누가, 무엇을 위해 사용할까? _ 5
스파크의 간략한 역사 _ 8
스파크의 버전과 릴리스 _ 9
스파크의 저장소 계층 _ 9
Chapter 2 스파크 맛보기 _ 11
스파크 다운로드하기 _ 11
스파크의 파이썬 셸과 스칼라 셸 소개 _ 13
스파크의 핵심 개념 소개 _ 18
단독 애플리케이션 _ 21
요약 _ 27
Chapter 3 RDD로 프로그래밍하기 _ 29
RDD 기초 _ 29
RDD 생성하기 _ 32
RDD의 연산 _ 34
스파크에 함수 전달하기 _ 38
많이 쓰이는 트랜스포메이션과 액션 _ 43
영속화(캐싱) _ 55
요약 _ 57
Chapter 4 키/값 페어로 작업하기 _ 59
배경 _ 60
페어 RDD 생성 _ 60
페어 RDD의 트랜스포메이션 _ 61
페어 RDD에서 쓸 수 있는 액션 _ 74
데이터 파티셔닝(고급) _ 75
요약 _ 86
Chapter 5 데이터 불러오기/저장하기 _ 87
배경 _ 87
파일 포맷 _ 88
파일 시스템 _ 109
스파크 SQL로 구조화 데이터 다루기 _ 111
데이터베이스 _ 114
요약 _ 120
Chapter 6 고급 스파크 프로그래밍 _ 121
소개 _ 121
어큐뮬레이터 _ 122
브로드캐스트 변수 _ 127
파티션별로 작업하기 _ 131
외부 프로그램과 파이프로 연결하기 _ 134
수치 RDD 연산들 _ 138
요약 _ 140
Chapter 7 클러스터에서 운영하기 _ 141
소개 _ 141
스파크 실행 구조 _ 142
spark-submit을 써서 애플리케이션 배포하기 _ 145
사용자 코드와 의존성 라이브러리 패키징하기 _ 148
스파크 애플리케이션 간의 스케줄링 _ 155
클러스터 매니저 _ 155
어떤 클러스터 매니저를 써야 할까? _ 167
요약 _ 167
Chapter 8 스파크 최적화 및 디버깅 _ 169
SparkConf로 스파크 설정하기 _ 169
실행을 구성하는 것: 작업, 태스크, 작업 단계 _ 174
정보 찾기 _ 180
성능에 관한 핵심 고려 사항 _ 185
요약 _ 191
Chapter 9 스파크 SQL _ 193
스파크 SQL 라이브러리 링크 _ 195
애플리케이션에서 스파크 SQL 사용하기 _ 197
데이터 불러오고 저장하기 _ 205
JDBC/ODBC 서버 _ 212
사용자 정의 함수 _ 216
스파크 SQL 성능 _ 218
요약 _ 221
Chapter 10 스파크 스트리밍 _ 223
간단한 예제 _ 224
아키텍처와 추상 개념 _ 227
트랜스포메이션 _ 232
출력 연산 _ 241
입력 소스 _ 243
24/7 운영 _ 252
스트리밍 UI _ 257
성능 고려 사항 _ 258
요약 _ 260
Chapter 11 MLlib로 해 보는 머신 러닝 _ 261
개요 _ 262
시스템 요구 사항 _ 263
머신 러닝의 기초 _ 263
데이터 타입 _ 268
알고리즘 _ 271
팁과 성능 고려 사항 _ 287
파이프라인 API _ 289
요약 _ 291
찾아보기 _ 292
저자소개
리뷰
책속에서
이 입문서는 스파크를 빠르게 익히고 실행할 수 있도록 쓰였다. 이 책을 통해서 자신의 PC에 스파크를 다운로드하여 실행하고, API를 배우기 위해 명령어들을 입력하고 그 결과를 볼 수 있을 것이다. 그리고 일단 그 정도 시점이 되면 가능한 작업의 세부 사항과 분산 실행에 대해 다루고, 최종적으로는 스파크에 내장된 머신 러닝, 스트림 처리, SQL 등의 고수준 라이브러리를 둘러보게 될 것이다. 한 대의 컴퓨터든 수백 대로 구성된 클러스터든 데이터 분석에 관한 문제를 맞닥뜨렸을 때, 우리는 이 책이 그 문제를 빠르게 해결할 수 있는 도구가 되기를 바란다.
스파크는 작업 노드에서는 데이터를 메모리에 올려 처리할 수 있어서 많은 분산 작업들, 심지어 십수 대의 머신에서 테라바이트(terabyte) 단위의 데이터를 처리하는 것도 몇 초 만에 끝낼 수 있다. 이런 높은 성능 덕분에 일반적으로 셸에서 수행하게 되는 반복적인 일회성, 탐색적 분석 같은 종류의 작업을 스파크에서 수행하는 것도 적절하다. 스파크는 클러스터 연결을 잘 지원하는 기능을 가진 파이썬과 스칼라 셸을 지원한다.
이번 장에서는 스파크에서 가장 흔하게 쓰이는 트랜스포메이션과 액션들에 대해 알아본다. 특별한 데이터 타입을 취급하는 RDD를 위한 추가적인 연산들도 존재한다. 예를 들면, 통계 함수들이나 키/값 페어(key/value pair)를 다루는 RDD에서 키를 기준으로 데이터를 집계하는 키/값 연산 같은 것들이 있다. RDD 타입에 따라 변환하는 방법과 이런 특별한 연산들은 후반부에 다룬다.