Data/Bigdata

Elastic Search란?

안녕하세요 씨앤텍 시스템즈의 김준형 입니다.

이번 포스트는 Elastic Search에대해 조사했습니다.

Elastic Search에 대한 설명은 다음과 같은 차례로 진행하겠습니다.


1. Elastic Search란?

2. ELK 스택에 사용된 프로그램

3. ELK 스택 구조

4. ELK 스택 확장 구조


1. Elastic Search란?

   정의 : Apache Lucene ( 아파치 루씬 ) 기반의 Java 오픈소스 분산 검색 엔진

 

   특징 : 방대한 양의 데이터를 신속하게 처리, 실시간 ( NRT, Near Real Time ) 으로 저장

 

   사용 : ElasticSearch는 검색을 위해 단독으로 사용되기도 하며, 
            ELK ( ElasticSearch / Logstatsh / Kibana ) 스택으로 사용

 


Apache Lucene ( 아파치 루씬 ) 이란?

루씬(Lucene)은 자바 언어로 이루어진 정보 검색 라이브러리 자유-오픈 소스 소프트웨어이며, 

1999년에 더그 커팅에 의해 개발되었습니다.


2. ELK 스택에 사용된 프로그램

   Filebeats : Input & Harvester

  • 로그 데이터를 전달하고 중앙화하기 위한 프로그램

  • 지정한 로그 파일 또는 위치를 모니터링하고 로그 이벤트를 수집하여 전달

 

 

 

   Logstash : Collect & Transform

 

  • 서로 다른 소스의 데이터를 통합하고 선택한 목적지로 데이터를 변환하여 전송

  • 다양한 분석 및 시각화 활용 사례를 위해 모든 데이터를 정리

 

 

 

   Kibana : Visualize & Manage

  • 데이터를 시각화하여 사용할 수 있는 범위를 확장

  • 히스토그램부터 Geo맵까지 다양한 시각화 도구를 제공

 

 

 

3. ELK 스택 구조

각자의 서버나 컴퓨터에서 Filebeats를 이용해 Log를 뽑아내어 Logstash에 전송합니다.

 

ElasticSearch로 바로 전송할 수 있지만 Logstash를 한번 거쳐서 간다면 Log들을 통합하고 정리해서

 

ElasticSearch에 저장할 수 있습니다. 그 데이터를 활용하여 검색에 이용할 수도 있고 Kibana를 이용해 

 

데이터를 시각화 하여 사용할 수 있는 범위를 확장할 수 있습니다. 

 

 

4. Elastic 확장 구성

ElasticSearch를 인공지능에 접목시키려는 시도가 많이 있습니다. 그 때 이용할 수 있는 기술 구성입니다.

 

ELK 스택을 그대로 유지하고 Filebeats 와 Logstash 사이에 Kafka를 한번 거쳐서 딜레이를 줄일 수 있고

 

Spark 와 Hadoop 같은 인공지능을 위한 프로그램과 ElasticSearch의 X-Pack을 이용하여 접목시킬 수

있습니다.

 

감사합니다.

728x90

'Data > Bigdata' 카테고리의 다른 글

Spark DataFrame (PySpark)  (0) 2020.04.20
R을 이용한 Bioinformatics (Bioconductor)  (1) 2020.04.20
Apache Spark 기능  (0) 2020.02.13
Apache Spark란?  (0) 2020.01.09
R을 활용한 빅데이터 처리  (2) 2020.01.02