본문 바로가기

dev/elasticsearch6

Elasticsearch hybrid search with RRF(Reciprocal rank fusion) 개요이전 게시글에서는(https://blog.igooo.org/157) Elasticsearch에 semantic_text 타입을 사용한 시맨틱 검색을 사용하는 방법에 대하여 알아봤다. 이번 게시글에서는 sematic search와 full-text 검색을 결합한 하이브리드 검색을(hybrid search) 사용하는 방법에 대하여 알아본다.하이브리드 검색에서 semantic-search은 텍스트의 의미에 따라 결과를 검색하고, full-text search는 정확한 단어 일치에 초점을 맞춰서 검색한다. 하이브리드 검색은 sematic, full-text 두 가지 방법을 결함함으로써 둘 중 하나의 검색 결과가 충분하지 않을 경우 더욱 관련성 있는 결과를 제공할 수 있다.  Getting StartedReq.. 2024. 12. 3.
Elasticsearch 시맨틱 검색(semantic search) 개요Elasticsearch의 semantic_text를 사용하여 시맨틱 검색을 사용하는 방법과, Full-text saerch 검색과는 어떤 차이점이 있는지 같이 알아본다. Full-text searchFull-text 검색은 사용자가 입력한 문장을 언어에 맞는 형태소 분석기를 사용하여 각각의 품사로 분리하고, 분리된 단어들은 BM23(https://en.wikipedia.org/wiki/Okapi_BM25) 알고리즘에 따라 문서 안에 키워드의 발생 빈도, 문서의 길이 등을 값을 기준으로 평가하여 score가 놓은 문서를 찾는 방식이다.단점은 형태소 분석기로 분리된 단어에 대해서만 검색이 가능하다. (ex 맛집으로 검색하면 식당이 들어간 문서는 검색되지 않는다.동의어를 사용하면 처리가 가능하지만 사용자.. 2024. 11. 27.
Elasticsearch - fuzzy query 개요자연어 검색은 본질적으로 부정확하다. 컴퓨터는 잔연어를 이해할 수 없기 때문에 검색에 대한 다양한 접근 방식이 있으며 각각의 장단점을 가지고 있다. 하지만 Fuzzy 쿼리는 사용자 이름 검색, 철자 오류  및 기타 문제에 대햐여 fuzzy 쿼리를 사용하여 해결할 수 있다. Fuzzy QueryLevenshtein edit distance를 사용하여 검색어와 유사한 용어가 포함된 문서를 조회할 수 있다.(Levenshtein 거리는 하나의 문자열이 다른 문자열과 일치하도록 만드는데 필요한 삽입, 삭제, 대체 및 전치수)text, keyword filed 대상으로 사용할 수 있다. edit distance는 한 용어를 다른 용어로 바꾸는데 필요한 문자 변경의 수다. (edit deistance가 클수록 .. 2024. 6. 3.
Elasticsearch - Dense vector field type 개요유사도 검색은(similarity search) 사용자가 입렵한 데이터에(문서, 이미지, ...) 대하여 가장 유사한 순서로 문서를 조회하여 정렬하는 검색 방식이다.kNN검색은 Elasticsearch 8.x 부터 제공한다.https://www.elastic.co/guide/en/elasticsearch/reference/current/knn-search.html k-nearest neighbor (kNN) search | Elasticsearch Guide [8.13] | ElasticThe filter is applied during the approximate kNN search to ensure that k matching documents are returned. This contrasts .. 2024. 6. 3.
elasticsearch 2.0 Getting Started elasticsearch 2.0으로 정식 릴리즈 되었고 필요에 의해서 2.0으로 설정해서 사용하기로... elasticsearchhttps://www.elastic.co/products/elasticsearch Download$ wget https://download.elasticsearch.org/elasticsearch/release/org/elasticsearch/distribution/tar/elasticsearch/2.0.0/elasticsearch-2.0.0.tar.gz$ tar zxvf elasticsearch-2.0.0.tar.gz Setup elastic search# ---------------------------------- Cluster ------------------------.. 2015. 11. 4.
elasticsearch Getting Started 서비스 로그를 모아서 실시간으로 검색하고 분석할 수 있는 시스템이 필요해서 검색중로그를 수집하고(fluentd), 검색(elasticsearch) 가능한 시스템이 있어서 우리 시스템이 도입하려고 한다. elasticsearchhttp://www.elasticsearch.org/ download$ wget https://download.elasticsearch.org/elasticsearch/elasticsearch/elasticsearch-1.4.2.tar.gz$ tar zxvf elasticsearch-1.4.2.tar.gz start $ ./bin/elasticsearch -Xmx1g -Xms1g [2015-01-30 16:30:55,456][WARN ][common.jna ] Unable to lo.. 2015. 1. 30.