✅ 요구사항 반영하기 한글, 영어 둘 다 검색이 잘 되도록 만들기 동의어로 검색할 수 있게 만들기 가격으로 필터링 할 수 있게 만들기 카테고리로 필터링하기
지금까지 배운 Elasticsearch의 기능을 활용해 쿠팡의 상품 검색 기능을 구현해보자. ✅ 프로젝트 설명 Spring boot(gradle), Spring Data JPA, MySQL을 활용해 아래 API를 가진 서버를 운영하고 있었다고 가정하자
✅ 요구사항 반영하기 되도록이면 평점이 4.0이 넘는 상품을 상위 노출 시키기 어느 정도 오타가 있더라도 검색되게 만들기 상품명에서 일치하는 검색 키워드는 하이라이팅 처리( <b></b>) 하기 상품이 5개씩 조회되도록 페이지네이션 처리하기 검색 기능
✅ 비용 나가지 않게 Elastic Cloud 리소스 정리하기 14일 무료 체험판을 사용하신 분은 별도로 리소스를 종료하지 않아도 된다. 14일이 지나면 알아서 체험판이 종료된다. ✅ 혹시나 비용이 나가는 건 아닌 지 체크하는 방법
✅ 요구사항 반영하기 Spring Data Elasticsearch에 익숙한 사람은 Spring Boot에서 코드를 작성해도 된다. 하지만 그렇지 않다면 Kibana에서 요구 사항을 만족시키는 쿼리를 작성한 뒤에 Spring Boot 코드로 옮기는 게
✅ 현업에서는 Elasticsearch를 직접 구축해서 쓰진 않나요? 현업에서는 Elasticsearch를 직접 설치해서 운영하기도 하지만, 많은 경우에는 AWS OpenSearch나 Elastic Cloud 같은 서비스를 활용해 구축한다. 왜냐하면
비용이 걱정되시는 분들은 학습이 끝나자마자 최대한 빠르게 Elastic Cloud 리소스를 종료하는 걸 추천한다. 강의의 마지막 부분에 비용이 나가지 않게 Elastic Cloud 리소스를 종료하는 방법도 알려줄 예정이다. ✅ Elastic Cloud
✅ 기존 프로젝트 구조 살펴보기 Product 엔티티 API 구성 아키텍처 특징 의존성 다음 강의에서는 기존 프로젝트 구조에서 검색 기능과 자동 완성 기능을 도입하기 위해 아키텍처를 어떻게 구성해야 하는 지 고민해보자.
✅ Spring Boot에서 인덱스에 맞게 Document 정의하기 Spring Data JPA에서 DB의 테이블에 맞게 Entity를 작성하는 것처럼, Spring Data Elasticsearch에서 인덱스에 맞게 Document를 작성해야 한다.
✅ AWS OpenSearch vs Elastic Cloud AWS OpenSearch와 Elastic Cloud의 차이를 알기 위해 OpenSearch의 역사에 대해 먼저 알아보자. Elasticsearch를 개발한 회사에서 Elasticsearch