Skip to main content
Version: Beta 🚧

Data Types

Tecton supports the following data types for Feature Value and Request Data:

Int64​

  • Int64 value is represented as JSON string in HTTP response. This is because JSON does not specify a precision for numerical values, and most JSON libraries treat all numerical values as double-precision floating point numbers.
  • Int32 will be automatically cast to Int64 in online serving.

Float64​

String​

Bool​

  • Bool acceptable values: "True" or "False"

Array(elementType)​

  • Represents values comprising a sequence of homogeneous elements with the type elementType. The Array can contain the following element types:
    • Int64, Float32, Float64, String, Timestamp, Map, Struct, Array
  • Usage Notes:
    • Array is not available in Tecton with Snowflake. The only exception is that Tecton Managed Aggregation could aggregate raw data into an array such as first-N and last-N aggregations.
    • Array doesn’t support Map, Struct and Array as element type in Serverless Feature Retrieval with Athena.
    • Array is not available in Rift with snowflake_sql mode.

Struct(fields)​

  • Represents values with a structure that is defined by a list of Field.
  • Field(name,dataType) represents a single field in a Struct. The name of a field is defined by name. The data type of a field is defined by dataType, and it supports the following types:
    • Int64, Float64, String, Bool, Timestamp, Map, Struct, Array
  • It is stored efficiently in the online store by being encoded to an Array.
  • Usage Notes:
    • Struct is not available in Tecton with Snowflake.
    • Struct is not available in RTFV RequestSource with pandas mode.
    • Struct is not available in Serverless Feature Retrieval with Athena
    • Struct is not available in Rift with snowflake_sql mode.

Map(keyType,valueType)​

  • Represents values comprising a set of key-value pair where key and value type are predefined by keyType and valueType.
  • keyType only supports String
  • valueType supports following types
    • Int64, Float64, String, Bool, Timestamp, Map, Struct, Array
  • Usage Notes:
    • Map is not available in Tecton with Snowflake.
    • Map is not available in Serverless Feature Retrieval with Athena
    • Map is not available in Rift with snowflake_sql mode.

Timestamp​

  • Timestamp types should be used to annotate the timestamp_field on a Feature View. They are also available as Data Types on Attribute values. If a Feature View's Schema contains exactly one Timestamp field a, Tecton assumes timestamp_field=a. If specifying >1 Timestamp, the timestamp_field attribute must be set explicitly. Timestamp features are served as isoformat strings in HTTP responses.
  • Usage Notes:
    • Storage Conversion: You can supply feature values in any timezone; Tecton will automatically convert these values to UTC for storage. Tecton assumes UTC for naive objects.
    • Feature Serving: When serving feature values or using a Timestamp Feature as an input to a Realtime Feature View, the value will be provided in UTC.
    • Timestamp is not available in Tecton with Snowflake.
    • Timestamp is not available in Serverless Feature Retrieval with Athena.
    • Timestamp is not available in Rift with snowflake_sql mode.
info

Tecton supports nulls for request data and feature values. Check Handling Nulls for more details.

Was this page helpful?