Repositorio centralizado que almacena, versiona y sirve características de ML con metadatos y controles de acceso, permitiendo la reutilización y consistencia en diferentes entornos.

Este blog fue publicado originalmente por Tecton.ai, que fue adquirido por Databricks en agosto de 2025. Desde la adquisición, Databricks Feature Store lanzó Declarative Feature APIs, una potente abstracción para la experimentación de características que automatiza la creación de pipelines de características gestionados tanto para datos por lotes como para datos en streaming.
Actualizado: 15 de mayo de 2025
Sobre los autores:
Mike Del Balso, CEO y cofundador de Tecton
Willem Pienaar, Creador de Feast
Los equipos de datos están empezando a darse cuenta de que el aprendizaje automático operacional requiere resolver problemas de datos que van mucho más allá de la creación de pipelines de datos.
En una publicación anterior, Por qué necesitamos DevOps para datos de ML, destacamos algunos de los desafíos clave de datos que enfrentan los equipos al llevar a producción sistemas de ML.
Los sistemas de datos de producción, ya sea para análisis a gran escala o streaming en tiempo real, no son nuevos. Sin embargo, el aprendizaje automático operacional — inteligencia impulsada por ML integrada en aplicaciones orientadas al cliente — es nuevo para la mayoría de los equipos. El desafío de implementar el aprendizaje automático en producción para fines operacionales (por ejemplo, sistemas de recomendación, detección de fraude, personalización, etc.) introduce nuevos requisitos para nuestras herramientas de datos.
Un nuevo tipo de infraestructura de datos específica para ML está surgiendo para hacerlo posible.
Cada vez más, los equipos de Ciencia de Datos e Ingeniería de Datos están recurriendo a los feature stores para gestionar los conjuntos de datos y los pipelines de datos necesarios para llevar sus aplicaciones de ML a producción. Esta publicación describe los componentes clave de un feature store moderno y cómo la suma de estas partes actúa como un multiplicador de fuerza en las organizaciones al reducir la duplicación de esfuerzos de ingeniería de datos, acelerar el ciclo de vida del aprendizaje automático y desbloquear un nuevo tipo de colaboración entre los equipos de ciencia de datos.
| Recordatorio rápido: en ML, una característica son datos utilizados como señal de entrada para un modelo predictivo. |
| Por ejemplo, si una compañía de tarjetas de crédito está tratando de predecir si una transacción es fraudulenta, una característica útil podría ser si la transacción está ocurriendo en un país extranjero, o cómo el tamaño de esta transacción se compara con la transacción típica del cliente. Cuando nos referimos a una característica, generalmente nos referimos al concepto de esa señal (por ejemplo, “transaction_in_foreign_country”), no a un valor específico de la característica (por ejemplo, no “la transacción #1364 fue en un país extranjero”). |
![]() |
“La interfaz entre modelos y datos”
Introdujimos por primera vez los feature stores en nuestra publicación de blog que describe la plataforma Michelangelo de Uber. Desde entonces, los feature stores han surgido como un componente necesario de la pila de aprendizaje automático operacional.
Los beneficios del feature store incluyen:
Los feature stores tienen como objetivo resolver el conjunto completo de problemas de gestión de datos encontrados al construir y operar aplicaciones de ML operacionales.
Un feature store es un sistema de datos específico para ML que:

Para soportar una gestión sencilla de características, los feature stores proporcionan abstracciones de datos que facilitan la construcción, implementación y el razonamiento sobre pipelines de características en diferentes entornos. Por ejemplo, facilitan la definición de una transformación de características una sola vez, para luego calcular y servir sus valores de forma consistente tanto en el entorno de desarrollo (para el entrenamiento con valores históricos) como en el entorno de producción (para la inferencia con valores de características actualizados).
Los feature stores actúan como un centro neurálgico para los datos y metadatos de características a lo largo del ciclo de vida de un proyecto de ML. Los datos en un feature store se utilizan para:
Los feature stores aportan economías de escala a las organizaciones de ML al permitir la colaboración. Cuando una característica se registra en un feature store, está disponible para su reutilización inmediata por otros modelos en toda la organización. Esto reduce la duplicación de esfuerzos de ingeniería de datos y permite que los nuevos proyectos de ML se inicien con una biblioteca de características curadas y listas para producción.

Los feature stores efectivos están diseñados para ser sistemas modulares que pueden adaptarse al entorno en el que se implementan. Hay cinco componentes principales que típicamente conforman un feature store. En el resto de esta publicación, revisaremos esos componentes y describiremos su papel en el impulso de las aplicaciones de ML operacionales.
Hay 5 componentes principales de un feature store moderno: Transformación, Almacenamiento, Servicio, Monitoreo y Registro de Características.

En las siguientes secciones, ofreceremos una visión general del propósito y las capacidades típicas de cada una de estas secciones.
Los almacenes de características proporcionan datos de características a los modelos. Esos modelos requieren una vista consistente de las características entre el entrenamiento y la inferencia. Las definiciones de las características utilizadas para entrenar un modelo deben coincidir exactamente con las características proporcionadas en la inferencia en línea. Cuando no coinciden, se introduce la desviación entre entrenamiento y servicio (training-serving skew), lo que puede causar problemas catastróficos y difíciles de depurar en el rendimiento del modelo.

Los almacenes de características abstraen la lógica y el procesamiento utilizados para generar una característica, proporcionando a los usuarios una forma fácil y canónica de acceder a todas las características de una empresa de manera consistente en todos los entornos en los que se necesiten.
Al recuperar datos fuera de línea (por ejemplo, para entrenamiento), los valores de las características se suelen acceder a través de SDK de almacenes de características compatibles con notebooks. Proporcionan vistas correctas en un punto en el tiempo del estado del mundo para cada ejemplo utilizado para entrenar un modelo (también conocido como “viaje en el tiempo”).
Para la inferencia en línea, un almacén de características entrega un único vector de características a la vez, compuesto por los valores de características más recientes. Las respuestas se entregan a través de una API de alto rendimiento respaldada por una base de datos de baja latencia.

Los almacenes de características persisten los datos de características para soportar la recuperación a través de capas de servicio de características. Normalmente contienen una capa de almacenamiento tanto en línea como fuera de línea para soportar los requisitos de diferentes sistemas de servicio de características.

Las capas de almacenamiento fuera de línea se utilizan típicamente para almacenar datos de características de meses o años para fines de entrenamiento. Los datos de los almacenes de características fuera de línea a menudo se almacenan en almacenes de datos (data warehouses) o lagos de datos (data lakes) como S3, BigQuery, Snowflake, Redshift. Extender un data lake o data warehouse existente para el almacenamiento de características fuera de línea suele ser preferible para evitar silos de datos.
Las capas de almacenamiento en línea se utilizan para persistir los valores de las características para búsquedas de baja latencia durante la inferencia. Normalmente solo almacenan los valores de características más recientes para cada entidad, modelando esencialmente el estado actual del mundo. Los almacenes en línea suelen ser eventualmente consistentes y no tienen requisitos de consistencia estrictos para la mayoría de los casos de uso de ML. Normalmente se implementan con almacenes de clave-valor como DynamoDB, Redis o Cassandra.

Los almacenes de características utilizan un modelo de datos basado en entidades donde cada valor de característica se asocia con una entidad (por ejemplo, un usuario) y una marca de tiempo. Un modelo de datos basado en entidades proporciona una estructura mínima para soportar la gestión estandarizada de características, se adapta naturalmente a los flujos de trabajo comunes de ingeniería de características y permite consultas de recuperación sencillas en producción.

Las aplicaciones operacionales de ML requieren el procesamiento regular de nuevos datos en valores de características para que los modelos puedan hacer predicciones utilizando una vista actualizada del mundo. Los almacenes de características gestionan y orquestan las transformaciones de datos que producen estos valores, así como ingieren valores producidos por sistemas externos. Las transformaciones gestionadas por los almacenes de características se configuran mediante definiciones en un registro de características común (descrito a continuación).
La mayoría de los equipos que empiezan a usar almacenes de características ya tienen pipelines de datos existentes que producen valores de características. Esto hace que sea muy importante que los almacenes de características sean adoptables gradualmente y tengan integraciones de primera clase con las plataformas de datos existentes, permitiendo a los equipos operacionalizar inmediatamente los pipelines ETL existentes para sus casos de uso de ML.
Los almacenes de características suelen interactuar con tres tipos principales de transformaciones de datos:
| Tipo de Característica | Definición | Fuente de datos de entrada común | Ejemplo |
|---|---|---|---|
| Transformación por lotes | Transformaciones que se aplican solo a datos en reposo | Almacén de datos, lago de datos, base de datos | País del usuario, categoría de producto |
| Transformación de streaming | Transformaciones que se aplican a fuentes de streaming | Kafka, Kinesis, PubSub | N.º de clics por vertical por usuario en los últimos 30 minutos, n.º de vistas por anuncio en la última hora |
| Transformación bajo demanda | Transformaciones que se utilizan para producir características basadas en datos que solo están disponibles en el momento de la predicción. Estas características no se pueden precalcular. | Aplicación de cara al usuario | ¿Está el usuario actualmente en una ubicación compatible? |
Un beneficio clave es facilitar el uso de diferentes tipos de características juntas en los mismos modelos.

Los modelos necesitan acceso a valores de características actualizados para la inferencia. Los almacenes de características logran esto recalculando regularmente las características de forma continua. Los trabajos de transformación se orquestan para asegurar que los nuevos datos se procesen y se conviertan en nuevos valores de características actualizados. Estos trabajos se ejecutan en motores de procesamiento de datos (por ejemplo, Spark o Pandas) a los que está conectado el almacén de características.
El desarrollo de modelos introduce diferentes requisitos de transformación. Al iterar sobre un modelo, a menudo se diseñan nuevas características para ser utilizadas en conjuntos de datos de entrenamiento que corresponden a eventos históricos (por ejemplo, todas las compras de los últimos 6 meses). Para soportar estos casos de uso, los almacenes de características facilitan la ejecución de “trabajos de relleno” (backfill jobs) que generan y persisten valores históricos de una característica para el entrenamiento. Algunos almacenes de características rellenan automáticamente las características recién registradas para rangos de tiempo preconfigurados para conjuntos de datos de entrenamiento registrados.
El código de transformación se reutiliza en todos los entornos, lo que evita la desviación entre entrenamiento y servicio y libera a los equipos de tener que reescribir código de un entorno a otro.
Los almacenes de características gestionan todos los recursos relacionados con las características (cómputo, almacenamiento, servicio) de manera holística a lo largo del ciclo de vida de las características. Al automatizar las tareas de ingeniería repetitivas necesarias para llevar una característica a producción, permiten un camino simple y rápido hacia la producción. Las optimizaciones de gestión (por ejemplo, retirar características que no están siendo utilizadas por ningún modelo, o deduplicar transformaciones de características entre modelos) pueden aportar eficiencias significativas, especialmente a medida que los equipos aumentan la complejidad de gestionar las características manualmente.
Cuando algo sale mal en un sistema de ML, suele ser un problema de datos. Los almacenes de características están en una posición única para detectar y sacar a la luz tales problemas. Pueden calcular métricas sobre las características que almacenan y sirven que describen la corrección y la calidad. Los almacenes de características monitorean estas métricas para proporcionar una señal de la salud general de una aplicación de ML.

Los datos de características pueden validarse basándose en esquemas definidos por el usuario u otros criterios estructurales. La calidad de los datos se rastrea monitoreando la deriva y la desviación entre entrenamiento y servicio. Por ejemplo, los datos de características servidos a los modelos se comparan con los datos con los que se entrenó el modelo para detectar inconsistencias que podrían degradar el rendimiento del modelo.
Al ejecutar sistemas en producción, también es importante monitorear las métricas operacionales. Los almacenes de características rastrean métricas operacionales relacionadas con la funcionalidad principal, por ejemplo, métricas relacionadas con el almacenamiento de características (disponibilidad, capacidad, utilización, obsolescencia) o el servicio de características (rendimiento, latencia, tasas de error). Otras métricas describen las operaciones de componentes importantes del sistema adyacente, como métricas operacionales para motores de procesamiento de datos externos (por ejemplo, tasa de éxito de trabajos, rendimiento, retraso y tasa de procesamiento).
Los almacenes de características ponen estas métricas a disposición de la infraestructura de monitoreo existente. Esto permite que la salud de la aplicación de ML sea monitoreada y gestionada con las herramientas de observabilidad existentes en el stack de producción.
Al tener visibilidad sobre qué características son utilizadas por qué modelos, los almacenes de características pueden agregar automáticamente alertas y métricas de salud en vistas relevantes para usuarios, modelos o consumidores específicos.
No es esencial que todos los almacenes de características implementen dicho monitoreo internamente, pero al menos deberían proporcionar las interfaces en las que los sistemas de monitoreo de calidad de datos puedan conectarse. Diferentes casos de uso de ML pueden tener necesidades de monitoreo diferentes y especializadas, por lo que la capacidad de conexión aquí es importante.
Un componente crítico en todos los almacenes de características es un registro centralizado de definiciones y metadatos de características estandarizados. El registro actúa como una única fuente de verdad para la información sobre una característica en una organización.

El registro es una interfaz central para las interacciones de los usuarios con el almacén de características. Los equipos utilizan el registro como un catálogo común para explorar, desarrollar, colaborar y publicar nuevas definiciones dentro y entre equipos.
Las definiciones en el registro configuran el comportamiento del sistema del almacén de características. Los trabajos automatizados utilizan el registro para programar y configurar la ingesta, transformación y almacenamiento de datos. Constituye la base de qué datos se almacenan en el almacén de características y cómo se organizan. Las API de servicio utilizan el registro para una comprensión consistente de qué valores de características deben estar disponibles, quién debe poder acceder a ellos y cómo deben ser servidos.
El registro permite adjuntar metadatos importantes a las definiciones de características. Esto proporciona una vía para el seguimiento de la propiedad, información específica del proyecto o dominio, y un camino para integrarse fácilmente con sistemas adyacentes. Esto incluye información sobre dependencias y versiones que se utiliza para el seguimiento de linaje.
Para ayudar con los flujos de trabajo comunes de depuración, cumplimiento y auditoría, el registro actúa como un registro inmutable de lo que está disponible analíticamente y lo que realmente se está ejecutando en producción.
Hasta ahora, hemos analizado los componentes mínimos principales de un almacén de características. En la práctica, las empresas a menudo tienen necesidades como el cumplimiento, la gobernanza y la seguridad que requieren capacidades adicionales empresariales. Ese será el tema de una futura publicación de blog.
Vemos los almacenes de características como el corazón del flujo de datos en las aplicaciones modernas de ML. Están demostrando rápidamente ser una infraestructura crítica para los equipos de ciencia de datos que ponen ML en producción. Esperamos que el número de organizaciones que utilizan almacenes de características se cuadruplique para 2028.
Hay algunas opciones para empezar con los almacenes de características:
Escribimos esta publicación de blog para proporcionar una definición común de los almacenes de características a medida que emergen como un componente principal de la pila de ML operacional. Creemos que la industria está a punto de ver una explosión de actividad en este espacio.
(Esta entrada del blog ha sido traducida utilizando herramientas basadas en inteligencia artificial) Publicación original
Suscríbete a nuestro blog y recibe las últimas publicaciones directamente en tu bandeja de entrada.