[DB] Elasticsearch란?(2)

홍승보·2022년 8월 9일
0

DB

목록 보기
2/2

Elasticsearch란?

  • ElasticsearchApache Lucene기반의 java opensource search engine이다.
  • 데이터 저장소가 아니라 MySQL같은 데이터베이스를 대체할 수 없다.
  • 방대한 양의 데이터를 신속하고 거의 실시간으로 저장, 검색, 분석 할 수 있다.
  • Elasticsearch는 검색을 위해 단독으로 사용되기도 하며, ELK(Elasticsearch), Logstash, Kibana스택으로 사용되기도 한다.

ELK (Elasticsearch / Logstash / Kibana ) 스택


ELK는 위 그림과 같이, 분석 및 저장 기능을 담당하는 Elasticsearch, 수집 기능을 하는 Logstash, 이를 시각화하는 Kibana의 앞글자만 딴 단어이다.
접근성과 용이성이 좋아 가장 핫한 Log및 데이터 분석 도구이다.

  • Logstash : 다양한 소스(DB, csv파일 등)의 로그 또는 트랜잭션 데이터를 수집, 집계, 파싱하여 Elasticsearch로 전달
  • Elasticsearch : Logstash로 부터 받은 데이터를 검색 및 집계를 하여 필요한 관심 있는 정보를 획득.
  • Kibana : Elasticsearch의 빠른 검색을 통해 데이터를 시각화 및 모니터링

Elasticsearch ~ RDBMS

Elasticsearch를 REST API를 사용 ~ RDBMS

Elasticsearch를 사용하는 이유

  1. Fast : Lucene기반으로 구축되기 때문에 전체 텍스트 검색에 뛰어남, 실시간 검색 플랫폼으로 봐도 무관하다. 즉, 문서가 색인될 때부터 검색 가능해질때까지의 대기시간이 아주 짧다는 말이다.
    2.Distributing : Elasticsearch에 저장된 문서는 샤드라고 하는 여러 다른 컨테이너에 걸쳐 분산되며, 이 샤드는 복제되어 하드웨어 장애 시 중복되는 데이터 사본을 제공한다. 이는 수백개의 서버까지 확장하여 페타바이트의 데이터를 처리할 수 있게 해준다.
  2. Wide-range : 속도, 확정성, 복원력뿐 아니라 Elasticsearch에는 데이터 롤업, 인덱스 수명 주기 관리 등과 같이 데이터를 훨씬 더 효율적으로 저장하고 검색할 수 있게 해주는 강력한 기본 기능이 다수 탑재되어 있다.
  3. Abstract : by Kibana, Beats, Logstash

출처

https://choseongho93.tistory.com/231

profile
Junior BE Developer

0개의 댓글