ELK 스택 구축
ELK란?
ElasticSearch, LogStash, Kibana 조합으로 로그 수집 - 로그 저장 및 검색 - 시각화로 쓰이게 된다.
Logstash
특징
Logstash는 실시간 파이프라인 기능을 갖는 데이터 수집 엔지이며, Input을 받아 Filter를통해 가공하고 Output이 ElasticSearch의 Input이 되거나 MQ의 producer가 되는 등 파이프라인의 첫번째 단계이다.
Logstash는 여러 시스템에서 데이터 수집 및 위해 다양한 입력 Plugin을 지원하기 때문에 유연성 갖고 있다.
다른 Dataflow Tool과 차이
Streamsets, Nifi 등 ETL 툴과 다른점은 Logstash는 로그 수집하고 구문 분석해서 나중에 사용할 수 있도록하는 Log Management로 분류된다. 반면 다른 툴들은 Stream Processing 범주의 도구로 분류된다.
설정파일
Input : 로그데이터가 쌓이는 파일
Filter : 로그데이터에서 필요한 칼럼, 형변환 등 Transformation과정
Output : ElasticSearch와 연동될 경우에는 hosts는 ElasticSearch서버, 해당 서버의 index 설정
> logstash_stage1.conf
input {
file {
path => "/home/minoh1227/demo-spark-analytics/00.stage1/tracks_live.csv"
start_position => "end"
}
}
filter {
csv {
columns => ["event_id","customer_id","track_id","datetime","ismobile","listening_zip_code"]
separator => ","
}
date {
match => [ "datetime", "YYYY-MM-dd HH:mm:ss"]
target => "datetime"
}
mutate {
convert => { "ismobile" => "integer" }
}
}
output {
stdout {
codec => rubydebug{ }
}
elasticsearch {
hosts => "http://localhost:9200"
index => "ba_realtime"
}
}
ElasticSearch
- 분산 검색 엔진으로 보통 Cluster구성하고, shard로 데이터 저장하며 replica를 저장하기 때문에 높은 HA를 제공한다.
- 실시간으로 색인되어 데이터 검색과 분석 가능
- JSON 기반으로 저장해서 Rest API 기반으로 처리한다.
analzer
데이터가 들어오면 Tokernizer, Token Filter가 특정 기준으로 토큰을 분리해서 검색 가능하도록(searchable) 가공한다.
Term Query vs Full-Text Query
Term Query경우에는 analyzer거치지 않고 검색어와 일치하는 문서 찾기. 정형 데이터 예시로는 날짜, IP주소, 제품ID 등.
Full-Text Query경우에는 analyzer 거쳐서 좀 더 복잡한 조회에 적합
RDB와 차이점
- RDB는 row기반으로 데이터 저장하지만, ES는 단어 기반(Inverted Index)로 저장한다. (일반적인 NoSQL도 역색인 지원X) 해당 단어만 찾으면 포함된 문서 위치 알 수 있다.
단점
- Rollback 지원 하지 않는다.
- update 지원하지 않는다. 기존 문서 delete -> insert 과정을 거친다.
<row 기반>
<Inverted Index 기반>
Kibana
ELK 아키텍처 한계
- 사용자 증가로 처리 용량 한계
- 더 많은 데이터 통해 분석 필요
Author And Source
이 문제에 관하여(ELK 스택 구축), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://velog.io/@minsuk/ELK-스택-구축
저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
- 사용자 증가로 처리 용량 한계
- 더 많은 데이터 통해 분석 필요
Author And Source
이 문제에 관하여(ELK 스택 구축), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@minsuk/ELK-스택-구축저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)