Direkt zum Hauptinhalt

Was ist ein Feature Store?

tecton

Aktualisiert: 15. Mai 2025

Über die Autoren:
Mike Del Balso, CEO & Mitbegründer von Tecton
Willem Pienaar, Entwickler von Feast

Datenteams erkennen zunehmend, dass operatives machine learning die Lösung von Datenproblemen erfordert, die weit über die Erstellung von Datenpipelines hinausgehen.

In einem früheren Beitrag, Warum wir DevOps für ML-Daten brauchen, haben wir einige der wichtigsten Datenherausforderungen hervorgehoben, mit denen Teams bei der Produktivsetzung von ML-Systemen konfrontiert sind.

  • Zugriff auf die richtigen Rohdaten
  • Erstellung von Features aus Rohdaten
  • Features in Trainingsdaten kombinieren
  • Berechnen und Bereitstellen von Features im Produktivbetrieb
  • Monitoring von Features in der Produktion

Produktionsdatensysteme, sei es für groß angelegte Analytics oder Echtzeit-Streaming, sind nicht neu. Jedoch ist operatives maschinelles Lernen – ML-gestützte Intelligenz, die in kundenorientierte Anwendungen integriert ist – für die meisten Teams neu. Die Herausforderung, maschinelles Lernen für operative Zwecke (z. B. Empfehlungssysteme, Betrugserkennung, Personalisierung usw.) in der Produktion bereitzustellen, führt zu neuen Anforderungen an unsere Datentools.

Eine neue Art von ML-spezifischer Dateninfrastruktur entsteht, um dies zu ermöglichen.

Data-Science- und Data-Engineering-Teams setzen zunehmend auf Feature-Stores, um die Datensätze und Datenpipelines zu verwalten, die für die Produktivsetzung ihrer ML-Anwendungen erforderlich sind. Dieser Beitrag beschreibt die Schlüsselkomponenten eines modernen Feature Store und wie die Summe dieser Teile als Kraftmultiplikator auf Organisationen wirkt, indem sie die Duplizierung von Data-Engineering-Aufwänden reduziert, den Lebenszyklus des machine learning beschleunigt und eine neue Art der Zusammenarbeit zwischen Data-Science-Teams ermöglicht.

Kurze Auffrischung: Im ML ist ein Feature ein Datenelement, das als Eingangssignal für ein prädiktives Modell verwendet wird.
Versucht beispielsweise ein Kreditkartenunternehmen vorherzusagen, ob eine Transaktion betrügerisch ist, könnte ein nützliches Feature sein, ob die Transaktion in einem fremden Land stattfindet , oder wie die Höhe dieser Transaktion im Vergleich zur typischen Transaktion des Kunden ausfällt. Wenn wir uns auf ein Feature beziehen, beziehen wir uns normalerweise auf das Konzept dieses Signals (z. B. „transaction_in_foreign_country“), nicht auf einen bestimmten Wert des Features (z. B. nicht „Transaktion #1364 fand in einem fremden Land statt“).
ML-spezifische Dateninfrastruktur

Was ist der Hauptzweck eines Feature-Stores?

„Die Schnittstelle zwischen Modellen und Daten“

Wir haben Feature Stores erstmals in unserem Blogpost vorgestellt, in dem die Michelangelo-Plattform von Uber beschrieben wird. Feature Stores haben sich seitdem zu einem notwendigen Bestandteil des operativen Machine-Learning-Stacks entwickelt.

Zu den Vorteilen von Feature Stores gehören:

  1. Neue Features ohne umfassende Engineering-Unterstützung in die Produktion überführen
  2. Automatisieren Sie die Feature-Berechnung, Backfills und Protokollierung
  3. Feature-Pipelines teamübergreifend teilen und wiederverwenden
  4. Verfolgung von Feature-Versionen, Lineage und Metadaten
  5. Konsistenz zwischen Trainings- und Bereitstellungsdaten erreichen
  6. Überwachung des Zustands von Feature-Pipelines in der Produktion

Feature Stores zielen darauf ab, die gesamten Datenverwaltungsprobleme zu lösen, die beim Erstellen und Betreiben von operativen ML-Anwendungen auftreten.

Ein Feature Store ist ein ML-spezifisches Datensystem, das:

  • Führt Datenpipelines aus, die Rohdaten in Feature-Werte transformieren.
  • Speichert und verwaltet die Feature-Daten selbst, und
  • Liefert Feature-Daten konsistent für Trainings- und Inferenzzwecke
Tecton

Zur Unterstützung einer einfachen Feature-Verwaltung bieten Feature Stores Datenabstraktionen, die es einfach machen, Feature-Pipelines umgebungsübergreifend zu erstellen, bereitzustellen und nachzuvollziehen. Zum Beispiel machen sie es einfach, eine Feature-Transformation einmalig zu definieren und dann ihre Werte konsistent sowohl in der Entwicklungsumgebung (für das Training mit historischen Werten) als auch in der Produktionsumgebung (für die Inferenz mit neuen Feature-Werten) zu berechnen und bereitzustellen.

Feature Stores fungieren als zentraler Hub für Feature-Daten und Metadaten über den gesamten Lebenszyklus eines ML-Projekts. Daten in einem Feature-Store werden verwendet für:

  • Feature-Exploration und -Engineering
  • Modelliteration, Training und Debugging
  • Entdeckung und Teilen von Features
  • Produktions-Serving an ein Modell zur Inferenz
  • Monitoring des Betriebszustands

Feature Stores bringen ML-Organisationen Skaleneffekte, indem sie die Zusammenarbeit ermöglichen. Wenn ein Feature in einem Feature Store registriert wird, steht es anderen Modellen im gesamten Unternehmen zur sofortigen Wiederverwendung zur Verfügung. Dies reduziert den doppelten Aufwand im Data Engineering und ermöglicht neuen ML-Projekten einen schnellen Einstieg mit einer Bibliothek kuratierter, produktionsbereiter Features.

Tecton

Effektive Feature-Stores sind als modulare Systeme konzipiert, die an die Umgebung, in der sie angewendet werden, angepasst werden können. Ein Feature-Store besteht in der Regel aus fünf Hauptkomponenten. Im Rest dieses Beitrags gehen wir diese Komponenten durch und beschreiben ihre Rolle beim Betrieb von operativen ML-Anwendungen.

Was sind die Komponenten eines Feature Stores?

Es gibt 5 Hauptkomponenten eines modernen Feature Stores: Transformation, Speicherung, Bereitstellung, Monitoring und Feature-Registry.

Tecton

In den folgenden Abschnitten geben wir einen Überblick über den Zweck und die typischen Funktionen der einzelnen Abschnitte.

Bereitstellung von Feature-Daten

Feature-Stores stellen Modellen Feature-Daten zur Verfügung. Diese Modelle erfordern eine konsistente Sicht auf die Features über Training und Serving hinweg. Die Definitionen der Features, die zum Trainieren eines Modells verwendet werden, müssen exakt mit den Features übereinstimmen, die beim Online-Serving bereitgestellt werden. Wenn diese nicht übereinstimmen, entsteht ein Training-Serving Skew, der katastrophale und schwer zu debuggende Probleme mit der Modell-Performance verursachen kann.

Tecton

Feature Stores abstrahieren die zur Generierung eines Features verwendete Logik und Verarbeitung und bieten den Benutzern eine einfache und kanonische Möglichkeit, konsistent über alle Umgebungen hinweg, in denen sie benötigt werden, auf alle Features in einem Unternehmen zuzugreifen.

Wenn Daten offline abgerufen werden (z. B. für das Training), wird üblicherweise über notebook-freundliche Feature-Store-SDKs auf Feature-Werte zugegriffen. Sie bieten zeitpunktgenau korrekte Ansichten des Weltzustands für jedes Beispiel, das zum Trainieren eines Modells verwendet wird (auch bekannt als „ Zeitreise“).

Für das Online-Serving liefert ein Feature Store jeweils einen einzelnen Vektor von Features, der aus den aktuellsten Feature-Werten besteht. Die Antworten werden über eine hochleistungsfähige API bereitgestellt, die von einer Datenbank mit niedriger Latenz unterstützt wird.

Tecton

Datenspeicherung für Machine Learning

Feature-Stores persistieren Feature-Daten, um den Abruf durch Feature-Serving-Schichten zu unterstützen. Sie enthalten typischerweise sowohl eine Online- als auch eine Offline-Speicherebene, um die Anforderungen verschiedener Feature-Serving-Systeme zu unterstützen.

Tecton

Offline-Speicherschichten werden typischerweise verwendet, um Feature-Daten im Wert von Monaten oder Jahren für Trainingszwecke zu speichern. Offline-Feature-Store-Daten werden oft in Data Warehouses oder Data Lakes wie S3, BigQuery, Snowflake, Redshift gespeichert. Die Erweiterung eines bestehenden Data Lake oder Data Warehouse für die Offline-Feature-Speicherung wird typischerweise bevorzugt, um Datensilos zu vermeiden.

Online-Speicherschichten werden verwendet, um Feature-Werte für einen Abruf mit geringer Latenz während der Inferenz zu persistieren. Sie speichern normalerweise nur die neuesten Feature-Werte für jede Entität und modellieren so im Wesentlichen den aktuellen Zustand der Welt. Online-Stores sind in der Regel „eventually consistent“ und haben für die meisten ML-Anwendungsfälle keine strengen Konsistenzanforderungen. Sie werden normalerweise mit Key-Value-Stores wie DynamoDB, Redis oder Cassandra implementiert.

Tecton

Feature-Stores verwenden ein entitätsbasiertes Datenmodell, bei dem jeder Feature-Wert einer Entität (z. B. einem Benutzer) und einem timestamp zugeordnet ist. Ein entitätsbasiertes Datenmodell bietet eine minimale Struktur zur Unterstützung eines standardisierten Feature-Managements, fügt sich natürlich in gängige Feature-Engineering-Workflows ein und ermöglicht einfache Abruf-Queries in der Produktion.

Datentransformation bei Machine Learning

Tecton

Operative ML-Anwendungen erfordern die regelmäßige Verarbeitung neuer Daten zu Feature-Werten, damit Modelle Vorhersagen auf der Grundlage einer aktuellen Weltansicht treffen können. Feature-Stores verwalten und orchestrieren Datentransformationen, die diese Werte erzeugen, und nehmen Werte auf, die von externen Systemen erzeugt werden. Transformationen, die von Feature-Stores verwaltet werden, werden durch Definitionen in einer gemeinsamen Feature-Registry (unten beschrieben) konfiguriert.

Die meisten Teams, die mit Feature Stores beginnen, verfügen bereits über bestehende Datenpipelines, die Feature-Werte erzeugen. Daher ist es sehr wichtig, dass Feature Stores schrittweise eingeführt werden können und erstklassige Integrationen mit bestehenden Datenplattformen bieten, sodass Teams bestehende ETL-Pipelines für ihre ML-Anwendungsfälle sofort operationalisieren können.

 

Feature-Stores interagieren üblicherweise mit drei Haupttypen von Datentransformationen:

Feature-TypDefinitionGängige EingabedatenquelleBeispiel
Batch-TransformationTransformationen, die nur auf Data at Rest angewendet werdenData Warehouse, Data Lake, DatenbankBenutzerland, Produktkategorie
Streaming-TransformationTransformationen, die auf Streaming-Quellen angewendet werdenKafka, Kinesis, PubSubAnzahl der Klicks pro Vertikale pro Benutzer in den letzten 30 Minuten, Anzahl der Aufrufe pro Eintrag in der letzten Stunde
On-Demand-TransformationTransformationen, die zur Erzeugung von Features auf der Grundlage von Daten verwendet werden, die nur zum Zeitpunkt der Vorhersage verfügbar sind. Diese Features können nicht vorberechnet werden.Benutzerseitige AnwendungBefindet sich der Benutzer aktuell an einem unterstützten Standort?

Ein wesentlicher Vorteil besteht darin, die gemeinsame Verwendung verschiedener Arten von Features in denselben Modellen zu vereinfachen.

Tecton

Modelle benötigen Zugriff auf neue Feature-Werte für die Inferenz. Feature Stores erreichen dies, indem sie Features regelmäßig und fortlaufend neu berechnen. Transformations-Jobs werden orchestriert, um sicherzustellen, dass neue Daten verarbeitet und in frische neue Feature-Werte umgewandelt werden. Diese Jobs werden auf Datenverarbeitungs-Engines (z. B. Spark oder Pandas) ausgeführt, mit denen der Feature Store verbunden ist.

Die Modellentwicklung bringt unterschiedliche Transformationsanforderungen mit sich. Bei der Iteration eines Modells werden oft neue Features entwickelt, um in Trainings-Datasets verwendet zu werden, die historischen Ereignissen entsprechen (z. B. alle Käufe in den letzten 6 Monaten). Um diese Anwendungsfälle zu unterstützen, machen es Feature Stores einfach, „Backfill-Jobs“ auszuführen, die historische Werte eines Features für das Training generieren und persistieren. Einige Feature Stores führen für neu registrierte Features für vorkonfigurierte Zeiträume für registrierte Trainingsdatensätze automatisch ein Backfilling durch.

Transformationscode wird umgebungsübergreifend wiederverwendet, was den Training-Serving-Skew verhindert und Teams davon befreit, Code von einer Umgebung zur nächsten neu schreiben zu müssen.

Feature Stores verwalten alle Feature-bezogenen Ressourcen (compute, Speicher, Bereitstellung) ganzheitlich über den gesamten Lebenszyklus der Features. Durch die Automatisierung sich wiederholender Engineering-Tasks, die für die Produktivsetzung eines Features erforderlich sind, ermöglichen sie einen einfachen und schnellen Weg in die Produktion. Verwaltungsoptimierungen (z. B. das Stilllegen von Features, die von keinen Modellen verwendet werden, oder die Deduplizierung von Feature-Transformationen über Modelle hinweg) kann zu erheblichen Effizienzsteigerungen führen, insbesondere wenn die Komplexität der manuellen Verwaltung von Features für Teams zunimmt.

 

Machine-Learning-Monitoring

Wenn in einem ML-System etwas schiefgeht, handelt es sich in der Regel um ein Datenproblem. ``` Feature Stores sind in einer einzigartigen Position, um solche Probleme zu erkennen und aufzuzeigen. Sie können Metriken zu den von ihnen gespeicherten und bereitgestellten Features berechnen, die Korrektheit und Qualität beschreiben. Feature Stores überwachen diese Metriken, um ein Signal für den Gesamtzustand einer ML-Anwendung zu liefern.

Tecton

Feature-Daten können anhand von benutzerdefinierten Schemata oder anderen strukturellen Kriterien validiert werden. Die Datenqualität wird durch das Monitoring auf Drift und Training-Serving-Skew nachverfolgt. Z. B. werden Feature-Daten, die Modellen bereitgestellt werden, mit den Daten verglichen, mit denen das Modell trainiert wurde, um Inkonsistenzen zu erkennen, die die Modell-Performance beeinträchtigen könnten.

Beim Betrieb von Produktionssystemen ist es auch wichtig, die operativen Metriken zu überwachen. Feature Stores verfolgen operative Metriken zur Kernfunktionalität – zum Beispiel Metriken zum Feature-Speicher (Verfügbarkeit, Kapazität, Auslastung, Veralterung) oder zu feature serving (Durchsatz, Latenz, Fehlerraten). Andere Metriken beschreiben den Betrieb wichtiger angrenzender Systemkomponenten, wie z. B. operative Metriken für externe Datenverarbeitungs-Engines (z. B. Job-Erfolgsrate, Durchsatz, Verarbeitungsverzögerung und -rate).

Feature-Stores stellen diese Metriken der bestehenden Monitoring-Infrastruktur zur Verfügung. Dies ermöglicht es, den Zustand von ML-Anwendungen mit bestehenden Observability-Tools im Produktions-Stack zu überwachen und zu verwalten.

Da sie Einblick darin haben, welche Features von welchen Modellen verwendet werden, können Feature Stores automatisch Alerts und Zustandsmetriken in Ansichten aggregieren, die für bestimmte Benutzer, Modelle oder Konsumenten relevant sind.

Es ist nicht zwingend erforderlich, dass alle Feature-Stores ein solches Monitoring intern implementieren, aber sie sollten zumindest die Schnittstellen bereitstellen, an die Systeme zur Überwachung der Datenqualität angeschlossen werden können. Unterschiedliche ML-Anwendungsfälle können unterschiedliche, spezielle Monitoring-Anforderungen haben, daher ist die Plug-in-Fähigkeit hier wichtig.

 

Machine-Learning-Modell-Registry

Eine entscheidende Komponente in allen Feature Stores ist ein zentralisiertes Verzeichnis standardisierter Feature-Definitionen und Metadaten. Das Verzeichnis dient als zentrale Datenwahrheit (Single Source of Truth) für Informationen über ein Feature in einer Organisation.

Tecton

Die Registry ist eine zentrale Schnittstelle für Benutzerinteraktionen mit dem Feature Store. Teams verwenden die Registry als gemeinsamen Katalog, um neue Definitionen innerhalb von und über Teams hinweg zu entdecken, zu entwickeln, gemeinsam daran zu arbeiten und zu veröffentlichen.

Die Definitionen in der Registry konfigurieren das Systemverhalten des Feature-Stores. Automatisierte Jobs verwenden die Registry, um die Datenaufnahme, -transformation und -speicherung zu planen und zu konfigurieren. Sie bildet die Grundlage dafür, welche Daten im Feature-Store gespeichert und wie sie organisiert werden. Serving-APIs verwenden die Registry für ein einheitliches Verständnis darüber, welche Feature-Werte verfügbar sein sollten, wer darauf zugreifen kann und wie sie bereitgestellt werden sollten.

Die Registry ermöglicht es, wichtige Metadaten an Feature-Definitionen anzuhängen. Dies bietet eine Möglichkeit zum Tracking von Eigentumsverhältnissen, projekt- oder domänenspezifischen Informationen und einen Pfad zur einfachen Integration mit angrenzenden Systemen. Dies beinhaltet Informationen über Abhängigkeiten und Versionen, die für das Lineage-Tracking verwendet werden.

Um bei gängigen Debugging-, Compliance- und Auditing-Workflows zu helfen, fungiert die Registry als unveränderlicher Datensatz davon, was analytisch verfügbar ist und was tatsächlich in der Produktion läuft.

Bisher haben wir uns die minimalen Kernkomponenten eines Feature-Stores angesehen. In der Praxis haben Unternehmen oft Anforderungen wie Compliance, Governance und Sicherheit, die zusätzliche Enterprise-fokussierte Funktionen erfordern. Das wird das Thema eines zukünftigen Blogposts sein.

Erste Schritte mit Feature-Stores

Wir sehen Feature Stores als das Herzstück des Datenflusses in modernen ML-Anwendungen. Sie erweisen sich schnell als kritische Infrastruktur für Data-Science-Teams, die ML in die Produktion bringen. Wir erwarten, dass sich die Anzahl der Organisationen, die Feature Stores nutzen, bis 2028 vervierfachen wird

Es gibt einige Optionen, um mit Feature-Stores zu beginnen:

  • Feast ist eine großartige Option, wenn Sie bereits über Transformationspipelines zur Berechnung Ihrer Features verfügen, aber eine hervorragende Speicher- und Bereitstellungsebene benötigen, um diese im Produktivbetrieb zu verwenden. Feast ist heute nur für GCP verfügbar, aber wir arbeiten hart daran, Feast als schlanken Feature-Store für alle Umgebungen verfügbar zu machen. Bleiben Sie dran.
  • Tecton ist eine Feature-Plattform-as-a-Dienst. Ein großer Unterschied zwischen Feast und Tecton besteht darin, dass Tecton Transformationen unterstützt, sodass Feature-Pipelines End-to-End in Tecton verwaltet werden können. Tecton ist ein Managed-Angebot und eine ausgezeichnete Wahl als Feature Store, wenn Sie Produktions-SLAs, Hosting, erweiterte Zusammenarbeit, verwaltete Transformationen (Batch/Streaming/Echtzeit) und/oder Enterprise-Funktionen benötigen.

Wir haben diesen Blogpost geschrieben, um eine allgemeine Definition für Feature Stores bereitzustellen, da sie sich zu einer primären Komponente des operativen ML-Stacks entwickeln. Wir glauben, dass die Branche in diesem Bereich eine explosionsartige Zunahme von Aktivitäten erleben wird.

    Zurück zum Glossar