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 레이턴시, 런타임 추세를 명시적으로 모니터링해야 함
연관 개념
- Real-Time Stream Processing
- ML Ranking Systems
- Generative Recommender Systems — 시퀀스 기반 추천의 피처 서빙
- Silent Failures and Data Integrity — 피처 파이프라인의 조용한 성능 저하
- ML Metadata and Discovery — ML 자산 발견과 리니지
Source: Volga - A Rust Rewrite of a Real-Time ML Engine, Feature Trimmer at Pinterest, ML Feature Pipeline That Got Slower at Whatnot