[TIL] 79일차 _ 번쩍 팀프로젝트 #11

Seoyeon Lee·2026년 1월 26일

Today I Learned ...

오늘은 V2 작업이 완전히 끝났다!


🖥️ 번쩍 팀프로젝트 #11

오늘은 MVP 기능에 대한 시연을 진행하고, 이후에 고도화 작업에서 어떤 기능들을 추가할 것인지에 대해 튜터님과 이야기를 나눠보았다!

MVP 단계에서는 우선 AWS에서 EC2 한대와 RDS 하나만 가지고 수동으로 배포를 진행했다.
여기에 우리는 스웨거를 연결해서 간단하게 테스트를 해볼 수 있도록 구성하였다.

오늘 나는 추가로 Elastic Search에 대해서도 자료 조사를 진행했는데,
Elastic Search(ES)는 대용량 데이터를 아주 빠르게 검색, 분석하기 위한 분산 검색 엔진이다.
ES는 역색인 방법을 사용하여 문서를 저장하기 때문에, 키워드나 로그, 문서 내용을 매우 빠르게 검색할 수 있다.
ES는 기본적으로 여러 서버에 데이터를 나눠서 저장하기 때문에, 확상에 강하고, 집계나 통계 등의 문석을 거의 실시간으로 처리할 수 있다.
ES와 항상 함께 소개되는 ELK는 ES의 저장, 검색 능력과 Logstash의 수집 능력, Kibana의 시작화 능력을 합쳐 로그 관리 및 모니터링 문제를 해결하고자 만들어진 통합 오픈소스 솔루션이다.

우리 팀에서는 이 중 검색 기능에 초점을 맞춰 ES를 도입해보려고 한다.
우선 우리 서비스에서는 지도 API와 함께 여러 복합 조건을 가지고 검색 기능을 사용하려고 하는데,
RDB를 사용할 경우에는 복합 조건을 처리할 때 인덱스를 활용하기가 어렵고, 정렬에서 처리가 병목될 가능성이 높다.
심지어 키워드 검색에서 우리는 like %keyword%로 포함하는 내용들을 검색하게 되는데, 이러면 인덱스를 전혀 사용하지 못하게 된다.

그래서 ES 도입을 통해 검색 성능을 개선해보려고 하고, 기존에 Redis Geospatial을 통해 처리하던 공간 계산도 ES를 사용하여 해결해보려고 한다.
추가로 ES에서는 검색어 자동완성이나 오타 허용 검색, 정확도순 정렬을 지원해주기 때문에, 이러한 내용들을 추가해보려고 한다.

우리 팀에서 초기 기획 단계에서 사용자 맞춤형 추천 시스템을 도입해보자고 이야기를 나누었다.
이를 위해 사용자들에게 선호 카테고리를 선택하도록 로직을 추가하였고, 이 카테고리와 기존에 참여했던 모임 내역 등을 토대로 사용자에게 모임 추천을 하려고 구상하였었다.
그런데 ES의 검색 로그를 사용하면 사용자의 검색 기록을 토대로도 맞춤형 추천을 할 수 있다고 한다.
그래서 이와 관련하여 더 자세한 내용을 찾아본 후, 도입해보려고 한다.


🙃 오늘의 느낀점

오늘까지는 V2의 모든 내용이 마무리되었고, 고도화 단계에 대해서도 내용이 전부 정리되었다!
이제 내일부터는 개발을 시작하기만 하면 되는데,, 새로운 내용을 도입해보는만큼 잘 찾아보고, 잘 정리해가며 진행해야겠다.

profile
백엔드 개발자 지망생

0개의 댓글