02 데이터 모델링 · 강사용
스키마 선택의 근거를 설명하고 부분적으로 실행된 DDL을 복구합니다.
macOS terminal: Run workshop commands in Terminal using zsh or bash.
진행 시간
20분.
강의 스크립트
- 쿼리 패턴이
ORDER BY보다 먼저 정해집니다. 키는 나중에 가볍게 바꿀 수 있는 것이 아닙니다. - 정확한 십진 타입을 쓰면 금액과 확률에서 부동소수점 오차가 생기지 않습니다.
- 최근 시각 표현식이 이벤트 키의 앞에 오고, 그룹화를 위한 토큰/컨디션 ID가 뒤따릅니다.
- 증분 MV는 BBO 중간가 이벤트만 집계합니다. 거래는 별도로 유지됩니다.
- 파티션을 두지 않은 것은 의도적입니다. 이 트랙에는 시연할 보존 주기(retention lifecycle)가 없습니다.
자주 발생하는 장애
- 부분 실행: 모든 문장이
IF NOT EXISTS를 사용하므로 블록 전체를 다시 실행합니다. - MV는 있는데 대상 테이블이 없음: MV만 삭제하고 2단계를 다시 실행합니다.
- 학습자가 다른 데이터베이스를 사용함:
.env.polymarket에polymarket이라고 적혀 있는지 확인합니다.
초기화
버려도 되는 리허설 환경에서만:
DROP DATABASE IF EXISTS polymarket;그다음 학습자용 SQL 블록 두 개를 다시 실행합니다. 학습자의 명시적인 확인 없이 학습자 서비스에 이 명령을 실행하지 마세요.