일래스틱서치

일래스틱서치(Elasticsearch)는 루씬 기반의 검색 엔진이다. HTTP 웹 인터페이스와 스키마에서 자유로운 JSON 문서와 함께 분산 멀티테넌트 지원 전문 검색 엔진을 제공한다. 일래스틱서치는 자바로 개발되어 있으며 아파치 라이선스 조항에 의거하여 오픈 소스로 출시되어 있다. 공식 클라이언트들은 자바, 닷넷(C#), PHP, 파이썬, 그루비 등 수많은 언어로 이용이 가능하다. 일래스틱서치는 가장 대중적인 엔터프라이즈 검색 엔진으로 그 뒤를 루씬 기반의 Apache Solr가 잇는다.

일래스틱서치는 로그스태시(Logstash)라는 이름의 데이터 수집 및 로그 파싱 엔진, 그리고 키바나(Kibana)라는 이름의 분석 및 시각화 플랫폼과 함께 개발되어 있다. 이 3개의 제품들은 연동 솔루션으로 사용할 목적으로 설계되어 있으며 이를 "일래스틱 스택"(Elastic Stack, 과거 이름: ELK 스택)으로 부른다.

역사

개요 
일래스틱서치는 모든 종류의 문서를 검색하는데 사용할 수 있다. 가변 검색 및 실시간에 가까운 검색을 제공하며 멀티테넌시를 지원한다. 일래스틱서치는 분산 방식이므로 인덱스를 여러 샤드로 나눌 수 있으며 각 샤드는 0개 이상의 복제물(replica)을 가지고 있을 수 있다. 각 노드는 하나 이상의 샤드를 관리하며 작업을 올바른 샤드로 할당시켜 주는 조율자 역할을 한다. 리밸런싱 및 라우팅은 자동으로 수행된다. 연관 데이터는 종종 동일한 인덱스에 저장되며 이는 하나 이상의 프라이머리 샤드와 0개 이상의 복제물(replica) 샤드로 이루어진다. 인덱스가 만들어지면 프라이머리 샤드의 수는 변경할 수 없다.

일래스틱서치는 루씬을 사용하며 JSON과 자바 API를 통해 모든 기능을 최대한 활용한다. 다면(facetting) 및 침투(precolating)을 지원하므로 새로운 문서들이 등록된 쿼리와 일치할 경우 통보하는데 유용할 수 있다.

그 밖의 기능으로 "게이트웨이"가 있으며 장기간의 인덱스 지속성을 관리한다. 이를테면 인덱스는 서버 충돌 시에 게이트웨이로부터 복구할 수 있다. 일래스틱서치는 실시간 GET 요청을 지원하므로 NoSQL 데이터스토어의 역할에 적합하지만 분산 트랜잭션 면에서는 부족하다.

사용자 
일래스틱의 사용처로는 대표적으로 다음과 같다.:

 어도비 시스템즈
 Amadeus IT Group
 athenahealth
 AXS
 Center for Open Science
 CERN
 엣시
 EVS
 페이스북
 FDA
 포스퀘어
 깃허브
 Lichess
 모질라
 넷플릭스
 Pixabay
 Quizlet
 쿼라
 Reverb
 Slurm Workload Manager
 Sophos
 사운드클라우드
 스택 익스체인지
 스텀블어폰
 팀 파운데이션 서버
 위키미디어 재단
 Zalando SE

각주

외부 링크 
 

자유 검색 엔진 소프트웨어
인터넷 검색 엔진
자바로 작성된 자유 소프트웨어
검색 엔진 소프트웨어