Big Data
Feature Store: централизованное управление признаками
DoorDash экономит 200 тысяч долларов в год на compute только за счёт переиспользования фич через Feature Store - вместо дублированных Spark jobs. Но главная экономия не в деньгах - в скорости: новая ML модель запускается в продакшн за 2 дня вместо 2 недель, потому что фичи уже вычислены и доступны.
- Uber Michelangelo: первый Feature Store, 200+ ML моделей используют одни и те же вычисленные фичи
- Airbnb Zipline: batch и streaming фичи для price optimization и fraud detection на одной платформе
- Stripe: real-time fraud features через Kafka + Redis, latency <5мс для 10 тысяч транзакций в секунду
- LinkedIn: Feature Store хранит 500+ фичей для job recommendations, skill matching и feed ranking
Feature Store: зачем и что внутри
Uber, 2017 год. 200 ML моделей. Каждая команда пересчитывает одни и те же фичи: "активность пользователя за 7 дней", "средний рейтинг водителя за 30 дней". 200 раз. Несогласованно. С разными результатами. Это привело к созданию Michelangelo - первого Feature Store в индустрии.
**Feature Store** - централизованный репозиторий признаков для ML. Три функции: (1) хранение вычисленных фич, (2) сервинг фич для обучения и инференса с одинаковой логикой, (3) версионирование и lineage. Ключевая проблема которую решает: **training-serving skew** - расхождение между фичами при обучении и в продакшне.
**Feast** (Feature Store) - open-source, изначально разработан в Gojek. Поддерживает Redis (online) + BigQuery/Parquet (offline). Feast SDK: определяешь FeatureView (как вычислить фичу), Feature (одна фича), Entity (ключ). Fest сам пишет в online store при materialize и читает при get_online_features.
Что такое training-serving skew и как Feature Store помогает его избежать?
Managed Feature Stores: Tecton, Vertex AI, Databricks
**Tecton** - enterprise Feature Store, co-основан командой Uber Michelangelo. Отличие от Feast: managed service с планировщиком feature pipelines, мониторингом quality и built-in transformation engine. Airbnb, DoorDash, Stripe используют Tecton для production ML. Цена: ~USD 50000/год для enterprise.
**Vertex AI Feature Store** (Google Cloud) и **Databricks Feature Store** - managed решения привязанные к своей платформе. Vertex AI: BigTable как online store (миллисекунды), BigQuery как offline. Databricks: Delta Lake как offline, автоматическая materializaton. Выбор определяется облачной стратегией компании.
Что отличает managed Feature Store (Tecton) от self-hosted (Feast)?
Feature Pipeline: batch, streaming, on-demand
Три типа feature computation: **batch** (Spark на расписании, для исторических данных), **streaming** (Flink на Kafka, для near-realtime), **on-demand** (вычисляется в момент запроса, для context-зависимых фич). Fraud detection требует всех трёх: исторические паттерны + real-time velocity + текущий контекст транзакции.
Какой тип feature computation лучше для фичи 'отклонение суммы транзакции от среднего пользователя'?
Мониторинг Feature Store и data quality
Feature Store без мониторинга - это бомба замедленного действия. Kafka перестал приходить поток - streaming фичи устарели. Spark job упал - batch фичи из прошлого месяца. Модель продолжает делать предсказания на несвежих данных. В Stripe это привело к росту false positives на fraud detection в 3 раза за один час.
**PSI (Population Stability Index)** - промышленный стандарт для мониторинга drift. PSI < 0.1: данные стабильны. PSI 0.1-0.2: небольшое изменение, мониторить. PSI > 0.2: значительный drift, нужен ретрейн. Более чувствителен к хвостам распределения, чем KS test.
Один Feature Store решает все проблемы ML платформы
Feature Store решает только проблему consistency фич. Отдельно нужны: model registry, experiment tracking, data lineage, serving infrastructure
ML platform - это экосистема. Feature Store (Feast/Tecton) + Model Registry (MLflow) + Experiment Tracking (W&B) + Serving (Triton/TorchServe) + Observability (custom) - каждый компонент решает свою задачу.
Зачем мониторить freshness фич в Feature Store?
Ключевые идеи
- Feature Store решает training-serving skew: одна логика вычисления для обучения и serving
- Три типа: batch (Spark), streaming (Flink), on-demand (в момент запроса)
- Online store (Redis): миллисекунды для serving. Offline store (Parquet): для обучения
- Feast - open source; Tecton/Vertex AI - managed с scheduling и мониторингом
- Freshness мониторинг критичен: устаревшие фичи = незаметная деградация качества
Связанные темы
Feature Store - центральный компонент ML платформы на Big Data.
- Spark MLlib — Batch feature computation строится на Spark трансформациях
- Flink Streaming — Real-time фичи вычисляются в Flink и пишутся в online store
- Kafka — Source для streaming feature computation
Вопросы для размышления
- Как Feature Store решает проблему point-in-time correctness при обучении на исторических данных?
- Спроектируйте Feature Store для e-commerce: какие фичи нужны, batch vs streaming vs on-demand?
- Как организовать A/B тест между двумя Feature Store версиями одной фичи без риска для продакшна?
Связанные уроки
- bd-15 — Spark ML pipeline - предшественник Feature Store
- bd-06 — Streaming фичи вычисляются в Flink/Kafka и пишутся в Feature Store
- bd-10 — Kafka - стандартный source для online feature computation
- bd-14 — Data Lakehouse архитектура включает Feature Store как слой
- ml-04-data-preprocessing