Elastic Search

김영후·2022년 8월 22일
0
post-thumbnail

Elastic Search는 텍스트, 숫자, 정형 및 비정형 데이터 등 모든 유형의 데이터를 위한 무료 오픈 소스 검색 및 분산 엔진이다.

Elastic Search는 검색을 위해 단독으로 사용되기도 하며, ELK(Elasticsearch / Logstash / kibana) 스택으로 사용되기도 한다.

Elasticsearch는 모든 데이터를 색인하여 저장하고 검색, 집계 등을 수행하며 결과를 클라이언트 또는 다른 프로그램으로 전달하여 동작하게 한다.

역파일 색인(inverted file index)라는 구조로 데이터를 저장한다.

Elasticsearch에서 Query나 반환되는 결과는 모두 JSON형식으로 전달되기 때문에, 사전에 입력할 데이터를 JSON 형태로 가공하는 과정이 필요하다.



ELK스택이란?


Logstash

다양한 소스(DB, csv파일 등)의 로그 또는 트랜잭션 데이터를 수집, 집계, 파싱하여 Elasticsearch로 전달


Elasticsearch

Logstash로부터 받은 데이터를 검색 및 집계를 하여 필요한 관심 있는 정보를 획득


Kibana

Elasticsearch의 빠른 검색을 통해 데이터를 시각화 및 모니터링



Elasticsearch의 특징


Scale out

샤드를 통해 규모가 수평적으로 늘어날 수 있음


고가용성

Replica를 통해 데이터의 안정성을 보장


Schema Free

Json 문서를 통해 데이터 검색을 수행하므로 스키마 개념이 없음


Restful

데이터 CRUD 작업은 HTTP Restful API를 통해 수행하며, 각각 다음을 같이 대응한다.

Data CRUD ---- Elastic Restful
SELECT ---- GET
INSERT ---- PUT
UPDATE ---- POST
DELETE ---- DELETE

profile
https://poagg.tistory.com/ 로 이전합니다.

0개의 댓글