본문 바로가기

elk stack15

[ES 사내 스터디] 엘라스틱스택 4회차 사내 스터디 Elastic Stack 4th 집계 스터디엘라스틱 스택의 핵심 기술인 집계를 제대로 분석📌 목차엘라스틱서치: 집계집계의 요청: 응답 형태메트릭 집계버킷 집계집계의 조합파이프라인 집계📌 1-1 엘라스틱서치: 집계엘라스틱서치의 집계란?데이터를 그룹핑( Grouping )하고 통계값을 얻는 기능이다RDB SQL의 GROUPBY와 통계 함수를 포함하는 개념이다엘라스틱서치의 집계 예시데이터를 날짜별로 묶거나 특정 카테고리별로 묶어 그룹별 통계를 작성한다✔ 1-2 엘라스틱서치: 집계집계 기능의 효과엘라스틱서치의 검색 기능과 맞물려 엘라스틱서치를 고성능 집계 엔진으로 활용대표적인 활용 사례로는 키바나( 데이터 시각화 도구 )가 존재한다키바나의 시각화 대시보드는 대부분 집계 기능을 기반으로 동작한다사용해야 하는 .. 2023. 4. 25.
[ES 사내 스터디] 엘라스틱스택 3회차 사내 스터디 🤷‍♂️ 엘라스틱 스택의 엘라스틱서치엘라스틱 스택의 핵심 기술인 엘라스틱 서치를 제대로 분석📌 목차엘라스틱서치: 검색쿼리 컨텍스트와 필터 컨텍스트쿼리 스트링과 쿼리 DSL유사도 스코어쿼리✔ 엘라스틱서치: 검색엘라스틱서치는 전문 검색 기능을 시작으로 꾸준히 성장해 왔으며 다양한 검색 쿼리를 지원텍스트, 숫자 데이터를 저장한 다음에 인덱싱을 마치면 쿼리를 실행하여 결과를 얻을 수 있다.스코어링 알고리즘을 적용해 연관성이 높은 결과에 대한 제어가 가능하므로 대량의 데이터를 대상으로 빠르고 정확한 검색이 가능하다.✔ 쿼리 컨텍스트와 필터 컨텍스트유사 검색은 query context, 정확한 검색은 filter context 사용쿼리 컨텍스트질의에 대한 유사도를 계산해 이를 기준으로 정확한 결과를 먼저 보여준.. 2023. 4. 25.
[ES 사내 스터디] 엘라스틱스택 2회차 사내 스터디 Elastic Stack엘라스틱서치 CRUD메서드 설명 메서드 1 설명 1POST해당 리소스를 추가GET해당 리소스를 조회PUT해당 리소스를 수정DELETE해당 리소스를 삭제엘라스틱서치는 모든 요청과 응답을 REST API 형태로 제공6.x 부터 PUT과 POST를 엄격히 구분하지 않고 사용을 한다.RESTFul APIRestful API를 통해 index에 document를 추가할 수 있는데, 이러한 작업을 문서를 색인화한다 지칭인덱스 만들기PUT customer?prettyPUT 메서드를 사용하여 customer라는 색인을 생성pretty의 경우 reponse(결과)를 예쁘게 보여주기 위함{ "acknowledged": true, // 응답 결과 여부 "shards_acknowledged": tr.. 2023. 4. 25.
[ES 사내 스터디] 엘라스틱서치 1회차 사내 스터디 📌 1.1 엘라스틱서치의 탄생엘라스틱 서치가 처음 등장했을 때 어느 누구도 빅데이터 파이프라인을 구성하는플랫폼 형태로 성장하리라 예상하기는 어려웠을 것이다.✔ 클라이언트의 요구사항엘라스틱 서치가 등장했을 때 사용자의 요구사항은 명확 하였다사이트 내에 전문 검색 기능을 추가하는 것✔ 현 시점에서의 문제점인터넷 검색 서비스가 계속해서 등장 하였지만 구현체를 공개하지 않음기업 내에서 대량의 DB나 값 비싼 솔루션에 의지✔ 새로운 검색 엔진의 등장1999년 하둡의 창시자 더그 커팅의 다섯 번째 검색 엔진을 개발부인의 이름을 딴 루씬(Lucene) 개발🕐 루씬의 기원2001년 아파치 자카르타에 합류2005년 2월 독자적 아파치 프로젝트로 분류2003년 6월 더그 커팅은 100만 페이지를 가져오는 웹크롤러 개발.. 2023. 4. 24.
[ES 개인 스터디] 로그스태시 파일비트 설치와 실행 ⚡ 01. Logstash, Filebeat 스펙개발 환경Window Terminal Ubuntu 18.04Open JDK 8참고 사항Logstash 7.6.1 debian 설치Filebeat 7.6.1 debian 설치⚡ 02 Logstash, Filebeat 설치 및 구동✅ 02-1. Debian 파일 설치 및 해제# sudo apt-get install openjdk-8-jre# sudo update-alternatives --config java # java version 변경$ sudo wget $ sudo wget $ sudo shasum -a 512 -c logstash-7.6.1.deb.sha512$ sudo dpkg -i logstash-7.6.1.deb위 순서대로 진행하며 filebea.. 2023. 4. 24.
[ES 개인 스터디] 로그스태시 파일비트 개요 ⚡ 01. 로그스태시 파일비트 개요데이터 수집(파일비트, 로그스태시) -> 인덱싱(엘라스틱서치) -> 시각화(키바나 로그스태시는 데이터의 전처리와 후처리를 담당한다오픈 소스로써 서버 측 데이터를 처리하는 파이프 라인이다.다양한 소스에서 동시에 데이터를 수집하여 반환 한다.그 다음 자주 사용하는 Elasticsearch에게 전달 한다.위에서는 Elasticsearch에게 데이터를 전달 한다고 하였지만, 실제 실무에서 사용이 되는 것을 보면다양한 서비스에 이벤트 데이터를 전달할 수 있다.⚡ 02. 로그스태시 파이프라인로그스태시의 input, filter, output은 커스터마이징 하는 것이 까다롭다. 또한 파이프라인의 환경은 yaml 파일을 통해 수정한다.Input데이터를 실제로 입력 받는 영역이다.Log.. 2023. 4. 24.
[ES 개인 스터디] 키바나 시각화 준비 📌시각화 도구 Kibana 튜토리얼Kibana를 사용한 시각화 준비Kibana의 다양한 메뉴와 쿼리 및 설정 방법Kibana 원하는 그래프 그리기Kibana 대시보드 꾸미기📌 Kibana란?키바나를 사용하는 이유는 시각화를 통해 유저에게 직관적인 데이터의 상태 정보를 제공하기 위함이다.키바나(Kibana)는 브라우저 인터페이스를 이용, 많은 데이터를 쉽게 검색, 시각화, 탐색 할 수 있는 오픈소스 분석 및 시각화 도구다. 또한 키바나는 엘라스틱서치(Elasticsearch), 로그스태시(Logstash), 비츠(Beats)와 함께 엘라스틱스택의 핵심 구성요소다.✅ 첨언Kibana는 Elasticsearch와 함께 작동하도록 설계된 시각화 플랫폼Kibana와 Elasitcsearch의 버전은 반드시 동.. 2023. 4. 24.
[ES 개인 스터디] 검색문제와 이해 📌 실습에 앞서 기본적인 부분 복기✅ Query Context 와 Filter Context 의 차이Query Context는 Full Text Search(전문검색)에 사용된다.Filter Context는 YES/NO 조건의 바이너리 구분에 사용된다.Query Context는 스코어링 계산을 수행한다.Filter Context는 스코어링 계산을 수행하지 않는다.캐싱 사용 가능.응답 속도가 빠르다.✅ term역색인 참고 자료--term는 SQL의 equals 절과 유사하다SELECT * FROM TB_USER WHERE 컬럼명 = "컬럼명"기본적으로 term은 캐릭터 필터, 애널라이저, 토큰 필터를 거쳐 나오는 결과물이라 할 수 있다. 이에반해 term 쿼리는 주어진 질의문과 저장된 텀이 정확히 일치하.. 2023. 4. 24.
[ES 개인 스터디] URL을 이용한 검색 요청 ✔ 검색 API✅ 검색(_search API)엘라스틱서치에서 검색은 인덱스 또는 타입 단위로 수행_search API 사용질의는 q 매개변수의 값으로 입력hamlet이라는 검색어로 검색질의 질의문books 인덱스, book 타입에서 hamlet 검색localhost:9200/books/book/\_search?q=hamletbooks 인덱스에서 hamlet 검색localhost:9200/books/\_search?q=hamlet전체 인덱스에서 time 검색localhost:9200/\_search?q=time✔ Query String 검색 옵션 정리✅ 특정 필드 검색질의 질의문전체 인덱스의 title 필드에서 time 검색/_search?q=time:time✅ 다중 조건 검색질의 질의문title 필드에서.. 2023. 4. 24.
[ES 개인 스터디] Elasticsearch JSON을 이용한 검색 요청 ✔ 검색 API✅ 검색 시작하기간단한 검색부터 시작검색을 실행하는 기본적인 두 가지 방법REST 요청 URI를 통해 검색 매개 변수 보내기REST 요청 본문을 통해 검색 매개 변수 보내기요청 본문 메서드 사용시 표현력을 높이고 더 쉽게 읽을 수 있는 JSON 형식 사용검색용 REST API는 _search 엔드 포인트에서 엑세스✅ URI를 통해 검색 매개 변수 보내기bank 인덱스의 모든 문서 반환 예제GET /bank/_search?q=*&sort=account_number:asc&pretty✅ 검색 API 결과{ "took" : 1, "timed_out" : false, "_shards" : { "total" : 5, "successful" : 5, "skipped" : 0, .. 2023. 4. 24.