Feature Store

ML 모델에 제공할 피처를 중앙화하여 저장·제공·관리하는 인프라


핵심 개념

Feature Store는 ML 파이프라인에서 피처의 정의, 계산, 저장, 서빙을 중앙화하는 시스템이다. 온라인(실시간 서빙)과 오프라인(학습 데이터) 간 일관성을 보장하고, point-in-time correct 조회가 핵심 기능이다.

실시간 피처 계산의 과제

  • 온라인/오프라인 일관성: 동일한 피처 정의로 학습과 서빙에서 같은 결과 보장
  • Point-in-time 정확성: 학습 시 미래 데이터 누출(data leakage) 방지
  • 장기 윈도우: 월~년 단위 슬라이딩 윈도우 집계의 효율적 계산

기존 아키텍처 vs 통합 엔진

기존 (Chronon, Tecton)

  • Flink(스트리밍) + Spark(배치) + Redis(서빙) 등 여러 시스템 조합
  • 시스템 간 일관성 유지가 운영 부담
  • Tecton: 2026년 Databricks에 인수됨

Volga — 통합 접근

  • 단일 Rust 바이너리로 스트리밍 + 배치 + 요청 시간 처리 통합
  • DataFusion SQL로 피처 정의, Arrow로 처리, SlateDB로 상태 관리
  • Tiling: 사전 집계된 타일을 유지하여 장기 윈도우를 효율적으로 처리
  • Request Mode: 서빙 로직이 데이터플로우 그래프에 내장되어 외부 캐시 불필요

시장 동향 (2026)

Feature Store 시장은 포인트 솔루션에서 대형 플랫폼으로 통합 중:

  • Tecton → Databricks 인수: Feature Store가 독립 제품에서 통합 플랫폼 기능으로 전환
  • Volga: 단일 바이너리 통합 엔진이지만 아직 초기 단계로 에코시스템 부족
  • 방향: 피처 계산·저장·서빙이 데이터 플랫폼에 네이티브로 통합되는 추세

Pinterest Feature Trimmer — “Send What You Use”

대규모 ML 시스템에서 사용되지 않는 피처가 네트워크 대역폭과 비용을 낭비하는 문제를 해결:

  • 모델 시그니처 기반 트리밍: 등록된 모델이 실제 사용하는 피처만 전송
  • 피처 그룹 > 개별 피처: 네트워크 차원에서 기능 그룹 단위로 온/오프
  • 불필요한 피처 전송 제거로 네트워크 효율 대폭 개선

ML 피처 파이프라인 모니터링 (Whatnot)

시간당 피처 파이프라인의 실전 운영에서 얻은 교훈:

  • TTL 버퍼링: 온라인 스토어에 2일 TTL로 last-known-good 피처 유지 — 장애 시 graceful degradation
  • 계층화된 알림: Tier 0(피처 누락/손상, ~-2% GMV), Tier 1(24시간+ 지연, ~-1% GMV), Tier 2(24시간 미만 지연)
  • SLO 기반 관리: 코어 테이블+피처 모델+인제스천 99.9% 성공, 엔드투엔드 60분 미만
  • 핵심 교훈: “느려지는 것”은 알림이 발생하지 않는 장애 모드 — 갱신 주기, E2E 레이턴시, 런타임 추세를 명시적으로 모니터링해야 함

연관 개념


Source: Volga - A Rust Rewrite of a Real-Time ML Engine, Feature Trimmer at Pinterest, ML Feature Pipeline That Got Slower at Whatnot