시작하기편집

Elasticsearch는 확장성이 뛰어난 오픈소스 풀텍스트 검색 및 분석 엔진입니다. 방대한 양의 데이터를 신속하게, 거의 실시간으로 저장, 검색, 분석할 수 있도록 지원합니다. 일반적으로 복잡한 검색 기능 및 요구 사항이 있는 애플리케이션을 위한 기본 엔진/기술로 사용됩니다

Elasticsearch는 다음을 비롯한 다양한 활용 사례에 효과적입니다.

  • 고객이 판매 제품을 검색할 수 있는 온라인 웹 스토어를 운영합니다. 이 경우에는 Elasticsearch를 사용하여 전체 제품 카탈로그 및 재고 정보를 저장하고 그에 대한 검색 및 자동 완성 제안 기능을 제공할 수 있습니다.
  • 로그 또는 트랜잭션 데이터를 수집하고 이 데이터를 분석하고 마이닝하여 추이, 통계, 요약 정보를 얻거나 이상 요인을 알아내려 합니다. 이 경우에는 Logstash(Elasticsearch/Logstash/Kibana 스택의 일부)를 사용하여 데이터 수집, 집계, 파싱을 수행한 다음 Logstash에서 Elasticsearch에 이 데이터를 피드 형태로 전달하게 할 수 있습니다. 데이터가 Elasticsearch에 유입되면 검색 및 집계를 실행하여 관심 있는 어떤 정보도 마이닝할 수 있습니다.
  • 가격에 정통한 고객이 "특정 전자 제품을 구매할 의향이 있고 다음 달에 어떤 벤더의 제품이든 가격이 $X 아래로 내려가면 알림을 받고 싶다"라는 내용의 규칙을 지정할 수 있는 가격 알림 플랫폼을 운영합니다. 이 경우에는 벤더 가격을 취합하여 Elasticsearch에 푸시하고 역검색(퍼컬레이터) 기능을 사용하여 가격 변동을 고객 쿼리와 비교하면서 일치하는 항목이 있으면 고객에게 푸시 방식으로 알릴 수 있습니다.
  • 분석/비즈니스 인텔리전스 기능이 필요하며 방대한 데이터(수백만 또는 수십억 개의 레코드)를 대상으로 신속하게 조사, 분석, 시각화, 임시 질의를 수행하고 싶습니다. 이 경우에는 Elasticsearch를 사용하여 데이터를 저장한 다음 Kibana(Elasticsearch/Logstash/Kibana 스택의 일부)를 사용하여 데이터 중 중요한 요소를 시각화할 맞춤형 대시보드를 만들 수 있습니다. 또한 Elasticsearch 집계 기능을 사용하여 데이터에 대한 복잡한 비즈니스 인텔리전스 쿼리를 수행할 수 있습니다.

이 튜토리얼에서는 Elasticsearch를 시작하고 실행하며 그 내부를 들여다보고 색인화, 검색, 데이터 수정과 같은 기본적인 작업을 수행하는 과정을 차례로 안내합니다. 이 튜토리얼을 통해 Elasticsearch이 무엇이고 어떻게 작동하는지 이해할 수 있습니다. 또한 정교한 검색 애플리케이션을 개발하거나 데이터에서 인텔리전스를 마이닝하는 데 Elasticsearch를 활용하기 위한 아이디어를 얻을 수 있습니다.