목록2025/12 (2)
장난감 연구소
더미데이터 수정지난 글에서 가까운 순 가게 목록 조회시 MySQL의 공간 인덱스 사용이 충분히 빠르지 않다는 걸 확인하였습니다. 그래서 공간 인덱스 스캔에 너무 오랜 시간이 걸리는 걸 해결하기 위해 H3를 이용하여 쿼리 실행시간을 개선해보기로 하였습니다.H3 인덱스 추가우선 기존 더미데이터에 H3 인덱스를 추가하였습니다. 이를 위해 store 테이블에 h3_cell 컬럼을 varchar(16) 타입으로 추가하였습니다. 다음으로 H3 인덱스를 전체 가게에 대해 업데이트하기 위해 오른쪽 이미지와 같이 코드를 작성한 후 CommandLineRunner로 실행하였습니다.h3_cell 컬럼 인덱스 추가CREATE INDEX idx_h3_cell ON store(h3_cell)h3_cell 컬럼 스캔시 인덱스를 사..
배경지난 글에서 가까운 순 가게 목록 조회 기능을 개발하면서 공간 인덱스를 적용했었습니다. 그 결과 기존에 약 80%의 요청이 실패하였으나, 100% 요청이 성공하도록 개선된 결과를 확인하였습니다.그러나 이는 청주의 한 지점을 기준으로 가까운 가게 목록을 조회한 것으로, 거리 순으로 정렬할 가게의 수가 적은 편일 때의 결과였습니다. 실제 음식점 공공 데이터를 사용하여 더미 데이터를 생성하였기에 전국적으로 보았을 때 청주보다 더 많은 음식점이 밀집된 지역이 다수 존재할 것입니다. 따라서 해당테스트는 이상적인 환경에서의 결과로, 최악의 케이스를 검증했다고 보기는 어렵습니다.그래서 비교적 많은 음식점이 밀집되어 있을 것으로 예상되는 강남역 인근을 중심으로 K6를 이용한 성능 테스트를 다시 진행하였습니다. 더미..