There are three main ways to interact with Tecton as a user:
- The Tecton CLI allows users to apply changes and register new features through Feature Repositories.
- The Tecton Web UI allows users to read and monitor Tecton's environment.
- The Tecton SDK allows users to:
- Build training data and interact with Tecton classes through a Databricks or EMR Notebook, and
- Use the Consumption APIs via an HTTP interface for fetching online feature values at low-latency for real-time predictions.
The Tecton CLI (command-line interface) is the primary tool for managing local and remote copies of a Feature Repository. All commands are invoked using
tecton lets you push local changes and restore previous commits, allowing you to:
- Fully track historical changes to your features in a version control system
- Rely on a single source of truth
- Review changes to the Feature Repository using standard code review processes
- Safely manage complex changes with atomic commits (all-or-nothing)
- Integrate your features with CI/CD pipelines to deploy them automatically
tecton, you will use the command
tecton apply to commit changes to your remote Feature Repository registered with Tecton.
tecton apply will first output a plan describing the changes that will be made to your remote Feature Repository. This gives you the option to confirm the changes before finalizing the commit. To see the plan without running
tecton apply, invoke
tecton plan. Once committed, the feature's attributes can be viewed via the Web UI
Tecton Web UI
The Tecton Web UI is a read-only view of the current state of a Tecton cluster. It allows you to view all features and understand their materialization state (eg, freshness and frequency of updates).
The Web UI allows you to browse and inspect all objects in the Feature Store. This can facilitate the discovery and reuse of all feature components (eg, data sources, transformations, features, services), as well as help to convey feature organization and naming conventions.
The Web UI also allows you to review features' materialization schedule and the freshness of online served data. For example, you can can inspect the health of materialization jobs, backfill progress, and the total backfilled timeframe. If a job has failed, you can also review the associated Spark logs for debugging.
Finally, the Web UI also allows for operational monitoring, such as real-time information about data ingestion (for streaming features) and real-time statistics about the serving endpoints, such as query volumes and latency distributions.
The Tecton SDK allows you to interact with Tecton objects from a Databricks or EMR notebook. With the SDK, you can access all objects currently registered with Tecton. The SDK cannot be used for creating new Tecton Objects. All commands can be found in the SDK Reference Documentation.
Using the SDK, you can read feature data from the online and offline stores.
Reading from the online store
Applications that need up-to-date feature data in real-time, in production, will read from the online store. The online store is accessible in two ways:
- Rest API: Serves feature vectors with low-latency (e.g.
- Python SDK: Each Feature View and Feature Service has a
get_online_featuresmethod that wraps the Rest API
More information can be found in the Real-time Features Guide.
Reading from the offline store
To retrieve historical feature data for training purposes, use the offline store. The offline store is accessible through the Python SDK:
- Python SDK: each Feature View and Feature Service has a
get_historical_featuresmethod for training data generation.
More information can be found in the Training Data Guide.