Elasticsearch는 검색에만 사용되지 않습니다.

5176 단어 elasticsearch
Elasticsearch는 일반적으로 개원, 확장 가능한 전문 검색 및 분석 엔진으로 묘사된다.이것은 사실이지만, 이 말은 개발자들이 그것으로 무엇을 했는지 진정으로 알려주지 않는다.
Google,Bing 또는Duck Duck Go 등 서비스와 밀접한 관계가 있기 때문에'검색엔진'을 들은 많은 사람들이 개발자들이 그들의 목적을 사용하는 데 선입견을 가지고 있을 수 있다.공평하게 말하자면 Elasticsearch의 전문 검색은 구글과 비슷하지만 그렇게 복잡한 결과는 아니지만 그림의 일부분에 불과하다.
밑바닥 기술의 성질과 수준의 확장성에 대한 관심 때문에 Elasticsearch도 좋은 분석 도구이다."Analytics"는 모호한 용어이기 때문에 Elasticsearch의 4가지 흔한 용례를 열거하고 싶습니다. 그것들이 더욱 관련성이 있기를 바랍니다.

1. 전체 텍스트 검색


Elasticsearch는 매우 지원됩니다text-analysis.동의어,stopwords,어간,단어,모호한 검색과 관련성 평가 등 내용이 모두 삽입되고 지원됩니다many different languages.나는 여기서 예를 들어 구글 같은 검색 상자를 맡고 싶다.'10대 맨손 거북이'를 검색한 결과'10대 닌자 거북이'였다.Cowabunga!
Elasticsearch도 있습니다built-in support for autocomplete and suggestions.왜 당신의 고객에게 당신이 언제 그들이 당신이 파악한 정보를 이해하도록 도와줄 수 있는지 추측하게 합니까?
이것은 많은 사람들이'검색엔진'에 관심을 가지는 용례이다

2. 전자상거래/분면 내비게이션


전체 텍스트 검색은 매우 좋지만, 그것은 개발자가 그것을 사용하는 일부분에 불과하다.Elasticsearch도 계수를 잘한다.
이것은 사용자가 자신의 수요에 부합되는 제품을 적극적으로 찾는 전자상거래 응용 프로그램에 매우 중요하다.이들 앱에서 위의 구글 예시처럼 사용자에게 검색 상자를 제공하는 것은 흔하지만, 그들이 구매하고자 하는 상품을 신속하게 검색할 수 있도록 검색 결과에 대한 집합 정보를 제공하는 것도 흔하다.
아래의 검색 부분에서 나는 Elasticsearch에게'카메라'를 검색하라고 요구하지만, 나도 브랜드, 발표 날짜와 가격 범위에 따라 결과를 계산할 것을 요구한다.보시다시피 이 조회는 이러한 유형의 용례에 매우 적합합니다.(참고: 일반 검색 결과로 반환됨)
왼쪽 내비게이션 보기!
POST /products/_search?size=24 {
  "aggs": {
    "brand" : {
      "terms" : { "field" : "brand" }
    },
    "release_date" : {
      "date_histogram" : {
        "field" : "release_date",
        "interval" : "month"
      }
    },
    "range" : {
      "field" : "price",
      "ranges" : [
        { "to" : 100.0 },
        { "from" : 100.0, "to" : 200.0 },
        { "from" : 200.0 }
      ]
    }
  }
}

3. 로깅 및 분석


두 번째 용례는 첫 번째 용례의 특성을 빌려 완전한 검색 기능을 바탕으로 집합 기능을 추가하여 좋은 전자상거래 이야기를 제공한다.마찬가지로 세 번째 상황, 일지와 분석은 앞의 두 가지 상황을 토대로 한다.
Elasticsearch는 수평적인 확장성을 가지고 있습니다. 이것은 하드웨어를 구매하고 싶다면 대량의 데이터를 잘 처리할 수 있다는 것을 의미합니다.
몇 살이라고요?
조직에서는 TB 당 수십억 개의 문서를 처리하는 것이 일반적입니다.너무 초라하게 굴지 마라!만약 당신이 Elasticsearch의 수준 확장성과 좋은 계산 능력을 결합한다면, 당신은 위대한 로그 기록과 분석 도구에 기반을 다질 것입니다.한쪽은 데이터를 전송하고, 다른 한쪽은 도표를 출력한다.Elasticsearch 인덱스 데이터의 방식은 매우 빠르고 효과적으로 완성할 수 있음을 의미한다.
너는 얼마나 빨리 말하니?
"거의"실시간.이 경우 "거의"는 문서 수신과 문서 복귀 준비 사이에 약간의 지연이 있지만 수신과 처리 속도가 충분하여 시스템이 백업되지 않는다는 것을 의미한다.5초의 지연이 있을 수 있지만 (적당한 하드웨어를 지정한) 이 지연은 변하지 않아야 합니다.Elastic사는 Elasticsearch API 구축을 둘러싼 시각화를 만들고 관리하는 데 좋은 도구인 Kibana를 제공했다.
이곳의 예시 용례는 인프라 시설의 건강 상태를 추적하는 데 사용되는 DataDog 같은 도구일 수도 있다.세 번째 용례의 배후 기능은 이전 두 용례와 크게 다르지 않다. 비록 최종 결과는 매우 달라 보이지만.
DataDog 근거리 실시간 분석을 기반으로 한 맞춤형 대시보드

4. 모니터링 및 경고


마지막으로 Elasticsearch는 역방향 검색, 머신러닝 및 알림을 지원합니다.이것은 Elasticsearch를 설정할 수 있음을 의미합니다. 일부 미리 정의된 설정에 따라 행동을 취할 수 있습니다.이것은 실시간 집합에서 좋은 역할을 발휘했고 다른 세 가지 용례에 매우 적합하다.
예를 들면...
  • 이상 편집이나 검색 모드가 발생하면 위키백과에서 경보를 보낸다.
  • 제품 판매 속도가 예상보다 빠르면 아마존이 경보를 울린다
  • 중요한 서버의 성능이 좋지 않으면 DataDog에서 알림을 보냅니다
  • 이것은 모두 편리한 기능이다. 비록 전체 응용 프로그램에 적용되지는 않지만, 이러한 알림은 한 조직에 있어서 매우 중요하다. 특히 당신이 Elasticsearch 등 이미 당신의 제품의 핵심 도구인'무료'를 사용하여 이 기능을 얻을 때.
    주의: 공평하게 말하자면, 이 기능의 일부분은 Elasticsearch 외에 생태계의 다른 도구(예를 들어 Kibana와 X-Pack)를 사용하여 이루어진 것이다.감사합니다!
    Elastic의 Kibana 도구에 경보를 만들어 기계 학습 작업 결과에 따라 경보를 보냅니다.

    아무튼...


    나는 Elasticsearch에 의미가 있는 네 가지 주요 용례를 언급하고 왜 그것들이 잘 결합될 수 있는지 설명했다.나는 얼마나 많은 조직이 이런 능력을 재발명하고 있는지 알고 싶지 않기 때문에 이 글이 당신에게 좋은 점을 가져다 주고 다음에 검색이나 분석 문제에 직면할 때 당신의 선택이 무엇인지 알려주길 바랍니다.
    PS: 이 게시물처럼?그렇게 지도 모른다, 아마, 아마...

    좋은 웹페이지 즐겨찾기