ElasticSearch Cookbook 2/e [DevOps 관점으로 설명한 일래스틱서치 쿡북]
- 원서명ElasticSearch Cookbook, Second Edition (ISBN 9781783554836)
- 지은이알베르토 파로(Alberto Paro)
- 옮긴이김용환
- ISBN : 9788960778184
- 40,000원
- 2016년 02월 05일 펴냄 (절판)
- 페이퍼백 | 544쪽 | 188*235mm
- 시리즈 : acorn+PACKT, 데이터 과학
판매처
- 현재 이 도서는 구매할 수 없습니다.
책 소개
요약
이 책은 일래스틱서치의 핵심 개념을 설명할 뿐만 아니라 여러 언어와의 연동 방법과 일래스틱서치를 DevOps 관점으로 설명한 내용을 예제로 쉽게 풀이한다. 애플리케이션에서 REST API뿐 아니라 쓰리프트(Thrift) 기반의 파이썬, 자바 API를 이용한 통합 개발 방법을 설명하고, 일래스틱서치를 다른 NoSQL과 연동해 확장할 수 있는 리버 플러그인을 소개한다. 또한 운영 관점에서 많은 도움이 될 다양한 모니터링 플러그인과 사용자 정의 플러그인을 개발할 수 있는 방법 등을 다루고 있어, 일래스틱서치를 실무에 적용하고 확장하고자 하는 이들에게 충실한 가이드가 될 것이다.
이 책에서 다루는 내용
일래스틱서치로 최고의 클라우드 토폴로지를 선택하고 플러그인으로 일래스틱서치 기능 확장
색인 단계를 완벽히 제어할 수 있는 맞춤형 매핑 개발
색인과 도큐먼트로 복잡한 질의 생성
분석 집계를 실행한 검색 결과의 최적화
원본 간 데이터를 동기화하고 전달할 수 있는 리버S(QL, NoSQL, 웹 기반) 관리
주요 태스크를 실행할 수 있는 웹 인터페이스 개발
클러스터와 노드 성능 모니터링
이 책의 대상 독자
이 책은 일래스틱서치를 시작하고 싶거나 일래스틱서치에 관한 지식을 좀 더 쌓고 싶은 사용자와 개발자를 대상으로 한다. 일래스틱서치를 이용한 모든 부분을 다루며, 일상적인 사용을 위한 해결책과 힌트를 제공한다. 예제의 복잡도를 낮춰 일래스틱서치가 다루는 내용에 집중할 수 있으며, 일래스틱서치를 쉽고 완벽하게 이해할 수 있다.
이 책의 후반부에서는 자바 및 파이썬 프로그래밍 언어와의 일래스틱서치 통합을 다루며, 사용자에게 일래스틱서치 기능을 자바와 파이썬 기반의 애플리케이션과 어떻게 통합할 수 있는지 보여준다.
12장, ‘플러그인 개발’은 일래스틱서치와 일래스틱서치 핵심 부분의 고급 기능을 다룬다. 따라서 12장을 완벽히 이해하려면 자바에 대한 사전 지식이 필요하다.
이 책의 구성
1장, ‘시작하기’는 일래스틱서치의 기본 개념과 일래스틱서치와의 통신 방법을 소개한다.
2장, ‘다운로드와 설정’은 일래스틱서치를 시작할 수 있는 기본 단계, 간단한 설치부터 다중 노드의 실행까지 다룬다.
3장, ‘매핑 관리’는 색인과 검색 품질을 향상할 수 있는 데이터 필드의 정확한 정의를 알아본다.
4장, ‘기본 작업’은 일래스틱서치에 데이터를 추가하고 관리하는 데 필요한 공통 작업을 살펴본다.
5장, ‘검색, 질의, 필터’는 일래스틱서치의 핵심 검색 기능을 다룬다. 검색 DSL은 일래스틱서치에 질의할 수 있는 유일한 방법이다.
6장, ‘집계’는 일래스틱서치의 또 다른 기능으로, 사용자 경험을 증대시키고, 정보를 깊이 검색하기 위해 검색 결과를 기반으로 분석할 수 있는 기능을 다룬다.
7장, ‘스크립트’는 다양한 프로그래밍 언어를 이용해 일래스틱서치를 스크립트로 사용자 정의하는 방법을 다룬다.
8장, ‘리버’는 데이터베이스, NoSQL 솔루션, 데이터 스트림 같은 여러 원본으로부터 데이터를 가져올 수 있는 기능으로 일래스틱서치를 확장한다.
9장, ‘클러스터와 노드 모니터링’은 일반적인 위험을 이해할 수 있는 클러스터와 노드의 동작을 분석하는 방법을 보여준다.
10장, ‘자바 통합’은 REST와 네이티브 프로토콜을 사용하는 자바 애플리케이션에서 일래스틱서치를 통합하는 방법을 다룬다.
11장, ‘파이썬 통합’은 공식 일래스틱서치 파이썬 클라이언트와 파이썬 스타일로 개발된 PyES 라이브러리 사용 방법을 다룬다.
12장, ‘플러그인 개발’은 다양한 플러그인 타입, 사이트 플러그인과 네이티브 플러그인을 생성하는 방법을 다룬다. 예시에서 플러그인의 뼈대를 보여주고, 개발 프로세스와 빌드 방법을 설명한다.
목차
목차
- 1장 시작하기
- 개요
- 노드와 클러스터 이해하기
- 노드 서비스 이해하기
- 데이터 관리하기
- 클러스터, 복제, 샤딩 이해하기
- 일래스틱서치로 통신하기
- HTTP 프로토콜 사용하기
- 네이티브 프로토콜 사용하기
- 쓰리프트 프로토콜 사용하기
- 2장 다운로드와 설정
- 개요
- 일래스틱서치 다운로드와 설치하기
- 네트워크 설정하기
- 노드 설정하기
- 리눅스 시스템 설정하기
- 노드 타입 설정하기
- 일래스틱서치 플러그인 설치하기
- 수동으로 플러그인 설치하기
- 플러그인 삭제하기
- 로깅 설정 변경하기
- 3장 매핑 관리
- 개요
- 명시적 매핑 생성 이용하기
- 기본 타입 매핑하기
- 배열 매핑하기
- 객체 매핑하기
- 도큐먼트 매핑하기
- 도큐먼트 매핑에 동적 템플릿 이용하기
- 중첩 객체 관리하기
- 자식 도큐먼트 관리하기
- 다중 매핑으로 필드 추가하기
- geo point 필드 매핑하기
- geo shape 필드 매핑하기
- IP 필드 매핑하기
- 첨부 필드 매핑하기
- 매핑에 메타데이터 추가하기
- 그 밖의 분석기 명세하기
- completion 추천기 매핑하기
- 4장 기본 작업
- 개요
- 색인 생성하기
- 색인 삭제하기
- 색인 열고 닫기
- 색인에 매핑 저장하기
- 매핑 얻기
- 매핑 삭제하기
- 색인 새로 고치기
- 색인 플러시하기
- 색인 최적화하기
- 색인 또는 타입 존재 여부 확인하기
- 색인 설정 관리하기
- 색인 앨리어스 사용하기
- 도큐먼트 색인하기
- 도큐먼트 얻기
- 도큐먼트 삭제하기
- 도큐먼트 변경하기
- 원자적 작업 빨리 하기(벌크 작업)
- GET 작업 빨리 하기(다중 GET).
- 5장 검색, 질의, 필터
- 개요
- 검색 실행하기
- 결과 정렬하기
- 결과 강조하기
- scan 질의 실행하기
- 올바른 질의 추천하기
- 일치한 결과의 개수 계산하기
- 질의로 삭제하기
- 모든 도큐먼트의 일치 여부 확인하기
- 하나의 키워드로 질의/필터 사용하기
- 다중 키워드로 질의/필터 사용하기
- prefix 질의/필터 사용하기
- Boolean 질의/필터 사용하기
- range 질의/필터 사용하기
- span 질의 사용하기
- match 질의 사용하기
- ID 질의/필터 사용하기
- has_child 질의/필터 사용하기
- top_children 질의 사용하기
- has_parent 질의/필터 사용하기
- regexp 질의/필터 사용하기
- function score 질의 사용하기
- exists와 missing 필터 사용하기
- and/or/not 필터 사용하기
- geo bounding box 필터 사용하기
- geo polygon 필터 사용하기
- geo distance 필터 사용하기
- QueryString 질의 사용하기
- template 질의 사용하기
- 6장 집계
- 개요
- 집계 실행하기
- stats 집계 실행하기
- terms 집계 실행하기
- range 집계 실행하기
- histogram 집계 실행하기
- date histogram 집계 실행하기
- filter 집계 실행하기
- global 집계 실행하기
- geo distance 집계 실행하기
- nested 집계 실행하기
- top hit 집계 실행하기
- 7장 스크립트
- 개요
- 추가 스크립트 플러그인 설치하기
- 스크립트 관리하기
- 스크립트로 데이터 정렬하기
- 스크립트로 리턴 필드 계산하기
- 스크립트로 검색 필터링하기
- 스크립트로 도큐먼트 변경하기
- 8장 리버
- 개요
- 리버 관리하기
- 카우치DB 리버 사용하기
- 몽고DB 리버 사용하기
- 래빗MQ 리버 사용하기
- JDBC 리버 사용하기
- 트위터 리버 사용하기
- 9장 클러스터와 노드 모니터링
- 개요
- API를 이용해 클러스터 헬스 제어하기
- API를 이용해 클러스터 상태 제어하기
- API를 이용해 클러스터 노드 정보 얻기
- API를 이용해 노드 통계 얻기
- 저장소 관리하기
- 스냅샷 실행하기
- 스냅샷 복구하기
- 빅데스크 설치와 사용하기
- 일래스틱서치 헤드 설치와 사용하기
- 세마텍스트 SPM 설치와 사용하기
- 마블 설치와 사용하기
- 10장 자바 통합
- 개요
- HTTP 클라이언트 생성하기
- 네이티브 클라이언트 생성하기
- 네이티브 클라이언트를 이용해 색인 관리하기
- 매핑 관리하기
- 도큐먼트 관리하기
- 벌크 액션 관리하기
- 질의 생성하기
- 기본 검색 실행하기
- 집계로 검색 실행하기
- 스크롤/스캔 검색 실행하기
- 11장 파이썬 통합
- 개요
- 클라이언트 생성하기
- 색인 관리하기
- 매핑 관리하기
- 도큐먼트 관리하기
- 표준 검색 실행하기
- 집계로 검색 실행하기
- 12장 플러그인 개발
- 개요
- 사이트 플러그인 개발하기
- 네이티브 플러그인 개발하기
- REST 플러그인 개발하기
- 클러스터 액션 개발하기
- 분석기 플러그인 개발하기
- 리버 플러그인 개발하기