Introducing Tecton SDK 0.8
We are excited to launch the latest version of our SDK! This release introduces a suite of new capabilities that unlock new types of features, boost performance & reliability, enhance the overall feature development experience, and more.
For a full list of updates and instructions on upgrading, refer to the Tecton 0.8 Release Notes. Here are some highlights:
Unlocking New Features
- Secondary Key Aggregations enable aggregating not only over a Feature View’s entity join key(s) but also over a specified secondary key. For example, consider a dataset of user IDs and ad IDs. When
entities=[user]
andaggregation_secondary_key="ad_id”
, Tecton will automatically compute and retrieve feature values not just for each user, but for each ad that each user has interacted with. - Offset Windows allow users to shift the time window for which aggregated features are retrieved by some fixed interval, instead of just based on the current time. For example, setting
TimeWindow(window_size=timedelta(days=7), offset=timedelta(days=-3))
will aggregate values over -10 days to -3 days, instead of over the past 7 days. This is especially useful when evaluating how feature values change over time (e.g. comparing values from the past day to values from all previous days in the week). - Custom Environments for On-Demand Feature Views (Private Preview) enable features that rely on Python dependencies (including arbitrary
pip
packages!). Now, users can easily define their own custom ODFV Python Environment via arequirements.txt
file.
Optimizing Feature Platform Performance & Costs
- Tecton Serving Cache results in reductions in both cost (upwards of 50% savings) and latency during online feature retrieval. This capability is especially impactful for high-scale feature retrieval use cases. Check out our blog post and reach out to Tecton’s team to learn more!
- Tecton’s new Bulk Load capability for Online Store Backfills is optimized for compute and storage, and results in significant cost reductions (up to 100x) when backfilling features to the online store. This makes it much easier to iterate on and deploy new features, especially those with large amounts of historical data.
- 0.8 also includes performance optimizations for offline feature retrieval and materialization in Tecton on Snowflake. In addition, Tecton on Snowflake queries are now easier to analyze and debug using the
TectonDataFrame.explain()
orTectonDataFrame.subtree()
methods described here.
Streamlined Feature Development Experience
- The new Repo Config file lets you set defaults for Tecton objects in your Tecton feature repository, resulting in simpler and more easy-to-understand feature definitions. For example, customers can use this file to specify a default
tecton_materialization_runtime
orbatch_compute
for their Feature Views. - This release improves the usability and simplicity of Tecton’s methods for offline feature retrieval and testing (Public Preview). These include new output fields to more clearly understand feature validity over time.
- All Feature Views can now have explicitly-defined transformation schemas, ensuring clarity in your team’s feature repo. Configuring schemas can also speed up feature development by letting users bypass server-side validation. For example, users with explicitly-defined schemas could depend on libraries in their Spark-based Feature Views without needing these libraries to be added to their validation environment.
- Users working with Tecton’s SDK in a notebook can use the new
tecton.login()
function, which makes it easier than ever to authenticate to Tecton and interact with objects from your workspace.
Exploring Tecton Features from a Data Warehouse
- Tecton 0.8 introduces the ability to Publish Features to Your Data Warehouse (Private Preview), improving interoperability with your own data ecosystem. Tecton will automatically compute feature values and make them available in customers’ data warehouse and analytics environments (e.g. Snowflake, Amazon Athena, Databricks), enabling feature analysis, exploration, selection, and evaluation.
Release Management
- Tecton 0.8 introduces versioning of the Tecton Runtime that is deployed to Databricks & EMR clusters for orchestration of backfills and materialization. This further improves the reliability of Tecton releases beyond our robust testing and validation process by letting customers opt in to new Runtime versions and iteratively upgrade their Feature Views.
Upgrading to 0.8
- To get started with the 0.8 SDK, please refer to our comprehensive upgrade guide. We’re excited for you to explore these new capabilities and see how they can transform your feature engineering workflows — we look forward to your feedback!