A Relationship object links two Entity objects based on their direct relationship.

These Relationship objects are stored in a catalog, which enables FeatureByte to efficiently serve features or feature lists that involve multiple entities. Features and feature lists can be served by either their primary entity or any serving entities (descendants) thanks to the Relationship object collection in the catalog.

When a parent-child relationship is formed by tagging entities to table columns, the FeatureByte Service automatically adds a Relationship object to the catalog.

To list the Relationships in the catalog, use the list_relationships() method:


To retrieve a specific relationship using its Object ID from the catalog, use the get_relationship_by_id() method:

relationship = catalog.get_relationship_by_id(<relationship_id>)

If you discover a relationship that should not be used for serving features or feature lists, you can disable it with the enable() method:

By doing this, the relationship will not be involved in any serving processes.