apache_beam.transforms.enrichment_handlers.feast_feature_store module
- class apache_beam.transforms.enrichment_handlers.feast_feature_store.FeastFeatureStoreEnrichmentHandler(feature_store_yaml_path: str, feature_names: list[str] | None = None, feature_service_name: str | None = '', full_feature_names: bool | None = False, entity_id: str = '', *, entity_row_fn: Callable[[Row], Mapping[str, Any]] | None = None, exception_level: ExceptionLevel = ExceptionLevel.WARN)[source]
Bases:
EnrichmentSourceHandler
[Row
,Row
]Enrichment handler to interact with the Feast feature store.
To specify the features to fetch from Feast online store, please specify exactly one of feature_names or feature_service_name.
Use this handler with
apache_beam.transforms.enrichment.Enrichment
transform. To filter the features to enrich, use the join_fn param inapache_beam.transforms.enrichment.Enrichment
.Initializes an instance of FeastFeatureStoreEnrichmentHandler.
- Parameters:
feature_store_yaml_path (str) – The path to a YAML configuration file for the Feast feature store. See https://docs.feast.dev/reference/feature-repository/feature-store-yaml for configuration options supported by Feast.
feature_names – A list of feature names to be retrieved from the online Feast feature store.
feature_service_name (str) – The name of the feature service containing the features to fetch from the online Feast feature store.
full_feature_names (bool) – Whether to use full feature names (including namespaces, etc.). Defaults to False.
entity_id (str) – entity name for the entity associated with the features. The entity_id is used to extract the entity value from the input row. Please provide exactly one of entity_id or entity_row_fn.
entity_row_fn – a lambda function that takes an input beam.Row and returns a dictionary with a mapping from the entity key column name to entity key value. It is used to build/extract the entity dict for feature retrieval. Please provide exactly one of entity_id or entity_row_fn. See https://docs.feast.dev/getting-started/concepts/feature-retrieval for more information.
exception_level – a enum.Enum value from apache_beam.transforms.enrichment_handlers.utils.ExceptionLevel to set the level when None feature values are fetched from the online Feast store. Defaults to ExceptionLevel.WARN.