Catalog
A Catalog object operates as a centralized metadata repository for organizing tables, entities, features, and feature lists and other objects to facilitate feature serving for a specific domain. By employing a catalog, your team members can share, search, access, and reuse these assets.
Creating a Catalog¶
To create a Catalog, employ the create()
class method:
update_name()
method:
Accessing a Catalog¶
To list available catalogs, use the list()
class method:
To get a specific Catalog object without activating, use the get()
class method:
To activate a Catalog object, use the activate()
class method:
To get the active Catalog object, use the get_active()
class method:
Note
Only one catalog can be active at a time.
Using a catalog object that is not active may return an error or unexpected behavior.
Adding Feature Assets to a Catalog¶
Ensure that you are working with the active catalog when using the get_active()
class method and the info()
method:
save()
method:
Listing Feature Assets in a Catalog¶
You can list tables, entities, relationships, features, and feature lists from a Catalog object and obtain detailed information about their properties.
Method | Returns a DataFrame with each row representing | Attributes | Can be filtered by |
---|---|---|---|
list_tables() |
A table | Table’s ID, name, type, status, associated entities and creation date | Entity names associated with the table |
list_entities() |
An entity type | Entity type’s ID, name, serving names and creation date | - |
list_relationships() |
A relationship | Relationship’s ID, type, linked entities names, relation table, status and creation date | - |
list_features() |
The default version of a feature | Feature’s ID,name, type, related tables, related entities, readiness state, online availability and creation date | Feature's primary entity or primary table names |
list_feature_lists() |
The default version of a feature list | Feature list’s ID, name, number of features, status, deployment status, feature readiness statistics, tables used by the features, related entities, and creation date | Entity or table names associated with the feature list |
Accessing Feature Assets from a Catalog¶
In the case of features and feature lists, you can retrieve tables, entities, relationships, features, and feature lists by their name, ID and version name.
Organizing Training and Test Data¶
Catalog your observation sets, training, and test data for easy access and lineage tracking.
- Observation sets are added to the active catalog when ObservationTable objects are used instead of pandas DataFrame.
- Training and test data are added to the catalog as HistoricalFeatureTable objects when the
compute_historical_feature_table()
method is used to materialize feature values.
To list or retrieve these tables from the catalog, use:
list_observation_tables()
,get_observation_table()
andget_observation_table_by_id()
for ObservationTable objects.list_historical_feature_tables()
,get_historical_feature_table()
andget_historical_feature_table_by_id()
for HistoricalFeatureTable objects.
Handling Deployments and Batch Serving¶
The catalog stores deployment metadata when using the deploy()
method. To list or retrieve Deployment objects, use list_deployments()
, get_deployment()
, and get_deployment_by_id()
.
For batch serving, BatchRequestTable and BatchFeatureTable objects are added to the catalog. To list or retrieve these tables, use:
list_batch_request_tables()
,get_batch_request_table()
andget_batch_request_table_by_id()
for BatchRequestTable objects.list_batch_feature_tables()
,get_batch_feature_table()
andget_batch_feature_table_by_id()
for BatchFeatureTable objects.
Deleting Assets in a Catalog¶
Delete "DRAFT" state Feature objects and FeatureList objects from the catalog using the delete()
method:
Other objects can only be deprecated in the catalog.