tecton.PushFeaturePackage

class tecton.PushFeaturePackage(*, name: str, entities: List, schema: pyspark.sql.types.StructType, timestamp_key: Optional[str] = None, description: str = '', family: str = '', tags: Dict[str, str] = None, owner: str = '', online_serving_index: Optional[List[str]] = None, materialization: Optional[tecton.feature_packages.feature_package_args.MaterializationConfig] = None)

Declare a PushFeaturePackage.

In Tecton, the abstraction for creating and managing features is the Feature Package, implemented as the FeaturePackage class. A Feature Package contains all information required to manage one or more related features, including:

  • Metadata about the features, which Tecton uses for organization. Examples are name, feature owner, and tags (“developmental”, “released”, for example.)

  • References to Transformations and Entities, which describe the logic used to generate feature values from raw data.

  • Materialization settings, which describe how and when Tecton should compute feature values.

The PushFeaturePackage class is used in Tecton to represent one or many features that are pushed to Tecton from external feature computation systems. To define features that are pre-computed before retrieval, use :class:TemporalFeaturePackage. To define features that are computed at retrieval-time, use :class:OnlineFeaturePackage.

Methods

__init__

Instantiates a new PushFeaturePackage.

__init__(*, name: str, entities: List, schema: pyspark.sql.types.StructType, timestamp_key: Optional[str] = None, description: str = '', family: str = '', tags: Dict[str, str] = None, owner: str = '', online_serving_index: Optional[List[str]] = None, materialization: Optional[tecton.feature_packages.feature_package_args.MaterializationConfig] = None)

Instantiates a new PushFeaturePackage.

Parameters
  • name – Unique, human friendly name that identifies the FeaturePackage.

  • entities – A list of Entity objects, used to organize features.

  • timestamp_key – (Optional) Name of the column that identifies the time of feature values. The column must be of type Spark timestamp.

  • schema – A Spark schema definition (StructType) for this FeaturePackage. Supported types are - LongType, DoubleType, StringType, BooleanType, TimestampType (for timestamp columns only).

  • description – (Optional) description.

  • family – (Optional) family.

  • owner – (Optional) Owner name, used to organize features.

  • online_serving_index – (Optional, advanced) Defines the set of join keys that will be indexed and queryable during online serving. Defaults to the complete set of join keys. Up to one join key may be omitted. If one key is omitted, online requests to a Feature Service will return all feature vectors that match the specified join keys.

  • materialization – (Optional) configuration for materializing data in offline and online storage.

Attributes

name