# Overview

## Using Feast

Feast development happens through three key workflows:

1. [Define and load feature data into Feast](https://docs.feast.dev/v0.11-branch/feast-on-kubernetes/user-guide/define-and-ingest-features)
2. [Retrieve historical features for training models](https://docs.feast.dev/v0.11-branch/feast-on-kubernetes/user-guide/getting-training-features)
3. [Retrieve online features for serving models](https://docs.feast.dev/v0.11-branch/feast-on-kubernetes/user-guide/getting-online-features)

## Defining feature tables and ingesting data into Feast

Feature creators model the data within their organization into Feast through the definition of [feature tables](https://docs.feast.dev/v0.11-branch/feast-on-kubernetes/concepts/feature-tables) that contain [data sources](https://docs.feast.dev/v0.11-branch/feast-on-kubernetes/concepts/sources). Feature tables are both a schema and a means of identifying data sources for features, and allow Feast to know how to interpret your data, and where to find it.

After registering a feature table with Feast, users can trigger an ingestion from their data source into Feast. This loads feature values from an upstream data source into Feast stores through ingestion jobs.

Visit [feature tables](https://docs.feast.dev/v0.11-branch/concepts/feature-tables#overview) to learn more about them.

{% content-ref url="define-and-ingest-features" %}
[define-and-ingest-features](https://docs.feast.dev/v0.11-branch/feast-on-kubernetes/user-guide/define-and-ingest-features)
{% endcontent-ref %}

## Retrieving historical features for training

In order to generate a training dataset it is necessary to provide both an [entity dataframe ](https://docs.feast.dev/v0.11-branch/feast-on-kubernetes/user-guide/overview)and feature references through the[ Feast SDK](https://api.docs.feast.dev/python/) to retrieve historical features. For historical serving, Feast requires that you provide the entities and timestamps for the corresponding feature data. Feast produces a point-in-time correct dataset using the requested features. These features can be requested from an unlimited number of feature sets.

{% content-ref url="getting-training-features" %}
[getting-training-features](https://docs.feast.dev/v0.11-branch/feast-on-kubernetes/user-guide/getting-training-features)
{% endcontent-ref %}

## Retrieving online features for online serving

Online retrieval uses feature references through the [Feast Online Serving API](https://api.docs.feast.dev/grpc/feast.serving.pb.html) to retrieve online features. Online serving allows for very low latency requests to feature data at very high throughput.

{% content-ref url="getting-online-features" %}
[getting-online-features](https://docs.feast.dev/v0.11-branch/feast-on-kubernetes/user-guide/getting-online-features)
{% endcontent-ref %}
