피드로 돌아가기
The $15 Per Ride You Didn't Know About: What 243 Million NYC Taxi Rides Reveal
Dev.toDev.to
Database

Rust 기반 분산 검색 엔진을 통한 2.4억 건의 대규모 모빌리티 데이터 분석

The $15 Per Ride You Didn't Know About: What 243 Million NYC Taxi Rides Reveal

Ramakrishna Chilaka2026년 4월 13일16advanced

Context

NYC Taxi & Limousine Commission의 2.4억 건에 달하는 대규모 고용량 차량(FHVHV) 트립 데이터를 통한 Uber와 Lyft의 비즈니스 경제성 분석 필요성 대두. 기존 관계형 데이터베이스로는 대량의 문서 쿼리와 집계 분석 시 발생하는 지연 시간 및 리소스 병목 해결이 필수적인 상황.

Technical Solution

  • Rust 기반의 분산 검색 엔진인 FerrisSearch를 도입하여 메모리 안전성과 고성능 동시성 처리 확보
  • 32 Core 및 128GB Memory 환경의 단일 노드에 24 Shards를 구성하여 데이터 분산 및 병렬 처리 최적화
  • Fast-field Columnar Storage를 활용하여 스캔 범위를 최소화하고 집계 성능을 극대화한 구조 설계
  • Row Materialization 과정을 생략하고 Fast-field Execution Path 내에서 직접 쿼리를 처리하는 방식 채택
  • Post-hoc Aggregation을 배제하고 SQL 기반의 Grouped Analytics를 직접 실행하여 데이터 전송 오버헤드 제거

Impact

  • 243,589,684건의 방대한 문서 데이터를 효율적으로 인덱싱 및 분석
  • 25개 필드로 구성된 데이터셋에서 65억 달러 규모의 매출 데이터 및 정밀한 구간별 통계 산출

1. 대규모 분석 쿼리 시 Row Materialization 비용을 줄이기 위해 Columnar Storage 활용 검토

2. 집계 성능 향상을 위해 애플리케이션 레벨의 후처리가 아닌 저장소 엔진 레벨의 Aggregation 수행

3. 데이터 규모에 따른 Shard 수 최적화를 통해 병렬 처리 효율성 극대화

원문 읽기