[Problem-Solving]

아직 초안

대시보드 초기 로딩 시간 단축 및 쿼리 성능 최적화

  • 문제: 대시보드 초기 로딩 시 센서 데이터 로딩이 1분 이상 걸리는 성능 저하

  • 해결 방안

    • EXPLAIN로 쿼리 실행 계획을 분석하고, 성능 병목 구간을 식별한 후 BETWEEN과 WHERE 절 등을 사용해 쿼리 튜닝

    • 자주 조회되는 컬럼에 인덱스 추가 및 INNER JOIN 최적화로 조회 성능 개선

    • 날짜별 파티셔닝을 적용하여 조회 범위를 제한하고 풀 테이블 스캔을 방지

  • 결과: 로딩 시간이 1분 → 1초로 줄어들어 사용자 경험 및 시스템 성능이 향상

데이터 반환 형태 최적화 및 코드 유연성 개선

  • 문제: 차트와 설비별 데이터 반환 차이로 코드 중복 발생, 서비스 레이어 비즈니스 로직으로 유지보수성 및 확장성 한계

  • 해결 방안

    • Pydantic을 사용해 다양한 데이터 포맷을 유연하게 처리할 수 있는 직렬화 함수 구현

    • SQL 쿼리로 비즈니스 로직을 이전해 성능을 최적화하고, 서비스 레이어의 복잡성 감소

    • BaseResponse 설계를 통해 데이터 구조 일관성 확보, 커스텀 응답 구조를 상속해 회사별 요구 사항 반영

  • 결과: 코드 중복 감소 및 유연한 구조 확보, SQL 로직 이전으로 성능 최적화, 확장성과 유지보수성 개선

Last updated