[협업프로젝트] Spring Data Elastic Search 설정 및 구현 회고 (2)
·
회고
서론 기존 프로젝트에서 검색 엔진을 ELK 스택(Elasticsearch, Logstash, Kibana )으로 전환하고프로젝트의 요구사항 중 하나였던 실시간 검색어 기능 구현을 완료하면서,이전에 작성했던 글에서 다룬 초기 설계 및 설정 과정을 기반으로 아키텍처가 어떻게 개선되었는지 정리하고자 한다. 초기 설계 단계에서 검색 기록 관리와 실시간 인기 검색어 제공을 목표로 설정했고,이에 따라 기존 MySQL 기반의 스택은검색 시스템을 ELK(Elasticsearch, Logstash, Kibana) 스택으로 전환하며 얻을 수 있는 성능 향상 및 확장성을 확인했다.이번 구현에서는 Spring Boot와 Nginx, Docker, 그리고 Filebeat 및 Logstash를 연동하여실시간 검색어를 10위까지 ..
[협업프로젝트] Spring Data Elastic Search 설정 및 구현 회고 (1)
·
Project/협업프로젝트
서론협업 프로젝트를 진행하면서 검색 기능을 구현하는 단계에 들어섰다. 내가 초기 설계 단계에서 설정했던 대로 사용자의 편의성을 높이기 위해 검색 기능과 사용자별 검색 기록을 볼 수 있는 기능을 제공하기로 했으며, 초기 Figma UI를 구현하여 검색 관련 API를 설계 및 구현했다. 초기에는 DB의 LIKE 기능을 이용해 '%키워드%'로 검색하고 사용자별 검색 기록을 저장해 관리하는 방식으로 충분하다고 생각했다. 하지만 추가 요구사항으로 실시간 검색어 및 일일 가장 인기 있는 장소 순위(검색어) 구현이 언급되면서 상황이 달라졌다. 추가 요구사항을 고려해보니, 처음에 계획했던 MySQL의 LIKE 기능을 이용한 '%키워드%' 검색 방식으로는 한계가 있었다. LIKE는 전체 데이터를 시간대별로 조회하는 풀..