피드로 돌아가기
How I Built a Civic Traffic App on DynamoDB + Vercel — ChowkChakra (#H0Hackathon)
Dev.toDev.to
Database

DynamoDB Access Pattern 설계를 통한 실시간 교통 제보 시스템 구축

How I Built a Civic Traffic App on DynamoDB + Vercel — ChowkChakra (#H0Hackathon)

omkar2026년 6월 29일8intermediate

Context

기존 교통 제보 체계의 분산된 소통 채널로 인한 정보 누락과 현장 대응 지연 발생. 실시간 제보-처리-검증의 Closed-loop 시스템 구축을 위해 High-throughput Write 처리가 가능한 아키텍처 필요.

Technical Solution

  • 데이터 성격에 따른 Hot/Cold Table 분리를 통해 Active incident 조회 성능 최적화 및 Full-table Scan 방지
  • Read-time SLA Penalty 계산 로직을 통한 주기적 Batch Job 제거 및 Write 오버헤드 제로화 달성
  • TransactWriteCommand 기반의 원자적 처리를 통해 태그 상태 변경, 이력 저장, 카운터 증가의 데이터 정합성 보장
  • GSI(Global Secondary Index)를 Ward 단위 Partition Key로 설정하여 분석 대시보드용 그룹 쿼리 성능 최적화
  • Gemini 1.5 Pro의 Function Calling을 결합하여 자연어 기반의 DB 쿼리 인터페이스 구현

- DynamoDB 설계 시 엔티티 중심이 아닌 Access Pattern 중심의 스키마 정의 여부 검토 - 상태 변화가 잦은 데이터의 경우 Active/Archive 테이블 분리로 Read 성능 저하 방지 - 단순 상태 업데이트가 아닌 다수 테이블 변경이 수반될 때 TransactWriteCommand 적용 고려 - 주기적 업데이트가 필요한 수치(SLA 등)를 Read-time 연산으로 대체하여 DB 부하 감소 가능성 확인

원문 읽기