일래스틱서치 고급 기능의 개념과 활용
도서명:일래스틱서치 고급 기능의 개념과 활용
저자/출판사:바디,딕시트/에이콘출판
쪽수:516쪽
출판일:2017-09-27
ISBN:9791161750552
목차
1장. 일래스틱서치와 일래스틱서치 변경 다시 살펴보기
__루씬 소개
____루씬 인덱스 자세히 살펴보기
____일래스틱서치 소개
__일래스틱서치 5.x 소개
____일래스틱서치의 새 기능 소개
____일래스틱서치의 변경사항
____2.x부터 5.x까지의 변경사항
__요약
2장. 고급 쿼리 DSL
__루씬에서 변경된 기본 텍스트 스코어링: BM25
____정밀도와 회수
____TF-IDF 정리
____BM25가 TF-IDF와 다른 점
__리팩토링된 쿼리 DSL
__작업에 적합한 쿼리 선택하기
____쿼리 범주화
____사용 사례
____쿼리 DSL의 중요한 변경사항
__쿼리 재작성 explain
____prefix 쿼리 예제
____아파치 루씬 다시 살펴보기
____쿼리 재작성 속성
__쿼리 템플릿
____검색 템플릿 소개
____Mustache 템플릿 엔진
__요약
3장. 전체 텍스트 검색을 넘어서
__멀티매칭 제어
__멀티매칭 타입
____베스트 필드 매칭
____크로스 필드 매칭
____모스트 필드 매칭
____구문 매칭
____접두어 매칭을 이용한 구문
__함수 스코어 쿼리를 이용한 스코어 제어
__함수 스코어 쿼리의 내장 함수
____weight 함수
____필드 값 인자 함수
____스크립트 스코어 함수
____감쇄 함수: 선형, 지수, 가우스 함수
__쿼리 리스코어링
____쿼리 리스코어링이란 무엇인가?
__리스코어 쿼리의 구조
____리스코어 매개변수
__일래스틱서치 스크립팅
____문법
____여러 버전의 스크립팅 변경사항
__페인리스: 새로운 기본 스크립팅 언어
____스크립팅 언어 페인리스의 사용
____예제
____스크립트를 기반으로 결과 정렬
____여러 필드를 기반으로 정렬
__루씬 표현식
____기초
____예제
__요약
4장. 데이터 모델링과 분석
__일래스틱서치의 데이터 모델링 기술
__일래스틱서치의 관계형 데이터 관리
____객체 타입
____중첩 도큐먼트
____부모-자식 관계
____대안에 대한 몇 마디
____데이터 반정규화의 예제
__집계를 이용한 데이터 분석
____일래스틱서치 5.0의 인스턴트 집계
____집계 재방문
____새로운 집계 범주: 매트릭스 집계
__요약
5장. 사용자 검색 환경 개선
__사용자 맞춤법 실수 수정
____데이터 테스트
____세부 기술 정보 얻기
__제안자
____ _search 엔드포인트에서 제안자 사용
____term 제안자
____phrase 제안자
____completion 제안자
__사용자 정의 자동 완성 구현
____인덱스 생성
__동의어 작업
____동의어 검색 설정 준비
____동의어 포맷 지정
____동의어 확장과 동의어 수축
__요약
6장. 인덱스 배포 아키텍처
__다중 노드 클러스터 예제 설정
__샤드와 복제본의 적절한 개수 선택
____샤딩과 초과 할당
____초과 할당의 긍정적인 예제
____다중 샤드와 다중 인덱스
__라우팅 설명
____샤드와 데이터
____라우팅 테스트
____라우팅을 이용한 저장
____실제 라우팅
____쿼리
____앨리어스
____다중 라우팅 값
__샤드 할당 제어
____할당 인식
____노드당 할당할 수 있는 전체 샤드 개수 정의
____물리 서버에 허용될 전체 샤드 정의
__쿼리 실행 preference
__여러 경로의 데이터를 스트라이핑하기
__인덱스와 타입: 인덱스 생성 시 변경된 접근 방식
__요약
7장. 로우 레벨 인덱스 제어
__아파치 루씬 스코어링 변경
____사용 가능한 유사도 모델
____필드마다 유사도 설정하기
____유사도 모델 설정
____기본 유사도 모델 선택
__적절한 디렉토리 구현 선택: 저장소 모듈
__저장소 타입
____간단한 파일 시스템 저장소: simplefs
__NRT, 플러시, 리프레시, 트랜잭션 로그
____인덱스 변경과 변경사항 커밋
____기본 리프레시 시간 변경
____트랜잭션 로그
____거의 실시간 GET
__세그먼트 병합의 제어
____일래스틱서치의 병합 정책 변경
____계층 병합 정책 설정
____스케줄링 병합
____강제 병합
__일래스틱서치 캐시의 이해
____노드 쿼리 캐시
____샤드 요청 캐시
____필드 데이터 캐시
____서킷 브레이커 사용
__요약
8장. 일래스틱서치 관리
__일래스틱서치의 노드 타입
____데이터 노드
____마스터 노드
____인제스트 노드
____트라이브 노드
____코디네이팅 노드/클라이언트 노드
__탐색과 복구 모듈
____탐색 설정
____게이트웨이와 복구 설정
____인덱스 복구 API
__인간 친화적인 상태 API: cat API
____cat API의 기초
____cat API의 사용
__백업
____스냅샷 API
____파일 시스템 백업하기
____클라우드에 백업 저장
__스냅샷 복구
____예제: 스냅샷 복구
__요약
9장. 데이터 변환과 통합 검색
__인제스트 노드가 포함된 일래스틱서치에서의 데이터 전처리 수행 방법
____유입 파이프라인 작업
____파이프라인의 에러 처리
____인제스트 프로세서로 작업
__통합 검색
____테스트 클러스터
____트라이브 노드 생성
____트라이브 노드로 데이터 읽기
____마스터 레벨의 읽기 오퍼레이션
____트라이브 노드에서 데이터 저장
____마스터 레벨의 저장 오퍼레이션
____인덱스 충돌 처리
____블로킹 쓰기 오퍼레이션
__요약
10장. 성능 개선
__쿼리 유효성 검사와 프로파일링
____실행 전에 비싼 쿼리의 유효성 검사하기
____자세한 쿼리 실행 보고서를 위한 쿼리 프로파일링
____프로파일링 사용 시 고려사항
__핫 스레드
____핫 스레드 API의 사용법 설명
____핫 스레드 API의 응답
__일래스틱서치의 스케일링
____수직 스케일링
____수평 스케일링
____고부하 시나리오에서의 일래스틱서치 사용
__축소와 롤오버 API를 사용해 시간 기반 인덱스를 효율적으로 관리하는 방법
____축소 API
____롤오버 API
__요약
11장. 일래스틱서치 플러그인 개발
__아파치 메이븐 프로젝트의 구조 생성
____메이븐 기초의 이해
____메이븐 자바 프로젝트의 구조
__사용자 정의 REST 엔드포인트 생성
____가정
____구현 세부사항
____테스트 시간
__사용자 정의 분석 플러그인 생성
____구현 세부사항
____사용자 정의 분석 플러그인의 테스트
__요약
12장. 일래스틱 스택 5.0 소개
__일래스틱 스택 5.0 소개
__로그스태시, 비트, 키바나 소개
____로그스태시로 작업
____데이터 전송자, 비트 소개
____키바나로 작업
__요약