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 toInt64
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
. TheArray
can contain the following element types:Int64
,Float32
,Float64
,String
,Map
,Struct
,Array
- Limitations:
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 withsnowflake_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 aStruct
. The name of a field is defined byname
. The data type of a field is defined bydataType
, and it supports the following types:Int64
,Float64
,String
,Bool
,Map
,Struct
,Array
- It is stored efficiently in the online store by being encoded to an
Array
. - Limitations
Struct
is not available in Tecton with Snowflake.Struct
is not available in ODFV RequestSource with pandas mode.Struct
is not available in Serverless Feature Retrieval with AthenaStruct
is not available in Rift withsnowflake_sql
mode.
Map(keyType,valueType)
β
- Represents values comprising a set of key-value pair where key and value type
are predefined by
keyType
andvalueType
. keyType
only supports StringvalueType
supports following typesInt64
,Float64
,String
,Bool
,Map
,Struct
,Array
- Limitations
Map
is not available in Tecton with Snowflake.Map
is not available in Serverless Feature Retrieval with AthenaMap
is not available in Rift withsnowflake_sql
mode.
Timestamp
β
Timestamp
can be used to annotate the "timestamp" field when specifying the schema of a Data Source or Feature View; however, it can not be used as an actual feature value or used in an Aggregation.
info
Tecton supports nulls for request data and feature values. Check Handling Nulls for more details.