본문 바로가기

Elastic

[Elastic] 검색 랭킹 검색을 통해 여러 문서의 결과를 돌려줄 때, 결과를 돌려주는 순서를 결정하는 것을 랭킹이라고 한다. 즉, 제일 검색 키워드와 관련있고 중요한 문서들을 정렬하여 먼저 돌려주는 것 검색 결과의 Score 필드의 값으로 표현된다. 분산적인 merge sort system -> 컬렉션 분석 시스템에서 제일 관련된 문서 Top 몇 가지를 가져와 merge/sort를 진행하고, 정렬/랭킹 시스템에서 병렬적인 가져온 문서들을 한 번더 merge/sort한다. Linear한 스케일에 정렬할 수 있어 문서의 개수에 상관 없이 매우 빠른 속도로 제일 관련된 문서를 응답할 수 있다. * 사용자가 키워드가 포함된 문서를 보고 싶은지, 키워드가 포함된 뉴스를 보고 싶은 것인지, 키워드가 많이 들어간 문서를 보고 싶은 것인지 등.. 더보기
[Elastic] 지식 그래프란? Relation DataBase(테이블 형식의 데이터 베이스)와 다르게 지식을 그래프 형식으로 표현하여 새로운 정보 추론과 여러 가지 속성을 확장할 수 있는 새로운 종류의 그래프 데이터 베이스이다. 검색 품질을 향상 시킬 수 있다. -> 검색을 확장할 수 있다. 아이디어, 컨셉들의 관계를 그래프로 나타낸다. Entity들 사이에서 어떤 관계가 있는지 파악할 수 있다. 화살표로 연관 관계를 표현해 준다. -> 여러 가지 Entity에 형성되는 메타 데이터를 나타낼 수 있다. 이런 지식 그래프 없이 Relational Database로 Entity들의 관계를 표현하려면 무수히 많은 테이블이 필요하다. ** 지식 그래프는 Entity들을 하나씩 정리해 주고, Entity들 사이에서의 관계를 표현해 줌으로써 매.. 더보기
[Elastic] Elastic Search란? Elastic Search는 색인, 색인을 생성하고 Collection Analysis, Sorting / Ranking, 기본적인 쿼리 처리를 도와주는 기능을 한다. Elastic Search Architecture * 기본적으로 검색 엔진이지만, NoSQL과 같은 엔진으로도 활용 가능하다. * 수집 / 주석 시스템을 도와주는 Logstash(로그 스태시)쿼리 처리를 도와주는 Kibana(키바나)를 함께 사용한다. * LUCENE -> 인덱싱 서비스 위에 색인 생성 시스템, Sorting, Ranking, Analysis 서비스를 덧붙인 것이 Elastic Service이다. ** Elastic Search + Logstash + Kibana = ELK Stack DBMS와 비교 DBMS Elastic.. 더보기
[Elastic] 검색 엔진이란? 검색 엔진 시스템이란 컴퓨터 시스템에 저장된 정보(문자 정보, 오디오 정보, 이미지, 3D 그래픽 등...) 찾기를 도와주도록 설계된 정보 검색 시스템이다. 검색 시스템의 사례 오프라인 - 파일 검색, 데스크탑 검색 검색 서비스 - 웹 검색, 이미지 검색, 비디오, 오디오 검색 등... 인터페이스형 - 인공지능 개인비서, 지도형(카카오 맵, 배달앱...) 추론형 - Zillow, Redfin 데이터들을 통합하여 추론을 만들어 검색을 도와준다. SQL과 비교 많은 쇼핑몰들과 여러 가지 기본 웹 사이트들은 SQL로 검색 기능을 제공하고 있다. 굳이, 검색 엔진을 도입하는 이유는? -> Scale, Speed, Usefulness 차이점 SQL Transaction을 위해서 제작된 데이터베이스이다. -> AC.. 더보기