🏆40

도전: 판매 데이터 종합 분석

Day 2: SQL 잘하면 Spark도 잘한다

학습 목표

DataFrame API를 종합적으로 활용할 수 있다 실제 분석 시나리오를 구현할 수 있다

요구사항

3개 테이블 Join 완료

카테고리별 총 매출 출력

윈도우 함수로 매출 순위 부여

이동 평균 또는 전일 대비 증감 계산

피벗 테이블 생성

평가 기준
  • 데이터 Join 정확성 (20%)
  • 기본 집계 정확성 (20%)
  • 윈도우 함수 활용 (25%)
  • 이동 평균/증감 계산 (20%)
  • 코드 가독성 (15%)

미션: e커머스 판매 분석 대시보드

실제 분석 시나리오를 구현하세요.

데이터

  • 주문(orders): 주문ID, 상품ID, 날짜, 수량, 단가
  • 상품(products): 상품ID, 상품명, 카테고리ID
  • 카테고리(categories): 카테고리ID, 카테고리명

분석 요구사항

  1. 기본 분석

    • 카테고리별 총 매출
    • 일별 주문 수
  2. 고급 분석

    • 카테고리별 매출 순위 (윈도우 함수)
    • 7일 이동 평균 매출
    • 전일 대비 매출 증감률
  3. 피벗 테이블

    • 월별 x 카테고리별 매출

제출

  • 각 분석 결과를 show()로 출력
  • 코드에 주석으로 설명 추가
힌트 보기
매출 = quantity * unit_price
Join 순서: orders → products → categories
row_number()로 순위 부여
lag()로 전일 값 가져오기
pivot()으로 피벗 테이블