Elastic Search
Elastic Search는 아파치 재단의 루씬(Lucene)을 기반으로 개발된 오픈소스 검색 엔진이다.
하지만 기본적으로는 MongoDB나 Hbase처럼 대용량 스토리지로도 사용할 수 있다. NoSQL의 일종으로 분류가 가능하고 분산처리를 통해
실시간에 준하는 빠른 검색이 가능하다.
Elastic Search의 장점
- REST API 제공으로 플랫폼 독립적 사용 가능 → Database 서버에 각 요청을 Db 쿼리로 매핑해주는 애플리케이션을 추가로 만들지 않아도 됨
- 역색인
- 역색인이란?
- 여러 사드로 나뉘어진 정보들을 한 데 모으는 작업 시 용이. ex) 특정 사용자의 로그 데이터 조회
- read 성능이 좋다
- 고가용성 (클러스터 구성으로 장애 대응 가능)
- write를 여러 노드로 분산할 수 있다(마스터 노드는 관리만, 실제 저장은 여러 data 노드가 나눠서 진행)
- Multitenancy를 지원(필드만 같다면 다른 인덱스에 있는 데이터까지 조회할 수 있다)
Elastic Search의 단점
- 트랜잭션을 지원하지 않는다.
- Near Real Time(거의 실시간) → 색인화 시점으로 부터 데이터 검색시까지 약 1초간의 딜레이 발생
데이터의 업데이트를 제공하지 않는다(업데이트시 기존 문서를 삭제하고 새로운 문서를 생성)
'Elastic search' 카테고리의 다른 글
Node의 종류와 역할 (0) | 2021.05.13 |
---|---|
Elastic search Configurations (0) | 2021.05.13 |