1. 다량의 데이터 처리(주문 데이터 누적 건 처리)

step1) 쿼리 개선 작업

step2) 서비스 특화의 DB 선택(MySQL VS PostgreSQL)

→ 데이터 조회, 대량 테이블의 인덱스 생성 및 컬럼 추가 등의 시간 측정

  1. 배달의 민족 검색 시스템

purpose) 사용자가 원하는 실시간 결과를 빠르게 제공해줄 수 있어야 함. 예를 들어 검색 기능, 인기검색어, 1인분, 치킨, 배달팁 낮은 순 등등 정렬 기준이 다양함. 실시간으로 가게에 대한 정보를 동기화하기 위해 실시간 정보를 저장해야 함

step1) 데이터를 aws의 SQS를 사용하여 수신 → 검색엔진 ES에 저장

step2) bulk processing

step3) 데이터양 많아지면 ES 트래픽에 버거워함 → timeout/이벤트 처리 지연 등의 문제 발생 → 데이터 구조 개편? 개별 인덱싱

→ ES에 요청되는 request 건수 측정, bulk processing vs 단일 건수 CPU 부하 측정

  1. Test code 작성

📝 API 설계


API 설계

📝 ERD 설계


baedal