상세정보
미리보기
엘라스틱 스택 개발부터 운영까지
- 저자
- 김준영,정상운 저/박재호 감수
- 출판사
- 책만
- 출판일
- 2021-10-19
- 등록일
- 2022-01-26
- 파일포맷
- PDF
- 파일크기
- 34MB
- 공급사
- 예스이십사
- 지원기기
-
PC
PHONE
TABLET
웹뷰어
프로그램 수동설치
뷰어프로그램 설치 안내
책소개
데이터를 처리하는 데 서로 잘 맞지도 않는 오픈소스 기술들을 굳이 동원해야 할까? 제각각인 오픈소스들을 통합하고 운영하느라 지친 개발자와 운영자들을 위한 솔루션! 이제 엘라스틱 스택 기술 하나면 OK!어느덧 엘라스틱 스택은 검색 엔진을 넘어서 데이터 처리 시스템의 최강자로 자리 잡았다. 이 책에서는 빠르게 변화하는 세상에서 엘라스틱 스택을 지렛대로 삼아 기업의 생존 능력을 극대화하는 방법을 체계적으로 정리한다. 엔터프라이즈 빅데이터 파이프라인을 만들어 기업의 데이터를 처리하고 싶다면? 기업 내에 검색 엔진을 구축해서 빠르게 자료를 검색하고 싶다면? 방대한 데이터를 잘 가공해서 저장한 후에 멋진 시각화로 인사이트를 얻고 싶다면? 여러 서버에서 데이터들을 가져와 하나로 통합한 다음에 추이를 보거나 통계를 내고 싶다면? 바로 이럴 때 엘라스틱 스택이 정답이다. 실습을 위한 물리적인 컴퓨터나 가상 머신만 준비한다면 나머지는 모두 이 책이 책임져줄 것이다. 이 책에서는 엘라스틱 스택을 사용해 데이터 중심 애플리케이션을 설계하고, 개발하며, 운영하는 과정에서 꼭 알아야 할 필수 지식을 구체적인 사례와 함께 설명한다.
저자소개
학창시절 제2의 봉준호 같은 유명한 영화감독이 되고 싶었지만 스스로에 대한 확신이 없어서 성균관대 컴퓨터공학과에 입학했다. 대학 시절 삼성전자 소프트웨어 맴버십과 병역특례, 대학 서버실 관리를 하면서 컴퓨터 프로그래밍의 매력에 푹 빠졌다. 삼성전자에서 타이젠(Tizen) 운영체제를 개발했고 현재는 SK텔레콤에서 데이터 분석 업무를 담당하고 있다. 2014년도에 컴퓨터시스템응용 기술사 자격증을 취득했다.
목차
1부 | 엘라스틱 스택 개요 1장 엘라스틱 스택이란 1.1 엘라스틱서치의 탄생 1.2 엘라스틱 스택으로 발전 1.3 엘라스틱 스택의 구성요소 1.3.1 엘라스틱서치: 분산 검색 엔진 1.3.2 키바나: 시각화와 엘라스틱서치 관리 도구 1.3.3 로그스태시: 이벤트 수집과 정제를 위한 도구 1.3.4 비츠: 엣지단에서 동작하는 경량 수집 도구 1.3.5 기타 솔루션 1.4 엘라스틱 스택의 용도 1.4.1 전문 검색 엔진 1.4.2 로그 통합 분석 1.4.3 보안 이벤트 분석 1.4.4 애플리케이션 성능 분석 1.4.5 머신러닝 1.5 빅데이터 플랫폼의 일부로 동작하는 엘라스틱 스택 1.5.1 엔터프라이즈 데이터 버스인 카프카와 연동 1.5.2 하둡 생태계와 연동 1.5.3 관계형 데이터베이스와 연동 1.6 유사 제품과의 비교 1.6.1 엘라스틱서치의 유사 제품군 1.6.2 로그스태시/비츠의 유사 제품군 1.6.3 키바나의 유사 제품군 1.6.4 엘라스틱 스택의 유사 제품군 1.7 체계적인 문서화와 활발한 공동체 지원 1.8 정리 2장 윈도우 실습 환경 구성 2.1 설치 준비 2.2 엘라스틱서치 설치 2.2.1 엘라스틱서치 다운로드 2.2.2 엘라스틱서치 실행 2.3 키바나 설치 2.3.1 키바나 다운로드 2.3.2 키바나 실행 2.4 엘라스틱 스택 라이선스 확인 2.5 특정 버전 다운로드 2.6 정리 2부 | 엘라스틱 스택 구성요소3장 엘라스틱서치 기본 3.1 준비 작업 3.1.1 엘라스틱서치 요청과 응답 3.1.2 키바나 콘솔 사용법 3.1.3 시스템 상태 확인 3.1.4 샘플 데이터 불러오기 3.2 인덱스와 도큐먼트 3.2.1 도큐먼트 3.2.2 인덱스 3.3 도큐먼트 CRUD3.3.1 인덱스 생성/확인/삭제 3.3.2 도큐먼트 생성 3.3.3 도큐먼트 읽기 3.3.4 도큐먼트 수정 3.3.5 도큐먼트 삭제 3.4 응답 메시지 3.5 벌크 데이터 3.6 매핑 3.6.1 다이내믹 매핑 3.6.2 명시적 매핑 3.6.3 매핑 타입 3.6.4 멀티 필드를 활용한 문자열 처리 3.7 인덱스 템플릿 3.7.1 템플릿 확인 3.7.2 템플릿 설정 3.7.3 템플릿 우선순위 3.7.4 다이내믹 템플릿 3.8 분석기 3.8.1 분석기 구성 3.8.2 토크나이저 3.8.3 필터 3.8.4 커스텀 분석기 3.9 정리 4장 엘라스틱서치: 검색 4.1 쿼리 컨텍스트와 필터 컨텍스트 4.2 쿼리 스트링과 쿼리 DSL 4.2.1 쿼리 스트링 4.2.2 쿼리 DSL 4.3 유사도 스코어 4.3.1 스코어 알고리즘(BM25) 이해하기 4.3.2 IDF 계산 4.3.3 TF 계산 4.4 쿼리 4.4.1 전문 쿼리와 용어 수준 쿼리 4.4.2 매치 쿼리 4.4.3 매치 프레이즈 쿼리 4.4.4 용어 쿼리 4.4.5 용어들 쿼리 4.4.6 멀티 매치 쿼리 4.4.7 범위 쿼리 4.4.8 논리 쿼리 4.4.9 패턴 검색 4.5 정리 5장 엘라스틱서치: 집계 5.1 집계의 요청-응답 형태 5.2 메트릭 집계 5.2.1 평균값/중간값 구하기 5.2.2 필드의 유니크한 값 개수 확인하기 5.2.3 검색 결과 내에서의 집계 5.3 버킷 집계 5.3.1 히스토그램 집계 5.3.2 범위 집계 5.3.3 용어 집계 5.4 집계의 조합 5.4.1 버킷 집계와 메트릭 집계 5.4.2 서브 버킷 집계 5.5 파이프라인 집계 5.5.1 부모 집계 5.5.2 형제 집계 5.6 정리 6장 로그스태시 6.1 로그스태시 소개 6.1.1 로그스태시 특징 6.2 로그스태시 설치 6.2.1 JDK 설치 6.2.2 로그스태시 다운로드 6.2.3 로그스태시 실행 6.3 파이프라인 6.3.1 입력 6.3.2 필터 6.3.3 출력 6.3.4 코덱 6.4 다중 파이프라인 6.4.1 다중 파이프라인 작성 6.5 모니터링 6.5.1 API를 활용하는 방법 6.5.2 모니터링 기능 활성화 6.6 정리 7장 비츠 7.1 비츠 소개 7.2 비츠 설치 7.3 파일비트 7.3.1 파일비트 아키텍처 7.3.2 파일비트 다운로드 7.3.3 파일비트 실행 7.3.4 파일비트 설정 7.3.5 모듈 7.4 모니터링 7.5 그 밖의 비츠 사용하기 7.6 정리 8장 키바나 8.1 키바나 소개 8.1.1 인덱스 패턴 8.2 디스커버 8.2.1 쿼리바, 필터바, 타임피커 8.3 시각화 8.3.1 막대 그래프 8.3.2 히트맵 8.3.3 TSVB(Time Series Visual Builder) 8.4 대시보드 8.4.1 대시보드 만들기 8.5 캔버스 8.5.1 엘라스틱서치 SQL 8.6 맵스 8.6.1 윈도우 웹 서버 구축 8.6.2 사용자 지정 타일맵과 GeoJSON 적용 8.6.3 클러스터와 그리드 8.6.4 GeoJSON 적용하기 8.6.5 타일맵 서비스 8.7 정리 3부 | 엘라스틱 스택 실전 활용 9장 캐글 CSV 파일을 활용한 인덱스 작성 9.1 실습 진행 방식 9.2 실습 준비 작업 9.3 CSV 파일 가져오기 9.4 키바나 데이터 비주얼라이저를 이용한 파일 가져오기 9.4.1 데이터 Discover 9.5 로그스태시를 이용한 파일 가져오기 9.5.1 CSV 파일 읽기 9.5.2 날짜/시간 타입으로 파싱 9.5.3 루비 필터를 이용한 파싱 9.6 인덱스 매핑 9.6.1 인덱스 매핑을 적용하여 로그스태시 데이터 저장 9.6.2 템플릿을 적용하여 로그스태시 데이터 저장 9.7 키바나에서 간단히 분석해보기 9.7.1 지난 10년 동안 어떤 영화 장르가 가장 많이 만들어졌는가? 9.7.2 할리우드 영화 중 평점 높은 영화는 수익이 났을까? 예산은 얼마나 썼을까? 9.8 정리 10장 로그스태시를 활용한 한글 트위터 데이터 분석 10.1 실습 진행 방식 10.2 실습 준비 작업 10.2.1 트위터 개발자 정보 10.3 로그스태시 수행 10.4 검색과 한글 형태소 분석기 10.5 리인덱싱 10.6 실시간 데이터 시각화 10.7 정리 11장 파이썬 클라이언트를 활용한 공공데이터 분석 11.1 실습 진행 방식 11.2 실습 준비 작업 11.2.1 서울 열린데이터 인증키 발급받기 11.2.2 파이썬 3.8 설치 11.2.3 QGIS 설치 11.2.4 맵 시각화 타입 추가 11.3 서울 행정동별 인구 분석하기 11.3.1 로그스태시로 공공데이터 가져오기 11.3.2 QGIS 이용한 사용자 벡터 레이어 생성 11.3.3 서울에서 일인 가구가 많은 지역은 어디일까? 11.3.4 서울에서 외국인이 많은 곳은 어디일까? 11.4 서울 공공와이파이 지도 만들기 11.4.1 오픈 API를 이용한 공공데이터 가져오기 11.4.2 파이썬을 이용한 오픈 API 실행 11.4.3 파이썬 엘라스틱서치 클라이언트 11.4.4 파이썬 클라이언트 앱 11.4.5 bulk API를 이용한 인덱스 11.4.6 서울시 공공와이파이 위치 시각화하기 11.5 정리 4부 | 엘라스틱 운영 12장 리눅스 실습 환경 구성 12.1 버추얼박스에서 우분투 설치하기 12.2 엘라스틱서치 설치 12.2.1 wget을 이용한 설치 12.2.2 리눅스 패키지 매니저를 이용한 설치 12.3 키바나 설치 12.3.1 wget을 이용한 설치 12.3.2 리눅스 패키지 매니저를 이용한 설치 12.4 정리 13장 클러스터와 노드 구성 13.1 HTTP 계층과 전송 계층 13.2 노드 13.2.1 마스터 노드 13.2.2 데이터 노드 13.2.3 인제스트 노드 13.2.4 그 밖의 노드들 13.2.5 전용 노드 13.3 노드 구성과 시스템 구성 13.3.1 소규모 클러스터 13.3.2 대규모 클러스터 13.3.3 핫/웜/콜드 노드 구성 13.4 클러스터 백업 13.4.1 리포지토리 등록 13.4.2 스냅샷 찍기 13.4.3 스냅샷 복원 13.5 샤드 13.5.1 프라이머리 샤드와 레플리카 샤드 13.5.2 샤드 할당 과정 13.5.3 샤드 상태 모니터링 13.6 샤드 개수와 크기 구성 가이드 13.6.1 샤드 개수 가이드 13.6.2 샤드 크기 가이드 13.7 설정 13.7.1 클러스터 설정 13.7.2 노드 설정 13.7.3 인덱스 설정 13.8 정리 14장 운영 클러스터 구축 14.1 성능과 안정성을 위한 운영 클러스터 고려사항 14.1.1 노드 구성 계획 14.1.2 하드웨어 선정 14.1.3 엘라스틱서치 버전 선정 14.2 클러스터 구성 14.2.1 노드 설치 14.2.2 개발 모드와 운영 모드 14.2.3 운영 모드 설정 14.2.4 실행과 구성 확인 14.3 보안 기능 설정 14.3.1 인증서 생성 14.3.2 노드 간 통신 암호화 14.3.3 HTTP 클라이언트 통신 암호화 14.3.4 클러스터 시작과 빌트인 사용자 설정 14.3.5 키바나와 엘라스틱서치 간 통신 암호화 14.3.6 키바나와 브라우저 간 통신 암호화 14.4 사용자 등록과 관리 14.4.1 사용자 역할 정의 14.4.2 사용자 추가와 역할 할당 14.5 정리