로그인회원가입장바구니고객센터마이페이지회사소개
kangcom
전체
Home >   >   > 

일래스틱서치 쿡북 3/e

   
지은이 알베르토 파로   |   출판사 에이콘  |   발행일 2019년 01월 31일
 
클릭하시면 큰 도서이미지를 보실 수 있습니다.
판매가 45,000원40,500원 10%
마일리지 5% 2,250원
발행일 2019-01-31
ISBN 1161752587 |  9791161752587
기타정보 번역서 | 868쪽 | 일반
예상출고일 1~2일 이내 (근무일기준)
배송비 무료배송
   
일반
종합지수 0p
   
이 책의 원서
  Elasticsearch 5.X Cookbook - Third Edition
Packt Publishing | Alberto Paro
 

★ 요약 ★



일래스틱서치를 처음 접하는 개발자나 운영자가 일래스틱서치의 전반적인 기능을 빠르게 이해할 수 있도록 구성한 책이다. 쿡북이라는 제목에서 알 수 있듯이, 각 기능의 레시피를 제공해 단계별로 쉽게 따라 할 수 있다. 이 책은 일래스틱서치에 대해 전혀 모르는 사람뿐 아니라, 플러그인 개발과 같은 중급 이상의 기능까지 다루고 있어서 이미 이를 사용해 본 개발자도 새로운 버전의 변화를 빠르게 살펴보거나 일부 잘 모르는 기능에 관해 접근하기 좋다.

원서의 경우 내용과 예제가 5.x를 기반으로 작성됐지만, 번역서에서는 일래스틱서치의 빠른 릴리즈로 최신 내용을 반영해 최근 정식 릴리즈된 6.5 버전을 기반으로 본문의 예제와 내용을 보완했다.




★ 이 책에서 다루는 내용 ★



■ 외부 플러그인을 올리고 배포하기 위한 최적의 일래스틱서치 클라우드 토폴로지 선택

■ 색인 단계를 완전히 제어하기 위한 맞춤형 매핑 개발

■ 색인과 도큐먼트 관리를 통한 복잡한 쿼리 작성

■ 분석 집계 실행을 통한 검색 결과의 최적화

■ 클러스터와 노드 성능 모니터링

■ 클러스터를 모니터링하기 위한 키바나 설치 및 플러그인으로 키바나 확장

■ 자바, 스칼라, 파이썬, 빅데이터 애플리케이션을 일래스틱서치와 통합





★ 이 책의 대상 독자 ★



일래스틱서치를 시작하면서 동시에 일래스틱서치 지식을 향상시키려는 개발자를 위한 책이다. 이 책은 일래스틱서치 사용의 모든 측면을 살펴보고 일상적인 사용을 위한 솔루션과 힌트를 제공한다. 일래스틱서치 측면에 독자가 쉽게 초점을 맞추고 일래스틱서치 기능을 쉽게 기억하기 위해 예제의 복잡성을 낮췄다.

일래스틱서치와 자바, 스칼라, 파이썬 및 빅데이터 도구 통합을 다루는 후반부에는 애플리케이션에서 일래스틱서치의 기능을 통합하는 방법을 보여준다. 플러그인 개발에 관한 장에서는 일래스틱서치의 고급 사용법과 핵심 확장을 보여주므로 숙련된 자바 노하우가 필요하다.





★ 이 책의 구성 ★



1장, ‘시작하기’에서는 일래스틱서치의 기본 컨셉 및 일래스틱서치와 대화하는 방법에 관한 개요를 제공한다.

2장, ‘다운로드와 설정’에서는 간단한 설치에서 클라우드 설치까지 일래스틱서치를 사용하기 위한 기본 단계를 다룬다.

3장, ‘매핑 관리’에서는 색인과 검색 품질 모두 향상시키기 위해 데이터 필드를 올바르게 정의하는 방법을 다룬다.

4장, ‘기본 작업’에서는 일래스틱서치로 데이터를 수집하기 위해 필요한 가장 일반적인 동작과 데이터를 관리하는 방법을 배운다.

5장, ‘검색’에서는 검색과 정렬을 실행하고, 이와 관련한 API 호출을 알아본다.

6장, ‘텍스트 및 수치형 쿼리’에서는 일래스틱서치 검색 기능의 핵심인 텍스트와 수치형 필드에서의 검색 DSL 부분을 다룬다.

7장, ‘관계 및 지오 쿼리’에서는 연관 도큐먼트(자식/부모)와 지리적 위치 필드에서 작동하는 쿼리를 다룬다.

8장, ‘집계’에서는 사용자 경험을 향상시키고 일래스틱서치에 담긴 정보를 드릴다운(drill down)하기 위해 검색 결과에 대한 분석을 실행할 수 있는 일래스틱서치의 또 다른 기능을 살펴본다.

9장, ‘스크립팅’에서는 스크립팅을 사용해서 일래스틱서치를 사용자 정의하고, 일래스틱서치(검색, 집계, 수집)의 다른 부분에서 다양한 언어로 스크립팅 기능을 사용하는 방법을 알려준다. 일래스틱 팀이 개발한 새 스크립팅 언어인 페인리스에 주로 초점을 맞춘다.

10장, ‘클러스터와 노드 관리’에서는 흔히 발생하는 문제의 이해를 돕기 위해 클러스터 및 노드의 동작을 분석하는 방법을 살펴본다.

11장, ‘백업 및 복구’에서는 관리에 있어서 가장 중요한 요소 중 하나인 백업을 살펴본다. 분산된 백업을 관리하고 스냅샷을 복구하는 방법도 살펴본다.

12장, ‘사용자 인터페이스’에서는 일래스틱서치 6.4에 있어 가장 일반적인 사용자 인터페이스 중 두 가지를 설명한다. 주로 관리 기능에 사용하는 세레브로(Cerebro)와 일래스틱서치의 일반적인 UI 확장으로 엑스팩(X-Pack)을 사용하는 키바나를 사용해본다.

13장, ‘인제스트’에서는 인제스트 파이프라인을 통해 일래스틱서치에 데이터를 입력하는 일래스틱서치 5.x부터 소개된 인제스트 기능에 관해 알아본다.

14장, ‘자바 통합’에서는 REST와 네이티브 프로토콜을 사용해서 자바 애플리케이션에서 일래스틱서치와 통합하는 방법을 알아본다.

15장, ‘스칼라 통합’에서는 네이티브 자바 API에 기반을 둔 발전된 타입 안전(type safe)과 풍부한 기능을 제공하는 스칼라 라이브러리인 elastic4s를 사용해서 스칼라에서 일래스틱서치와 통합하는 방법을 알아본다.

16장, ‘파이썬 통합’에서는 일래스틱서치의 공식 파이썬 클라이언트의 사용 방법을 다룬다.

17장, ‘플러그인 개발’에서는 일래스틱서치 기능을 확장하기 위해 네이티브 플러그인을 만드는 방법을 알아본다. 몇 가지 예제는 플러그인 뼈대 설정, 프로세스, 빌드 프로세스를 보여준다.

18장, ‘빅데이터 통합’에서는 아파치 스파크와 아파치 피그 같은 일반적인 빅데이터 도구에서 일래스틱서치와 통합하는 방법을 살펴본다.





★ 지은이의 말 ★



오늘날 표준 애플리케이션의 가장 일반적인 요구 사항은 검색과 분석 기능이다. 시장에서 이러한 수요에 부응하는 솔루션은 상용과 오픈소스 세계에서 모두 찾을 수 있다. 검색하기 위해 가장 많이 사용하는 라이브러리 중 하나는 아파치 루씬이다. 이 라이브러리가 아파치 솔라(Apache Solr), 인덱스탱크(Indextank), 일래스틱서치 같은 수많은 검색 솔루션의 기반이 된다.

일래스틱서치는 클라우드와 분산 컴퓨팅을 염두에 두고 만든 가장 강력한 솔루션 중 하나다. 컴패스(Compass, http://www.compass-project.org) 개발로 유명한 일래스틱서치의 주요 저자인 셰이 바논(Shay Banon)이 2010년 3월에 일래스틱서치 첫 버전을 발표했다. 따라서 일래스틱서치의 주요 범주는 검색 엔진이다. 또한 집계 프레임워크를 통해 데이터 저장소와 분석 엔진으로도 사용할 수 있을 정도로 많은 기능을 제공한다.

일래스틱서치는 JSON REST 기반, 검색과 분석 모두를 위한 분산된 접근 방식의 맵리듀스, 쉬운 설치와 플러그인을 통한 확장성 같은 수많은 혁신적인 기능을 제공한다.

2010년 개발하기 시작한 때로부터 최신 버전(6.5)에 이르기까지, 많은 시장에서 가장 많이 사용되는 데이터 저장소 중 하나가 된 제품으로 큰 발전을 했다. 이 책에서는 일래스틱서치에서 변경 사항과 많은 기능에 대해 깊이 들여다본다.

일래스틱서치는 지속해서 혁신을 거듭하는 제품이며, 새 기능은 일래스틱서치 회사와 일래스틱서치 사용자에 의해 플러그인(대부분 깃허브를 통해 배포한다)으로 출시된다. 단순성과 고급 기능 때문에 오늘날 IT 산업에 몸담은 많은 세계적인 주요 플레이어가 일래스틱서치를 사용하고 있다.

필자는 일래스틱서치가 시장에서 가장 강력하고 쉽게 사용 가능한 검색 솔루션 중 하나라고 생각한다. 이 책과 예제를 쓰면서, 나와 이 책의 감수자는 지식을 더 잘 관리하기 위해 지식과 열정, 모범 사례를 이 책을 통해 전달하려고 노력했다.



1장. 시작하기

__소개

__노드와 클러스터 이해

__노드 서비스 이해

__데이터 관리

__클러스터, 레플리케이션, 샤딩의 이해

__일래스틱서치와 통신

__HTTP 프로토콜 사용

__네이티브 프로토콜 사용





2장. 다운로드와 설정

__소개

__일래스틱서치 다운로드 및 설치

__네트워킹 설정

__노드 설정

__리눅스 시스템을 위한 설정

__다양한 노드 타입 설정

__클라이언트 노드 설정

__수집 노드 설정

__일래스틱서치에 플러그인 설치

__플러그인 수동 설치

__플러그인 제거

__로깅 설정 변경

__도커를 통한 노드 설정





3장. 매핑 관리

__소개

__명시적 매핑 생성 사용

__기본 타입 매핑

__매핑 배열

__준비

__객체 매핑

__도큐먼트 매핑

__도큐먼트 매핑에서 동적 템플릿 사용

__중첩 객체 관리

__자식 도큐먼트 관리

__다중 매핑으로 필드 추가

__GeoPoint 필드 매핑

__GeoShape 필드 매핑

__IP 필드 매핑

__첨부 필드 매핑

__매핑에 메타데이터 추가

__다양한 분석기 지정

__자동 완성 필드 매핑





4장. 기본 작업

__소개

__색인 생성

__색인 삭제

__색인 열고 닫기

__색인에 매핑 입력

__매핑 조회

__색인 재생성

__색인 새로 고침

__색인 플러시

__색인 강제 병합

__색인 축소

__색인과 타입 존재 여부 확인

__색인 설정 관리

__색인 앨리어스 사용

__색인 롤오버

__도큐먼트 색인

__도큐먼트 조회

__도큐먼트 삭제

__도큐먼트 변경

__원자성 작업 속도 향상(벌크 작업)

__GET 작업 속도 향상(다중 GET)





5장. 검색

__소개

__검색 실행

__정렬

__하일라이팅

__스크롤 쿼리 실행

__search_after 기능 사용

__결과의 inner hits 반환

__올바른 쿼리 제안

__일치한 결과 카운트

__explain 쿼리

__쿼리 프로파일링

__쿼리에 의한 삭제

__쿼리에 의한 변경

__전체 도큐먼트 일치

__불리언 쿼리 사용





6장. 텍스트 및 수치형 퀴리

__소개

__term 쿼리 사용

__terms 쿼리 사용

__prefix 쿼리 사용

__wildcard 쿼리 사용

__regexp 쿼리 사용

__span 쿼리 사용

__match 쿼리 사용

__query_string 쿼리 사용

__simple_query_string 쿼리 사용

__range 쿼리 사용

__common terms 쿼리

__ID 쿼리 사용

__function score 쿼리 사용

__exists 쿼리 사용

__template 쿼리 사용





7장. 관계 및 지오 퀴리

__소개

__has_child 쿼리 사용

__has_parent 쿼리 사용

__nested 쿼리 사용

__geo_bounding_box 쿼리 사용

__geo_polygon 쿼리 사용

__geo_distance 쿼리 사용

__geo_distance_range 쿼리 사용





8장. 집계

__소개

__집계 실행

__stats 집계 실행

__terms 집계 실행

__significant_terms 집계 실행

__range 집계 실행

__histogram 집계 실행

__date_histogram 집계 실행

__filter 집계 실행

__filters 집계 실행

__global 집계 실행

__geo_distance 집계 실행

__children 집계 실행

__nested 집계 실행

__top_hits 집계 실행

__matrix_stats 집계 실행

__geo_bounds 집계 실행

__geo_centroid 집계 실행





9장. 스크립팅

__소개

__페인리스 스크립팅

__추가 스크립트 플러그인 설치

__스크립트 관리

__스크립트를 사용한 데이터 정렬

__스크립팅으로 반환 필드 계산

__스크립팅을 통한 검색 필터링

__집계에 스크립팅 사용

__스크립트를 사용한 도큐먼트 업데이트

__스크립트로 재색인





10장. 클러스터와 노드 관리

__소개

__API를 통한 클러스터 헬스 제어

__API를 통한 클러스터 상태 제어

__API를 통해 노드 정보 얻기

__API를 통해 노드 통계 가져오기

__태스크 관리 API 사용

__핫 스레드 API

__샤드 할당 관리

__세그먼트 API로 세그먼트 모니터링

__캐시 정리





11장. 백업 및 복구

__소개

__저장소 관리

__스냅샷 실행

__스냅샷 복구

__백업용 NFS 공유 설정

__원격 클러스터에서 재색인





12장. 사용자 인터페이스

__소개

__세레브로 설치 및 사용

__키바나와 엑스팩 설치

__키바나 대시보드 관리

__키바나로 모니터링

__키바나 개발 콘솔 사용

__키바나로 데이터 시각화

__키바나 플러그인 설치

__키바나로 그래프 생성





13장. 인제스트

__소개

__파이프라인 정의

__인제스트 파이프라인 넣기

__인제스트 파이프라인 가져오기

__인제스트 파이프라인 삭제

__인제스트 파이프라인 시뮬레이션

__내장 프로세서

__그락 프로세서

__인제스트 첨부 플러그인 사용

__인제스트 GeoIP 플러그인 사용





14장. 자바 통합

__소개

__표준 자바 HTTP 클라언트 생성

__HTTP 일래스틱서치 클라이언트 생성

__네이티브 클라이언트 생성

__네이티브 클라이언트로 색인 관리

__매핑 관리

__문서 관리

__벌크 작업 관리

__쿼리 작성

__표준 검색 실행

__집계와 함께 검색 실행

__스크롤 검색 실행





15장. 스칼라 통합

__소개

__스칼라로 클라이언트 생성

__색인 관리

__매핑 관리

__도큐먼트 관리

__표준 검색 실행

__집계와 함께 검색 실행





16장. 파이썬 통합

__소개

__클라이언트 생성

__색인 관리

__매핑을 포함한 mappings 관리

__도큐먼트 관리

__표준 검색 실행

__집계와 함께 검색 실행





17장. 플러그인 개발

__소개

__플러그인 만들기

__분석기 플러그인 만들기

__REST 플러그인 만들기

__클러스터 액션 만들기

__인제스트 플러그인 만들기





18장. 빅데이터 통합

__소개

__아파치 스파크 설치

__아파치 스파크를 통한 데이터 색인

__아파치 스파크를 통한 메타데이터 색인

__아파치 스파크로 데이터 읽기

__SparkSQL을 사용해 데이터 읽기

__아파치 피그로 데이터 색인
알베르토 파로(Alberto Paro)

엔지니어이고 프로젝트 관리자겸 소프트웨어 개발자다. 현재 빅데이터 기술과 NoSQL 솔루션 기반 프리랜서 트레이너 및 컨설턴트로 일한다. 주로 빅데이터 처리, NoSQL, 자연어 처리, 신경망과 관련된 새롭게 떠오르는 솔루션과 애플리케이션 연구를 좋아한다. 여덟 살에 싱클레어 스펙트럼(Sinclair Spectrum)으로 베이식(BASIC) 프로그래밍을 시작해서 현재까지 다양한 운영체제, 애플리케이션, 프로그래밍 언어를 사용하며 많은 경험을 쌓았다.

『ElasticSearch Cookbook 2/e』(에이콘, 2016)의 저자며, 팩트출판사가 출판한 여러 서적의 기술 감수자를 맡았다.





★ 옮긴이의 말 ★



일래스틱서치는 검색엔진으로 시작했지만, 현업에서는 다양한 용도로 사용하고 있다. ELK 혹은 일래스틱 스택이라는 이름으로 로깅이나 모니터링을 위한 데브옵스 도구로 널리 사용하고 있고, 강력한 실시간 집계를 활용해 데이터 분석의 용도로도 많이 사용하고 있다. 국내에서 검색엔진으로 사용하는 사례도 많이 생겨서 노리(nori)라는 한국어 분석 플러그인도 정식으로 제공하고 있다. 엑스팩을 활용하면 최근 화두가 되고 있는 머신 러닝 엔진으로 활용할 수도 있다. 다양한 기능과 쉬운 설치, 그리고 런타임에 변경할 수 있는 다양한 설정과 확장성으로 빠른 시간에 대중화됐다. 업그레이드 속도도 상당이 빠르다. 일래스틱서치는 매달 마이너 버전을 업그레이드 하고 있고 매년 메이저 버전을 출시하는 등 새로운 버전을 통해 빠르게 기능을 개선하고 있다. 마이너 버전에서 조차 Breaking Changes가 있어서 새로운 버전의 기능을 모두 활용해 보기가 쉽지 않을 정도다.

이 책은 일래스틱서치를 처음 접하는 개발자나 운영자들이 일래스틱서치의 전반적인 기능을 빠르게 이해할 수 있도록 구성했다. ‘쿡북’이라는 제목에서처럼 각 기능들에 대해 레시피를 제공해서 독자들이 단계별로 쉽게 따라 할 수 있도록 구성했다. 일래스틱서치에 대해 전혀 모르는 사람뿐 아니라, 플러그인 개발과 같은 중급 이상의 기능까지 다루고 있어서 이미 사용해 본 개발자도 새로운 버전의 변화를 빠르게 살펴보거나 일부 잘 모르는 기능에 대해 쉽게 접근할 수 있는 책이다.

원서의 경우 내용과 예제가 5.x를 기반으로 작성됐다. 번역서가 출간될 즈음, 일래스틱서치의 빠른 릴리즈로 인해 고민에 빠졌다. 원서에 충실할 것인가? 최신 내용을 반영할 것인가? 고민 끝에, 최신 내용을 반영하기로 결정했고, 한국어판에서는 최근 정식 릴리즈된 6.5버전을 기반으로 본문의 예제와 내용을 보안했다. 서문을 쓰는 지금에도 새로운 버전을 릴리즈한 일래스틱처치가 한편으로는 원망스럽기도 하지만, 새로운 버전마다 사용자들이 기다리던 기능들을 빠르게 제공하는 노력에 감사한다.





★ 옮긴이 소개 ★



이재익

네이버에서 사내 로그 시스템과 일래스틱서치 클러스터 서비스를 개발 및 운영하고 있다. 최근에는 분산시스템 디버깅과 머신 러닝을 데브옵스 시스템에 활용하는 방법에 관심을 가지고 있다. 여가에는 가족들과 캠핑을 하거나 독서를 즐긴다. 공역서로는 에이콘 출판사에서 펴낸 『Elasticsearch in Action』(2016), 『일래스틱서치 모니터링』(2017), 『키바나 5.0 배우기』(2017)가 있다.



최중연

네이버에서 모니터링 서비스를 개발하고 있으며, 로그 데이터에 기반한 시계열 데이터 집계 및 저장에 관심이 많다. 운영 로그를 효과적으로 집계하고 시계열화해서 운영을 고도화하려는 목적으로 일래스틱서치를 접하게 됐고 번역에도 참여하게 됐다.



등록된 서평이 없습니다.
따라하며 배우는 데이터 과학...
권재명
선택된 상품을 찜하실 수 있습니다. 선택된 상품을 바로구매 하실 수 있습니다.
이득우의 언리얼 C++ 게임 개발의 정석...
이득우
선택된 상품을 찜하실 수 있습니다. 선택된 상품을 바로구매 하실 수 있습니다.
 
전체평균(0)
회원평점   회원서평수 0
알베르토 파로 의 최근 저서
 
고성능 엔터프라이즈 검색엔진 일래스틱서치 입문과 활용 세트 - 전2권
70,200원
(10%↓+5%)
 
에이콘 출판사의 신간
OpenCV 4 마스터(3판)(오픈소스 프로그래밍)
로이 실크롯/테크 트랜스 그룹 T4 저
27,000원
(10%↓+5%)
 
Splunk를 활용한 시큐리티 모니터링(해킹과 보안)
서진원 저
31,500원
(10%↓+5%)
 
AWS 침투 테스트
칼 길버트/이진호 저
36,000원
(10%↓+5%)
 
적대적 머신러닝
앤서니 조셉 외 지음/김우석 저
36,000원
(10%↓+5%)
 
The Python 3 Standard Library by Example: 예제로 배우는 파이썬 표준 라이브러리
더그 헬먼/권석기 저
52,200원
(10%↓+5%)
 
이메일주소수집거부