728x90
728x90
ES 게시글
1. Elastic Search의 장/단점
1.1 장점
- 오픈소스이기 때문에 버그 발생 시 대부분 빠른 해결이 가능
- 정형화되지 않은 다양한 형태의 문서도 색인 및 검색 가능
- 멀티-테넌시(Multi-Tenancy, 단일 소프트웨어 인스턴스. 여러 사용자 그룹에 서비스를 제공 가능한 소프트웨어 아키텍처) 기능 제공
- 상이한 인덱스라도 검색할 필드명이 같으면, 여러 개의 인덱스를 한 번에 조회 가능
- ES를 분산 구성 할 경우 대량의 문서 효율적인 처리 가능
- ES는 인덱스 생성 시 해당 샤드의 수 조절 가능 → 데이터의 종류에 따라 빠른 분산 처리 가능
1.2 단점
- 색인된 데이터는 내부적으로 복잡한 과정(커밋(commit), 플러시(flush)등)을 거친다.
- 트랜잭션(DB의 상태를 변경시키기 위한 작업 단위), 롤백 기능 미제공 : 최악의 경우 데이터 손실 가능
- 데이터 업데이트 미제공
- 내부적으로 기존 문서를 삭제하고 변경된 내용으로 새 문서를 생성하는 방식
- 단순 업데이트에 비해서 많은 비용 발생
2. ES vs RDBMS
Elastic Search | RDBMS |
텍스트를 여러 단어로 변형, 특징을 이용한 형태소 분석 및 동의/유의어를 활용한 검색이 가능 | 단순 텍스트매칭에 대한 검색 만을 제공 |
비정형 데이터의 색인과 검색이 가능 : 빅데이터 처리 간 중요 | 비정형 데이터의 색인과 검색 불가능 |
- | 데이터가 중복되지 않게 정규화하여 저장 |
- | 데이터를 저장하여 공동으로 관리하기 위해 필요 |
- | 데이터 업데이트(추가, 삭제, 수정 등) 가능 |
- 형태소 분석 : Steamming(어간 추출) / 검색 시 문법에 따른 단어의 변형에 상관 없이 검색이 가능하게 하기 위해
텍스트 분석 시 각각의 텀(term)에 있는 단어들을 기본 형태인 어간을 추출하는 과정
728x90
728x90
'초보 개발자의 스터디룸' 카테고리의 다른 글
[gRPC] gRPC란? 1. 개요, 특징, 사례 (0) | 2023.01.31 |
---|---|
[Logstash] 로그스태시란? 개요, 기능, 특징 (0) | 2023.01.09 |
[Elastic Search] 엘라스틱서치란? 2. 역 색인(Inverted Index) (0) | 2023.01.06 |
[Kafka] 아파치 카프카란? 2. 개요, 사용 이유, 데이터 모델 (0) | 2023.01.06 |
[Elastic Search] 엘라스틱서치란? 1. 관련 용어 정리, 특징 (0) | 2023.01.05 |