pile·
DB / 데이터·그린데이터그린데이터·

MongoDB 5.0 부터 새롭게 도입 된 Time Series Collections

문제일반 MongoDB 컬렉션에 시계열 데이터를 그대로 쌓으면 측정값이 디스크 블록에 흩어지면서 인덱스 크기와 쿼리 비용이 모두 부풀어 오른다. IoT·금융 시세 같은 시계열 워크로드에 별도 최적화가 필요했다.
접근MongoDB 5.0에서 도입된 Time Series Collection을 사용한다. 컬렉션 생성 시 `timeField`(시간)와 `metaField`(메타데이터)를 지정하면 MongoDB가 관련 측정값을 인접한 블록으로 묶어 저장한다. `granularity`로 "seconds/minutes/hours"를 정해 내부 버킷 크기까지 튜닝할 수 있고, 일반 컬렉션과 동일한 쿼리 인터페이스를 그대로 사용한다.
결과30만 건 주식 시세 데이터 벤치마크에서 저장 공간이 약 1/4 수준으로 줄었고, 단순 쿼리는 약 100배, 복합 aggregation은 약 40% 빨라졌다. IoT·금융·로그처럼 "시간 + 메타" 패턴의 데이터에 별도 시계열 DB 없이도 MongoDB만으로 효율적인 저장·조회가 가능해진 셈이다.
그린데이터
그린데이터 블로그
원문은 여기서 이어서 읽을 수 있어요
원문 읽기
읽음 (0)

이 글과 비슷한

  1. DB / 데이터·여기어때 (GC컴퍼니)여기어때 (GC컴퍼니)·

    분석가가 직접 만든 마케팅 자동화 시스템 — 오디언스 빌더 제작기

    여기어때 데이터 분석팀(UB팀)이 개발 경험 없이 AI 에이전트 바이브 코딩으로 마케팅 자동화 시스템 '오디언스 빌더'를 구축한 과정이다. SQL 없이 UI에서 타겟 조건을 설정하면 BigQuery에서 수천만 행 대상자를 추출해 Kafka·S3를 통해 마케팅 도구로 전달하는 파이프라인을 직접 만들어, 캠페인 준비 시간을 2~3일에서 10분으로 단축했다.

    요약 이어보기
    #data-pipeline#kafka#postgres+2
  2. DB / 데이터·vercel-blogVercel Blog·

    모든 Vercel 빌드를 지탱하는 데이터베이스 마이그레이션 이야기

    Vercel이 빌드 웜 풀(warm pool) 상태 데이터를 Redis에서 DynamoDB로 마이그레이션한 과정을 다룬다. 빌드 풀의 청구 매핑 데이터가 Redis 장애 시 복구 불가능하다는 구조적 위험이 이주를 결정한 핵심 이유였고, 24/7 프로덕션 트래픽 속에서 다운타임 없이 5단계 점진적 전환을 완료했다.

    요약 이어보기
    #database-migration#zero-downtime#redis+2
  3. DB / 데이터·channel-talk채널톡·

    DynamoDB 핫 파티션을 해결하는 3가지 방법 (3): 조회를 인덱스 테이블로 옮기기

    채널톡이 DynamoDB 핫 파티션을 해결하려 GSI를 별도 인덱스 테이블로 떼어낸 연재의 마지막 편으로, 조회 경로를 GSI에서 인덱스 테이블로 옮긴 과정을 다룬다. 2편에서 쓰기 파이프라인이 완성돼 WriteThrottleEvents가 월 110만 회에서 0회가 됐지만, 조회 코드가 여전히 GSI를 읽고 있어 GSI를 지울 수 없었다. GSI가 읽기에서 대신해주던 키 해석·정확 일치·삭제 필터·페이지 채우기를 사내 공통 라이브러리의 조회 규칙으로 흡수해, 호출부는 GSI든 인덱스 테이블이든 같은 코드를 쓰게 만들었다.

    요약 이어보기
    #migration#dynamodb#hot-partition+5